From 6835e6b4aa40967ca7263a2ae8391a33ab2d0b2d Mon Sep 17 00:00:00 2001 From: Partmedia Date: Sat, 15 Jun 2024 13:05:57 -0800 Subject: [PATCH 01/82] Adjust TEG efficiency curve, remove heat transfer limit (#29050) The TEG used to limit hot-cold energy transfer based on actual power drawn, and had maximum efficiency at whatever temperature difference. This PR adjusts the hot-cold energy transfer to be uncapped, "venting" the excess heat that is not used to generate power, and adds an efficiency curve that limits efficiency at low thermal temperatures. People have been cheesing the TEG by hooking up the hot end to the CO2 miner (which produces infinite, room-temperature gas) and the cold end to a space radiator. With this change, you will actually need to set up a burn chamber in order to get appreciable power out of the TEG (see below). If you build a gas holding chamber, you will have to throttle the gas flowing into the TEG instead of constantly cycling the gas through over and over again. --- .../Power/Generation/Teg/TegSystem.cs | 30 ++++++++++++------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/Content.Server/Power/Generation/Teg/TegSystem.cs b/Content.Server/Power/Generation/Teg/TegSystem.cs index 540bd6c4832ac8..bc1bff052ce419 100644 --- a/Content.Server/Power/Generation/Teg/TegSystem.cs +++ b/Content.Server/Power/Generation/Teg/TegSystem.cs @@ -128,7 +128,6 @@ private void GeneratorUpdate(EntityUid uid, TegGeneratorComponent component, ref // Shift ramp position based on demand and generation from previous tick. var curRamp = component.RampPosition; var lastDraw = supplier.CurrentSupply; - // Limit amount lost/gained based on power factor. curRamp = MathHelper.Clamp(lastDraw, curRamp / component.RampFactor, curRamp * component.RampFactor); curRamp = MathF.Max(curRamp, component.RampMinimum); component.RampPosition = curRamp; @@ -138,17 +137,28 @@ private void GeneratorUpdate(EntityUid uid, TegGeneratorComponent component, ref if (airA.Pressure > 0 && airB.Pressure > 0) { var hotA = airA.Temperature > airB.Temperature; - var cHot = hotA ? cA : cB; - - // Calculate maximum amount of energy to generate this tick based on ramping above. - // This clamps the thermal energy transfer as well. - var targetEnergy = curRamp / _atmosphere.AtmosTickRate; - var transferMax = targetEnergy / (component.ThermalEfficiency * component.PowerFactor); // Calculate thermal and electrical energy transfer between the two sides. - var δT = MathF.Abs(airA.Temperature - airB.Temperature); - var transfer = Math.Min(δT * cA * cB / (cA + cB - cHot * component.ThermalEfficiency), transferMax); - electricalEnergy = transfer * component.ThermalEfficiency * component.PowerFactor; + // Assume temperature equalizes, i.e. Ta*cA + Tb*cB = Tf*(cA+cB) + var Tf = (airA.Temperature * cA + airB.Temperature * cB) / (cA + cB); + // The maximum energy we can extract is (Ta - Tf)*cA, which is equal to (Tf - Tb)*cB + var Wmax = MathF.Abs(airA.Temperature - Tf) * cA; + + var N = component.ThermalEfficiency; + + // Calculate Carnot efficiency + var Thot = hotA ? airA.Temperature : airB.Temperature; + var Tcold = hotA ? airB.Temperature : airA.Temperature; + var Nmax = 1 - Tcold / Thot; + N = MathF.Min(N, Nmax); // clamp by Carnot efficiency + + // Reduce efficiency at low temperature differences to encourage burn chambers (instead + // of just feeding the TEG room temperature gas from an infinite gas miner). + var dT = Thot - Tcold; + N *= MathF.Tanh(dT/700); // https://www.wolframalpha.com/input?i=tanh(x/700)+from+0+to+1000 + + var transfer = Wmax * N; + electricalEnergy = transfer * component.PowerFactor; var outTransfer = transfer * (1 - component.ThermalEfficiency); // Adjust thermal energy in transferred gas mixtures. From a9610d4f850c7227ef298de535153c3746462b2a Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 15 Jun 2024 21:07:04 +0000 Subject: [PATCH 02/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 15928df1888942..7609a5604802f2 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Crotalus - changes: - - message: Reagent grinder auto-modes - type: Add - id: 6250 - time: '2024-03-29T06:30:51.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26290 - author: deltanedas changes: - message: Multiple bombs exploding at once on a tile now combine to have a larger @@ -3860,3 +3853,10 @@ id: 6749 time: '2024-06-15T17:50:55.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29004 +- author: notafet + changes: + - message: The TEG must now be operated at higher temperatures to generate power. + type: Tweak + id: 6750 + time: '2024-06-15T21:05:57.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29050 From 6d3d92cd50fc36e45437bd899152269cf380a56e Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sat, 15 Jun 2024 23:32:49 +0200 Subject: [PATCH 03/82] Fix mime mask loadout minlimit (#29056) --- Resources/Prototypes/Loadouts/loadout_groups.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index 7f8a9ff4e488c8..cf9866faaedde1 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -402,7 +402,6 @@ - type: loadoutGroup id: MimeMask name: loadout-group-mime-mask - minLimit: 0 loadouts: - MimeMask - MimeMaskSad From b70f222cf1d564838fb81ea830adfad312338087 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 15 Jun 2024 21:33:56 +0000 Subject: [PATCH 04/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 7609a5604802f2..5ccd6cc516c37c 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: deltanedas - changes: - - message: Multiple bombs exploding at once on a tile now combine to have a larger - explosion rather than stacking the same small explosion. - type: Tweak - id: 6251 - time: '2024-03-29T23:46:06.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/25664 - author: Mephisto72 changes: - message: Ion Storms are now more likely to alter a Borg's laws. @@ -3860,3 +3852,10 @@ id: 6750 time: '2024-06-15T21:05:57.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29050 +- author: lzk228 + changes: + - message: Fixed ability for mime to not choose any mask. + type: Fix + id: 6751 + time: '2024-06-15T21:32:49.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29056 From 2ddebba0e9a2889c8b2623aad6d6fa6c2b384b2a Mon Sep 17 00:00:00 2001 From: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com> Date: Sat, 15 Jun 2024 14:35:05 -0700 Subject: [PATCH 05/82] Fix speech bubble occlusion being checked from the player's position instead of the eye's (#29012) --- .../UserInterface/Systems/Chat/ChatUIController.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs b/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs index 334ba608738037..904b922baa0b92 100644 --- a/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs +++ b/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs @@ -16,9 +16,8 @@ using Content.Shared.Administration; using Content.Shared.CCVar; using Content.Shared.Chat; -using Content.Shared.Decals; using Content.Shared.Damage.ForceSay; -using Content.Shared.Examine; +using Content.Shared.Decals; using Content.Shared.Input; using Content.Shared.Radio; using Robust.Client.GameObjects; @@ -626,7 +625,7 @@ private void UpdateQueuedSpeechBubbles(FrameEventArgs delta) var predicate = static (EntityUid uid, (EntityUid compOwner, EntityUid? attachedEntity) data) => uid == data.compOwner || uid == data.attachedEntity; var playerPos = player != null - ? _transform?.GetMapCoordinates(player.Value) ?? MapCoordinates.Nullspace + ? _eye.CurrentEye.Position : MapCoordinates.Nullspace; var occluded = player != null && _examine.IsOccluded(player.Value); From a2affe3d000c2476259ba5ef7f525bbf7de12ec9 Mon Sep 17 00:00:00 2001 From: icekot8 <93311212+icekot8@users.noreply.github.com> Date: Sun, 16 Jun 2024 00:36:25 +0300 Subject: [PATCH 06/82] =?UTF-8?q?=20add=20=F0=9F=91=B7=20JobCondition=20sy?= =?UTF-8?q?stem=20for=20reagents=20(#29023)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * hell :skull: * you're right i'm dumb * use the beautiful protoid and or in localization :cut_of_meat: * :pray: --- .../ReagentEffectConditions/JobCondition.cs | 49 +++++++++++++++++++ .../ContentLocalizationManager.cs | 16 +++++- .../en-US/guidebook/chemistry/conditions.ftl | 3 ++ 3 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 Content.Server/Chemistry/ReagentEffectConditions/JobCondition.cs diff --git a/Content.Server/Chemistry/ReagentEffectConditions/JobCondition.cs b/Content.Server/Chemistry/ReagentEffectConditions/JobCondition.cs new file mode 100644 index 00000000000000..0ede690049272c --- /dev/null +++ b/Content.Server/Chemistry/ReagentEffectConditions/JobCondition.cs @@ -0,0 +1,49 @@ +using System.Linq; +using Content.Shared.Chemistry.Reagent; +using Content.Shared.Mobs; +using Content.Shared.Mobs.Components; +using Content.Shared.Localizations; +using Robust.Shared.Prototypes; +using Content.Shared.Mind; +using Content.Shared.Mind.Components; +using Content.Shared.Roles; +using Content.Shared.Roles.Jobs; +using Content.Shared.Station; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; +using Robust.Shared.IoC; + +namespace Content.Server.Chemistry.ReagentEffectConditions +{ + public sealed partial class JobCondition : ReagentEffectCondition + { + [DataField(required: true)] public List> Job; + + public override bool Condition(ReagentEffectArgs args) + { + args.EntityManager.TryGetComponent(args.SolutionEntity, out var mindContainer); + if (mindContainer != null && mindContainer.Mind != null) + { + var prototypeManager = IoCManager.Resolve(); + if (args.EntityManager.TryGetComponent(mindContainer?.Mind, out var comp) && prototypeManager.TryIndex(comp.Prototype, out var prototype)) + { + foreach (var jobId in Job) + { + if (prototype.ID == jobId) + { + return true; + } + } + } + } + + return false; + } + + public override string GuidebookExplanation(IPrototypeManager prototype) + { + var localizedNames = Job.Select(jobId => prototype.Index(jobId).LocalizedName).ToList(); + return Loc.GetString("reagent-effect-condition-guidebook-job-condition", ("job", ContentLocalizationManager.FormatListToOr(localizedNames))); + } + } +} + diff --git a/Content.Shared/Localizations/ContentLocalizationManager.cs b/Content.Shared/Localizations/ContentLocalizationManager.cs index 7d40182f6cc896..ad8890ae0fdb04 100644 --- a/Content.Shared/Localizations/ContentLocalizationManager.cs +++ b/Content.Shared/Localizations/ContentLocalizationManager.cs @@ -1,4 +1,4 @@ -using System.Globalization; +using System.Globalization; using System.Linq; using System.Text.RegularExpressions; using Robust.Shared.Utility; @@ -119,6 +119,20 @@ public static string FormatList(List list) }; } + /// + /// Formats a list as per english grammar rules, but uses or instead of and. + /// + public static string FormatListToOr(List list) + { + return list.Count switch + { + <= 0 => string.Empty, + 1 => list[0], + 2 => $"{list[0]} or {list[1]}", + _ => $"{string.Join(" or ", list)}" + }; + } + /// /// Formats a direction struct as a human-readable string. /// diff --git a/Resources/Locale/en-US/guidebook/chemistry/conditions.ftl b/Resources/Locale/en-US/guidebook/chemistry/conditions.ftl index 6cbfc13a797433..95aaf9126d7e05 100644 --- a/Resources/Locale/en-US/guidebook/chemistry/conditions.ftl +++ b/Resources/Locale/en-US/guidebook/chemistry/conditions.ftl @@ -28,6 +28,9 @@ reagent-effect-condition-guidebook-reagent-threshold = reagent-effect-condition-guidebook-mob-state-condition = the mob is { $state } +reagent-effect-condition-guidebook-job-condition = + the target's job is { $job } + reagent-effect-condition-guidebook-solution-temperature = the solution's temperature is { $max -> [2147483648] at least {NATURALFIXED($min, 2)}k From 6d6da1267a666cc155b2682260939d7198ef252d Mon Sep 17 00:00:00 2001 From: FunTust <49007663+FunTust@users.noreply.github.com> Date: Sun, 16 Jun 2024 00:42:13 +0300 Subject: [PATCH 07/82] ToggleVisualLayers hair disappeared fix (#28949) * Update ClothingSystem.cs * did it in a better way * Update ClothingSystem.cs --- .../Clothing/EntitySystems/ClothingSystem.cs | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs index e8bfb789613e1d..1e2825a49a5b26 100644 --- a/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs +++ b/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs @@ -92,26 +92,29 @@ private void ToggleVisualLayers(EntityUid equipee, HashSet InventorySystem.InventorySlotEnumerator enumerator = _invSystem.GetSlotEnumerator(equipee); bool shouldLayerShow = true; - while (enumerator.NextItem(out EntityUid item)) + while (enumerator.NextItem(out EntityUid item, out SlotDefinition? slot)) { if (TryComp(item, out HideLayerClothingComponent? comp)) { if (comp.Slots.Contains(layer)) { - //Checks for mask toggling. TODO: Make a generic system for this - if (comp.HideOnToggle && TryComp(item, out MaskComponent? mask) && TryComp(item, out ClothingComponent? clothing)) + if (TryComp(item, out ClothingComponent? clothing) && clothing.Slots == slot.SlotFlags) { - if (clothing.EquippedPrefix != mask.EquippedPrefix) + //Checks for mask toggling. TODO: Make a generic system for this + if (comp.HideOnToggle && TryComp(item, out MaskComponent? mask)) + { + if (clothing.EquippedPrefix != mask.EquippedPrefix) + { + shouldLayerShow = false; + break; + } + } + else { shouldLayerShow = false; break; } } - else - { - shouldLayerShow = false; - break; - } } } } From 2a710ee4f69c7b86d9a5e2c7a8699ab4ab6aa27a Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 15 Jun 2024 21:43:19 +0000 Subject: [PATCH 08/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 5ccd6cc516c37c..dba15544fdc2c2 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Mephisto72 - changes: - - message: Ion Storms are now more likely to alter a Borg's laws. - type: Tweak - id: 6252 - time: '2024-03-30T00:01:39.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26539 - author: arimah changes: - message: Holoparasites, holoclowns and other guardians correctly transfer damage @@ -3859,3 +3852,10 @@ id: 6751 time: '2024-06-15T21:32:49.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29056 +- author: FunTust + changes: + - message: Fixed hair disappearing when hats are tucked away in a pocket. + type: Fix + id: 6752 + time: '2024-06-15T21:42:13.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/28949 From 280b0a1c249e329a0f9a311cb04651ac5ec3bfb5 Mon Sep 17 00:00:00 2001 From: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Date: Sat, 15 Jun 2024 17:38:28 -0500 Subject: [PATCH 09/82] Adds New Shoes to Sec loadouts (#29018) * Adds New Shoes to Sec loadouts * Remove Cowboy stuff from sec drobe(bye sheriff) + requested changed --- .../Prototypes/Catalog/Fills/Items/misc.yml | 34 +++++++++++++++---- .../VendingMachines/Inventories/secdrobe.yml | 4 +-- .../Clothing/Shoes/base_clothingshoes.yml | 10 ++++++ .../Entities/Clothing/Shoes/boots.yml | 2 +- .../Jobs/Security/security_officer.yml | 11 +++++- .../Prototypes/Loadouts/loadout_groups.yml | 1 + 6 files changed, 50 insertions(+), 12 deletions(-) diff --git a/Resources/Prototypes/Catalog/Fills/Items/misc.yml b/Resources/Prototypes/Catalog/Fills/Items/misc.yml index 543cd604a2fb0b..816f3ba8d49b90 100644 --- a/Resources/Prototypes/Catalog/Fills/Items/misc.yml +++ b/Resources/Prototypes/Catalog/Fills/Items/misc.yml @@ -1,12 +1,32 @@ - type: entity id: ClothingShoesBootsCombatFilled - parent: ClothingShoesBootsCombat - suffix: Filled - components: - - type: ContainerFill - containers: - item: - - CombatKnife + parent: + - ClothingShoesBootsCombat + - ClothingShoesBootsSecFilled + +- type: entity + id: ClothingShoesBootsJackFilled + parent: + - ClothingShoesBootsJack + - ClothingShoesBootsSecFilled + +- type: entity + id: ClothingShoesBootsWinterSecFilled + parent: + - ClothingShoesBootsWinterSec + - ClothingShoesBootsSecFilled + +- type: entity + id: ClothingShoesBootsCowboyBlackFilled + parent: + - ClothingShoesBootsCowboyBlack + - ClothingShoesBootsSecFilled + +- type: entity + id: ClothingShoesHighheelBootsFilled + parent: + - ClothingShoesHighheelBoots + - ClothingShoesBootsSecFilled - type: entity id: ClothingShoesBootsMercFilled diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/secdrobe.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/secdrobe.yml index c4d937b8412f68..5b733f0d354936 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/secdrobe.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/secdrobe.yml @@ -19,9 +19,7 @@ ClothingOuterWinterSec: 2 ClothingOuterArmorBasic: 2 ClothingNeckScarfStripedRed: 3 - ClothingOuterArmorBasicSlim: 2 + ClothingOuterArmorBasicSlim: 2 ClothingEyesBlindfold: 1 ClothingShoesBootsCombat: 1 ClothingShoesBootsWinterSec: 2 - ClothingShoesBootsCowboyBlack: 1 - ClothingHeadHatCowboyBlack: 1 \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/base_clothingshoes.yml b/Resources/Prototypes/Entities/Clothing/Shoes/base_clothingshoes.yml index a0f56966bb5903..d096ee3ff17793 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/base_clothingshoes.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/base_clothingshoes.yml @@ -52,6 +52,16 @@ - Knife - Sidearm +- type: entity + abstract: true + id: ClothingShoesBootsSecFilled + suffix: Filled + components: + - type: ContainerFill + containers: + item: + - CombatKnife + - type: entity abstract: true parent: ClothingShoesBaseButcherable diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml index af32fa58184191..33f5d36e3664e7 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml @@ -143,7 +143,7 @@ sprite: Clothing/Shoes/Boots/winterbootssci.rsi - type: entity - parent: ClothingShoesBaseWinterBoots + parent: [ClothingShoesBaseWinterBoots, ClothingShoesMilitaryBase] id: ClothingShoesBootsWinterSec name: security winter boots components: diff --git a/Resources/Prototypes/Loadouts/Jobs/Security/security_officer.yml b/Resources/Prototypes/Loadouts/Jobs/Security/security_officer.yml index 321cc46feb5623..dfce25809f838c 100644 --- a/Resources/Prototypes/Loadouts/Jobs/Security/security_officer.yml +++ b/Resources/Prototypes/Loadouts/Jobs/Security/security_officer.yml @@ -187,6 +187,15 @@ equipment: shoes: ClothingShoesBootsCombatFilled +- type: loadout + id: JackBoots + equipment: JackBoots + +- type: startingGear + id: JackBoots + equipment: + shoes: ClothingShoesBootsJackFilled + - type: loadout id: SecurityWinterBoots equipment: SecurityWinterBoots @@ -194,7 +203,7 @@ - type: startingGear id: SecurityWinterBoots equipment: - shoes: ClothingShoesBootsWinterSec + shoes: ClothingShoesBootsWinterSecFilled # PDA - type: loadout diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index cf9866faaedde1..0fab367fc90e54 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -882,6 +882,7 @@ name: loadout-group-security-shoes loadouts: - CombatBoots + - JackBoots - SecurityWinterBoots - type: loadoutGroup From 904f15fed7bad9cf35afc8464f4f26be92867d04 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 15 Jun 2024 22:39:34 +0000 Subject: [PATCH 10/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index dba15544fdc2c2..0a127c4684ed0b 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: arimah - changes: - - message: Holoparasites, holoclowns and other guardians correctly transfer damage - to their hosts again. - type: Fix - id: 6253 - time: '2024-03-30T01:25:43.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26541 - author: Boaz1111 changes: - message: Added an industrial reagent grinder to the basic hydroponics research. @@ -3859,3 +3851,12 @@ id: 6752 time: '2024-06-15T21:42:13.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/28949 +- author: Cojoke-dot + changes: + - message: You can now find Jackboots in the security load-outs + type: Add + - message: The Sec drobe no longer has a Cowboy hat or boots + type: Remove + id: 6753 + time: '2024-06-15T22:38:29.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29018 From c063347ed697c1441812766e9008cd031dadc8f5 Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sat, 15 Jun 2024 19:24:15 -0400 Subject: [PATCH 11/82] fix meteor announcement color (#29058) --- Content.Server/StationEvents/Events/MeteorSwarmSystem.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs b/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs index e085a2e159e1a0..6a67930c4d2468 100644 --- a/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs +++ b/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs @@ -29,7 +29,7 @@ protected override void Added(EntityUid uid, MeteorSwarmComponent component, Gam component.WaveCounter = component.Waves.Next(RobustRandom); if (component.Announcement is { } locId) - _chat.DispatchGlobalAnnouncement(Loc.GetString(locId), playSound: false, colorOverride: Color.Yellow); + _chat.DispatchGlobalAnnouncement(Loc.GetString(locId), playSound: false, colorOverride: Color.Gold); _audio.PlayGlobal(component.AnnouncementSound, Filter.Broadcast(), true); } From 97761e49cabe4da259459ea90c400e3b2aeb0bbc Mon Sep 17 00:00:00 2001 From: Keer-Sar <144283718+Keer-Sar@users.noreply.github.com> Date: Sat, 15 Jun 2024 20:24:29 -0400 Subject: [PATCH 12/82] Change "they're" to "their" in the lungs cargo bounty: Fixes #29051 (#29064) change they're to their --- Resources/Locale/en-US/cargo/bounties.ftl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Locale/en-US/cargo/bounties.ftl b/Resources/Locale/en-US/cargo/bounties.ftl index b332517c70d2e2..09424e49097fc5 100644 --- a/Resources/Locale/en-US/cargo/bounties.ftl +++ b/Resources/Locale/en-US/cargo/bounties.ftl @@ -89,7 +89,7 @@ bounty-description-instrument = The hottest new band in the galaxy, Cindy Kate a bounty-description-knife = One of our top commanders recently won a brand new set of knives on an official Nanotrasen gameshow. Unforunately, we don't have a set on hand. Send us a bunch of sharp things so we can throw something together, bounty-description-lemon = Dr Jones's kid is starting up a lemonade stand. Small issue: lemons don't get shipped to this sector. Fix that for a nice reward. bounty-description-lime = After a heavy drinking session, Admiral Pastich developed a strong addiction to fresh lime wedges. Send us some limes so we can prepare him his new favorite snack. -bounty-description-lung = The pro-smoking league has been fighting to keep cigarettes on our stations for millennia. Unfortunately, they're lungs aren't fighting so hard anymore. Send them some new ones. +bounty-description-lung = The pro-smoking league has been fighting to keep cigarettes on our stations for millennia. Unfortunately, their lungs aren't fighting so hard anymore. Send them some new ones. bounty-description-monkey-cube = Due to a recent genetics accident, Central Command is in serious need of monkeys. Your mission is to ship monkey cubes. bounty-description-mouse = Station 13 ran out of freeze-dried mice. Ship some fresh ones so their janitor doesn't go on strike. bounty-description-pancake = Here at Nanotrasen we consider employees to be family. And you know what families love? Pancakes. Ship a baker's dozen. From ddd7008bfe146967fdf01ec58df29051f96f6c2c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 15 Jun 2024 20:25:34 -0400 Subject: [PATCH 13/82] Update Credits (#29065) Co-authored-by: PJBot --- Resources/Credits/GitHub.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Credits/GitHub.txt b/Resources/Credits/GitHub.txt index f240c9524751ff..15d75d4487aae6 100644 --- a/Resources/Credits/GitHub.txt +++ b/Resources/Credits/GitHub.txt @@ -1 +1 @@ -0x6273, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 4dplanner, 612git, 778b, Ablankmann, Acruid, actioninja, adamsong, Admiral-Obvious-001, Adrian16199, Aerocrux, Aexxie, Afrokada, Agoichi, Ahion, AJCM-git, AjexRose, Alekshhh, AlexMorgan3817, AlexUm418, AlmondFlour, AlphaQwerty, Altoids1, amylizzle, ancientpower, ArchPigeon, Arendian, arimah, Arteben, AruMoon, as334, AsikKEsel, asperger-sind, aspiringLich, avghdev, AzzyIsNotHere, BananaFlambe, Baptr0b0t, BasedUser, beck-thompson, BellwetherLogic, BGare, bhenrich, BingoJohnson-zz, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, blueDev2, Boaz1111, BobdaBiscuit, brainfood1183, Brandon-Huu, Bright0, brndd, BubblegumBlue, BYONDFuckery, c4llv07e, CakeQ, Callmore, CaptainSqrBeard, Carbonhell, CatTheSystem, Centronias, chairbender, Charlese2, Cheackraze, cheesePizza2, Chief-Engineer, chromiumboy, Chronophylos, Ciac32, clement-or, Clyybber, Cojoke-dot, ColdAutumnRain, collinlunn, ComicIronic, coolmankid12345, corentt, crazybrain23, creadth, CrigCrag, Crotalus, CrudeWax, CrzyPotato, Cyberboss, d34d10cc, Daemon, daerSeebaer, dahnte, dakamakat, dakimasu, DamianX, DangerRevolution, daniel-cr, Darkenson, DawBla, dch-GH, Deahaka, DEATHB4DEFEAT, DeathCamel58, deathride58, DebugOk, Decappi, deepdarkdepths, deepy, Delete69, deltanedas, DerbyX, DexlerXD, Doctor-Cpu, DoctorBeard, DogZeroX, dontbetank, Doru991, DoubleRiceEddiedd, DoutorWhite, DrMelon, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, Duddino, DuskyJay, Dutch-VanDerLinde, Easypoller, eclips_e, EdenTheLiznerd, EEASAS, Efruit, ElectroSR, elthundercloud, Emisse, EmoGarbage404, Endecc, enumerate0, eoineoineoin, ERORR404V1, Errant-4, estacaoespacialpirata, exincore, exp111, Fahasor, FairlySadPanda, ficcialfaint, Fildrance, FillerVK, Fishfish458, Flareguy, FluffiestFloof, FluidRock, FoLoKe, fooberticus, Fortune117, freeman2651, Froffy025, Fromoriss, FungiFellow, GalacticChimp, gbasood, Geekyhobo, Genkail, Ghagliiarghii, Git-Nivrak, github-actions[bot], gituhabu, GNF54, Golinth, GoodWheatley, Gotimanga, graevy, GreyMario, gusxyz, Gyrandola, h3half, Hanzdegloker, Hardly3D, harikattar, Hebiman, Henry12116, HerCoyote23, hitomishirichan, Hmeister-real, HoofedEar, hord-brayden, hubismal, Hugal31, Huxellberger, Hyenh, iacore, IamVelcroboy, icekot8, igorsaux, ike709, Illiux, Ilya246, IlyaElDunaev, Injazz, Insineer, IntegerTempest, Interrobang01, IProduceWidgets, ItsMeThom, j-giebel, Jackal298, Jackrost, jamessimo, janekvap, Jark255, JerryImMouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JoeHammad1844, joelhed, JohnGinnane, johnku1, joshepvodka, jproads, Jrpl, juliangiebel, JustArt1m, JustCone14, JustinTether, JustinTrotter, K-Dynamic, KaiShibaa, kalane15, kalanosh, Kelrak, kerisargit, keronshb, KIBORG04, Killerqu00, KingFroozy, kira-er, Kit0vras, KittenColony, Ko4ergaPunk, komunre, koteq, Krunklehorn, Kukutis96513, kxvvv, Lamrr, LankLTE, lapatison, Leander-0, LetterN, Level10Cybermancer, lever1209, liltenhead, LittleBuilderJane, Lomcastar, LordCarve, LordEclipse, luckyshotpictures, Lukasz825700516, lunarcomets, luringens, lvvova1, lzimann, lzk228, MACMAN2003, Macoron, MagnusCrowe, ManelNavola, Mangohydra, Matz05, MehimoNemo, MeltedPixel, MemeProof, Menshin, Mervill, metalgearsloth, mhamsterr, MilenVolf, Minty642, Mirino97, mirrorcult, misandrie, MishaUnity, MisterMecky, Mith-randalf, Moneyl, Moomoobeef, moony, Morb0, Mr0maks, musicmanvr, Myakot, Myctai, N3X15, Nairodian, Naive817, namespace-Memory, NickPowers43, nikthechampiongr, Nimfar11, Nirnael, nmajask, nok-ko, Nopey, notafet, notquitehadouken, noudoit, noverd, nuke-haus, NULL882, OctoRocket, OldDanceJacket, onoira, osjarw, Owai-Seek, pali6, Pangogie, patrikturi, PaulRitter, Peptide90, peptron1, Phantom-Lily, pigeonpeas, pissdemon, PixelTheKermit, PJB3005, Plykiya, pofitlo, pointer-to-null, PolterTzi, PoorMansDreams, potato1234x, ProfanedBane, PrPleGoo, ps3moira, Psychpsyo, psykzz, PuroSlavKing, PursuitInAshes, quatre, QuietlyWhisper, qwerltaz, Radosvik, Radrark, Rainbeon, Rainfey, RamZ, Rane, ravage123321, rbertoche, Redict, RedlineTriad, RednoWCirabrab, RemberBM, RemieRichards, RemTim, rene-descartes2021, RiceMar1244, RieBi, Rinkashikachi, Rockdtben, rolfero, rosieposieeee, RumiTiger, Saakra, Samsterious, SaphireLattice, ScalyChimp, scrato, Scribbles0, Serkket, SethLafuente, ShadowCommander, Shadowtheprotogen546, shampunj, SignalWalker, Simyon264, Sirionaut, siyengar04, Skarletto, Skrauz, Skyedra, SlamBamActionman, slarticodefast, Slava0135, snebl, Snowni, snowsignal, SonicHDC, SoulFN, SoulSloth, SpaceManiac, SpeltIncorrectyl, SphiraI, spoogemonster, ssdaniel24, Stealthbomber16, StrawberryMoses, superjj18, SweptWasTaken, Szunti, takemysoult, TaralGit, Tayrtahn, tday93, TekuNut, TemporalOroboros, tentekal, Terraspark4941, tgrkzus, thatrandomcanadianguy, TheArturZh, theashtronaut, thedraccx, themias, theomund, theOperand, TheShuEd, TimrodDX, Titian3, tkdrg, tmtmtl30, TokenStyle, tom-leys, tomasalves8, Tomeno, Tornado-Technology, tosatur, TsjipTsjip, Tunguso4ka, TurboTrackerss14, Tyler-IN, Tyzemol, UbaserB, UBlueberry, UKNOWH, Uriende, UristMcDorf, Vaaankas, Varen, VasilisThePikachu, veliebm, Veritius, Vermidia, Verslebas, VigersRay, Visne, volundr-, Voomra, Vordenburg, vulppine, wafehling, waylon531, weaversam8, whateverusername0, Willhelm53, wixoaGit, WlarusFromDaSpace, wrexbe, xRiriq, yathxyz, Ygg01, YotaXP, YuriyKiss, zach-hill, Zandario, Zap527, Zealith-Gamer, ZelteHonor, zerorulez, zionnBE, zlodo, ZNixian, ZoldorfTheWizard, Zumorica, Zymem +0x6273, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 4dplanner, 612git, 778b, Ablankmann, Acruid, actioninja, adamsong, Admiral-Obvious-001, Adrian16199, Aerocrux, Aeshus, Aexxie, Afrokada, Agoichi, Ahion, AJCM-git, AjexRose, Alekshhh, AlexMorgan3817, AlexUm418, AlmondFlour, AlphaQwerty, Altoids1, amylizzle, ancientpower, ArchPigeon, Arendian, arimah, Arteben, AruMoon, as334, AsikKEsel, asperger-sind, aspiringLich, avghdev, AzzyIsNotHere, BananaFlambe, Baptr0b0t, BasedUser, beck-thompson, BellwetherLogic, BGare, bhenrich, BingoJohnson-zz, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, blueDev2, Boaz1111, BobdaBiscuit, brainfood1183, Brandon-Huu, Bright0, brndd, BubblegumBlue, BYONDFuckery, c4llv07e, CakeQ, Callmore, CaptainSqrBeard, Carbonhell, CatTheSystem, Centronias, chairbender, Charlese2, Cheackraze, cheesePizza2, Chief-Engineer, chromiumboy, Chronophylos, Ciac32, clement-or, Clyybber, Cojoke-dot, ColdAutumnRain, collinlunn, ComicIronic, coolmankid12345, corentt, crazybrain23, creadth, CrigCrag, Crotalus, CrudeWax, CrzyPotato, Cyberboss, d34d10cc, Daemon, daerSeebaer, dahnte, dakamakat, dakimasu, DamianX, DangerRevolution, daniel-cr, Darkenson, DawBla, dch-GH, Deahaka, DEATHB4DEFEAT, DeathCamel58, deathride58, DebugOk, Decappi, deepdarkdepths, deepy, Delete69, deltanedas, DerbyX, DexlerXD, dffdff2423, Doctor-Cpu, DoctorBeard, DogZeroX, dontbetank, Doomsdrayk, Doru991, DoubleRiceEddiedd, DoutorWhite, DrMelon, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, Duddino, Dutch-VanDerLinde, Easypoller, eclips_e, EdenTheLiznerd, EEASAS, Efruit, ElectroSR, elthundercloud, Emisse, EmoGarbage404, Endecc, enumerate0, eoineoineoin, ERORR404V1, Errant-4, estacaoespacialpirata, exincore, exp111, Fahasor, FairlySadPanda, ficcialfaint, Fildrance, FillerVK, Fishfish458, Flareguy, FluffiestFloof, FluidRock, FoLoKe, fooberticus, Fortune117, freeman2651, Froffy025, Fromoriss, FungiFellow, GalacticChimp, gbasood, Geekyhobo, Genkail, Ghagliiarghii, Git-Nivrak, github-actions[bot], gituhabu, GNF54, Golinth, GoodWheatley, Gotimanga, graevy, GreyMario, gusxyz, Gyrandola, h3half, Hanzdegloker, Hardly3D, harikattar, Hebiman, Henry12116, HerCoyote23, hitomishirichan, Hmeister-real, HoofedEar, hord-brayden, hubismal, Hugal31, Huxellberger, Hyenh, iacore, IamVelcroboy, icekot8, igorsaux, ike709, Illiux, Ilya246, IlyaElDunaev, Injazz, Insineer, IntegerTempest, Interrobang01, IProduceWidgets, ItsMeThom, Jackal298, Jackrost, jamessimo, janekvap, Jark255, JerryImMouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JoeHammad1844, JohnGinnane, johnku1, joshepvodka, jproads, Jrpl, juliangiebel, JustArt1m, JustCone14, JustinTrotter, K-Dynamic, KaiShibaa, kalane15, kalanosh, Kelrak, kerisargit, keronshb, KIBORG04, Killerqu00, KingFroozy, kira-er, Kit0vras, KittenColony, Ko4ergaPunk, komunre, koteq, Krunklehorn, Kukutis96513, kxvvv, Lamrr, LankLTE, lapatison, Leander-0, LetterN, Level10Cybermancer, lever1209, liltenhead, LittleBuilderJane, Lomcastar, LordCarve, LordEclipse, luckyshotpictures, Lukasz825700516, lunarcomets, luringens, lvvova1, lzimann, lzk228, MACMAN2003, Macoron, MagnusCrowe, ManelNavola, Mangohydra, Matz05, MehimoNemo, MeltedPixel, MemeProof, Menshin, Mervill, metalgearsloth, mhamsterr, MilenVolf, Minty642, Mirino97, mirrorcult, misandrie, MishaUnity, MisterMecky, Mith-randalf, MjrLandWhale, Moneyl, Moomoobeef, moony, Morb0, Mr0maks, musicmanvr, Myakot, Myctai, N3X15, Nairodian, Naive817, namespace-Memory, NickPowers43, nikthechampiongr, Nimfar11, Nirnael, nmajask, nok-ko, Nopey, notafet, notquitehadouken, noudoit, noverd, nuke-haus, NULL882, OctoRocket, OldDanceJacket, onoira, osjarw, Owai-Seek, pali6, Pangogie, patrikturi, PaulRitter, Peptide90, peptron1, Phantom-Lily, pigeonpeas, pissdemon, PixelTheKermit, PJB3005, Plykiya, pofitlo, pointer-to-null, PolterTzi, PoorMansDreams, potato1234x, ProfanedBane, PrPleGoo, ps3moira, Psychpsyo, psykzz, PuroSlavKing, PursuitInAshes, quatre, QuietlyWhisper, qwerltaz, Radosvik, Radrark, Rainbeon, Rainfey, RamZ, Rane, ravage123321, rbertoche, Redict, RedlineTriad, RednoWCirabrab, RemberBM, RemieRichards, RemTim, rene-descartes2021, RiceMar1244, RieBi, Rinkashikachi, Rockdtben, rolfero, rosieposieeee, RumiTiger, Saakra, Samsterious, SaphireLattice, ScalyChimp, scrato, Scribbles0, Serkket, SethLafuente, ShadowCommander, Shadowtheprotogen546, shampunj, SignalWalker, Simyon264, Sirionaut, siyengar04, Skarletto, Skrauz, Skyedra, SlamBamActionman, slarticodefast, Slava0135, snebl, Snowni, snowsignal, SonicHDC, SoulFN, SoulSloth, SpaceManiac, SpeltIncorrectyl, SphiraI, spoogemonster, ssdaniel24, Stealthbomber16, StrawberryMoses, superjj18, SweptWasTaken, Szunti, takemysoult, TaralGit, Tayrtahn, tday93, TekuNut, TemporalOroboros, tentekal, Terraspark4941, tgrkzus, thatrandomcanadianguy, TheArturZh, theashtronaut, thedraccx, themias, theomund, theOperand, TheShuEd, TimrodDX, Titian3, tkdrg, tmtmtl30, TokenStyle, tom-leys, tomasalves8, Tomeno, Tornado-Technology, tosatur, TsjipTsjip, Tunguso4ka, TurboTrackerss14, Tyler-IN, Tyzemol, UbaserB, UBlueberry, UKNOWH, Uriende, UristMcDorf, Vaaankas, Varen, VasilisThePikachu, veliebm, Veritius, Vermidia, Verslebas, VigersRay, Visne, volundr-, Voomra, Vordenburg, vulppine, wafehling, waylon531, weaversam8, whateverusername0, Willhelm53, wixoaGit, WlarusFromDaSpace, wrexbe, xRiriq, yathxyz, Ygg01, YotaXP, YuriyKiss, zach-hill, Zandario, Zap527, Zealith-Gamer, ZelteHonor, zerorulez, zionnBE, zlodo, ZNixian, ZoldorfTheWizard, Zonespace27, Zumorica, Zymem From 17aa1f98a1f779eecb3c4f8b9198ca3e1935f604 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 16 Jun 2024 00:25:34 +0000 Subject: [PATCH 14/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 0a127c4684ed0b..b5522bd050db95 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: Boaz1111 - changes: - - message: Added an industrial reagent grinder to the basic hydroponics research. - It grinds things into reagents like a recycler. - type: Add - id: 6254 - time: '2024-03-30T02:46:20.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/25020 - author: SonicHDC changes: - message: Added unzipping for lab coats! @@ -3860,3 +3852,10 @@ id: 6753 time: '2024-06-15T22:38:29.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29018 +- author: Keer-Sar + changes: + - message: Fixed a spelling error in the cargo bounty for lungs. + type: Fix + id: 6754 + time: '2024-06-16T00:24:29.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29064 From e633fe801bb4755aa6015612b432571b687ce6ca Mon Sep 17 00:00:00 2001 From: Partmedia Date: Sat, 15 Jun 2024 17:06:54 -0800 Subject: [PATCH 15/82] Widen power monitoring widget (#29062) --- Content.Client/Power/PowerMonitoringWindow.xaml.Widgets.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Content.Client/Power/PowerMonitoringWindow.xaml.Widgets.cs b/Content.Client/Power/PowerMonitoringWindow.xaml.Widgets.cs index 1427df05153422..74752ddc5343a2 100644 --- a/Content.Client/Power/PowerMonitoringWindow.xaml.Widgets.cs +++ b/Content.Client/Power/PowerMonitoringWindow.xaml.Widgets.cs @@ -482,7 +482,7 @@ public PowerMonitoringButton() { HorizontalAlignment = HAlignment.Right, Align = Label.AlignMode.Right, - SetWidth = 72f, + SetWidth = 80f, Margin = new Thickness(10, 0, 0, 0), ClipText = true, }; From c2f88b2e17981bfa5f11ffc9807b61e7197a6a8f Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sat, 15 Jun 2024 21:10:21 -0400 Subject: [PATCH 16/82] fix exclusive borg module bug (#29038) --- Content.Server/Silicons/Borgs/BorgSystem.Modules.cs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs b/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs index f372f7df1a50d8..8f43635ccc8639 100644 --- a/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs +++ b/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs @@ -281,15 +281,13 @@ public bool CanInsertModule(EntityUid uid, EntityUid module, BorgChassisComponen if (!TryComp(containedModuleUid, out var containedItemModuleComp)) continue; - for (int i = 0; i < itemModuleComp.Items.Count; i++) + if (containedItemModuleComp.Items.All(itemModuleComp.Items.Contains) && + containedItemModuleComp.Items.Count == itemModuleComp.Items.Count) { - if (itemModuleComp.Items[i] != containedItemModuleComp.Items[i]) - continue; + if (user != null) + Popup.PopupEntity(Loc.GetString("borg-module-duplicate"), uid, user.Value); + return false; } - - if (user != null) - Popup.PopupEntity(Loc.GetString("borg-module-duplicate"), uid, user.Value); - return false; } } From 2fde5ac580c63637004c7fe24cb6fa64ba5c9830 Mon Sep 17 00:00:00 2001 From: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Date: Sat, 15 Jun 2024 20:25:51 -0500 Subject: [PATCH 17/82] Cleans up ClothingShoesBootsMagSyndie in magboots.yml (#28653) * Remove Explosive Component from ClothingShoesBootsMagSyndie * Makes BaseJetpack a parent of ClothingShoesBootsMagSyndie * fix boots in hand looking like jetpack bug * make syndicate magboots child of magboots --- .../Entities/Clothing/Shoes/magboots.yml | 26 +++---------------- 1 file changed, 4 insertions(+), 22 deletions(-) diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml b/Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml index e80ed74305c6de..d934a8b97e1364 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml @@ -81,7 +81,7 @@ price: 3000 - type: entity - parent: ClothingShoesBase + parent: [ClothingShoesBootsMag, BaseJetpack] id: ClothingShoesBootsMagSyndie name: blood-red magboots description: Reverse-engineered magnetic boots that have a heavy magnetic pull and integrated thrusters. @@ -106,27 +106,9 @@ moles: - 0.153853429 # oxygen - 0.153853429 # nitrogen - - type: ActivatableUI - key: enum.SharedGasTankUiKey.Key - - type: UserInterface - interfaces: - enum.SharedGasTankUiKey.Key: - type: GasTankBoundUserInterface - - type: Explosive - explosionType: Default - maxIntensity: 20 - - type: Jetpack - moleUsage: 0.00085 - - type: CanMoveInAir - - type: InputMover - toParent: true - - type: MovementSpeedModifier - weightlessAcceleration: 1 - weightlessFriction: 0.3 - weightlessModifier: 1.2 - - type: Tag - tags: - - WhitelistChameleon + - type: Item + sprite: null + size: Normal - type: entity id: ActionBaseToggleMagboots From dfe9d5264c9d2aa706b97e3dcfb4ad1eb7c5aa14 Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sat, 15 Jun 2024 21:32:01 -0400 Subject: [PATCH 18/82] Slightly speed up borgsystem module check (#29070) --- Content.Server/Silicons/Borgs/BorgSystem.Modules.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs b/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs index 8f43635ccc8639..746d75f0d856d7 100644 --- a/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs +++ b/Content.Server/Silicons/Borgs/BorgSystem.Modules.cs @@ -281,8 +281,8 @@ public bool CanInsertModule(EntityUid uid, EntityUid module, BorgChassisComponen if (!TryComp(containedModuleUid, out var containedItemModuleComp)) continue; - if (containedItemModuleComp.Items.All(itemModuleComp.Items.Contains) && - containedItemModuleComp.Items.Count == itemModuleComp.Items.Count) + if (containedItemModuleComp.Items.Count == itemModuleComp.Items.Count && + containedItemModuleComp.Items.All(itemModuleComp.Items.Contains)) { if (user != null) Popup.PopupEntity(Loc.GetString("borg-module-duplicate"), uid, user.Value); From 65af00afc4fec803288f819ca4cdc45d2193adf3 Mon Sep 17 00:00:00 2001 From: Keer-Sar <144283718+Keer-Sar@users.noreply.github.com> Date: Sat, 15 Jun 2024 22:06:12 -0400 Subject: [PATCH 19/82] Fixes capitalization mistake when non-humanoids insert things into machines: Fixes #28997 (#29071) add CAPITALIZE() --- Resources/Locale/en-US/machine/machine.ftl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Locale/en-US/machine/machine.ftl b/Resources/Locale/en-US/machine/machine.ftl index ce8873df6f87b4..13d9e76b9d2590 100644 --- a/Resources/Locale/en-US/machine/machine.ftl +++ b/Resources/Locale/en-US/machine/machine.ftl @@ -1,4 +1,4 @@ -machine-insert-item = {THE($user)} inserted {THE($item)} into {THE($machine)}. +machine-insert-item = {CAPITALIZE(THE($user))} inserted {THE($item)} into {THE($machine)}. machine-upgrade-examinable-verb-text = Upgrades machine-upgrade-examinable-verb-message = Examine the machine upgrades. From a341c3a1e93545af8e63b0802e2ef68a406117eb Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 16 Jun 2024 02:07:18 +0000 Subject: [PATCH 20/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index b5522bd050db95..fca8bcdaad2ec4 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: SonicHDC - changes: - - message: Added unzipping for lab coats! - type: Add - id: 6255 - time: '2024-03-30T03:31:32.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26494 - author: Zealith-Gamer changes: - message: Items being pulled no longer spin when being thrown. @@ -3859,3 +3852,11 @@ id: 6754 time: '2024-06-16T00:24:29.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29064 +- author: Keer-Sar + changes: + - message: Non-humanoids' names are now capitalized when inserting materials into + machines. + type: Fix + id: 6755 + time: '2024-06-16T02:06:12.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29071 From 3644602fb830004428464eb35b80cc71520838d2 Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sat, 15 Jun 2024 23:38:17 -0400 Subject: [PATCH 21/82] Fix magboots not needing a grid to work (#29034) * Fix magboots not needing a grid to work * ok fix it for realsies --- Content.Shared/Clothing/MagbootsComponent.cs | 6 ++++ .../Clothing/SharedMagbootsSystem.cs | 5 +++ Content.Shared/Gravity/SharedGravitySystem.cs | 32 ++++++++++++++++--- 3 files changed, 39 insertions(+), 4 deletions(-) diff --git a/Content.Shared/Clothing/MagbootsComponent.cs b/Content.Shared/Clothing/MagbootsComponent.cs index 0d074ff38b69a2..b3fb607a38be4c 100644 --- a/Content.Shared/Clothing/MagbootsComponent.cs +++ b/Content.Shared/Clothing/MagbootsComponent.cs @@ -20,4 +20,10 @@ public sealed partial class MagbootsComponent : Component [DataField] public ProtoId MagbootsAlert = "Magboots"; + + /// + /// If true, the user must be standing on a grid or planet map to experience the weightlessness-canceling effect + /// + [DataField] + public bool RequiresGrid = true; } diff --git a/Content.Shared/Clothing/SharedMagbootsSystem.cs b/Content.Shared/Clothing/SharedMagbootsSystem.cs index bb3b05074f2f3f..68145936152e40 100644 --- a/Content.Shared/Clothing/SharedMagbootsSystem.cs +++ b/Content.Shared/Clothing/SharedMagbootsSystem.cs @@ -17,6 +17,7 @@ public sealed class SharedMagbootsSystem : EntitySystem [Dependency] private readonly AlertsSystem _alerts = default!; [Dependency] private readonly ClothingSpeedModifierSystem _clothingSpeedModifier = default!; [Dependency] private readonly ClothingSystem _clothing = default!; + [Dependency] private readonly SharedGravitySystem _gravity = default!; [Dependency] private readonly InventorySystem _inventory = default!; [Dependency] private readonly SharedActionsSystem _sharedActions = default!; [Dependency] private readonly SharedActionsSystem _actionContainer = default!; @@ -147,6 +148,10 @@ private void OnIsWeightless(Entity ent, ref InventoryRelayedE if (!ent.Comp.On) return; + // do not cancel weightlessness if the person is in off-grid. + if (ent.Comp.RequiresGrid && !_gravity.EntityOnGravitySupportingGridOrMap(ent.Owner)) + return; + args.Args.IsWeightless = false; args.Args.Handled = true; } diff --git a/Content.Shared/Gravity/SharedGravitySystem.cs b/Content.Shared/Gravity/SharedGravitySystem.cs index 42a6d5d1f8024e..2f532d0f1d3414 100644 --- a/Content.Shared/Gravity/SharedGravitySystem.cs +++ b/Content.Shared/Gravity/SharedGravitySystem.cs @@ -17,6 +17,8 @@ public abstract partial class SharedGravitySystem : EntitySystem [ValidatePrototypeId] public const string WeightlessAlert = "Weightless"; + private EntityQuery _gravityQuery; + public bool IsWeightless(EntityUid uid, PhysicsComponent? body = null, TransformComponent? xform = null) { Resolve(uid, ref body, false); @@ -36,15 +38,35 @@ public bool IsWeightless(EntityUid uid, PhysicsComponent? body = null, Transform return true; // If grid / map has gravity - if (TryComp(xform.GridUid, out var gravity) && gravity.Enabled || - TryComp(xform.MapUid, out var mapGravity) && mapGravity.Enabled) - { + if (EntityGridOrMapHaveGravity((uid, xform))) return false; - } return true; } + /// + /// Checks if a given entity is currently standing on a grid or map that supports having gravity at all. + /// + public bool EntityOnGravitySupportingGridOrMap(Entity entity) + { + entity.Comp ??= Transform(entity); + + return _gravityQuery.HasComp(entity.Comp.GridUid) || + _gravityQuery.HasComp(entity.Comp.MapUid); + } + + + /// + /// Checks if a given entity is currently standing on a grid or map that has gravity of some kind. + /// + public bool EntityGridOrMapHaveGravity(Entity entity) + { + entity.Comp ??= Transform(entity); + + return _gravityQuery.TryComp(entity.Comp.GridUid, out var gravity) && gravity.Enabled || + _gravityQuery.TryComp(entity.Comp.MapUid, out var mapGravity) && mapGravity.Enabled; + } + public override void Initialize() { base.Initialize(); @@ -54,6 +76,8 @@ public override void Initialize() SubscribeLocalEvent(OnGravityChange); SubscribeLocalEvent(OnGetState); SubscribeLocalEvent(OnHandleState); + + _gravityQuery = GetEntityQuery(); } public override void Update(float frameTime) From 732576b518e0baf156868e7241a6f79cd518e009 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 16 Jun 2024 03:39:23 +0000 Subject: [PATCH 22/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index fca8bcdaad2ec4..8ceaead43554f8 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Zealith-Gamer - changes: - - message: Items being pulled no longer spin when being thrown. - type: Fix - id: 6256 - time: '2024-03-30T03:35:43.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26504 - author: Plykiya changes: - message: Hyposprays can now be toggled to draw from solution containers like jugs @@ -3860,3 +3853,10 @@ id: 6755 time: '2024-06-16T02:06:12.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29071 +- author: EmoGarbage404 + changes: + - message: Magboots no longer work when off-grid. + type: Fix + id: 6756 + time: '2024-06-16T03:38:18.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29034 From 9348a5cea609f6ccb5045341bd83422a20cc0e8c Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sun, 16 Jun 2024 06:43:22 -0400 Subject: [PATCH 23/82] Apc & Substation resprite (#28998) * substation * apcs * top pixels * new screens --- .../Power/APC/ApcVisualizerComponent.cs | 2 +- .../Entities/Structures/Power/apc.yml | 15 +- .../Entities/Structures/Power/substation.yml | 11 +- .../Structures/Power/apc.rsi/base.png | Bin 370 -> 676 bytes .../Structures/Power/apc.rsi/broken.png | Bin 673 -> 1061 bytes .../Power/apc.rsi/channel0-auto_off.png | Bin 154 -> 0 bytes .../Power/apc.rsi/channel0-auto_on.png | Bin 156 -> 0 bytes .../Power/apc.rsi/channel0-manual_off.png | Bin 157 -> 0 bytes .../Power/apc.rsi/channel0-manual_on.png | Bin 158 -> 0 bytes .../Power/apc.rsi/channel1-auto_off.png | Bin 154 -> 0 bytes .../Power/apc.rsi/channel1-auto_on.png | Bin 156 -> 0 bytes .../Power/apc.rsi/channel1-manual_off.png | Bin 157 -> 0 bytes .../Power/apc.rsi/channel1-manual_on.png | Bin 158 -> 0 bytes .../Power/apc.rsi/channel2-auto_off.png | Bin 154 -> 0 bytes .../Power/apc.rsi/channel2-auto_on.png | Bin 156 -> 0 bytes .../Power/apc.rsi/channel2-manual_off.png | Bin 157 -> 0 bytes .../Power/apc.rsi/channel2-manual_on.png | Bin 158 -> 0 bytes .../Power/apc.rsi/display-charging.png | Bin 434 -> 809 bytes .../Structures/Power/apc.rsi/display-full.png | Bin 275 -> 381 bytes .../Structures/Power/apc.rsi/display-lack.png | Bin 282 -> 557 bytes .../Power/apc.rsi/display-remote.png | Bin 337 -> 510 bytes .../Structures/Power/apc.rsi/emag-unlit.png | Bin 387 -> 436 bytes .../Structures/Power/apc.rsi/frame.png | Bin 436 -> 610 bytes .../Structures/Power/apc.rsi/lock0-locked.png | Bin 155 -> 131 bytes .../Power/apc.rsi/lock0-unlocked.png | Bin 158 -> 0 bytes .../Structures/Power/apc.rsi/lock1-locked.png | Bin 154 -> 131 bytes .../Power/apc.rsi/lock1-unlocked.png | Bin 158 -> 0 bytes .../Structures/Power/apc.rsi/meta.json | 166 ++++++++++++------ .../Structures/Power/apc.rsi/panel.png | Bin 142 -> 162 bytes .../Structures/Power/apc.rsi/static.png | Bin 384 -> 452 bytes .../Power/substation.rsi/charging.png | Bin 1105 -> 197 bytes .../Structures/Power/substation.rsi/dead.png | Bin 1110 -> 162 bytes .../Structures/Power/substation.rsi/full.png | Bin 1108 -> 124 bytes .../Structures/Power/substation.rsi/meta.json | 65 +++++-- .../Power/substation.rsi/screen.png | Bin 1652 -> 182 bytes .../Power/substation.rsi/screen_wall.png | Bin 0 -> 330 bytes .../Power/substation.rsi/substation.png | Bin 2291 -> 657 bytes .../substation.rsi/substation_static.png | Bin 2444 -> 650 bytes .../Power/substation.rsi/substation_wall.png | Bin 1364 -> 588 bytes .../substation.rsi/substation_wall_static.png | Bin 1504 -> 339 bytes 40 files changed, 186 insertions(+), 73 deletions(-) delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel0-auto_off.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel0-auto_on.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel0-manual_off.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel0-manual_on.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel1-auto_off.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel1-auto_on.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel1-manual_off.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel1-manual_on.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel2-auto_off.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel2-auto_on.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel2-manual_off.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/channel2-manual_on.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/lock0-unlocked.png delete mode 100644 Resources/Textures/Structures/Power/apc.rsi/lock1-unlocked.png create mode 100644 Resources/Textures/Structures/Power/substation.rsi/screen_wall.png diff --git a/Content.Client/Power/APC/ApcVisualizerComponent.cs b/Content.Client/Power/APC/ApcVisualizerComponent.cs index 87cb70019f5081..e356a80177287e 100644 --- a/Content.Client/Power/APC/ApcVisualizerComponent.cs +++ b/Content.Client/Power/APC/ApcVisualizerComponent.cs @@ -87,7 +87,7 @@ public sealed partial class ApcVisualsComponent : Component /// [DataField("screenColors")] [ViewVariables(VVAccess.ReadWrite)] - public Color[] ScreenColors = new Color[(byte)ApcChargeState.NumStates]{Color.FromHex("#d1332e"), Color.FromHex("#2e8ad1"), Color.FromHex("#3db83b"), Color.FromHex("#ffac1c")}; + public Color[] ScreenColors = new Color[(byte)ApcChargeState.NumStates]{Color.FromHex("#d1332e"), Color.FromHex("#dcdc28"), Color.FromHex("#82ff4c"), Color.FromHex("#ffac1c")}; /// /// The sprite state of the unlit overlay used for the APC screen when the APC has been emagged. diff --git a/Resources/Prototypes/Entities/Structures/Power/apc.yml b/Resources/Prototypes/Entities/Structures/Power/apc.yml index 71e45064954403..1621ac858cdf45 100644 --- a/Resources/Prototypes/Entities/Structures/Power/apc.yml +++ b/Resources/Prototypes/Entities/Structures/Power/apc.yml @@ -35,21 +35,26 @@ - state: display-charging shader: unshaded map: ["enum.ApcVisualLayers.ChargeState"] - - state: lock0-unlocked + - state: lock0-locked shader: unshaded map: ["enum.ApcVisualLayers.InterfaceLock"] - - state: lock1-unlocked + visible: false + - state: lock1-locked shader: unshaded map: ["enum.ApcVisualLayers.PanelLock"] - - state: channel0-auto_on + visible: false + - state: lock1-locked #when these are implemented get actual sprites. shader: unshaded map: ["enum.ApcVisualLayers.Equipment"] - - state: channel1-auto_on + visible: false + - state: lock1-locked shader: unshaded map: ["enum.ApcVisualLayers.Lighting"] - - state: channel2-auto_on + visible: false + - state: lock1-locked shader: unshaded map: ["enum.ApcVisualLayers.Environment"] + visible: false - type: Appearance - type: ApcVisuals - type: Battery diff --git a/Resources/Prototypes/Entities/Structures/Power/substation.yml b/Resources/Prototypes/Entities/Structures/Power/substation.yml index 347b18ecaee93a..692f027386b820 100644 --- a/Resources/Prototypes/Entities/Structures/Power/substation.yml +++ b/Resources/Prototypes/Entities/Structures/Power/substation.yml @@ -23,8 +23,8 @@ - type: ExaminableBattery - type: PointLight radius: 1.5 - energy: 1.6 - color: "#3db83b" + energy: 1 + color: "#ff6900" castShadows: false - type: NodeContainer examinable: true @@ -126,10 +126,11 @@ path: /Audio/Ambience/Objects/buzzing.ogg - type: PointLight radius: 1.5 - energy: 1.6 - color: "#3db83b" + energy: 1 + color: "#ff6900" netsync: false castShadows: false + offset: 0, -0.2 - type: Clickable - type: AccessReader access: [["Engineering"]] @@ -151,7 +152,7 @@ sprite: Structures/Power/substation.rsi layers: - state: substation_wall - - state: screen + - state: screen_wall shader: unshaded - type: Battery maxCharge: 2000000 diff --git a/Resources/Textures/Structures/Power/apc.rsi/base.png b/Resources/Textures/Structures/Power/apc.rsi/base.png index 2b42c54935a53e44d836c54983a944700b94b17d..68b83101d21fc74be03e53fcb4682cefeba232d7 100644 GIT binary patch literal 676 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-HD>V2bl}aSW-L z^LCbD_8|v}ws`M@sz*KZ!rVK%7k`tt_$r^GSyK8!{>3}{j>XjnbssFbuvFws*o6yA z1*|;t3pWKX-D0})$)~$tUwrpzteJCi`tAySe}-rE!JBItBY*6xUy(G&qR;={^GZ>B zhm$Erj=S%+J+J&=^FC$n6rmumobAzHs%#k!RP8-hVRKIA|9Nu;2CKP!MY$rb0_IF- z%M;3^pI)=R$iN`r^yJ!-OfH6uea!jivmVcT88aobN#Q`&Rws!zjwXh$Re!JVI?esS ztI#Jsje&uu-I<52`OhJD2K}sLD^uoar@oD zjeqObhfM!k{!=zx>ch{r^-}6m8*b)s<+d!Daw^$+qv*S`-5Fb>)L&0hv7Gn6%4Ys~ zMvFb7eUEpjwOI7HDS!E0Ya-PvZ@T*~A4A`B@$RD^E3D=!`CdNLKIbNbaH31AiszK` z&#%_0e?C-m-#$dptwc(pbc>T$q5#; zlYM1y$bjcC2=$0^y}!INXQD25=qcWy+FfpcJ@4dCnYK7&+lei$mo^;+(o0$|{d4O$ zB{p+Yz^(i20XLO`#k{K7AoOlVpn@r_m*SWpbQZ%@U8Br}Ugixz_1glLZa)-yTPa#> z)d!vhn_Rc)guGOBNbUBCUJ-Py?UdNY)+C9xM2TZ6@_ygWM2RYL+yo{&22WQ%mvv4F FO#t9gD2)IB literal 370 zcmV-&0ge8NP)VQ!Pj5=V{0R$ajXyg8$QcKPs*~v(@13Zl$9a#G@88abZvsiR2Px&-$_J4RCt{2n!igUX&A>pImgTpJfq?=K|%y;)0~Q=xWaDW4i;`(!AiU9x3s+G z{(%cyq&O=r7F@70g@`K}@8G%=6HXHF<%*!0hy%i0k(*f;*U99^JCp3qr^%biJ8$0i z$@9+hJo&y5^ZzCh^#uIL=kpGLrfJ@_hlhu*_s!4Gdu_|IxVX4@ah=LQGYo;<-CeTT zEU8qAR4N5PCX;#A&$28m%i`qZ1VvG3x7%2j#o^(h@AxBcfa&RJ*4Nj)_vv){S)be6 zTd#d^aKM}2-|(shZ;fA>oSgI>f8-6|QYaKKP4kPNX_|(rs$5@R1MsQ^|5U-=u)B`? z%}{44kw&9|VHhkeEq!)fRaF2sHa38c$9(@S`~=L*%+PE$ea9Ue1K74rxm@P#>v$wbBZI_oA=_rs)CJ{maolxh7yHct2tgq`4 zuE#W+P1@}?M@L7#-!ak#a48mxsH#dPlVN#z*}HyobK|wArlzng3)3{I*X!7}&Gz;- z#bVKS?2%4|*VfjYWHQO(;-Z)RO-xLnC<>2{k6yoey-qfpMNt%LwHgZx3jmy-p964u zdivrzN7?`Yx~@Ay2y|WNgAn}iUuYBJHE_lL{#z=Q3M(rsq|<4RkB`0f=H@0s2;VjO zZhmoW$x5aMg8z-3S~7WECSpS-AvOJMF|O3HWU& z;|5NIWECSp=`4Eq1U7)IVkByMN`++L{0rLs#~sT$c2)KFF}Qawn-)3z!e^s>VW zBJ;M3NB;wF!-GeK9d_Aqh|=R&D?2!UAa21eTBL&#qLNvNPD~5E)jZF5LqwOPztls& zP@X*R`;zbHee&jM4&fhb05AX;01N;E0WM5jYjtb#_C+z$F#sud@lwa;&oy_e4cL1c1W{snwC@7c9?sztv<(#6bs=SU&mzNiL zJ|2%FI+W}lK#0up`8+C>3g?Dlu!$FnG&_46=57UvcmkUn8@&UdosxMblR>FeI&ht+ zz{v10wl(d*1K2hI?UZ&*l4Y4I@F!6PY}3{xa^(#p^dYan&7r z{%XtjzM%jfE-a#73Iy2sphl=2r^aM#t82L4u<`ix4McXH@H`#L>FHb0w3kSwQqXms zkK=ejP$0d$QDebNgQYZjw#|>Dx7X|J{ zld!+7BkAdI@87AY*X!8QsvIc~t55*+7|xtkTI)Y-#L{VecgAAJBo~fUtJNaTPh9sF z0K#zZ6JIB-*G@&8_k2`FVl;*?y9PQ{TaD=Hk&_r1im|DXBuRe;p}$-4 zIQj}e=fDZAbLSP;ST`jx-hTiuL@$gx0`NfeO#lB^aliEw>ZkBEYp;2j6))`IJQz8yUO$r7lTfk8mnAmsVI rJhiK~w(L``O_CA&%mfw(5)HG(PMzQs*>mIBR*;aVtDnm{r-UW|8(uC3 diff --git a/Resources/Textures/Structures/Power/apc.rsi/channel0-auto_on.png b/Resources/Textures/Structures/Power/apc.rsi/channel0-auto_on.png deleted file mode 100644 index 6cce72f795f187e080345f39b4b5a6e9535b9b2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DCp%t!6k@D=*di|ena_m6W3=IERZag`D sD{fYZ{8uZ5-3vC|oG%U*2N82j7=6_^m7e&ye*kekUHx3vIVCg!0K)?-FaQ7m diff --git a/Resources/Textures/Structures/Power/apc.rsi/channel0-manual_off.png b/Resources/Textures/Structures/Power/apc.rsi/channel0-manual_off.png deleted file mode 100644 index 61ae057d5085bb2a6c165614501c52abdf490ffe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DCqC$ z;uumf=k3LfybJ;&t{3$;wx5fz3if=nXjAh!hI+OnW+|ba+biFC&YOCi5vZP_!Jg6f t=f-UzQzu-FVc&71C+FL9R**OtsQbQ|#POi8Amks2>*?y}vd$@?2>`gKFL(d| diff --git a/Resources/Textures/Structures/Power/apc.rsi/channel0-manual_on.png b/Resources/Textures/Structures/Power/apc.rsi/channel0-manual_on.png deleted file mode 100644 index 6cc48bd1a558767f688af4a78c0bf534ee09ea7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5C>Y@B z;uumf=k3KnUIqaP*N6AjIyIbDC^ZXkaVR&;%sgcBp!Mvz%AM=)mu58YJL&AdJz#MV@n8w(H+hbuTrIOQKwM8(KbLh*2~7YMBQbOU diff --git a/Resources/Textures/Structures/Power/apc.rsi/channel1-auto_off.png b/Resources/Textures/Structures/Power/apc.rsi/channel1-auto_off.png deleted file mode 100644 index b31bed6c6ba591c8660a9e211dd27d4db3d469b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DCpzq z;uumf=k3LfoD2#)tQR@@9vMX*biI4fZf>Yp;2j6))`IJQz8yUO$r7j-2o%&3R-D^= q*Jo9A6`#ghRZE>`tPlx?hS_3jTAU(@U(S?*L_A&nT-G@yGywn(LoBNR diff --git a/Resources/Textures/Structures/Power/apc.rsi/channel1-auto_on.png b/Resources/Textures/Structures/Power/apc.rsi/channel1-auto_on.png deleted file mode 100644 index 959a05cde084609af24c0ab328d3801f3c99a511..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DCp%t!6k@D=*di|ena_m6WK=6li!^!@w rdrel_y()Dmb4=ZAuMd%6V3=dVI4hP@=|aSUwICr+S3j3^P6Y1uO tCFicxQe3^0uVAC(%{S+{ArcG>>b^BG91k>gZ-b0x@O1TaS?83{1OQgvEN=h+ diff --git a/Resources/Textures/Structures/Power/apc.rsi/channel1-manual_on.png b/Resources/Textures/Structures/Power/apc.rsi/channel1-manual_on.png deleted file mode 100644 index bd8b013310c1d9c9f962be5514144a43fa8e4d49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5C>Y@B z;uumf=k3KnUIqaP*N6AjIyIbDC^ZXkaVR&;%sgcBp!Mvz%AM=)mug>Ojj1U=y2TM2?%5xl*wb88viFmsDxvXYp;2j6))`IJQz8yUO$r7j-1RQ)01kA18 pJu~F{7ny)4@1lq^+z^R|*%t!6k@D=*di|ena_m6WAn-#tVX}O7 qb!JfQmDde#nogzF$3Y|*=9n-(pTeoMUew?rNW|0C&t;ucLK6UwsVd|E diff --git a/Resources/Textures/Structures/Power/apc.rsi/channel2-manual_off.png b/Resources/Textures/Structures/Power/apc.rsi/channel2-manual_off.png deleted file mode 100644 index 5ac134cb54b5c3e8c1e8e04cc5059eb8eb7e741e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz&H|6fVg?4jBOuH;Rhv&5DCqC$ z;uumf=k3LfybJ;&t{3$;wx5fz3if=nXjAh!hI+OnW+|ba+biFC&YOCi5vU#n{;_;{ sa{N|Ms8d+6?1LoZO*iL@LnIi~eRY@B z;uumf=k3KnUIqaP*N6AjIyIbDC^ZXkaVR&;%sgcBp!Mvz%AM=)muyWa~%D0H}Momz|+;wWt~$(69A*fFO2{I diff --git a/Resources/Textures/Structures/Power/apc.rsi/display-charging.png b/Resources/Textures/Structures/Power/apc.rsi/display-charging.png index 67e3b3df19b80ff3a55403d46b12617316b41bcb..0f26ba31bd31de4d7dcedb7a37e94fbac440a1a3 100644 GIT binary patch literal 809 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58aUX1(0r%WME)=?CIhd zQZeW4UE82f4h#(suP&Sb`MR{&%<3TXHtw`*U)?!Vvn#n`nzEh_v}Gc8o{{Cwxw{jFDDZT(ce> z>;L|H^nCi8TJiYxll$HMYj5v;@%s3?d^3H;7J*A9otMskuKj;ukK6v^><6yb*M0u> z+2Pni`Tg-Czr$v!1^zl4)>9Yx?)~zYHOKyc+|IrwPW||c8})zIe(7FhHIK#cS7g{+ zo*!5KZsIvU`GMT=`o6#Cj2m{{+v?Z&s_Oge<`=i}XEXU;%&%iU@?!qw>+-kcYXm-mw*!N!jHWbkDA_S^OEPd^Qg&=XfbpB^dt>5t`=uh9`} zK&X0Mg_yXnq-|I7O=|Mg$DS@6}$((U-a$N5X+MXr8S z>9}}))2oyN%im2;wV229-Qr*UUi%ETfa|-jX$Hi;Z`)J5yzaJ0MpxZuX$80cbN1EE z|ED3&$p0}y+!5ri_srNl1QvU)mnUt~UVHxQ*RSHm&OI>f$@TJ8}1ruv>4>#Rlh|FCsjv|qm7-fjPN*8|Qq?|#n% hhEcIRit~1;{%7RxoaJMay;lh&;pyt^s+d%^$! literal 434 zcmeAS@N?(olHy`uVBq!ia0vp^2|(?c^ovTa+^IhvZX^Yb?vx$2l@rImepd-&=9 z)sxOnGM_wsf@T^I&|C(F1@^8vmtMTs6j|o~*P^p-e~97FeE#csKOaBVp8j+F@q0UV zmS$A{w%)(*pH21FTWTwRUQGIATY1)gSHsTV-FM#~e}4JayK`=3Ri7VO{ZxFeE-v8o zzv^9X#?Nd`^Z7mVC#_o_b%OK$jvIxQPq!bRFnRtT?u!3EVs?~mxM;b5@;8ZJ=eA#y zDEbu1>iQ{)btiAc!pv!PZtJ>~{yz5k#ed*cV1oo}2RX!z1!c!9^GzPtG<>RYIPkN9 z@maB*!<_jc4ma52r#*G5*imPF`<#@=^gll(ru=ja4W0XWbC_dd{~!P7tiP6=JAYJ5 kV_wNWaQHAVeCVHfQ{38TwjER2t4D%0W^={ zkAC-+=KTBX|9(o8oF_NG-ZuNY?+d=ziu#`(|Mo2`dfr~|yZhbYbc@N`{8nt=9>2T$byeuxcUM#f${~6t%&(G%YNYcNp1crx?d&T62BXa80% z3e`z`H~-bEikf%D|3fY^O)>cHFM5~%gl+kGkfjbU>li{-AJ&OCeCQ0)?dj_0vd$@? F2>@!9sZ0O> delta 260 zcmV+f0sH>_0+Rxe7k?lK1^@s6qMd$(0002mNkl^F_}-3RWAgG+beE1OMO)N$^}SA=isjsR*IUX zDh-!Yx`~TcI9C+;tO8oK#@m_v#9%x!7|Sf*w0u?p-k`F5dJg|dLHTm;ZqCsckSS(g z_LJ?*KNp%GFwOVQT+KI?3%Kr1wC+2aG3LIV4*&oF0000#gNPn&21IoY-A3mC0000< KMNUMnLSTZ}9CMKX diff --git a/Resources/Textures/Structures/Power/apc.rsi/display-lack.png b/Resources/Textures/Structures/Power/apc.rsi/display-lack.png index c4c103eeb9637ba3dd9fa8325d5cfc68a16a8bb1..e360f9c6bb03889b661d04fb010294d449fd8beb 100644 GIT binary patch literal 557 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSjKx9jP7LeL$-D%zpL@DEhE&XX zd&e;Aj)Mr>gXs?%93*O5WYVR>6+;W&E9c4wv4-c>%#l${U}4sLbf_ZmNu<%e$jT*m z->(*PdojH%y|wFm91GA`FetFHn0{ohf?`u|5A zm3~ktQPw}F_I2^BXa4J#rUGrer&_O*YrZ@CMV>t0IsH0zpnLv3)7y1s@w2C@DSns# ze6(Ls`fvX1-IMp%LwphD;dw*w)6^DC&S0T3J=MsypQpB@+HF4T>Vbugod`5cKQbdE5QV-tWJ1?^{9b|JUz+>rcJQ@ay08``_cWe)BDOAAjE- bV%&x@f6mDT`gvbNjX?sQu6{1-oD!M;@Vm)1VnF3^p7%gG|T$=iK!B zmAgCc&UfzN5&!@I0Kk9JSZ}?xth(>aKFgTv@!HvTZ~h_Ax$||_gJaXAiR-@oevV__ zY%ZV5XCAzUvJiC2(tOyFQ9xiZO<2OfQ#o-)$K^3T`3h+xY+h g00000@H2?$1|ncVj%3iX=>Px#07*qoM6N<$f-?Ji%>V!Z diff --git a/Resources/Textures/Structures/Power/apc.rsi/display-remote.png b/Resources/Textures/Structures/Power/apc.rsi/display-remote.png index be343a987b0cc7cde7d68596c08969209dccc843..089eb9345e78d51c68b75681f40f1d1ebb87f34d 100644 GIT binary patch literal 510 zcmeAS@N?(olHy`uVBq!ia0vp^3xK$RgAGXbBqvD&DaPU;cPEB*=VV?2**iR4978JR zyuIt_ci2FHH6Yw6hFR}|?00*|$il`VUbDnTt;k%Cjgu>UKHXauDE_z5GS*V+nJyJuUx%jN$%&l^^-r(PrHAhhk4$;XaD0gfBrsGueERT^XbRm z@3ZT!Uv^9Pe~s_U$EJGr$H;R*C*-M zm;a3Vl>NEb{q*%o_2sokru}$Pqx-WFC>Xw2b-!A?w;jy&$aKkpS4_|2tNyuuj{UyN z%As!epHGq(ldB?RCrrA^JMrh#)za5A55$GBKe_H6Ggn}4{Kj30bD7>GmO7Q}yUH61 zlzVaUukDlQyU1pO*aa-l?pfBa{@l+ec=PZb%b)+1>#HmR`HPjE={PU}$`1_*I+Ry%-HH~esJ#)AFocZ_s;LEHMw%^yb*A)MUncNV$kMYOCfK56+ Qf|4LHPgg&ebxsLQ0H*We{Qv*} literal 337 zcmV-X0j~auP)fFDZ*Bkp zc$`yKaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TBGg33tGfE(w;*!LY zR3K9+u^>6$Sl3vIi!&v&s2C_>$iJ`a59%3GQY)wNEBst*-oiXVyuN{hje&t-cVm7QkYX$ja(7}_cTVOdke%o0;uumf=j|<9FXli2h6jQn z0!&ISZ+OBO{TIe&aqB;n-P3yQn%K&>k2EjcIASC*#lb;9F|5nJbKi7dkFvk})NbBA zkkeLq_KXYAWQKs4^*3eWW#9Bq|0}0?Ex7(hM(O`Q&fn|J+p`4)x9guTG?x*pT<`R; zSVdhyDQSIN_vXvX<-hB%D_>+UQ5z$lo9CM2e&lh@rX89|N)g8Im-S9iWqU3q@h2CHxl zM!~1?bG7F*bQG;WC+g>LGyFN%+O469rRxedyk3EWje&t-(cHQg1_nkiPZ!6KjK*XM*2M`TJxzfITy6(7K%5jNx1?I# zEQ^o!il*z&Jr&HATj_8nL&))W{QUFkH|xZbM2k9i8+CMlcrc~@=QHjZdOB;8Ey`bN zHNS1$`#;!KRpLqhodsSC1hVZ{HoRbHXneEbyF^lOIOn4J53VjQ66~Jgh^tW4HmyW*Lq(xN90G*Z*f*ja96>Vh)_}sLD%Tv`x9}@9$6dPv7l! zbiY2MF*>5<*0EsO09%H%{dEUFytwII;AjC0C0LLtu=4QmFg!kzZFMp3pa(E`89ZJ6 KT-G@yGywn&NS)*W diff --git a/Resources/Textures/Structures/Power/apc.rsi/frame.png b/Resources/Textures/Structures/Power/apc.rsi/frame.png index 7d3529f63f585d058a609a523196e357fe83a8d1..4f8ba4d56effeee7f96e45ec924337bb6f6d9b2b 100644 GIT binary patch literal 610 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-HD>V3P54aSW-L z^LCbD-XRA8*ZM^z5sU6f1uN}V{CCOx@x%UdgYn~Cqjt!~p&w|?9!z`*dxVqLH1 z=}jMZ?G-#A(R}&kmk)n3Og=?@ziPhle-p=nxeVreE7=+To!{AekE6gwZf^3{Yv(rZ z6?jl!VUpFN$0Xt!xVub0>fz0twv#EJ4A!k$_4?=S$8XEH58UIj-^#$SV2V}t+K;>s zWakHDF|V~>aD|OwL)`j_&n=&QwmkOOux$6;uN5039I|uwy1!PwaMa+@DRG7e&)4s% zUza-Xx#g-=yN=zJ+nwO6<2k8V`mjd_gV)Lh@`@{%^aA*lORwB@&^Y&>DdaGR`8lQl zUgbMH`$WYUcL+aN7N~va`tv(&n;AfIeoR2ccdnE*F}yW6Ys<>E&D; zI}dCQZ&2W90wJC$$7-#nMjv_VRJrqTNc8m;+mGBmd|PgLQTML0g-zes19rN`?h0^Z zg3!(1SzQ?3vFzZyr{elltn{f9E2jgHe(6-n4Wi#VRc=3&yW2HJZ_0J^YOU=Zhg-R- qphnyi6(|afW(`=Q4Ys(TKVG!?@I}9CHM+n=!{F)a=d#Wzp$P!LVGZ2? literal 436 zcmV;l0ZaagP)Px$Zb?KzR9J=Wl)p;?VHn3hMT3Z87eQc$6>kJC9+A{gkW)dUOARgl18p^gThb5& z{t^8XIXTqO5P^#j9C2a?!j(uCZZ?F6zs@^Pp@#RfJP$n2`#fKshxY-AL?ZcPrrZ)X zb`M(PHhI3kbL=zYrNCZd3n5hh3XW1OU9XVKUG@oa74Y?L0if$851nQaLM4+q?~A0< zrvqPjnn2mC5{(2Y6bb++ibAbc>++MyBxSRT5GsK{U|Ol z%_qr70tRt)@&-VC|Iyd`kynsP9ov2)c*Di*5-Vp-!uf6Ld;`#EG$tz`8d(HB(KM~= zH|QLqX+XX+51P%ULk*t-0ECFS=ID9_fNb{KG1iOgC0vhfj(rJVN>7e`Tm``IIbMw{ zJB|^cSbQKJ-?44ktnz9aL(edbuma1nhQCDa*wfX|Wt~$(69A9_B_03( literal 155 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!pn<20V@QPi+hYp_85DRJHp<=JXtl2|_CQIa w+=(N9*cll9YmdKI;Vst0Nr^n-2eap diff --git a/Resources/Textures/Structures/Power/apc.rsi/lock0-unlocked.png b/Resources/Textures/Structures/Power/apc.rsi/lock0-unlocked.png deleted file mode 100644 index f6377a36b127b33b6209ce3c8704f33b2c08f5d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!ps}ZmV@QPi+hZFA83Y6v4$AAU^q4v;pd~_B z<$irD0oy&cRiBUv8jg_@oLYG?3t^>bP0l+XkK6U{F8 diff --git a/Resources/Textures/Structures/Power/apc.rsi/lock1-locked.png b/Resources/Textures/Structures/Power/apc.rsi/lock1-locked.png index f92c04aac46374de8c4d906075a9c0e424b7c63c..3dfeb215d2ff01d79fb46bf242d484906ca36ce3 100644 GIT binary patch literal 131 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|Y&~5ZLn`LH zz3IpcRK@Ig=fVApmW-lLoMr@G$lol;z;J*~e{)?vP$gfH8;}G7z1gc=wM2k26WF%3 Va%^2SnQI?N*wfX|Wt~$(6999eBoqJu literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!puVSzV@QPi+hYp_85DRJHp<=JXtl2|_CQHP v*Qq0a*cljnc31DeH7!)O*yuIGi;f@XeOR8P^-Em>YGv?r^>bP0l+XkKsT40S diff --git a/Resources/Textures/Structures/Power/apc.rsi/lock1-unlocked.png b/Resources/Textures/Structures/Power/apc.rsi/lock1-unlocked.png deleted file mode 100644 index 44f9af733faa8274b9eed4cb3bd2add8b2d10d28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!Z!ps}ZmV@QPi+hc};3<^998|9`2w0QX_G)W3? y2ytLPmhzLIf#Jv6^@YXWQQu}8m&-AT3i2O{WO=+I&R{!GJA*+#TaGXscmE#u_{vKib)d=*p?lTm=ER1E&-*S@Jln7pS=_$>FMg{vd$@? F2>|c6G7A6z literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJP)`@fkcie~3D(64B0Wuk23&3j zH6&P-c8#2y0nP3Ql}17Wb;P!w70iEe0O)Z%FJe-86H;?jvqgLKs$wf mn?#E{NEgtE02T=e35F}-TufZmLFPaU7(8A5T-G@yGywocj4ZkU diff --git a/Resources/Textures/Structures/Power/apc.rsi/static.png b/Resources/Textures/Structures/Power/apc.rsi/static.png index 43089d0d81144d506157dafe4d56335d3d60f0a3..7275cfc9feb5182fb6fd1c14eaf65a667ea4a70f 100644 GIT binary patch delta 427 zcmV;c0aX5g1H=Q6BYyw^b5ch_0Itp)=>Px$en~_@R9J=Wl|5_1P!xtAp{SJn9>HqelFR0}&KC~S^TmwiYKh(G z15ld6*QXq?8~~8Z=4gGm(Y$GxJP&%&yrJDkKA{0p^R@uPfff=8IVrd+(TliRXEj16Zz>0I{2JqqyJoJb*UX z?Y>;a2kGAO0K?(%q=QHZAq^mP6l@ zL9tjo@JuEXfGF>}ZZz(8yM$pFyGW@|5CnmAKFPbUSR^_CRaO6VBPP9pRH;&>`Ub7& ViNA_R8r=W@002ovPDHLkV1k@l%Zva3 delta 358 zcmV-s0h#{91AqgNBYy!$Nkl`lxVl$B-3vV7jkb$I0oI^gTuHw+963=GXTW)rk5iq(@rSy_hR?%gLC`Y8&5N6%g| zu41BOSJUot2w%P<^{fjHpp-)s znsWyje!cpNqRw^+EV^VEwlO@To&%yhyfMT=j2sx2?bwPUMzaurS;QvB4YwQ{pjikA z>x!W8cRoD{7k~BS3++NcPD-5N$cu9fkLO<|sE%eKP^*zjPz@~mky2(5<$!HFw+&oT z3@eTmrR3p3j9(2Lj(NghyF>;~KYI3(;r_FSc#C0@qTtON{3Y6}?GG3pJ!6H_gw&H1 z0&1GZ1S_PE@18L53(3G~7`S!)EF;4x7zLwX6bxnn00FUl$Y5zb(*OVf07*qoM6N<$ Ef-a$)!Tzopr0K*kYegFUf literal 1105 zcmZ`&J8aWH7Ru-7;_w#$?;~1=}jY5IBNY2w_(($qUl&o<#zlI24 zi_WPd&&r<}=AdgLXCFxF^*9@l)dB5!jEZLXHu??}t`fbZblAqxMghbBN3^+D` z;8upK7K-em<3aWsFYp4FO|UF0dqzVlDa$=N`O0wX7`qYx-ENofUgjOI2~z2F8VDi~ z#Uw!_(R~|he$qx~Lnr%w6o_=sbg}8!EcL6^oes`$91YYTVV;KGkK=YcD~Mv~09vpO zZHz#QPl0hfY&HfN+NdW75eCpdgeHuosV>&95T%xUl25NblBgcUMc4ol01yS?dQuRR zVjA@8Bk9YAE@2Z}Fc7X^PoQAV!oyaIrxI8uRaUYzyP4tqqyZaR$HH6|b?OLfR4EyR zxM6;19d;{&F&W6TZfUIqkz;kJzij%d9EdSw99%(2sE#8YUQ)8Dt3zO$06%e{)cj^^u71OKh z;yae>Ur=CLT01(c9zcRQ)ETk+keP5fyyh3%--ku-{j*otg6jok-0?9(`3@|b^RGxXWZ2q zB7j{wC#IgS|6rJtu34$#YVnq&J1t%_oCf5BmK(C z*bsuZa$L1oVwW5bve$Tl7dR!svaIYGO{rYC(WR5G9Jh(FD*@p9KJQ=V9d84qv)L>V zL?DVOf=HozHr9fajm}3-j{OuM(mm6~rem|zuhwwdILC1`P;W$e8hS5|+xDz5ilGB& z!4|YJ0%<-CM)9!O>}P1Bt{g-dK>rY$Fp{RaSieG)S`J7)-TRS5^)N2N28aQGCygOek$S*dZ0=nYwCY z=(!%Lt}ve14L2S!?5iL9wryhN*ujuF#)`d;l=rajcw3e5CE_xU1$7-olE!K@YJgCF z(g8|B2EA@l5;xz?Pm&gcY9U{#&gk{zF~#Dg=Pw|9TOqCKrH LuNC$d>-UcUeh*F) diff --git a/Resources/Textures/Structures/Power/substation.rsi/full.png b/Resources/Textures/Structures/Power/substation.rsi/full.png index d179742669917dc41f20ab033580a2627040ed23..d0b9726cacf1f8b56586214f2694b0c88393ffb7 100644 GIT binary patch delta 81 zcmV-X0IvVk2z-z+OEyVFK~z|U?ai?b03Zwl!7tcWFmgB|r$Jb0T2J&Ww%LC=C9xcXkw^^5kw`^Z1P-~Z$H-v3#7eQhD0h%*ec zP%LN_va@u~T_!6!IQUJr8B|%zGsmBoev*%?uvTo8O3W>Co+FcvFB?Z>o%afLL;$bp zoVoIH;~T@oJgZv6wbDb`aGShty4#QsnqJ6K0+}3}5bJEvv>hY|SuRA#`i6AS@>Cj6AR^Qz5r&Q9gz~P7UGk!Q%P2Y+`kqf- zR~S$1g`18T_ce&U=~!63a4=>bVh!Dnobz$p_4lgbO$^I871VPSNjmgKqXr1&Cmo>1 z70~Y{HU8lJ(ky8)qp0PowRvM}arRA8NL-q-bdsH?r;pyQo^`vwzJL6&_;3F_lQ?ipiHqqFWO;7Ru1o7ZFY!bws~bn?&T4~Ij|GP|m{6xS>_xKJGTXXlA_C36;_au8Tx7MoWrb@*dh z#_i9~_bKg<`S&3t;<-t`chvExt6!9VI{oA|L+|tN{;jW%-#s4or}lo(`*qAG*uh%! Y)H&8$t@*seG#|wEboFyt=akR{0GeS&g8%>k literal 1652 zcmeAS@N?(olHy`uVBq!ia0vp^2Y^_CgAGW!%qVXKQjEnx?oJHr&dIz4a`;jsJkxxA z8MJ_G4j=}BOTm+YBxiv~WHAGS#w-wK6t_~`#K6Ful^GII65;D(m7Jfemza{Dl&V*e zTL9K&Q(*;U=BAb;Dpcg=MLA$w zQj+ykb5e6t^Gb^K4fPE5vFR(xOhdRZuNWE}z<|*Q$pEz(VAbYXP?Br{3@O(NpnIVH z13EMrY;SQ%iawG8eIo+{3ta;vT_a0oQqvMkb4rx#fB}`7nrEXAQG==%B8qCHjXoCJZ9smuiVR9E z&d(_Yg}R-QnTZWJBv3>V;SbRffmH{xD7ub-jQo;(V0tRbO!mwxNi8ZU0;Vm9jZph= zt3WpkVR>j?W{I5<)BrSLBwa{xW93*>Ql4Lw9RiLASRmq505t>>ph&3`lJvoW4@~=Z zTsHdfd}PP@W4-g&}~0uI@4EG7uXG;nmXm~n_5;ov;T^-ZSn z@PSYZrVXv4r!9o!4>C0}vOZJE zz`$nEz{r!pz>LNWyX7F5@_mPlhw>hgnmQYS%CNab&IRB1&p&Xy{?V`79IHxp>wWE( z-c}REc}I5dzGVMP_v-Glg5Q_?{~f#j{iXcBrv2;wy^o#x?|j^pfBfm6+n=*- zx;|s&>rFeAx4!*+sq$CYlTiJdv}f=B@A%;GbNkfw+-FNZ|M6D-_xi-2XPQ6lFaAmX z{642^P7Bkqf59J$pUd4dk=U2y5Fb8R$mK$Y4hJAc*eoar>!pTGhgR=zJB2! zm$N&>j{jW#Ap4{A^`xME&oW}VSD)eE?r>Sw#`OH`4nObo10ipDKKxy9z2>@U{p(ku z=jz`vypaF)C+GdQyXztqXH2+p@yD^P60@`K=l@wdd-~Gf|J=9z@!uEzZ)(xg{Fv@% z>Sb^C{CV>F{0_0?g2TEOIs&%t`=Px3%g!*f^1t)#JwN5|U@xnVzc^JveE*FrKNZ#Y zue&>W;{4O~m9M+jZxZ>lQ@eqA_oM9*vM(Aq>ZiNPvR!qo{`B{h@7ehWzG^Vrm;c-O zQ}gfnSjHyt72-kf-m1hh%H-cM`jGqd^ZN;n^R55i`BQj*ck_vV>ER5qMZ16BFL}DQ zH|b$G^LHiBSJu5rVm@BV^0dmq6Noz{xB|UYPx>(f6XCKiSOy^=d#Wzp$P!kmv_$q diff --git a/Resources/Textures/Structures/Power/substation.rsi/screen_wall.png b/Resources/Textures/Structures/Power/substation.rsi/screen_wall.png new file mode 100644 index 0000000000000000000000000000000000000000..c1dfb87b1c1fd33618dd05d25aa959fdd005fd18 GIT binary patch literal 330 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSjKx9jP7LeL$-D%zSv*}FLn`LH zy>pPa$v~tb(d69&wN32Jo7(dpiBuU0G`?cIb?EoLZYifagJt5Uv!#Igp`h&jmXZf$ zxp6Cn<`dgZ95kKfkhhe*B&9*&<8dn;-w4 z$9jPsVgTRC`v(vH-qykjR+Y=?tx>ywTgyxF*UT^*pmadz{$)N>=7lZXA8T)^nxk{* z$eNB?ZHEtaMP4^%bS9R5xxSB2yTJ}c*KecBWoy0^XZ))Cz4u6Y9#TH2@(b@;%i(wd3`IzM?2%0*o;X1_P+7 z8p~SOb&N(M5JJ%Hb|FbptbPE;aWI`uBeDnqLI_k~0qM%l*B|6P5 z1D0ha1_yG?fTn4woQ}uiurJyV!ZQEf#w;K3dEaE+Y zR{+010UtgBzkULfuTgTj)xi4L007Uxk7u#oRWraCgRbiUfG^dL(vD|fB$x9d5!r; z>D>u|n<4lGk+*rJQt?}@R<42P^EoJ`VcatUxkf*NC-4Ufo(>}r6%T0u0000!A1s9;GP7E=-8dvv%CNKzW@LC+x=%Y zCx}5a(A%a50DuAA&o>wv5$dk95&BA!lU2|FlLXT!K>eWQ3us};Wzu5<0su#7t^;*- z8wx3ezPcj62nhrzS9h3pQOIKe&=T=NnIJR3pTHKzqgfnb3>Phn7im~T83CHcb3qnD z7S9(*2r?2Sx|CE)Ya$`bf2!4VQthT?EzS&4iQNtPtWNI;faDI#VC_db8c z`o3Et<|7#p)%zwy1al=qexlkR8ShHei1D8B-4U!1m>(moH-1P6Iw}N((2WxF*mMEN z6^q2s?b5`E$6G=eBOS3Ec}N8=Kkh z9UYA9?Ciju)y$dBPN2A`=wuz!sE>%J9ZpRxf4jIifZNeu(Q4{w$B&DPbDin!g?nmK zw|ET<3@~8TpIt6sZBi?AAMciV^#tyl^X!#2qdz* z?wnkjlyvjQt5-W+P$)T%%iU$&Iy;+$vgqy8_nV^_0G(}0rAaBxv4Hx0Tie^Dm>6W$ zl`HaNs@d7#fB<>eCcfMD9DjaoZLN9TCg8yI-pR?yi1JgXxN@5YD42)w<$1@m`%#;mQa z%L4MVbb?!a54t4kduZ!OT01(D`nQt$1_n06JTmk%7Z=kS$4W0E_4M^s=CGr0^1Y56 zx%fw&ogprIBypi?$@NMJXBofY!aUIsh8%dc^y;*;d}q&{sGeDyoTtn`&A!aaI`vpE zS?SJhzg@98@Ik$x(LSAGmX}5KIJBU5>DTYbZ_6ty3zc(YKYmT2P(;!c5(Rhc*n>93 z`1oP@`7u*fNhF|U3Om$hqx-aZI94?>zhv4zH?uV|b*bDnBskc^cp#P@GOVI9Jw`+C z2WbcGnZ9r^I@)!I&uba>-^o_CU!1MX*oPT=%McdXF}%g%#@NDzS);~FCW4H4t9wF{ zpex}Ms638xxmjK_uZlMoEi_Df+ng|{;N<-`J-`h`172@o2^3AU3R=ffYs48OE>`~ors~tNAk)hW%nvU(M zOs@`qN;dJ&7;Rge>v~o;Y^#vIWd59*eG`6|+`o{Jno5*ks!2Dm&&ASZ>m@gL_m*pIZMTd5X+fn@86GcQytr4hFr{oYDt8P_SEkEOr!?&Jt`1t<;{j!dN diff --git a/Resources/Textures/Structures/Power/substation.rsi/substation_static.png b/Resources/Textures/Structures/Power/substation.rsi/substation_static.png index 9d5b8598f4b8d92b0a1af88b799a6f72c26186c4..eee995843f194939f7b115fd33950de15b7016e1 100644 GIT binary patch delta 613 zcmV-r0-F7d6N&|pFnNklbLtBDyhu}8mc_;Xl&+}HNdms_!?G;+zMrWp>VI<%|Hmh&M1rpCv5}a% zNS~$?@m!znc6%c&pzAsh!;ptz$b%r@0C*4tnL4pO$44Yn5lJw{;CWs=7G+h}ZntCI zX0yrd!x)q1DhX?0aWRNECk8Cy1Dq&A00_e{m#(N!A_KN;$hT(7s z!!R;go2H5Jcnm@a`u#pMP0O^8Kq9#bh#x<+PKNb_&iC_#T|1mBe5$xZEj-aPI%@x^66&Rs-*=RlEZ53&7_e0A2&| zfZw+=xzcLDJ2U|J=>Tx{^2=Md0KMp{@(lG|_A}K?o_F0qHh$ z9Or6xL0;-@`1Dl8!^6I!A0PK@)$#p(_Iw`udcB_9+2Ntc0r2_PeJg7$K1y#C0#`%y z38c4qqtW2KUa!=^i^T##5X5m41WJv5fJopEs)!0GE2M_400000NkvXXu0mjf1NJ8< literal 2444 zcmZ`*3pkYN9-j<~jN70@Ok+3M&dfJP4Q9tg2%Si#GO7u4!Dw#H_sLK+;-og!lv25F zxx^Y;CFN9-TQ1wEwB^!J_T)B&9AZ=2nbDSd+V^?h+yDFh{+HkTzR&X=_V@Eb=q}NP z!C(j->up(qiT!vl#T z7ql8dRIXKK0F6>Zpj|F#s;@uFoiAje2v{5zhbHTyP$-g+8Ac57Soe{x+_|75AV@$2 zfavIGY_tQGFAN9lot>Ql93H^qF-immjNw6{A`B0-nRW8F9}gDD5V8djo6ke3{D#u` zQIHE7tqSz1&F0Bue2OE85^~g0m<)i$VR2bJ2n6i0_Q1Dz5IgL1hCJ}297+SljUTX<}U{I`Rz%yU?CPKW3wgrfPvU7OV>F;~Wa1buWgE9sm&I{N_B z@+)5eS(gNSdQD{A^_7-dFql?`kB8f4s*XI6?|nLO@dtS^S5d&YhhjX-A(#|Zu-Uj& zbNw|_$?xtb(^DQKSN~{xf}>}00by20x1ePnsA(kFGA~RyKJah8gSd(@y{30#xlI>s zMO5YEp|`^^*8K)z{bGUxm<5hRfyh3*Zg8zC2+`Vq#)v5#?giA`_EC$L3)G zfWLgghP8L>e?IJm;?B-(7#EkN3D^+U&R6zBh=; zWUlDA-P_jIHah*@V$1rNhF7m%tysA-F}=)45+!JI4Gy-Z)9F&;VDai}TTV*iihub9 zny5`S_}&Rzt~Kzo<4U?lo&}}0T=Rv^s{7h;&PVq=e}hC!R0exBPLA|k;$zb***a3O zRJI%@!f4ySE^9wKt)1q@8+?~9Z@QnhcEL<9^24qtr8=!mO-AwK1Dl-pAP@+nff8}u zozZaZQ3Wz-k4D09PhC=Ftxm*|Wln@P;}cePVqIy2^S&wE+v({|!NGtlcE@#bbMyLJ zW+IXm?c%=XmKH6kd9}@0&;!H3^aR)ba#>>Twc2>8?GkfyqwI`~m6^>4BpMB{%^9YL z4<9Zdw=DiwA`TvM6zz^TH>8BTJ18)v62~1Kz=eUOJKRD;&mW46jQq8{Jnzx7ncm(D zCT0FBlG@v;QmOP%w^?Moq6UpW3yz9`wrQBTibg1vN_td=%N8k4mS>4?`H+5-9 z2J-f>^3kIAgdOL)>YbcsZU}aT7(KMUG_kFm+eNS>iToX}Xc^udZbLXB?VIPiAJ`Pj6iWE;Gh(t6tb!{|7YAv5_SVniv{-T4uUY?H22GHlJRqC}GN~ zbIKj|T7!>sAJ)`pJU#D?JkxSDQoB9&p5Bf(JAShK9sNAZFKQ|9II}v*bF#-F#9VL{ zo7lLUeEa63bA7%IwMvK@<)37w+aEVXeaXZ zYy4K%+*^@g=6nOIpNoooJTy>ba`wn@p_exzr1$h)qeY7@9vPsOm2RunFVHJA8h%=t zo38jH$Lj8hOI3FUN@?`l;jLDq>&gQfo*8!gv}+i!jw)bJ4B{z%etzl4m$_I;t2Rw% zULCp8U3UUp(`y+d9L@T1kQleFqksQ_)W@BBUoxI0n{5|d)+FZ`Ad$!r84&E5@~}Nn z*e7LJ$DceJKSd^K_J*gk55;dF{qbgUEZ?`@ZK^X0#W{A|EOM0Ad!{v3d}9*ngb$Wf z5oR2Rev%Cke=n?~+@wh^g;)PucUMXIb}Mih+BP<1t;K%5{T0FZ8jIr68bb*gnH{f4 z;3ragUhmWU^DV7J{}e($_trC-Cihr`CTz7$pPikZah=@VyfHRAp)5&$eSD~89fkdW zZHJwN{@@Pum_gc%26pGEiV6KPtx?Z6;RSbm`N-F(j3oALuF-U6@)xxb2urIGBKIRePM|LfQ`A)7i6ia dsa&9AKWtwQgnW_xQb+YCW diff --git a/Resources/Textures/Structures/Power/substation.rsi/substation_wall.png b/Resources/Textures/Structures/Power/substation.rsi/substation_wall.png index 155ced7128aadd1cd7719d655ee751d5741d5e57..ab250c6747ddcc8bb5486ae9b54352e4557df9c9 100644 GIT binary patch literal 588 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-HD>U}E!haSW-L z^LD1~rX~l0mfxX!Cm5-=F-N4XnP~p;x!Am;Q<5ce^Rk|#O;DR>I`EDvTlkYKQ5^;|!7h68Dv3*#QYWvNK5 zkItTdZ^71Uk@eP$4X^*zZQI^B&(Gmtfknx+@4sv7)fXg~%}(4IleGQzL5XIa(*-+Y z^1jCTGZg%NDb;^`>(_h!4j-fA-QTM#oHk0|dtKOI{`rZ|EgxB|vthEG&v5&V zM70GICAl))R;|nJIry<+jjejuqT9b4){A>w7O9-qZtT49%n9Z8!;G1;%wn&d-g1jc z5y%g{A2fZ7kirpXk6Du#a*UOHpRyR7?J(II-H__Gq|lC8BF#l=IRlTeQg1Lro8-h} znhb|~Jc6|uPQ%Hnw<)s)GrhRG9`BfV`SU|r)&LRLKp@&T_1gMnv27|nagK{Nu5%J{ zTc2<W8u_b(XcnWmXdu0TS@L~4gRx5Dw@+d~u0eGr z_W>Ty8GHAzCbX%XiHl=0a26_4c&rLi!fxc}e2B+$36tbvvz79 UQXQ2>tmIipR1RclAn~SSCLx) z)@4&+1!U%?mLw`v zE(HYzo1&C7s~{IQsCFRFRw<*Tq`*pFzr4I$uiRKKzbIYb(9+UU-@r)U$VeBcLbtdw zuOzWTH?LS3VhGF}m(=3qqRfJl%=|nBkhzIT`K2YcN=hJ$-~i&zlw`O)1*JtfU|Uj> z^;2_Fb5rw5iuDck4E3?;E6GelxG=968XUlY(Fe%@wHaX5=2=jZYyu1^*9xF}p#B3o zG#PAfaY>3kk^+4r0|N_P10!7{OMSTifX=r`NwzA8(5=(PRlD1c~)z@`CN5M4t+Mt(^?Fhvz*CVS?Uq!twv0aF*)J|n1g zxK*H=g|Is`FSEoBW&oNnk}jm!v2rXbDbFv;4gtpmaxmgl1T_c}q)2HLk^#WM56l5} zTsHdf++@e)wNr)_m~E3iT^vIqINyfu?rnAuknKCo>ENW-$mX%)z$P851&q5G1(gLS zTQsrBI52y(_$jzHRlHAIy756mE}up0CgrthdyPNedpwiBf#>A`d+P-X^&+lkHm&gu zTD6Ml{&&lBVh#Q>r#{PsgvQQE?`d4r@v*SXzkrctf(mEGEI0e~ov*Dv*yNY(d!C@g z!0B^YQ!rgBH;lV-F1C%^xeEszy7X6F#ex7ouu z{ZQeYrH_5no!ILp_0Mm){g!Pj%(w{6^3y7B$bxqs`n-TYbe%r|n{!|rF1(*AMl t!^?KY-22v>{v^&yL3RS42Ya052iEn!3SOO+k+lSsXr8WqF6*2UngGcE#qIzA diff --git a/Resources/Textures/Structures/Power/substation.rsi/substation_wall_static.png b/Resources/Textures/Structures/Power/substation.rsi/substation_wall_static.png index e810e6a5a4a1f05b179ffa3ce073d8b35b632e6d..f4cc933b4a505d373702a5af5eb4eac868e92d88 100644 GIT binary patch delta 300 zcmV+{0n`5A3)2FSFn<9JNkl1up9W7SR<^YvEWnrRommZ;B9X{{=OH9WYrPAJYno5kd?!%d*Kl!3_WuMS)Uk@f&L`RaMRI-_(Foihn%M0Z5W$u-A1R0Cin2 z<`^|_&HY+y&la%OUe^HZ@Aur@!b%Q!UY_J);K$eZdJcF#Uysk5?Qy-??sZiMP7BSg z@8W27skG#s?nJ7WxO+s+0FArAk8 yOJ_lvra0$D^(96xq?AFE?h>XNh(schKj#N`LZQP8e1RAM0000XQ2>tmIipR1RclAn~SSCLx) z)@4&+1!U%?mLw`v zE(HYzo1&C7s~{IQsCFRFRw<*Tq`*pFzr4I$uiRKKzbIYb(9+UU-@r)U$VeBcLbtdw zuOzWTH?LS3VhGF}m(=3qqRfJl%=|nBkhzIT`K2YcN=hJ$-~i&zlw`O)1*JtfU|Uj> z^;2_Fb5rw5iuDck4E3?;E6GelxG=968XUlY(Fe%@wHaX5=2=jZYyu1^*9xF}p#B3o zG#PAfaY>3kk^+4r0|N_P10!7{OMSTifX=r`NwzA8(5=(PRlD1c~)z@`CN5M4t+Mt(^?Fhvz*CVS?Uq!twv0aF*)J|n1g zxK*H=g|Is`FSEoBW&oNnk}jm!v2rXbDbFv;4gtpmaxmgl1T_c}q)2HLk^#WM56l5} zTsHdf++@e)wNr)_m~G#Cx;TbJaJ~&W=*1K$VtZL+$`z#&W!+O56E7@dGXKn~^eCU@ z(K7zbM2^}P>COurx6V3gt~HzHaZ726+13>+HEQ>kzkbQ%t7a^m`|Qx;xM%mO&pkXd zoAJ*F*&pfbA_wQ6ei~sSRjRTyZoTqcKjA*%2G5NlT2mLSTJ_d0nWyWM@xB|S!YU3- zIWKP?xN<(FBKgMUvL`##Zz?fxYhBstc_u@<;@a$Ho4q?ZzFlZ8yry=^YpIi^Socn` zMA3qOZTF-;R1|m~P|_A=*!|vd=JWL(-#4;UIO^u;9GG>Auh58{^drW~v4+ z3|L?^)$62t-{!RpNzW%V_Hy(@aW{TVRWeu=K4q`Mw60uMiLKk-Ocq;QrfYifbB$fU z-|}W3HRCzO5s~^2#XS;ijaq_5-#N7G{`j&fgX2?yh0UD8z}oVL_nv;Y9g%--r+uuL)7EuV>BsrB3�slRc+-sMO6h ke*a_Z`vx#Ppuuj(uuE|MhnTxx_kl`RPgg&ebxsLQ08&vLBme*a From 32e1d1a3b5bac3b81ad4f580d1001459ed7e2556 Mon Sep 17 00:00:00 2001 From: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com> Date: Sun, 16 Jun 2024 04:20:54 -0700 Subject: [PATCH 24/82] Use EntityQuery for mob state system resolves (#29021) --- .../Systems/MobStateSystem.StateMachine.cs | 7 ++++--- Content.Shared/Mobs/Systems/MobStateSystem.cs | 18 ++++++++---------- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/Content.Shared/Mobs/Systems/MobStateSystem.StateMachine.cs b/Content.Shared/Mobs/Systems/MobStateSystem.StateMachine.cs index 2fa522dea59655..5928b3871ff151 100644 --- a/Content.Shared/Mobs/Systems/MobStateSystem.StateMachine.cs +++ b/Content.Shared/Mobs/Systems/MobStateSystem.StateMachine.cs @@ -16,7 +16,8 @@ public partial class MobStateSystem /// If the entity can be set to that MobState public bool HasState(EntityUid entity, MobState mobState, MobStateComponent? component = null) { - return Resolve(entity, ref component, false) && component.AllowedStates.Contains(mobState); + return _mobStateQuery.Resolve(entity, ref component, false) && + component.AllowedStates.Contains(mobState); } /// @@ -27,7 +28,7 @@ public bool HasState(EntityUid entity, MobState mobState, MobStateComponent? com /// Entity that caused the state update (if applicable) public void UpdateMobState(EntityUid entity, MobStateComponent? component = null, EntityUid? origin = null) { - if (!Resolve(entity, ref component)) + if (!_mobStateQuery.Resolve(entity, ref component)) return; var ev = new UpdateMobStateEvent {Target = entity, Component = component, Origin = origin}; @@ -46,7 +47,7 @@ public void UpdateMobState(EntityUid entity, MobStateComponent? component = null public void ChangeMobState(EntityUid entity, MobState mobState, MobStateComponent? component = null, EntityUid? origin = null) { - if (!Resolve(entity, ref component)) + if (!_mobStateQuery.Resolve(entity, ref component)) return; ChangeState(entity, component, mobState, origin: origin); diff --git a/Content.Shared/Mobs/Systems/MobStateSystem.cs b/Content.Shared/Mobs/Systems/MobStateSystem.cs index a3886dd42e1856..323efa22428428 100644 --- a/Content.Shared/Mobs/Systems/MobStateSystem.cs +++ b/Content.Shared/Mobs/Systems/MobStateSystem.cs @@ -2,7 +2,6 @@ using Content.Shared.Administration.Logs; using Content.Shared.Mobs.Components; using Content.Shared.Standing; -using Robust.Shared.GameStates; using Robust.Shared.Physics.Systems; using Robust.Shared.Timing; @@ -20,9 +19,12 @@ public partial class MobStateSystem : EntitySystem [Dependency] private readonly IGameTiming _timing = default!; private ISawmill _sawmill = default!; + private EntityQuery _mobStateQuery; + public override void Initialize() { _sawmill = _logManager.GetSawmill("MobState"); + _mobStateQuery = GetEntityQuery(); base.Initialize(); SubscribeEvents(); } @@ -37,7 +39,7 @@ public override void Initialize() /// If the entity is alive public bool IsAlive(EntityUid target, MobStateComponent? component = null) { - if (!Resolve(target, ref component, false)) + if (!_mobStateQuery.Resolve(target, ref component, false)) return false; return component.CurrentState == MobState.Alive; } @@ -50,7 +52,7 @@ public bool IsAlive(EntityUid target, MobStateComponent? component = null) /// If the entity is Critical public bool IsCritical(EntityUid target, MobStateComponent? component = null) { - if (!Resolve(target, ref component, false)) + if (!_mobStateQuery.Resolve(target, ref component, false)) return false; return component.CurrentState == MobState.Critical; } @@ -63,7 +65,7 @@ public bool IsCritical(EntityUid target, MobStateComponent? component = null) /// If the entity is Dead public bool IsDead(EntityUid target, MobStateComponent? component = null) { - if (!Resolve(target, ref component, false)) + if (!_mobStateQuery.Resolve(target, ref component, false)) return false; return component.CurrentState == MobState.Dead; } @@ -76,7 +78,7 @@ public bool IsDead(EntityUid target, MobStateComponent? component = null) /// If the entity is Critical or Dead public bool IsIncapacitated(EntityUid target, MobStateComponent? component = null) { - if (!Resolve(target, ref component, false)) + if (!_mobStateQuery.Resolve(target, ref component, false)) return false; return component.CurrentState is MobState.Critical or MobState.Dead; } @@ -89,14 +91,10 @@ public bool IsIncapacitated(EntityUid target, MobStateComponent? component = nul /// If the entity is in an Invalid State public bool IsInvalidState(EntityUid target, MobStateComponent? component = null) { - if (!Resolve(target, ref component, false)) + if (!_mobStateQuery.Resolve(target, ref component, false)) return false; return component.CurrentState is MobState.Invalid; } #endregion - - #region Private Implementation - - #endregion } From 4954b6d79e194a4dd8b7f2d9942fa707e259493d Mon Sep 17 00:00:00 2001 From: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com> Date: Sun, 16 Jun 2024 04:21:16 -0700 Subject: [PATCH 25/82] Add cvar to disable ghosting killing your crit mob (#28945) * Add cvar to disable ghosting killing your crit mob * Update Content.Shared/CCVar/CCVars.cs Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com> --------- Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com> --- Content.Server/GameTicking/GameTicker.GamePreset.cs | 4 +++- Content.Shared/CCVar/CCVars.cs | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Content.Server/GameTicking/GameTicker.GamePreset.cs b/Content.Server/GameTicking/GameTicker.GamePreset.cs index fffacb59dee151..6e297789528d2e 100644 --- a/Content.Server/GameTicking/GameTicker.GamePreset.cs +++ b/Content.Server/GameTicking/GameTicker.GamePreset.cs @@ -251,7 +251,9 @@ public bool OnGhostAttempt(EntityUid mindId, bool canReturnGlobal, bool viaComma // (If the mob survives, that's a bug. Ghosting is kept regardless.) var canReturn = canReturnGlobal && _mind.IsCharacterDeadPhysically(mind); - if (canReturnGlobal && TryComp(playerEntity, out MobStateComponent? mobState)) + if (_configurationManager.GetCVar(CCVars.GhostKillCrit) && + canReturnGlobal && + TryComp(playerEntity, out MobStateComponent? mobState)) { if (_mobState.IsCritical(playerEntity.Value, mobState)) { diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index 886ace654dbab6..7cc1b341a97533 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -1948,6 +1948,12 @@ public static readonly CVarDef public static readonly CVarDef GhostRoleTime = CVarDef.Create("ghost.role_time", 3f, CVar.REPLICATED | CVar.SERVER); + /// + /// Whether or not to kill the player's mob on ghosting, when it is in a critical health state. + /// + public static readonly CVarDef GhostKillCrit = + CVarDef.Create("ghost.kill_crit", true, CVar.REPLICATED | CVar.SERVER); + /* * Fire alarm */ From f730d120c72e26e39f4e776622c6e29a676330f6 Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Sun, 16 Jun 2024 11:26:59 +0000 Subject: [PATCH 26/82] give spiders unique venom reagent (#29066) * add mechanotoxin * make tarantulas use mechanotoxin * trolled --------- Co-authored-by: deltanedas <@deltanedas:kde.org> --- .../Locale/en-US/reagents/meta/toxins.ftl | 3 ++ .../Prototypes/Entities/Mobs/NPCs/animals.yml | 2 +- Resources/Prototypes/Reagents/toxins.yml | 43 +++++++++++++++++++ 3 files changed, 47 insertions(+), 1 deletion(-) diff --git a/Resources/Locale/en-US/reagents/meta/toxins.ftl b/Resources/Locale/en-US/reagents/meta/toxins.ftl index 09b135e7f542d6..85dd9a3b6fbfbc 100644 --- a/Resources/Locale/en-US/reagents/meta/toxins.ftl +++ b/Resources/Locale/en-US/reagents/meta/toxins.ftl @@ -78,3 +78,6 @@ reagent-desc-tazinide = A highly dangerous metallic mixture which can interfere reagent-name-lipolicide = lipolicide reagent-desc-lipolicide = A powerful toxin that will destroy fat cells, massively reducing body weight in a short time. Deadly to those without nutriment in their body. + +reagent-name-mechanotoxin = mechanotoxin +reagent-desc-mechanotoxin = A neurotoxin used as venom by some species of spider. Degrades movement when built up. diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml index f216e05cf9aabf..9143589dcf26fc 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml @@ -2229,7 +2229,7 @@ solution: melee generated: reagents: - - ReagentId: Toxin + - ReagentId: Mechanotoxin Quantity: 1 - type: MeleeChemicalInjector transferAmount: 0.75 diff --git a/Resources/Prototypes/Reagents/toxins.yml b/Resources/Prototypes/Reagents/toxins.yml index 9665de7b099eca..7f4ebc1a75176b 100644 --- a/Resources/Prototypes/Reagents/toxins.yml +++ b/Resources/Prototypes/Reagents/toxins.yml @@ -662,3 +662,46 @@ Poison: 2 - !type:SatiateHunger factor: -6 + +# inspired by the spider neurotoxin GsMtx-4 +# poisons non-spiders and slows you down at high doses +- type: reagent + id: Mechanotoxin + name: reagent-name-mechanotoxin + group: Toxins + desc: reagent-desc-mechanotoxin + flavor: sweet + color: "#00b408" + physicalDesc: reagent-physical-desc-nondescript + metabolisms: + Poison: + metabolismRate: 0.2 # Slower metabolism so it can build up over time for slowdown + effects: + - !type:HealthChange + conditions: + - !type:OrganType + type: Arachnid + shouldHave: false + damage: + types: + Poison: 1.6 + - !type:MovespeedModifier + conditions: + - !type:ReagentThreshold + reagent: Mechanotoxin + min: 2 + - !type:OrganType + type: Arachnid + shouldHave: false + walkSpeedModifier: 0.8 + sprintSpeedModifier: 0.8 + - !type:MovespeedModifier + conditions: + - !type:ReagentThreshold + reagent: Mechanotoxin + min: 4 + - !type:OrganType + type: Arachnid + shouldHave: false + walkSpeedModifier: 0.4 + sprintSpeedModifier: 0.4 From 26f809aebf10d6e2139061c4332caa9ffa76d878 Mon Sep 17 00:00:00 2001 From: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Date: Sun, 16 Jun 2024 06:27:35 -0500 Subject: [PATCH 27/82] Instruments for Musician lodouts (#29059) * Musician Instruments to Musician lodouts * Move instruments to their own file, fix instruments spawning on the floor, Found bug of Loadout dropping items on the floor rather than sorting inventory * Whoops, I removed bagpipes for some reason --- .../en-US/preferences/loadout-groups.ftl | 1 + .../Loadouts/Jobs/Civilian/musician.yml | 2 +- .../Loadouts/Miscellaneous/instruments.yml | 280 ++++++++++++++++++ .../Prototypes/Loadouts/loadout_groups.yml | 35 +++ .../Prototypes/Loadouts/role_loadouts.yml | 1 + .../Roles/Jobs/Civilian/musician.yml | 2 - 6 files changed, 318 insertions(+), 3 deletions(-) create mode 100644 Resources/Prototypes/Loadouts/Miscellaneous/instruments.yml diff --git a/Resources/Locale/en-US/preferences/loadout-groups.ftl b/Resources/Locale/en-US/preferences/loadout-groups.ftl index 28863268dfc6a3..a107ee24f8404f 100644 --- a/Resources/Locale/en-US/preferences/loadout-groups.ftl +++ b/Resources/Locale/en-US/preferences/loadout-groups.ftl @@ -2,6 +2,7 @@ loadout-group-trinkets = Trinkets loadout-group-glasses = Glasses loadout-group-backpack = Backpack +loadout-group-instruments = Instruments # Command loadout-group-captain-head = Captain head diff --git a/Resources/Prototypes/Loadouts/Jobs/Civilian/musician.yml b/Resources/Prototypes/Loadouts/Jobs/Civilian/musician.yml index c26da03628eae5..486ff25d47c725 100644 --- a/Resources/Prototypes/Loadouts/Jobs/Civilian/musician.yml +++ b/Resources/Prototypes/Loadouts/Jobs/Civilian/musician.yml @@ -6,4 +6,4 @@ - type: startingGear id: MusicianWintercoat equipment: - outerClothing: ClothingOuterWinterMusician \ No newline at end of file + outerClothing: ClothingOuterWinterMusician diff --git a/Resources/Prototypes/Loadouts/Miscellaneous/instruments.yml b/Resources/Prototypes/Loadouts/Miscellaneous/instruments.yml new file mode 100644 index 00000000000000..5b7e46151fe9f6 --- /dev/null +++ b/Resources/Prototypes/Loadouts/Miscellaneous/instruments.yml @@ -0,0 +1,280 @@ +# Instruments +- type: loadout + id: Glockenspiel + equipment: Glockenspiel + +- type: startingGear + id: Glockenspiel + storage: + back: + - GlockenspielInstrument + +- type: loadout + id: MusicBox + equipment: MusicBox + +- type: startingGear + id: MusicBox + storage: + back: + - MusicBoxInstrument + +- type: loadout + id: Xylophone + equipment: Xylophone + +- type: startingGear + id: Xylophone + storage: + back: + - XylophoneInstrument + +- type: loadout + id: Microphone + equipment: Microphone + +- type: startingGear + id: Microphone + storage: + back: + - MicrophoneInstrument + +- type: loadout + id: Synthesizer + equipment: Synthesizer + +- type: startingGear + id: Synthesizer + storage: + back: + - SynthesizerInstrument + +- type: loadout + id: Kalimba + equipment: Kalimba + +- type: startingGear + id: Kalimba + storage: + back: + - KalimbaInstrument + +- type: loadout + id: Woodblock + equipment: Woodblock + +- type: startingGear + id: Woodblock + storage: + back: + - WoodblockInstrument + +- type: loadout + id: ElectricGuitar + equipment: ElectricGuitar + +- type: startingGear + id: ElectricGuitar + storage: + back: + - ElectricGuitarInstrument + +- type: loadout + id: BassGuitar + equipment: BassGuitar + +- type: startingGear + id: BassGuitar + storage: + back: + - BassGuitarInstrument + +- type: loadout + id: RockGuitar + equipment: RockGuitar + +- type: startingGear + id: RockGuitar + storage: + back: + - RockGuitarInstrument + +- type: loadout + id: AcousticGuitar + equipment: AcousticGuitar + +- type: startingGear + id: AcousticGuitar + storage: + back: + - AcousticGuitarInstrument + +- type: loadout + id: Banjo + equipment: Banjo + +- type: startingGear + id: Banjo + storage: + back: + - BanjoInstrument + +- type: loadout + id: Violin + equipment: Violin + +- type: startingGear + id: Violin + storage: + back: + - ViolinInstrument + +- type: loadout + id: Viola + equipment: Viola + +- type: startingGear + id: Viola + storage: + back: + - ViolaInstrument + +- type: loadout + id: Cello + equipment: Cello + +- type: startingGear + id: Cello + storage: + back: + - CelloInstrument + +- type: loadout + id: Trumpet + equipment: Trumpet + +- type: startingGear + id: Trumpet + storage: + back: + - TrumpetInstrument + +- type: loadout + id: Trombone + equipment: Trombone + +- type: startingGear + id: Trombone + storage: + back: + - TromboneInstrument + +- type: loadout + id: FrenchHorn + equipment: FrenchHorn + +- type: startingGear + id: FrenchHorn + storage: + back: + - FrenchHornInstrument + +- type: loadout + id: Euphonium + equipment: Euphonium + +- type: startingGear + id: Euphonium + storage: + back: + - EuphoniumInstrument + +- type: loadout + id: Saxophone + equipment: Saxophone + +- type: startingGear + id: Saxophone + storage: + back: + - SaxophoneInstrument + +- type: loadout + id: Accordion + equipment: Accordion + +- type: startingGear + id: Accordion + storage: + back: + - AccordionInstrument + +- type: loadout + id: Harmonica + equipment: Harmonica + +- type: startingGear + id: Harmonica + storage: + back: + - HarmonicaInstrument + +- type: loadout + id: Clarinet + equipment: Clarinet + +- type: startingGear + id: Clarinet + storage: + back: + - ClarinetInstrument + +- type: loadout + id: Flute + equipment: Flute + +- type: startingGear + id: Flute + storage: + back: + - FluteInstrument + +- type: loadout + id: Recorder + equipment: Recorder + +- type: startingGear + id: Recorder + storage: + back: + - RecorderInstrument + +- type: loadout + id: PanFlute + equipment: PanFlute + +- type: startingGear + id: PanFlute + storage: + back: + - PanFluteInstrument + +- type: loadout + id: Ocarina + equipment: Ocarina + +- type: startingGear + id: Ocarina + storage: + back: + - OcarinaInstrument + +- type: loadout + id: Bagpipe + equipment: Bagpipe + +- type: startingGear + id: Bagpipe + storage: + back: + - BagpipeInstrument diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index 0fab367fc90e54..cc0aefb69c1568 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -436,6 +436,41 @@ loadouts: - MusicianWintercoat +- type: loadoutGroup + id: Instruments + name: loadout-group-instruments + minLimit: 0 + maxLimit: 2 + loadouts: + - Glockenspiel + - MusicBox + - Xylophone + - Microphone + - Synthesizer + - Kalimba + - Woodblock + - ElectricGuitar + - BassGuitar + - RockGuitar + - AcousticGuitar + - Banjo + - Violin + - Viola + - Cello + - Trumpet + - Trombone + - FrenchHorn + - Euphonium + - Saxophone + - Accordion + - Harmonica + - Clarinet + - Flute + - Recorder + - PanFlute + - Ocarina + - Bagpipe + # Cargo - type: loadoutGroup id: QuartermasterHead diff --git a/Resources/Prototypes/Loadouts/role_loadouts.yml b/Resources/Prototypes/Loadouts/role_loadouts.yml index 4ff2775dfc1d94..0e80113ce3f77b 100644 --- a/Resources/Prototypes/Loadouts/role_loadouts.yml +++ b/Resources/Prototypes/Loadouts/role_loadouts.yml @@ -141,6 +141,7 @@ - MusicianOuterClothing - Glasses - Trinkets + - Instruments # Cargo - type: roleLoadout diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml b/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml index 4b508c907d7894..58335ba52dd459 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/musician.yml @@ -25,5 +25,3 @@ storage: back: - BoxSurvival - - AcousticGuitarInstrument - - SaxophoneInstrument \ No newline at end of file From ac979640bf0040c21b27cf3989773917edd21e1a Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 16 Jun 2024 11:28:41 +0000 Subject: [PATCH 28/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 8ceaead43554f8..8973caeea50dea 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,20 +1,4 @@ Entries: -- author: Plykiya - changes: - - message: Hyposprays can now be toggled to draw from solution containers like jugs - and beakers. - type: Tweak - id: 6257 - time: '2024-03-30T03:59:17.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/25544 -- author: EdenTheLiznerd - changes: - - message: Amanita toxin now kills you slightly slower, providing you time to seek - charcoal before it's too late - type: Tweak - id: 6258 - time: '2024-03-30T04:00:21.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/25830 - author: liltenhead changes: - message: Changed the syndicate hardbomb to have less of a chance to completely @@ -3860,3 +3844,17 @@ id: 6756 time: '2024-06-16T03:38:18.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29034 +- author: deltanedas + changes: + - message: Tarantulas now use Mechanotoxin, a venom that slows you down over time. + type: Tweak + id: 6757 + time: '2024-06-16T11:26:59.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29066 +- author: Cojoke-dot + changes: + - message: Musicians can now select instruments in their loadout + type: Add + id: 6758 + time: '2024-06-16T11:27:35.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29059 From f121946b123a7b9f23a9e262d2a6362e774fa0cb Mon Sep 17 00:00:00 2001 From: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> Date: Sun, 16 Jun 2024 23:30:35 +1200 Subject: [PATCH 29/82] Fix RotateWhilePulling not working (#29032) --- .../Movement/Components/PullMoverComponent.cs | 13 -------- .../Movement/Systems/PullController.cs | 30 +++++-------------- .../Components/ActivePullerComponent.cs | 7 +++++ .../Pulling/Components/PullerComponent.cs | 2 +- .../Movement/Pulling/Systems/PullingSystem.cs | 13 ++++++++ 5 files changed, 29 insertions(+), 36 deletions(-) delete mode 100644 Content.Server/Movement/Components/PullMoverComponent.cs create mode 100644 Content.Shared/Movement/Pulling/Components/ActivePullerComponent.cs diff --git a/Content.Server/Movement/Components/PullMoverComponent.cs b/Content.Server/Movement/Components/PullMoverComponent.cs deleted file mode 100644 index 19a01c6b17db05..00000000000000 --- a/Content.Server/Movement/Components/PullMoverComponent.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace Content.Server.Movement.Components; - -/// -/// Added to an entity that is ctrl-click moving their pulled object. -/// -/// -/// This just exists so we don't have MoveEvent subs going off for every single mob constantly. -/// -[RegisterComponent] -public sealed partial class PullMoverComponent : Component -{ - -} diff --git a/Content.Server/Movement/Systems/PullController.cs b/Content.Server/Movement/Systems/PullController.cs index 72110ff67d244c..f227d9c55cdaeb 100644 --- a/Content.Server/Movement/Systems/PullController.cs +++ b/Content.Server/Movement/Systems/PullController.cs @@ -18,6 +18,7 @@ using Robust.Shared.Physics.Dynamics.Joints; using Robust.Shared.Player; using Robust.Shared.Timing; +using Robust.Shared.Utility; namespace Content.Server.Movement.Systems; @@ -91,7 +92,7 @@ public override void Initialize() UpdatesAfter.Add(typeof(MoverController)); SubscribeLocalEvent(OnPullStop); - SubscribeLocalEvent(OnPullerMove); + SubscribeLocalEvent(OnPullerMove); base.Initialize(); } @@ -155,19 +156,22 @@ private bool OnRequestMovePulledObject(ICommonSession? session, EntityCoordinate coords = fromUserCoords.WithEntityId(coords.EntityId); } - EnsureComp(player); var moving = EnsureComp(pulled!.Value); moving.MovingTo = coords; return false; } - private void OnPullerMove(EntityUid uid, PullMoverComponent component, ref MoveEvent args) + private void OnPullerMove(EntityUid uid, ActivePullerComponent component, ref MoveEvent args) { if (!_pullerQuery.TryComp(uid, out var puller)) return; if (puller.Pulling is not { } pullable) + { + DebugTools.Assert($"Failed to clean up puller: {ToPrettyString(uid)}"); + RemCompDeferred(uid, component); return; + } UpdatePulledRotation(uid, pullable); @@ -182,13 +186,7 @@ private void OnPullerMove(EntityUid uid, PullMoverComponent component, ref MoveE if (_physicsQuery.TryComp(uid, out var physics)) PhysicsSystem.WakeBody(uid, body: physics); - StopMove(uid, pullable); - } - - private void StopMove(Entity mover, Entity moving) - { - RemCompDeferred(mover.Owner); - RemCompDeferred(moving.Owner); + RemCompDeferred(pullable); } private void UpdatePulledRotation(EntityUid puller, EntityUid pulled) @@ -302,17 +300,5 @@ public override void UpdateBeforeSolve(bool prediction, float frameTime) PhysicsSystem.ApplyLinearImpulse(puller, -impulse); } } - - // Cleanup PullMover - var moverQuery = EntityQueryEnumerator(); - - while (moverQuery.MoveNext(out var uid, out _, out var puller)) - { - if (!HasComp(puller.Pulling)) - { - RemCompDeferred(uid); - continue; - } - } } } diff --git a/Content.Shared/Movement/Pulling/Components/ActivePullerComponent.cs b/Content.Shared/Movement/Pulling/Components/ActivePullerComponent.cs new file mode 100644 index 00000000000000..83bfd9f79542ae --- /dev/null +++ b/Content.Shared/Movement/Pulling/Components/ActivePullerComponent.cs @@ -0,0 +1,7 @@ +namespace Content.Shared.Movement.Pulling.Components; + +/// +/// Component that indicates that an entity is currently pulling some other entity. +/// +[RegisterComponent] +public sealed partial class ActivePullerComponent : Component; diff --git a/Content.Shared/Movement/Pulling/Components/PullerComponent.cs b/Content.Shared/Movement/Pulling/Components/PullerComponent.cs index f47ae32f90bf5d..32e4d9b1f31677 100644 --- a/Content.Shared/Movement/Pulling/Components/PullerComponent.cs +++ b/Content.Shared/Movement/Pulling/Components/PullerComponent.cs @@ -9,7 +9,7 @@ namespace Content.Shared.Movement.Pulling.Components; /// /// Specifies an entity as being able to pull another entity with /// -[RegisterComponent, NetworkedComponent, AutoGenerateComponentState] +[RegisterComponent, NetworkedComponent, AutoGenerateComponentState(true)] [Access(typeof(PullingSystem))] public sealed partial class PullerComponent : Component { diff --git a/Content.Shared/Movement/Pulling/Systems/PullingSystem.cs b/Content.Shared/Movement/Pulling/Systems/PullingSystem.cs index 161868370eaddc..72b87476bb0a1d 100644 --- a/Content.Shared/Movement/Pulling/Systems/PullingSystem.cs +++ b/Content.Shared/Movement/Pulling/Systems/PullingSystem.cs @@ -61,6 +61,7 @@ public override void Initialize() SubscribeLocalEvent(OnPullableContainerInsert); SubscribeLocalEvent(OnModifyUncuffDuration); + SubscribeLocalEvent(OnAfterState); SubscribeLocalEvent(OnPullerContainerInsert); SubscribeLocalEvent(OnPullerUnpaused); SubscribeLocalEvent(OnVirtualItemDeleted); @@ -72,6 +73,14 @@ public override void Initialize() .Register(); } + private void OnAfterState(Entity ent, ref AfterAutoHandleStateEvent args) + { + if (ent.Comp.Pulling == null) + RemComp(ent.Owner); + else + EnsureComp(ent.Owner); + } + private void OnDropHandItems(EntityUid uid, PullerComponent pullerComp, DropHandItemsEvent args) { if (pullerComp.Pulling == null || pullerComp.NeedsHands) @@ -228,6 +237,9 @@ private void StopPulling(EntityUid pullableUid, PullableComponent pullableComp) } var oldPuller = pullableComp.Puller; + if (oldPuller != null) + RemComp(oldPuller.Value); + pullableComp.PullJointId = null; pullableComp.Puller = null; Dirty(pullableUid, pullableComp); @@ -410,6 +422,7 @@ public bool TryStartPull(EntityUid pullerUid, EntityUid pullableUid, // Use net entity so it's consistent across client and server. pullableComp.PullJointId = $"pull-joint-{GetNetEntity(pullableUid)}"; + EnsureComp(pullerUid); pullerComp.Pulling = pullableUid; pullableComp.Puller = pullerUid; From 22efc2b4ac3f05c6295497fabb36b8b25b05b6b0 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 16 Jun 2024 11:31:41 +0000 Subject: [PATCH 30/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 8973caeea50dea..0f2ad78a7a62ca 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: liltenhead - changes: - - message: Changed the syndicate hardbomb to have less of a chance to completely - destroy tiles. - type: Tweak - id: 6259 - time: '2024-03-30T04:36:33.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26548 - author: takemysoult changes: - message: stimulants removes chloral hydrate from body @@ -3858,3 +3850,11 @@ id: 6758 time: '2024-06-16T11:27:35.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29059 +- author: ElectroJr + changes: + - message: Fixed pianos, office chairs & other objects not rotating while being + pulled. + type: Fix + id: 6759 + time: '2024-06-16T11:30:36.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29032 From 1cb9f5dbed80fdf4087f855050b436cc448fb427 Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Sun, 16 Jun 2024 11:57:57 +0000 Subject: [PATCH 31/82] add carp hardsuit for traitors (#25155) * FactionClothing * swtich carp to the Dragon faction * add carp hardsuit * add carp hardsuit to uplink * fixes * webedit ops 1 * why did i name it that wtf * among --------- Co-authored-by: deltanedas <@deltanedas:kde.org> --- .../Components/FactionClothingComponent.cs | 27 ++++++++++++ .../EntitySystems/FactionClothingSystem.cs | 42 +++++++++++++++++++ .../Locale/en-US/store/uplink-catalog.ftl | 3 ++ .../Prototypes/Catalog/uplink_catalog.yml | 11 +++++ .../Entities/Clothing/Head/hoods.yml | 16 +++++++ .../Entities/Clothing/OuterClothing/suits.yml | 13 ++++++ .../Prototypes/Entities/Mobs/NPCs/carp.yml | 2 +- 7 files changed, 113 insertions(+), 1 deletion(-) create mode 100644 Content.Shared/Clothing/Components/FactionClothingComponent.cs create mode 100644 Content.Shared/Clothing/EntitySystems/FactionClothingSystem.cs diff --git a/Content.Shared/Clothing/Components/FactionClothingComponent.cs b/Content.Shared/Clothing/Components/FactionClothingComponent.cs new file mode 100644 index 00000000000000..d49ee4f81d631d --- /dev/null +++ b/Content.Shared/Clothing/Components/FactionClothingComponent.cs @@ -0,0 +1,27 @@ +using Content.Shared.Clothing.EntitySystems; +using Content.Shared.NPC.Prototypes; +using Robust.Shared.GameStates; +using Robust.Shared.Prototypes; + +namespace Content.Shared.Clothing.Components; + +/// +/// When equipped, adds the wearer to a faction. +/// When removed, removes the wearer from a faction. +/// +[RegisterComponent, NetworkedComponent, Access(typeof(FactionClothingSystem))] +public sealed partial class FactionClothingComponent : Component +{ + /// + /// Faction to add and remove. + /// + [DataField(required: true)] + public ProtoId Faction = string.Empty; + + /// + /// If true, the wearer was already part of the faction. + /// This prevents wrongly removing them after removing the item. + /// + [DataField] + public bool AlreadyMember; +} diff --git a/Content.Shared/Clothing/EntitySystems/FactionClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/FactionClothingSystem.cs new file mode 100644 index 00000000000000..76b7b9aa66d806 --- /dev/null +++ b/Content.Shared/Clothing/EntitySystems/FactionClothingSystem.cs @@ -0,0 +1,42 @@ +using Content.Shared.Clothing.Components; +using Content.Shared.Inventory.Events; +using Content.Shared.NPC.Components; +using Content.Shared.NPC.Systems; + +namespace Content.Shared.Clothing.EntitySystems; + +/// +/// Handles faction adding and removal. +/// +public sealed class FactionClothingSystem : EntitySystem +{ + [Dependency] private readonly NpcFactionSystem _faction = default!; + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnEquipped); + SubscribeLocalEvent(OnUnequipped); + } + + private void OnEquipped(Entity ent, ref GotEquippedEvent args) + { + TryComp(args.Equipee, out var factionComp); + var faction = (args.Equipee, factionComp); + ent.Comp.AlreadyMember = _faction.IsMember(faction, ent.Comp.Faction); + + _faction.AddFaction(faction, ent.Comp.Faction); + } + + private void OnUnequipped(Entity ent, ref GotUnequippedEvent args) + { + if (ent.Comp.AlreadyMember) + { + ent.Comp.AlreadyMember = false; + return; + } + + _faction.RemoveFaction(args.Equipee, ent.Comp.Faction); + } +} diff --git a/Resources/Locale/en-US/store/uplink-catalog.ftl b/Resources/Locale/en-US/store/uplink-catalog.ftl index 78c094926f1d3d..2598970cefbe80 100644 --- a/Resources/Locale/en-US/store/uplink-catalog.ftl +++ b/Resources/Locale/en-US/store/uplink-catalog.ftl @@ -312,6 +312,9 @@ uplink-clothing-shoes-boots-mag-syndie-desc = A pair of boots that prevent slipp uplink-eva-syndie-name = Syndicate EVA Bundle uplink-eva-syndie-desc = A simple EVA suit that offers no protection other than what's needed to survive in space. +uplink-hardsuit-carp-name = Carp Hardsuit +uplink-hardsuit-carp-desc = Looks like an ordinary carp suit, except fully spaceproof and tricks space carp into thinking you are one of them. + uplink-hardsuit-syndie-name = Syndicate Hardsuit uplink-hardsuit-syndie-desc = The Syndicate's well known armored blood red hardsuit, capable of space walks and bullet resistant. diff --git a/Resources/Prototypes/Catalog/uplink_catalog.yml b/Resources/Prototypes/Catalog/uplink_catalog.yml index d39f9003575edc..0ba83dfe735fb0 100644 --- a/Resources/Prototypes/Catalog/uplink_catalog.yml +++ b/Resources/Prototypes/Catalog/uplink_catalog.yml @@ -1276,6 +1276,17 @@ categories: - UplinkWearables +- type: listing + id: UplinkHardsuitCarp + name: uplink-hardsuit-carp-name + description: uplink-hardsuit-carp-desc + icon: { sprite: /Textures/Clothing/OuterClothing/Suits/carpsuit.rsi, state: icon } + productEntity: ClothingOuterHardsuitCarp + cost: + Telecrystal: 4 + categories: + - UplinkWearables + - type: listing id: UplinkHardsuitSyndie name: uplink-hardsuit-syndie-name diff --git a/Resources/Prototypes/Entities/Clothing/Head/hoods.yml b/Resources/Prototypes/Entities/Clothing/Head/hoods.yml index b62834dd98e0d6..db1870691232a7 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/hoods.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/hoods.yml @@ -206,6 +206,22 @@ slots: - Hair +- type: entity + parent: ClothingHeadHatHoodCarp + id: ClothingHeadHelmetHardsuitCarp + noSpawn: true + components: + - type: PressureProtection + highPressureMultiplier: 0.6 + lowPressureMultiplier: 1000 + - type: TemperatureProtection + coefficient: 0.2 + - type: BreathMask + # this is on the hood so you only fool the fish if you wear the whole set + # wear carp suit and security helmet, they'll know you are fake + - type: FactionClothing + faction: Dragon + - type: entity parent: ClothingHeadBase id: ClothingHeadHatHoodMoth diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/suits.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/suits.yml index ccf6f09b19400c..79c116b3cad3c9 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/suits.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/suits.yml @@ -257,3 +257,16 @@ - type: ContainerContainer containers: toggleable-clothing: !type:ContainerSlot {} + +- type: entity + parent: ClothingOuterSuitCarp + id: ClothingOuterHardsuitCarp + suffix: Hardsuit, DO NOT MAP + components: + - type: PressureProtection + highPressureMultiplier: 0.6 + lowPressureMultiplier: 1000 + - type: TemperatureProtection + coefficient: 0.01 + - type: ToggleableClothing + clothingPrototype: ClothingHeadHelmetHardsuitCarp diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml b/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml index 3a77dbab4c98d7..10bc7861fac38e 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml @@ -15,7 +15,7 @@ true - type: NpcFactionMember factions: - - SimpleHostile + - Dragon - type: Sprite drawdepth: Mobs sprite: Mobs/Aliens/Carps/space.rsi From c9540db6b48f45e4623d15467a6e2705b18e36e2 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 16 Jun 2024 11:59:03 +0000 Subject: [PATCH 32/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 0f2ad78a7a62ca..b3d8fff8131c88 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: takemysoult - changes: - - message: stimulants removes chloral hydrate from body - type: Tweak - id: 6260 - time: '2024-03-30T06:52:27.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/25886 - author: Flareguy changes: - message: Removed SCAF armor. @@ -3858,3 +3851,11 @@ id: 6759 time: '2024-06-16T11:30:36.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29032 +- author: deltanedas + changes: + - message: Added the Carp Hardsuit to the uplink which is spaceproof and makes carp + think you are one of them. + type: Add + id: 6760 + time: '2024-06-16T11:57:57.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/25155 From 14cd55e765ff7584d72079500660bf491aa70fba Mon Sep 17 00:00:00 2001 From: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> Date: Mon, 17 Jun 2024 03:46:59 +1200 Subject: [PATCH 33/82] Remove ServerAlertsComponentTests (#29027) --- .../Alert/ServerAlertsComponentTests.cs | 83 ------------------- 1 file changed, 83 deletions(-) delete mode 100644 Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs diff --git a/Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs b/Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs deleted file mode 100644 index bcc32e13deeda1..00000000000000 --- a/Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs +++ /dev/null @@ -1,83 +0,0 @@ -using System.IO; -using Content.Server.Alert; -using Content.Shared.Alert; -using NUnit.Framework; -using Robust.Shared.GameObjects; -using Robust.Shared.GameStates; -using Robust.Shared.IoC; -using Robust.Shared.Prototypes; -using Robust.Shared.Serialization.Manager; - -namespace Content.Tests.Shared.Alert -{ - [TestFixture] - [TestOf(typeof(AlertsComponent))] - public sealed class ServerAlertsComponentTests : ContentUnitTest - { - const string PROTOTYPES = @" -- type: alertCategory - id: Pressure - -- type: alert - id: LowPressure - category: Pressure - icon: /Textures/Interface/Alerts/Pressure/lowpressure.png - -- type: alert - id: HighPressure - category: Pressure - icon: /Textures/Interface/Alerts/Pressure/highpressure.png -"; - - [Test] - [Ignore("There is no way to load extra Systems in a unit test, fixing RobustUnitTest is out of scope.")] - public void ShowAlerts() - { - // this is kind of unnecessary because there's integration test coverage of Alert components - // but wanted to keep it anyway to see what's possible w.r.t. testing components - // in a unit test - - var entManager = IoCManager.Resolve(); - IoCManager.Resolve().Initialize(); - var prototypeManager = IoCManager.Resolve(); - prototypeManager.Initialize(); - var factory = IoCManager.Resolve(); - factory.RegisterClass(); - prototypeManager.LoadFromStream(new StringReader(PROTOTYPES)); - prototypeManager.ResolveResults(); - - var entSys = entManager.EntitySysManager; - entSys.LoadExtraSystemType(); - - var alertsComponent = new AlertsComponent(); - alertsComponent = IoCManager.InjectDependencies(alertsComponent); - - Assert.That(entManager.System().TryGet("LowPressure", out var lowpressure)); - Assert.That(entManager.System().TryGet("HighPressure", out var highpressure)); - - entManager.System().ShowAlert(alertsComponent.Owner, "LowPressure"); - - var getty = new ComponentGetState(); - entManager.EventBus.RaiseComponentEvent(alertsComponent, getty); - - var alertState = (AlertsComponent.AlertsComponent_AutoState) getty.State!; - Assert.That(alertState, Is.Not.Null); - Assert.That(alertState.Alerts.Count, Is.EqualTo(1)); - Assert.That(alertState.Alerts.ContainsKey(lowpressure!.AlertKey)); - - entManager.System().ShowAlert(alertsComponent.Owner, "HighPressure"); - - // Lazy - entManager.EventBus.RaiseComponentEvent(alertsComponent, getty); - alertState = (AlertsComponent.AlertsComponent_AutoState) getty.State!; - Assert.That(alertState.Alerts.Count, Is.EqualTo(1)); - Assert.That(alertState.Alerts.ContainsKey(highpressure!.AlertKey)); - - entManager.System().ClearAlertCategory(alertsComponent.Owner, "Pressure"); - - entManager.EventBus.RaiseComponentEvent(alertsComponent, getty); - alertState = (AlertsComponent.AlertsComponent_AutoState) getty.State!; - Assert.That(alertState.Alerts.Count, Is.EqualTo(0)); - } - } -} From 6829630d0c7698d0d8adf1fdb55728164d309341 Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Mon, 17 Jun 2024 01:51:08 +1000 Subject: [PATCH 34/82] Update submodule to 226.0.0 (#29100) --- RobustToolbox | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RobustToolbox b/RobustToolbox index 2fa83181e2f447..a3a8912f4280ef 160000 --- a/RobustToolbox +++ b/RobustToolbox @@ -1 +1 @@ -Subproject commit 2fa83181e2f4472120fe280f4598197f436faf22 +Subproject commit a3a8912f4280efe701958fcd00079fffcfc4efee From fdb487ccfe1337e900f5a0bbc33bf52de5543d72 Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sun, 16 Jun 2024 21:36:11 +0200 Subject: [PATCH 35/82] Update origin (#28342) robotics console --- Resources/Maps/origin.yml | 6240 +++++++++++++------------------------ 1 file changed, 2248 insertions(+), 3992 deletions(-) diff --git a/Resources/Maps/origin.yml b/Resources/Maps/origin.yml index f706550efcbde5..dcd961e34ea649 100644 --- a/Resources/Maps/origin.yml +++ b/Resources/Maps/origin.yml @@ -67,14 +67,15 @@ entities: - type: MetaData - type: Transform - type: Map + mapPaused: True - type: PhysicsMap + - type: GridTree + - type: MovedGrids - type: Parallax parallax: OriginStation - type: Broadphase - type: OccluderTree - type: LoadedMap - - type: GridTree - - type: MovedGrids - uid: 2 components: - type: MetaData @@ -547,23 +548,23 @@ entities: color: '#FFFFFFFF' id: Arrows decals: - 3436: 6,-71 - 3437: -14,-16 - 3664: -69,-45 - 3677: 1,-2 + 3434: 6,-71 + 3435: -14,-16 + 3662: -69,-45 + 3675: 1,-2 - node: angle: 3.141592653589793 rad color: '#FFFFFFFF' id: Arrows decals: - 3709: -71,-45 + 3707: -71,-45 - node: angle: 4.71238898038469 rad color: '#FFFFFFFF' id: Arrows decals: - 2975: 67,-46 - 2976: 67,-47 + 2973: 67,-46 + 2974: 67,-47 - node: color: '#FFFFFFFF' id: Bot @@ -640,66 +641,66 @@ entities: 541: -38,42 581: -36,-101 582: 67,-16 - 2864: 73,-37 - 2865: 73,-36 - 2866: 72,-36 - 2867: 73,-35 - 2933: -52,-59 - 2954: 68,-69 - 2969: 69,-46 - 2970: 69,-47 - 2971: 70,-46 - 2972: 70,-47 - 3143: -47,-41 - 3148: -12,-14 - 3282: 33,-83 - 3283: 33,-90 - 3284: 30,-95 - 3285: 48,-95 - 3286: 45,-90 - 3287: 45,-83 - 3386: -58,-19 - 3387: -18,69 - 3434: 6,-86 - 3446: -53,43 - 3447: -53,42 - 3448: -50,46 - 3467: 68,-29 - 3472: 68,-28 - 3473: 69,-29 - 3474: 67,-29 - 3475: 68,-30 - 3476: 51,-83 - 3477: 51,-90 - 3560: -77,-32 - 3565: -64,-46 - 3653: -67,-43 - 3671: -47,-40 - 3673: 1,-3 - 3674: 2,-3 - 3675: 3,-3 + 2862: 73,-37 + 2863: 73,-36 + 2864: 72,-36 + 2865: 73,-35 + 2931: -52,-59 + 2952: 68,-69 + 2967: 69,-46 + 2968: 69,-47 + 2969: 70,-46 + 2970: 70,-47 + 3141: -47,-41 + 3146: -12,-14 + 3280: 33,-83 + 3281: 33,-90 + 3282: 30,-95 + 3283: 48,-95 + 3284: 45,-90 + 3285: 45,-83 + 3384: -58,-19 + 3385: -18,69 + 3432: 6,-86 + 3444: -53,43 + 3445: -53,42 + 3446: -50,46 + 3465: 68,-29 + 3470: 68,-28 + 3471: 69,-29 + 3472: 67,-29 + 3473: 68,-30 + 3474: 51,-83 + 3475: 51,-90 + 3558: -77,-32 + 3563: -64,-46 + 3651: -67,-43 + 3669: -47,-40 + 3671: 1,-3 + 3672: 2,-3 + 3673: 3,-3 - node: color: '#FFFFFFFF' id: BotLeft decals: 191: -19,3 192: -21,1 - 2862: 72,-37 - 3468: 67,-28 - 3469: 69,-30 - 3470: 67,-30 - 3471: 69,-28 - 3662: -69,-45 - 3707: -71,-45 + 2860: 72,-37 + 3466: 67,-28 + 3467: 69,-30 + 3468: 67,-30 + 3469: 69,-28 + 3660: -69,-45 + 3705: -71,-45 - node: color: '#FFFFFFFF' id: BotRight decals: 189: -21,3 190: -19,1 - 2863: 72,-35 - 3663: -69,-45 - 3708: -71,-45 + 2861: 72,-35 + 3661: -69,-45 + 3706: -71,-45 - node: color: '#FFFFFFFF' id: Box @@ -709,417 +710,417 @@ entities: 186: -21,2 187: -19,2 188: -20,1 - 3435: 7,-83 + 3433: 7,-83 - node: color: '#FFFFFFFF' id: BoxGreyscale decals: - 3714: 10,23 - 3715: 11,23 + 3712: 10,23 + 3713: 11,23 - node: color: '#D4D4D4D6' id: BrickTileSteelCornerNe decals: - 3168: 30,4 + 3166: 30,4 - node: color: '#D4D4D4D6' id: BrickTileSteelCornerNw decals: - 3167: 28,4 + 3165: 28,4 - node: color: '#D4D4D4D6' id: BrickTileSteelCornerSe decals: - 3166: 30,-1 + 3164: 30,-1 - node: color: '#D4D4D4D6' id: BrickTileSteelEndS decals: - 3163: 28,-3 + 3161: 28,-3 - node: color: '#D4D4D4D6' id: BrickTileSteelInnerNe decals: - 3200: 20,-3 + 3198: 20,-3 - node: color: '#D4D4D4D6' id: BrickTileSteelInnerNw decals: - 3202: 27,-3 + 3200: 27,-3 - node: color: '#D4D4D4D6' id: BrickTileSteelInnerSe decals: - 3174: 28,-1 - 3201: 20,4 + 3172: 28,-1 + 3199: 20,4 - node: color: '#D4D4D4D6' id: BrickTileSteelInnerSw decals: - 3199: 27,4 + 3197: 27,4 - node: color: '#D4D4D4D6' id: BrickTileSteelLineE decals: - 3164: 28,-2 - 3169: 30,3 - 3170: 30,2 - 3171: 30,1 - 3172: 30,0 - 3187: 20,3 - 3188: 20,2 - 3189: 20,1 - 3190: 20,0 - 3191: 20,-1 - 3192: 20,-2 + 3162: 28,-2 + 3167: 30,3 + 3168: 30,2 + 3169: 30,1 + 3170: 30,0 + 3185: 20,3 + 3186: 20,2 + 3187: 20,1 + 3188: 20,0 + 3189: 20,-1 + 3190: 20,-2 - node: color: '#D4D4D4D6' id: BrickTileSteelLineN decals: - 3173: 29,4 - 3193: 21,-3 - 3194: 22,-3 - 3195: 23,-3 - 3196: 24,-3 - 3197: 25,-3 - 3198: 26,-3 + 3171: 29,4 + 3191: 21,-3 + 3192: 22,-3 + 3193: 23,-3 + 3194: 24,-3 + 3195: 25,-3 + 3196: 26,-3 - node: color: '#D4D4D4D6' id: BrickTileSteelLineS decals: - 3165: 29,-1 - 3181: 26,4 - 3182: 25,4 - 3183: 24,4 - 3184: 23,4 - 3185: 22,4 - 3186: 21,4 + 3163: 29,-1 + 3179: 26,4 + 3180: 25,4 + 3181: 24,4 + 3182: 23,4 + 3183: 22,4 + 3184: 21,4 - node: color: '#D4D4D4D6' id: BrickTileSteelLineW decals: - 3157: 28,-2 - 3158: 28,3 - 3159: 28,2 - 3160: 28,1 - 3161: 28,0 - 3162: 28,-1 - 3175: 27,3 - 3176: 27,2 - 3177: 27,1 - 3178: 27,0 - 3179: 27,-1 - 3180: 27,-2 + 3155: 28,-2 + 3156: 28,3 + 3157: 28,2 + 3158: 28,1 + 3159: 28,0 + 3160: 28,-1 + 3173: 27,3 + 3174: 27,2 + 3175: 27,1 + 3176: 27,0 + 3177: 27,-1 + 3178: 27,-2 - node: color: '#334E6DC8' id: BrickTileWhiteBox decals: - 3393: 9,-21 + 3391: 9,-21 - node: color: '#3AB3DAFF' id: BrickTileWhiteBox decals: - 3264: -19,-47 + 3262: -19,-47 - node: color: '#3C44AAFF' id: BrickTileWhiteBox decals: - 3261: -19,-49 + 3259: -19,-49 - node: color: '#52B4E996' id: BrickTileWhiteBox decals: - 3389: 9,-23 + 3387: 9,-23 - node: color: '#80C71FFF' id: BrickTileWhiteBox decals: - 3263: -19,-48 + 3261: -19,-48 - node: color: '#835432FF' id: BrickTileWhiteBox decals: - 3259: -22,-47 + 3257: -22,-47 - node: color: '#9D9D97FF' id: BrickTileWhiteBox decals: - 3262: -19,-46 + 3260: -19,-46 - node: color: '#9FED5896' id: BrickTileWhiteBox decals: - 3391: 11,-23 + 3389: 11,-23 - node: color: '#A4610696' id: BrickTileWhiteBox decals: - 3392: 8,-21 + 3390: 8,-21 - node: color: '#B02E26FF' id: BrickTileWhiteBox decals: - 3260: -22,-49 + 3258: -22,-49 - node: color: '#C74EBDFF' id: BrickTileWhiteBox decals: - 3258: -22,-46 + 3256: -22,-46 - node: color: '#D381C996' id: BrickTileWhiteBox decals: - 3388: 8,-23 + 3386: 8,-23 - node: color: '#D4D4D496' id: BrickTileWhiteBox decals: - 3394: 10,-21 + 3392: 10,-21 - node: color: '#DE3A3A96' id: BrickTileWhiteBox decals: - 3390: 10,-23 + 3388: 10,-23 - node: color: '#EFB34196' id: BrickTileWhiteBox decals: - 3395: 11,-21 + 3393: 11,-21 - node: color: '#FEAC3DFF' id: BrickTileWhiteBox decals: - 3265: -22,-48 + 3263: -22,-48 - node: color: '#FFA5180C' id: BrickTileWhiteBox decals: - 3584: -42,0 + 3582: -42,0 - node: color: '#334E6DC8' id: BrickTileWhiteCornerNe decals: - 3396: 12,-20 + 3394: 12,-20 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteCornerNe decals: - 3814: 26,3 + 3812: 26,3 - node: color: '#52B4E9D9' id: BrickTileWhiteCornerNe decals: - 4113: 4,-60 + 4111: 4,-60 - node: color: '#52B4E9DC' id: BrickTileWhiteCornerNe decals: - 4059: 1,-62 + 4057: 1,-62 - node: color: '#334E6DC8' id: BrickTileWhiteCornerNw decals: - 3399: 7,-20 + 3397: 7,-20 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteCornerNw decals: - 3815: 21,3 + 3813: 21,3 - node: color: '#52B4E9D9' id: BrickTileWhiteCornerNw decals: - 4112: 2,-60 + 4110: 2,-60 - node: color: '#52B4E9DC' id: BrickTileWhiteCornerNw decals: - 4058: 5,-62 + 4056: 5,-62 - node: color: '#334E6DC8' id: BrickTileWhiteCornerSe decals: - 3397: 12,-24 + 3395: 12,-24 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteCornerSe decals: - 3812: 26,-2 + 3810: 26,-2 - node: color: '#52B4E9DC' id: BrickTileWhiteCornerSe decals: - 4056: 1,-59 + 4054: 1,-59 - node: color: '#334E6DC8' id: BrickTileWhiteCornerSw decals: - 3398: 7,-24 + 3396: 7,-24 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteCornerSw decals: - 3813: 21,-2 + 3811: 21,-2 - node: color: '#52B4E9DC' id: BrickTileWhiteCornerSw decals: - 4057: 5,-59 + 4055: 5,-59 - node: color: '#52B4E9D9' id: BrickTileWhiteEndS decals: - 4110: 2,-61 - 4111: 4,-61 + 4108: 2,-61 + 4109: 4,-61 - node: color: '#52B4E9DC' id: BrickTileWhiteInnerNe decals: - 4069: 1,-63 - 4070: 0,-62 + 4067: 1,-63 + 4068: 0,-62 - node: color: '#52B4E9DC' id: BrickTileWhiteInnerNw decals: - 4071: 5,-63 - 4072: 6,-62 + 4069: 5,-63 + 4070: 6,-62 - node: color: '#52B4E9D9' id: BrickTileWhiteInnerSe decals: - 4117: 2,-60 + 4115: 2,-60 - node: color: '#52B4E9DC' id: BrickTileWhiteInnerSe decals: - 4068: 0,-59 - 4079: 1,-57 + 4066: 0,-59 + 4077: 1,-57 - node: color: '#52B4E9D9' id: BrickTileWhiteInnerSw decals: - 4116: 4,-60 + 4114: 4,-60 - node: color: '#52B4E9DC' id: BrickTileWhiteInnerSw decals: - 4067: 6,-59 - 4078: 5,-57 + 4065: 6,-59 + 4076: 5,-57 - node: color: '#334E6DC8' id: BrickTileWhiteLineE decals: - 3404: 12,-21 - 3405: 12,-22 - 3406: 12,-23 + 3402: 12,-21 + 3403: 12,-22 + 3404: 12,-23 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteLineE decals: - 3816: 26,2 - 3817: 26,1 - 3818: 26,0 - 3819: 26,-1 + 3814: 26,2 + 3815: 26,1 + 3816: 26,0 + 3817: 26,-1 - node: color: '#52B4E9DC' id: BrickTileWhiteLineE decals: - 4063: 0,-60 - 4064: 0,-61 - 4075: 1,-58 + 4061: 0,-60 + 4062: 0,-61 + 4073: 1,-58 - node: color: '#334E6DC8' id: BrickTileWhiteLineN decals: - 3400: 8,-20 - 3401: 9,-20 - 3402: 10,-20 - 3403: 11,-20 + 3398: 8,-20 + 3399: 9,-20 + 3400: 10,-20 + 3401: 11,-20 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteLineN decals: - 3808: 22,3 - 3809: 23,3 - 3810: 24,3 - 3811: 25,3 + 3806: 22,3 + 3807: 23,3 + 3808: 24,3 + 3809: 25,3 - node: color: '#52B4E9D9' id: BrickTileWhiteLineN decals: - 4114: 3,-60 + 4112: 3,-60 - node: color: '#52B4E9DC' id: BrickTileWhiteLineN decals: - 4060: 2,-63 - 4061: 3,-63 - 4062: 4,-63 + 4058: 2,-63 + 4059: 3,-63 + 4060: 4,-63 - node: color: '#334E6DC8' id: BrickTileWhiteLineS decals: - 3410: 8,-24 - 3411: 9,-24 - 3412: 10,-24 - 3413: 11,-24 + 3408: 8,-24 + 3409: 9,-24 + 3410: 10,-24 + 3411: 11,-24 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteLineS decals: - 3824: 22,-2 - 3825: 23,-2 - 3826: 24,-2 - 3827: 25,-2 + 3822: 22,-2 + 3823: 23,-2 + 3824: 24,-2 + 3825: 25,-2 - node: color: '#52B4E9D9' id: BrickTileWhiteLineS decals: - 4115: 3,-60 + 4113: 3,-60 - node: color: '#52B4E9DC' id: BrickTileWhiteLineS decals: - 4073: 3,-57 - 4076: 2,-57 - 4077: 4,-57 + 4071: 3,-57 + 4074: 2,-57 + 4075: 4,-57 - node: color: '#334E6DC8' id: BrickTileWhiteLineW decals: - 3407: 7,-21 - 3408: 7,-22 - 3409: 7,-23 + 3405: 7,-21 + 3406: 7,-22 + 3407: 7,-23 - node: cleanable: True color: '#334E6DFF' id: BrickTileWhiteLineW decals: - 3820: 21,2 - 3821: 21,1 - 3822: 21,0 - 3823: 21,-1 + 3818: 21,2 + 3819: 21,1 + 3820: 21,0 + 3821: 21,-1 - node: color: '#52B4E9DC' id: BrickTileWhiteLineW decals: - 4065: 6,-60 - 4066: 6,-61 - 4074: 5,-58 + 4063: 6,-60 + 4064: 6,-61 + 4072: 5,-58 - node: color: '#FFFFFFFF' id: Busha1 decals: 480: -8.396269,51.324306 481: -8.978583,51.511806 - 2774: 5.324413,-0.030564666 + 2772: 5.324413,-0.030564666 - node: color: '#FFFFFFFF' id: Busha2 @@ -1155,8 +1156,8 @@ entities: color: '#FFFFFFFF' id: Bushe4 decals: - 2860: -11.957823,6.4384537 - 2861: -4.0984473,3.9853287 + 2858: -11.957823,6.4384537 + 2859: -4.0984473,3.9853287 - node: color: '#FFFFFFFF' id: Bushi1 @@ -1186,7 +1187,7 @@ entities: color: '#FFFFFFFF' id: Caution decals: - 2919: 16.006746,36.692352 + 2917: 16.006746,36.692352 - node: color: '#334E6DC8' id: CheckerNESW @@ -1233,7 +1234,7 @@ entities: color: '#DE3A3A53' id: CheckerNWSE decals: - 2945: 29,32 + 2943: 29,32 - node: color: '#DE3A3A5A' id: CheckerNWSE @@ -1267,8 +1268,8 @@ entities: color: '#FFFFFFFF' id: Delivery decals: - 3676: 4,-3 - 3706: -70,-45 + 3674: 4,-3 + 3704: -70,-45 - node: cleanable: True color: '#DE3A3A96' @@ -1280,66 +1281,66 @@ entities: color: '#0F267C34' id: DiagonalCheckerBOverlay decals: - 3629: -25,-33 - 3630: -25,-34 - 3631: -24,-34 - 3632: -24,-33 - 3633: -26,-33 - 3634: -26,-34 - 3635: -26,-32 - 3636: -25,-32 - 3637: -24,-32 - 3638: -23,-32 - 3639: -23,-33 - 3640: -23,-34 - 3641: -23,-36 - 3642: -23,-35 - 3643: -24,-35 - 3644: -24,-36 - 3645: -24,-37 - 3646: -23,-37 - 3647: -25,-37 - 3648: -26,-37 - 3649: -26,-36 - 3650: -25,-36 - 3651: -25,-35 - 3652: -26,-35 + 3627: -25,-33 + 3628: -25,-34 + 3629: -24,-34 + 3630: -24,-33 + 3631: -26,-33 + 3632: -26,-34 + 3633: -26,-32 + 3634: -25,-32 + 3635: -24,-32 + 3636: -23,-32 + 3637: -23,-33 + 3638: -23,-34 + 3639: -23,-36 + 3640: -23,-35 + 3641: -24,-35 + 3642: -24,-36 + 3643: -24,-37 + 3644: -23,-37 + 3645: -25,-37 + 3646: -26,-37 + 3647: -26,-36 + 3648: -25,-36 + 3649: -25,-35 + 3650: -26,-35 - node: color: '#923A3A93' id: DiagonalCheckerBOverlay decals: - 3480: -1,17 - 3481: -1,18 - 3482: -2,18 - 3483: -2,19 - 3484: -2,20 - 3485: -1,21 - 3486: -1,20 - 3487: -1,19 - 3488: 0,21 - 3489: 0,20 - 3490: 0,18 - 3491: 0,19 - 3492: 0,17 - 3493: 0,16 - 3494: 2,16 - 3495: 1,16 - 3496: 1,17 - 3497: 2,17 - 3498: 2,18 - 3499: 1,18 - 3500: 1,20 - 3501: 1,19 - 3502: 2,19 - 3503: 2,20 - 3504: 2,21 - 3505: 1,21 + 3478: -1,17 + 3479: -1,18 + 3480: -2,18 + 3481: -2,19 + 3482: -2,20 + 3483: -1,21 + 3484: -1,20 + 3485: -1,19 + 3486: 0,21 + 3487: 0,20 + 3488: 0,18 + 3489: 0,19 + 3490: 0,17 + 3491: 0,16 + 3492: 2,16 + 3493: 1,16 + 3494: 1,17 + 3495: 2,17 + 3496: 2,18 + 3497: 1,18 + 3498: 1,20 + 3499: 1,19 + 3500: 2,19 + 3501: 2,20 + 3502: 2,21 + 3503: 1,21 - node: color: '#983A3A93' id: DiagonalCheckerBOverlay decals: - 3506: -1,16 - 3507: -2,21 + 3504: -1,16 + 3505: -2,21 - node: cleanable: True color: '#D4D4D496' @@ -1470,8 +1471,8 @@ entities: color: '#D4D4D4D6' id: DirtLight decals: - 3203: 29,3 - 3204: 29,3 + 3201: 29,3 + 3202: 29,3 - node: color: '#FFFFFFFF' id: DirtLight @@ -1547,8 +1548,8 @@ entities: color: '#D4D4D4D6' id: DirtMedium decals: - 3205: 30,-1 - 3206: 27,-2 + 3203: 30,-1 + 3204: 27,-2 - node: color: '#FFFFFFFF' id: DirtMedium @@ -1611,22 +1612,22 @@ entities: color: '#FFFFFFFF' id: FlowersBROne decals: - 3556: -4.2428155,17.233944 - 3557: -8.086565,18.640194 - 3847: 31.317625,-40.694973 + 3554: -4.2428155,17.233944 + 3555: -8.086565,18.640194 + 3845: 31.317625,-40.694973 - node: color: '#FFFFFFFF' id: FlowersBRThree decals: - 3850: 5.23739,0.5862826 + 3848: 5.23739,0.5862826 - node: color: '#FFFFFFFF' id: Flowersbr1 decals: 4: 23,-20 - 3558: -8.649066,17.499569 - 3559: -5.2115655,18.499569 - 3849: 6.83114,0.4612826 + 3556: -8.649066,17.499569 + 3557: -5.2115655,18.499569 + 3847: 6.83114,0.4612826 - node: color: '#FFFFFFFF' id: Flowersbr2 @@ -1650,44 +1651,44 @@ entities: 457: -3.1144176,47.88133 458: -5.0675426,53.662476 459: -4.1456676,53.1781 - 3839: 14.281914,-83.73461 - 3840: 32.40751,-85.70861 - 3848: 10.92489,0.14878261 + 3837: 14.281914,-83.73461 + 3838: 32.40751,-85.70861 + 3846: 10.92489,0.14878261 - node: color: '#FFFFFFFF' id: Flowersbr3 decals: - 3212: -40.519615,3.8355665 - 3213: -41.269615,3.0543165 - 3214: -40.25399,5.8355665 - 3846: 31.770752,-40.366848 + 3210: -40.519615,3.8355665 + 3211: -41.269615,3.0543165 + 3212: -40.25399,5.8355665 + 3844: 31.770752,-40.366848 - node: color: '#FFFFFFFF' id: Flowerspv1 decals: 6: 26,-20 7: 29,-20 - 3223: -35.06649,3.0386915 - 3224: -36.59774,5.4761915 - 3225: -32.2259,5.128909 - 3226: -32.647774,3.019534 - 3227: -31.054026,2.972659 - 3855: 66.11165,-9.076797 - 3856: 60.79915,-9.326797 + 3221: -35.06649,3.0386915 + 3222: -36.59774,5.4761915 + 3223: -32.2259,5.128909 + 3224: -32.647774,3.019534 + 3225: -31.054026,2.972659 + 3853: 66.11165,-9.076797 + 3854: 60.79915,-9.326797 - node: color: '#FFFFFFFF' id: Flowerspv3 decals: - 3851: 10.26864,0.6175326 + 3849: 10.26864,0.6175326 - node: color: '#FFFFFFFF' id: Flowersy1 decals: 5: 21,-20 8: 28,-20 - 3852: 53.855778,-8.686172 - 3853: 53.418278,-9.420547 - 3854: 66.06477,-8.279921 + 3850: 53.855778,-8.686172 + 3851: 53.418278,-9.420547 + 3852: 66.06477,-8.279921 - node: color: '#FFFFFFFF' id: Flowersy2 @@ -1699,18 +1700,18 @@ entities: 469: -10.65123,52.966118 470: -7.307479,50.772125 471: -9.46373,48.678375 - 3837: 15.688164,-83.59399 - 3838: 14.391289,-84.64086 - 3845: 45.66365,-87.620224 - 3857: 49.854713,-6.2645936 - 3858: 49.979713,-11.498969 + 3835: 15.688164,-83.59399 + 3836: 14.391289,-84.64086 + 3843: 45.66365,-87.620224 + 3855: 49.854713,-6.2645936 + 3856: 49.979713,-11.498969 - node: color: '#2B3F4A22' id: FullTileOverlayGreyscale decals: - 3625: -31,-4 - 3626: -29,-3 - 3627: -31,-7 + 3623: -31,-4 + 3624: -29,-3 + 3625: -31,-7 - node: color: '#D4D4D496' id: FullTileOverlayGreyscale @@ -1746,24 +1747,24 @@ entities: color: '#FFFFFFFF' id: Grassa1 decals: - 3207: -40.269615,3.5386915 - 3208: -41.50399,4.0230665 - 3228: -30.3509,4.378909 - 3229: -29.50715,3.753909 - 3230: -30.429026,5.613284 - 3231: -31.5384,5.925784 - 3232: -32.3509,5.816409 - 3233: -29.6634,5.738284 - 3234: -32.710274,3.2350059 - 3538: -8.570941,18.515194 - 3539: -7.4146905,18.405819 - 3540: -7.0709405,17.405819 - 3541: -7.9771905,18.515194 - 3542: -8.649066,17.233944 - 3543: -5.2115655,17.890194 - 3544: -5.6959405,17.249569 - 3545: -4.1803155,17.265194 - 3546: -5.2115655,18.671444 + 3205: -40.269615,3.5386915 + 3206: -41.50399,4.0230665 + 3226: -30.3509,4.378909 + 3227: -29.50715,3.753909 + 3228: -30.429026,5.613284 + 3229: -31.5384,5.925784 + 3230: -32.3509,5.816409 + 3231: -29.6634,5.738284 + 3232: -32.710274,3.2350059 + 3536: -8.570941,18.515194 + 3537: -7.4146905,18.405819 + 3538: -7.0709405,17.405819 + 3539: -7.9771905,18.515194 + 3540: -8.649066,17.233944 + 3541: -5.2115655,17.890194 + 3542: -5.6959405,17.249569 + 3543: -4.1803155,17.265194 + 3544: -5.2115655,18.671444 - node: color: '#FFFFFFFF' id: Grassa3 @@ -1786,35 +1787,35 @@ entities: color: '#FFFFFFFF' id: Grassa4 decals: - 3215: -36.175865,3.0074415 - 3216: -35.144615,3.8199415 - 3217: -35.394615,4.5855665 - 3218: -34.94149,4.6636915 - 3219: -36.59774,5.5230665 + 3213: -36.175865,3.0074415 + 3214: -35.144615,3.8199415 + 3215: -35.394615,4.5855665 + 3216: -34.94149,4.6636915 + 3217: -36.59774,5.5230665 - node: color: '#FFFFFFFF' id: Grassb2 decals: - 2859: -11.879698,6.0478287 - 3836: 14.491955,-83.73193 + 2857: -11.879698,6.0478287 + 3834: 14.491955,-83.73193 - node: color: '#FFFFFFFF' id: Grassb3 decals: - 3835: 15.3420315,-83.51318 + 3833: 15.3420315,-83.51318 - node: color: '#FFFFFFFF' id: Grassb5 decals: - 3547: -5.8053155,18.655819 - 3548: -7.0553155,18.890194 - 3549: -7.2584405,17.108944 - 3550: -7.2740655,17.937069 - 3551: -8.633441,18.968319 - 3552: -5.8834405,17.124569 - 3553: -5.9303155,19.077694 - 3554: -4.1021905,17.968319 - 3555: -4.9615655,17.671444 + 3545: -5.8053155,18.655819 + 3546: -7.0553155,18.890194 + 3547: -7.2584405,17.108944 + 3548: -7.2740655,17.937069 + 3549: -8.633441,18.968319 + 3550: -5.8834405,17.124569 + 3551: -5.9303155,19.077694 + 3552: -4.1021905,17.968319 + 3553: -4.9615655,17.671444 - node: color: '#FFFFFFFF' id: Grassc1 @@ -1838,19 +1839,19 @@ entities: 417: 5.9810176,54.171776 418: 7.4810176,55.671776 419: 9.465392,55.265526 - 3209: -41.832115,3.1480665 - 3210: -42.082115,4.5074415 - 3211: -40.425865,5.7261915 - 3220: -36.44149,5.3668165 - 3221: -36.644615,3.3824415 - 3222: -35.37899,3.1168165 + 3207: -41.832115,3.1480665 + 3208: -42.082115,4.5074415 + 3209: -40.425865,5.7261915 + 3218: -36.44149,5.3668165 + 3219: -36.644615,3.3824415 + 3220: -35.37899,3.1168165 - node: color: '#FFFFFFFF' id: Grassc4 decals: 355: -5.001564,4.018616 - 2858: -12.004698,6.9072037 - 3834: 15.7170315,-84.54443 + 2856: -12.004698,6.9072037 + 3832: 15.7170315,-84.54443 - node: color: '#FFFFFFFF' id: Grasse2 @@ -1893,14 +1894,14 @@ entities: 528: -8.928438,56.05247 529: -10.678438,55.30247 530: -10.850313,53.86497 - 3526: -8.633441,18.608944 - 3527: -8.617816,17.921444 - 3528: -7.9146905,18.593319 - 3529: -7.3209405,18.265194 - 3530: -4.5709405,18.452694 - 3531: -5.6178155,17.983944 - 3532: -5.7896905,17.421444 - 3533: -4.5084405,17.358944 + 3524: -8.633441,18.608944 + 3525: -8.617816,17.921444 + 3526: -7.9146905,18.593319 + 3527: -7.3209405,18.265194 + 3528: -4.5709405,18.452694 + 3529: -5.6178155,17.983944 + 3530: -5.7896905,17.421444 + 3531: -4.5084405,17.358944 - node: color: '#FFFFFFFF' id: Grasse3 @@ -1912,14 +1913,14 @@ entities: 424: 11.789851,52.392174 425: 12.117976,52.5328 426: 12.852351,53.9703 - 3534: -7.1178155,17.671444 - 3535: -4.1646905,18.749569 + 3532: -7.1178155,17.671444 + 3533: -4.1646905,18.749569 - node: color: '#50AF7F6F' id: HalfTileOverlayGreyscale decals: - 3478: -8,12 - 3479: -10,12 + 3476: -8,12 + 3477: -10,12 - node: color: '#D381C996' id: HalfTileOverlayGreyscale @@ -1929,7 +1930,7 @@ entities: color: '#EFB34150' id: HalfTileOverlayGreyscale decals: - 2854: -16,-5 + 2852: -16,-5 - node: color: '#EFB3415A' id: HalfTileOverlayGreyscale @@ -1940,49 +1941,49 @@ entities: color: '#EFB34160' id: HalfTileOverlayGreyscale decals: - 2829: -24,-5 - 2830: -23,-5 - 2831: -21,-5 - 2832: -20,-5 - 2833: -18,-5 - 2834: -17,-5 + 2827: -24,-5 + 2828: -23,-5 + 2829: -21,-5 + 2830: -20,-5 + 2831: -18,-5 + 2832: -17,-5 - node: color: '#F0F0F073' id: HalfTileOverlayGreyscale decals: - 3917: -7,-60 - 3918: -8,-60 + 3915: -7,-60 + 3916: -8,-60 - node: color: '#F0F0F08F' id: HalfTileOverlayGreyscale decals: - 4045: -11,-62 - 4046: -13,-62 - 4047: -12,-62 - 4048: -14,-62 - 4049: -15,-62 - 4050: -16,-62 + 4043: -11,-62 + 4044: -13,-62 + 4045: -12,-62 + 4046: -14,-62 + 4047: -15,-62 + 4048: -16,-62 - node: color: '#F0F0F0AA' id: HalfTileOverlayGreyscale decals: - 3885: -8,-57 - 3886: -7,-57 - 3887: -6,-57 - 3901: -4,-57 - 3902: -3,-57 + 3883: -8,-57 + 3884: -7,-57 + 3885: -6,-57 + 3899: -4,-57 + 3900: -3,-57 - node: color: '#F0F0F0C3' id: HalfTileOverlayGreyscale decals: - 3911: -6,-61 - 3912: -7,-61 - 3913: -8,-61 + 3909: -6,-61 + 3910: -7,-61 + 3911: -8,-61 - node: color: '#F0F0F0FF' id: HalfTileOverlayGreyscale decals: - 3990: -2,-57 + 3988: -2,-57 - node: color: '#FFFFFF79' id: HalfTileOverlayGreyscale @@ -2008,58 +2009,58 @@ entities: id: HalfTileOverlayGreyscale180 decals: 239: -16,6 - 2156: -21,6 - 2157: -24,6 + 2155: -21,6 + 2156: -24,6 - node: color: '#EFB34160' id: HalfTileOverlayGreyscale180 decals: - 2819: -22,6 - 2820: -23,6 - 2821: -20,6 + 2817: -22,6 + 2818: -23,6 + 2819: -20,6 - node: color: '#EFB34163' id: HalfTileOverlayGreyscale180 decals: - 2779: -19,6 - 2780: -18,6 - 2781: -17,6 + 2777: -19,6 + 2778: -18,6 + 2779: -17,6 - node: color: '#F0F0F05A' id: HalfTileOverlayGreyscale180 decals: - 3903: -8,-57 - 3904: -7,-57 + 3901: -8,-57 + 3902: -7,-57 - node: color: '#F0F0F073' id: HalfTileOverlayGreyscale180 decals: - 3919: -8,-61 - 3920: -7,-61 - 3927: -4,-57 - 3928: -3,-57 + 3917: -8,-61 + 3918: -7,-61 + 3925: -4,-57 + 3926: -3,-57 - node: color: '#F0F0F088' id: HalfTileOverlayGreyscale180 decals: - 3991: -2,-57 + 3989: -2,-57 - node: color: '#F0F0F08F' id: HalfTileOverlayGreyscale180 decals: - 4037: -16,-59 - 4038: -15,-59 - 4039: -14,-59 - 4040: -13,-59 - 4041: -12,-59 - 4042: -11,-59 + 4035: -16,-59 + 4036: -15,-59 + 4037: -14,-59 + 4038: -13,-59 + 4039: -12,-59 + 4040: -11,-59 - node: color: '#F0F0F0C3' id: HalfTileOverlayGreyscale180 decals: - 3914: -6,-60 - 3915: -7,-60 - 3916: -8,-60 + 3912: -6,-60 + 3913: -7,-60 + 3914: -8,-60 - node: color: '#FFFFFF79' id: HalfTileOverlayGreyscale180 @@ -2081,7 +2082,7 @@ entities: color: '#EFB34153' id: HalfTileOverlayGreyscale270 decals: - 2848: -15,5 + 2846: -15,5 - node: color: '#EFB3415A' id: HalfTileOverlayGreyscale270 @@ -2098,39 +2099,39 @@ entities: color: '#EFB34160' id: HalfTileOverlayGreyscale270 decals: - 2827: -15,-4 + 2825: -15,-4 - node: color: '#F0F0F05A' id: HalfTileOverlayGreyscale270 decals: - 3905: -6,-57 - 3906: -6,-58 - 3907: -6,-59 - 3908: -6,-60 - 3909: -6,-61 - 3910: -6,-62 + 3903: -6,-57 + 3904: -6,-58 + 3905: -6,-59 + 3906: -6,-60 + 3907: -6,-61 + 3908: -6,-62 - node: color: '#F0F0F088' id: HalfTileOverlayGreyscale270 decals: - 3992: -6,-63 + 3990: -6,-63 - node: color: '#F0F0F08F' id: HalfTileOverlayGreyscale270 decals: - 4043: -10,-60 - 4044: -10,-61 + 4041: -10,-60 + 4042: -10,-61 - node: color: '#F0F0F0AA' id: HalfTileOverlayGreyscale270 decals: - 3894: -4,-57 - 3895: -4,-58 - 3896: -4,-60 - 3897: -4,-59 - 3898: -4,-61 - 3899: -4,-62 - 3900: -4,-63 + 3892: -4,-57 + 3893: -4,-58 + 3894: -4,-60 + 3895: -4,-59 + 3896: -4,-61 + 3897: -4,-62 + 3898: -4,-63 - node: color: '#334E6DC8' id: HalfTileOverlayGreyscale90 @@ -2151,40 +2152,40 @@ entities: 236: -25,1 237: -25,-3 238: -25,-4 - 2155: -25,-2 + 2154: -25,-2 - node: color: '#EFB34160' id: HalfTileOverlayGreyscale90 decals: - 2823: -25,5 - 2824: -25,4 - 2825: -25,0 - 2826: -25,-1 + 2821: -25,5 + 2822: -25,4 + 2823: -25,0 + 2824: -25,-1 - node: color: '#F0F0F073' id: HalfTileOverlayGreyscale90 decals: - 3921: -4,-58 - 3922: -4,-59 - 3923: -4,-60 - 3924: -4,-61 - 3925: -4,-62 - 3926: -4,-63 + 3919: -4,-58 + 3920: -4,-59 + 3921: -4,-60 + 3922: -4,-61 + 3923: -4,-62 + 3924: -4,-63 - node: color: '#F0F0F0AA' id: HalfTileOverlayGreyscale90 decals: - 3888: -6,-57 - 3889: -6,-58 - 3890: -6,-59 - 3891: -6,-60 - 3892: -6,-61 - 3893: -6,-62 + 3886: -6,-57 + 3887: -6,-58 + 3888: -6,-59 + 3889: -6,-60 + 3890: -6,-61 + 3891: -6,-62 - node: color: '#F0F0F0FF' id: HalfTileOverlayGreyscale90 decals: - 3993: -6,-63 + 3991: -6,-63 - node: color: '#FFFFFF79' id: HalfTileOverlayGreyscale90 @@ -2194,7 +2195,7 @@ entities: color: '#FFFFFFFF' id: HatchSmall decals: - 2974: 51,-56 + 2972: 51,-56 - node: angle: 3.141592653589793 rad color: '#FFFFFFFF' @@ -2208,69 +2209,69 @@ entities: color: '#EFB34196' id: MiniTileCheckerAOverlay decals: - 3073: -38,-9 - 3074: -37,-9 - 3075: -37,-10 - 3076: -38,-10 - 3077: -38,-11 - 3078: -37,-11 - 3079: -38,-12 - 3080: -37,-12 - 3081: -38,-8 - 3082: -37,-8 - 3083: -38,-7 - 3084: -37,-7 + 3071: -38,-9 + 3072: -37,-9 + 3073: -37,-10 + 3074: -38,-10 + 3075: -38,-11 + 3076: -37,-11 + 3077: -38,-12 + 3078: -37,-12 + 3079: -38,-8 + 3080: -37,-8 + 3081: -38,-7 + 3082: -37,-7 - node: color: '#D4D4D406' id: MiniTileOverlay decals: - 3734: -41,15 - 3735: -40,15 - 3736: -40,14 - 3737: -41,14 - 3738: -37,15 - 3739: -36,15 - 3740: -36,14 - 3741: -37,14 - 3742: -37,13 - 3743: -36,13 - 3744: -41,13 - 3745: -40,13 + 3732: -41,15 + 3733: -40,15 + 3734: -40,14 + 3735: -41,14 + 3736: -37,15 + 3737: -36,15 + 3738: -36,14 + 3739: -37,14 + 3740: -37,13 + 3741: -36,13 + 3742: -41,13 + 3743: -40,13 - node: color: '#D4D4D4C7' id: MiniTileSteelBox decals: - 2835: -20,-6 - 2836: -16,-6 - 2837: -20,7 + 2833: -20,-6 + 2834: -16,-6 + 2835: -20,7 - node: color: '#D4D4D4D3' id: MiniTileSteelBox decals: - 2118: -24,7 - 2119: -26,3 - 2120: -26,-2 - 2121: -24,-6 - 2122: -14,-2 - 2123: -14,3 - 2124: -16,7 - 2129: 6,-27 - 2130: 3,-27 - 2131: 4,-43 - 2132: 0,-43 - 2133: -10,-43 - 2134: -14,-43 - 2135: -5,-27 + 2117: -24,7 + 2118: -26,3 + 2119: -26,-2 + 2120: -24,-6 + 2121: -14,-2 + 2122: -14,3 + 2123: -16,7 + 2128: 6,-27 + 2129: 3,-27 + 2130: 4,-43 + 2131: 0,-43 + 2132: -10,-43 + 2133: -14,-43 + 2134: -5,-27 - node: color: '#C8C8C8FF' id: MiniTileSteelCornerNe decals: - 3731: -19,-10 + 3729: -19,-10 - node: color: '#D4D4D4CD' id: MiniTileSteelCornerNe decals: - 3032: 18,7 + 3030: 18,7 - node: color: '#D4D4D4D3' id: MiniTileSteelCornerNe @@ -2313,41 +2314,41 @@ entities: 1857: 16,-21 1915: 9,-26 1916: 36,-21 - 1965: -3,-41 - 1970: -4,-26 - 2043: 14,1 - 2044: 4,1 - 2045: -3,1 + 1964: -3,-41 + 1969: -4,-26 + 2042: 14,1 + 2043: 4,1 + 2044: -3,1 - node: color: '#DE3A3A96' id: MiniTileSteelCornerNe decals: - 2599: 18,23 + 2598: 18,23 - node: color: '#88EFB1D9' id: MiniTileSteelCornerNw decals: - 2855: -28,-78 + 2853: -28,-78 - node: color: '#C8C8C8FF' id: MiniTileSteelCornerNw decals: - 3730: -21,-10 + 3728: -21,-10 - node: color: '#D4D4D4AE' id: MiniTileSteelCornerNw decals: - 3035: 33,-40 + 3033: 33,-40 - node: color: '#D4D4D4B4' id: MiniTileSteelCornerNw decals: - 3141: -7,-41 + 3139: -7,-41 - node: color: '#D4D4D4CD' id: MiniTileSteelCornerNw decals: - 3033: 16,7 + 3031: 16,7 - node: color: '#D4D4D4D3' id: MiniTileSteelCornerNw @@ -2390,20 +2391,20 @@ entities: 1856: 14,-21 1914: 0,-26 1917: 34,-21 - 1969: -6,-26 - 2042: 13,1 - 2046: -1,1 - 2047: -11,1 + 1968: -6,-26 + 2041: 13,1 + 2045: -1,1 + 2046: -11,1 - node: color: '#DE3A3A96' id: MiniTileSteelCornerNw decals: - 2600: 14,23 + 2599: 14,23 - node: color: '#C8C8C8FF' id: MiniTileSteelCornerSe decals: - 3726: -19,-23 + 3724: -19,-23 - node: color: '#D4D4D4D3' id: MiniTileSteelCornerSe @@ -2446,31 +2447,31 @@ entities: 1861: 16,-38 1913: 9,-28 1924: 36,-38 - 1967: -3,-44 - 1968: -4,-28 - 2038: 4,0 - 2039: -3,0 - 2040: 14,0 + 1966: -3,-44 + 1967: -4,-28 + 2037: 4,0 + 2038: -3,0 + 2039: 14,0 - node: color: '#DE3A3A96' id: MiniTileSteelCornerSe decals: - 2591: 18,19 + 2590: 18,19 - node: color: '#88EFB1D9' id: MiniTileSteelCornerSw decals: - 2856: -28,-81 + 2854: -28,-81 - node: color: '#C8C8C8FF' id: MiniTileSteelCornerSw decals: - 3727: -21,-23 + 3725: -21,-23 - node: color: '#D4D4D4C3' id: MiniTileSteelCornerSw decals: - 3150: -27,-7 + 3148: -27,-7 - node: color: '#D4D4D4D3' id: MiniTileSteelCornerSw @@ -2519,21 +2520,21 @@ entities: 1859: 14,-38 1912: 0,-28 1925: 34,-38 - 1966: -7,-44 - 1971: -6,-28 - 2041: 13,0 - 2048: -11,0 - 2049: -1,0 + 1965: -7,-44 + 1970: -6,-28 + 2040: 13,0 + 2047: -11,0 + 2048: -1,0 - node: color: '#DE3A3A96' id: MiniTileSteelCornerSw decals: - 2592: 14,19 + 2591: 14,19 - node: color: '#D4D4D4C7' id: MiniTileSteelInnerNe decals: - 2841: -19,7 + 2839: -19,7 - node: color: '#D4D4D4D3' id: MiniTileSteelInnerNe @@ -2548,36 +2549,36 @@ entities: 1447: -22,51 1848: 53,-6 1849: 52,-11 - 1955: 36,-26 + 1954: 36,-26 - node: color: '#D4D4D4D6' id: MiniTileSteelInnerNe decals: - 2850: -25.018312,-5.498596 - 2851: -25.283937,-5.498596 - 2852: -25.502687,-5.498596 + 2848: -25.018312,-5.498596 + 2849: -25.283937,-5.498596 + 2850: -25.502687,-5.498596 - node: color: '#D4D4D4FF' id: MiniTileSteelInnerNe decals: - 3114: -39,-13 + 3112: -39,-13 - node: color: '#D4D4D4AE' id: MiniTileSteelInnerNw decals: - 3040: 33,-42 + 3038: 33,-42 - node: color: '#D4D4D4C0' id: MiniTileSteelInnerNw decals: - 2813: -14.760899,-5.480981 - 2814: -15.010899,-5.480981 - 2815: -14.526524,-5.480981 + 2811: -14.760899,-5.480981 + 2812: -15.010899,-5.480981 + 2813: -14.526524,-5.480981 - node: color: '#D4D4D4C7' id: MiniTileSteelInnerNw decals: - 2842: -17,7 + 2840: -17,7 - node: color: '#D4D4D4D3' id: MiniTileSteelInnerNw @@ -2596,19 +2597,19 @@ entities: color: '#D4D4D4FF' id: MiniTileSteelInnerNw decals: - 3112: -36,-13 + 3110: -36,-13 - node: color: '#D4D4D4C0' id: MiniTileSteelInnerSe decals: - 2816: -25.008694,6.5088334 - 2817: -25.274319,6.5088334 - 2818: -25.508694,6.5088334 + 2814: -25.008694,6.5088334 + 2815: -25.274319,6.5088334 + 2816: -25.508694,6.5088334 - node: color: '#D4D4D4C7' id: MiniTileSteelInnerSe decals: - 2840: -23,-6 + 2838: -23,-6 - node: color: '#D4D4D4D3' id: MiniTileSteelInnerSe @@ -2622,20 +2623,20 @@ entities: 1772: 53,-2 1844: 52,-7 1845: 59,-14 - 1954: 36,-27 + 1953: 36,-27 - node: color: '#D4D4D4FF' id: MiniTileSteelInnerSe decals: - 3113: -39,-6 + 3111: -39,-6 - node: color: '#D4D4D4C7' id: MiniTileSteelInnerSw decals: - 2839: -21,-6 - 2844: -14.7582035,6.5086117 - 2845: -14.5238285,6.5086117 - 2846: -15.0082035,6.5086117 + 2837: -21,-6 + 2842: -14.7582035,6.5086117 + 2843: -14.5238285,6.5086117 + 2844: -15.0082035,6.5086117 - node: color: '#D4D4D4D3' id: MiniTileSteelInnerSw @@ -2660,33 +2661,33 @@ entities: color: '#D4D4D4FF' id: MiniTileSteelInnerSw decals: - 3111: -36,-6 + 3109: -36,-6 - node: color: '#C8C8C89E' id: MiniTileSteelLineE decals: - 3441: 18,0 - 3442: 18,1 + 3439: 18,0 + 3440: 18,1 - node: color: '#CACFD6C1' id: MiniTileSteelLineE decals: - 3832: -15,36 + 3830: -15,36 - node: color: '#D4D4D4C0' id: MiniTileSteelLineE decals: - 2802: -25.510418,5.5102654 - 2803: -25.510418,4.5102654 - 2804: -25.510418,3.5239472 - 2805: -25.510418,2.5239472 - 2806: -25.510418,1.5420241 - 2807: -25.510418,0.5198039 - 2808: -25.510418,-0.4823848 - 2809: -25.510418,-1.4980098 - 2810: -25.510418,-2.4674516 - 2811: -25.510418,-3.5051284 - 2812: -25.510418,-4.481826 + 2800: -25.510418,5.5102654 + 2801: -25.510418,4.5102654 + 2802: -25.510418,3.5239472 + 2803: -25.510418,2.5239472 + 2804: -25.510418,1.5420241 + 2805: -25.510418,0.5198039 + 2806: -25.510418,-0.4823848 + 2807: -25.510418,-1.4980098 + 2808: -25.510418,-2.4674516 + 2809: -25.510418,-3.5051284 + 2810: -25.510418,-4.481826 - node: color: '#D4D4D4D3' id: MiniTileSteelLineE @@ -2942,70 +2943,70 @@ entities: 1937: 36,-24 1938: 36,-23 1939: 36,-22 - 1956: -3,-42 - 1957: -3,-43 - 1973: -4,-27 + 1955: -3,-42 + 1956: -3,-43 + 1972: -4,-27 - node: color: '#D4D4D4FF' id: MiniTileSteelLineE decals: - 3097: -39,-7 - 3098: -39,-8 - 3099: -39,-9 - 3100: -39,-10 - 3101: -39,-11 - 3102: -39,-12 + 3095: -39,-7 + 3096: -39,-8 + 3097: -39,-9 + 3098: -39,-10 + 3099: -39,-11 + 3100: -39,-12 - node: color: '#DE3A3A96' id: MiniTileSteelLineE decals: - 2601: 18,22 - 2602: 18,21 - 2603: 18,20 + 2600: 18,22 + 2601: 18,21 + 2602: 18,20 - node: color: '#C8C8C8FF' id: MiniTileSteelLineN decals: - 3729: -20,-10 + 3727: -20,-10 - node: color: '#D4D4D4AE' id: MiniTileSteelLineN decals: - 3037: 32,-42 - 3038: 31,-42 - 3039: 30,-42 + 3035: 32,-42 + 3036: 31,-42 + 3037: 30,-42 - node: color: '#D4D4D4B4' id: MiniTileSteelLineN decals: - 3142: -6,-41 + 3140: -6,-41 - node: color: '#D4D4D4C0' id: MiniTileSteelLineN decals: - 2789: -18.018867,-5.48975 - 2790: -17.019917,-5.49304 - 2791: -19.00948,-5.49304 - 2792: -20.010675,-5.49304 - 2793: -21.010675,-5.49304 - 2794: -22.0263,-5.49304 - 2795: -23.028214,-5.497755 - 2796: -24.012589,-5.497755 + 2787: -18.018867,-5.48975 + 2788: -17.019917,-5.49304 + 2789: -19.00948,-5.49304 + 2790: -20.010675,-5.49304 + 2791: -21.010675,-5.49304 + 2792: -22.0263,-5.49304 + 2793: -23.028214,-5.497755 + 2794: -24.012589,-5.497755 - node: color: '#D4D4D4C7' id: MiniTileSteelLineN decals: - 2838: -18,7 + 2836: -18,7 - node: color: '#D4D4D4CA' id: MiniTileSteelLineN decals: - 2849: -16.015686,-5.492559 + 2847: -16.015686,-5.492559 - node: color: '#D4D4D4CD' id: MiniTileSteelLineN decals: - 3034: 17,7 + 3032: 17,7 - node: color: '#D4D4D4D3' id: MiniTileSteelLineN @@ -3210,59 +3211,59 @@ entities: 1918: 35,-21 1919: 37,-26 1920: 38,-26 - 1958: -5,-41 - 1959: -4,-41 - 1972: -5,-26 - 2050: 3,1 - 2051: 1,1 - 2052: 0,1 - 2053: 2,1 - 2054: -4,1 - 2055: -5,1 - 2056: -7,1 - 2057: -6,1 - 2058: -8,1 - 2059: -9,1 - 2060: -10,1 - 2127: -16,8 - 2128: -24,8 + 1957: -5,-41 + 1958: -4,-41 + 1971: -5,-26 + 2049: 3,1 + 2050: 1,1 + 2051: 0,1 + 2052: 2,1 + 2053: -4,1 + 2054: -5,1 + 2055: -7,1 + 2056: -6,1 + 2057: -8,1 + 2058: -9,1 + 2059: -10,1 + 2126: -16,8 + 2127: -24,8 - node: color: '#D4D4D4FF' id: MiniTileSteelLineN decals: - 3109: -38,-13 - 3110: -37,-13 + 3107: -38,-13 + 3108: -37,-13 - node: color: '#DE3A3A96' id: MiniTileSteelLineN decals: - 2593: 17,23 - 2594: 16,23 - 2595: 15,23 + 2592: 17,23 + 2593: 16,23 + 2594: 15,23 - node: color: '#C8C8C8FF' id: MiniTileSteelLineS decals: - 3728: -20,-23 + 3726: -20,-23 - node: color: '#D4D4D4C0' id: MiniTileSteelLineS decals: - 2797: -20.013802,6.514251 - 2798: -21.019838,6.510408 - 2799: -22.019838,6.510408 - 2800: -23.019838,6.510408 - 2801: -24.019838,6.510408 - 3144: -25,-7 + 2795: -20.013802,6.514251 + 2796: -21.019838,6.510408 + 2797: -22.019838,6.510408 + 2798: -23.019838,6.510408 + 2799: -24.019838,6.510408 + 3142: -25,-7 - node: color: '#D4D4D4C3' id: MiniTileSteelLineS decals: - 2775: -18.011988,6.5150476 - 2776: -19.02412,6.5150476 - 2777: -16.008495,6.503191 - 2778: -17.022287,6.5092306 - 3153: -26,-7 + 2773: -18.011988,6.5150476 + 2774: -19.02412,6.5150476 + 2775: -16.008495,6.503191 + 2776: -17.022287,6.5092306 + 3151: -26,-7 - node: color: '#D4D4D4D3' id: MiniTileSteelLineS @@ -3476,86 +3477,86 @@ entities: 1921: 38,-27 1922: 37,-27 1923: 35,-38 - 1960: -4,-44 - 1961: -5,-44 - 1962: -6,-44 - 1975: -5,-28 - 2027: 3,0 - 2028: 2,0 - 2029: 1,0 - 2030: 0,0 - 2031: -4,0 - 2032: -5,0 - 2033: -6,0 - 2034: -7,0 - 2035: -8,0 - 2036: -9,0 - 2037: -10,0 + 1959: -4,-44 + 1960: -5,-44 + 1961: -6,-44 + 1974: -5,-28 + 2026: 3,0 + 2027: 2,0 + 2028: 1,0 + 2029: 0,0 + 2030: -4,0 + 2031: -5,0 + 2032: -6,0 + 2033: -7,0 + 2034: -8,0 + 2035: -9,0 + 2036: -10,0 - node: color: '#D4D4D4FF' id: MiniTileSteelLineS decals: - 3115: -38,-6 - 3116: -37,-6 + 3113: -38,-6 + 3114: -37,-6 - node: color: '#DE3A3A96' id: MiniTileSteelLineS decals: - 2596: 17,19 - 2597: 16,19 - 2598: 15,19 + 2595: 17,19 + 2596: 16,19 + 2597: 15,19 - node: color: '#C3C3C3BC' id: MiniTileSteelLineW decals: - 3710: 32,-4 - 3711: 32,-5 + 3708: 32,-4 + 3709: 32,-5 - node: color: '#D4D4D496' id: MiniTileSteelLineW decals: - 3829: -14.533487,-3.5022268 - 3830: -14.517862,-2.4866018 - 3831: -14.533487,0.5134914 + 3827: -14.533487,-3.5022268 + 3828: -14.517862,-2.4866018 + 3829: -14.533487,0.5134914 - node: color: '#D4D4D4AE' id: MiniTileSteelLineW decals: - 3036: 33,-41 + 3034: 33,-41 - node: color: '#D4D4D4BA' id: MiniTileSteelLineW decals: - 3828: -27,7 + 3826: -27,7 - node: color: '#D4D4D4C0' id: MiniTileSteelLineW decals: - 2782: -14.526791,4.511916 - 2783: -14.526791,3.535493 - 2784: -14.526791,2.535493 - 2785: -14.526791,1.5321715 - 2786: -14.526791,-0.47854245 - 2787: -14.526791,-1.4661165 - 2788: -14.526791,-4.4806275 + 2780: -14.526791,4.511916 + 2781: -14.526791,3.535493 + 2782: -14.526791,2.535493 + 2783: -14.526791,1.5321715 + 2784: -14.526791,-0.47854245 + 2785: -14.526791,-1.4661165 + 2786: -14.526791,-4.4806275 - node: color: '#D4D4D4C3' id: MiniTileSteelLineW decals: - 2723: -17,38 - 2724: -17,37 - 3151: -27,-5 - 3152: -27,-6 + 2722: -17,38 + 2723: -17,37 + 3149: -27,-5 + 3150: -27,-6 - node: color: '#D4D4D4C7' id: MiniTileSteelLineW decals: - 2843: -14.529805,5.530867 + 2841: -14.529805,5.530867 - node: color: '#D4D4D4CD' id: MiniTileSteelLineW decals: - 3833: 27,-83 + 3831: 27,-83 - node: color: '#D4D4D4D3' id: MiniTileSteelLineW @@ -3789,49 +3790,49 @@ entities: 1944: 34,-27 1945: 34,-28 1946: 34,-29 - 1948: 34,-32 - 1949: 34,-33 - 1950: 34,-34 - 1951: 34,-35 - 1952: 34,-36 - 1953: 34,-37 - 1963: -7,-42 - 1964: -7,-43 - 1974: -6,-27 - 2125: -27,3 - 2126: -27,-1 - 3438: -21,-17 - 3439: -21,-18 - 3440: -21,-19 + 1947: 34,-32 + 1948: 34,-33 + 1949: 34,-34 + 1950: 34,-35 + 1951: 34,-36 + 1952: 34,-37 + 1962: -7,-42 + 1963: -7,-43 + 1973: -6,-27 + 2124: -27,3 + 2125: -27,-1 + 3436: -21,-17 + 3437: -21,-18 + 3438: -21,-19 - node: color: '#D4D4D4DF' id: MiniTileSteelLineW decals: - 4119: 34,-31 - 4120: 34,-30 + 4116: 34,-31 + 4117: 34,-30 - node: color: '#D4D4D4FF' id: MiniTileSteelLineW decals: - 3103: -36,-7 - 3104: -36,-8 - 3105: -36,-9 - 3106: -36,-10 - 3107: -36,-11 - 3108: -36,-12 + 3101: -36,-7 + 3102: -36,-8 + 3103: -36,-9 + 3104: -36,-10 + 3105: -36,-11 + 3106: -36,-12 - node: color: '#DE3A3A96' id: MiniTileSteelLineW decals: - 2604: 14,22 - 2605: 14,21 - 2606: 14,20 + 2603: 14,22 + 2604: 14,21 + 2605: 14,20 - node: color: '#9FED58C0' id: MiniTileWhiteBox decals: - 4108: 3,-58 - 4109: 3,-61 + 4106: 3,-58 + 4107: 3,-61 - node: color: '#FFFFFFFF' id: MiniTileWhiteBox @@ -3842,13 +3843,13 @@ entities: color: '#258CC0EA' id: MiniTileWhiteCornerNe decals: - 3461: -23,-58 + 3459: -23,-58 - node: color: '#334E6DC8' id: MiniTileWhiteCornerNe decals: - 2755: 32,-21 - 2756: 19,-21 + 2754: 32,-21 + 2755: 19,-21 - node: color: '#478C5DDC' id: MiniTileWhiteCornerNe @@ -3861,13 +3862,13 @@ entities: color: '#52B4E963' id: MiniTileWhiteCornerNe decals: - 3015: 73,-48 + 3013: 73,-48 - node: color: '#52B4E9B7' id: MiniTileWhiteCornerNe decals: - 3431: 47,7 - 3432: 46,8 + 3429: 47,7 + 3430: 46,8 - node: color: '#52B4E9CD' id: MiniTileWhiteCornerNe @@ -3878,70 +3879,70 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteCornerNe decals: - 4035: -4,-65 + 4033: -4,-65 - node: color: '#52B4E9D6' id: MiniTileWhiteCornerNe decals: - 3983: 0,-53 + 3981: 0,-53 - node: color: '#52B4E9DC' id: MiniTileWhiteCornerNe decals: - 4080: 6,-56 + 4078: 6,-56 - node: color: '#52B4E9DF' id: MiniTileWhiteCornerNe decals: - 4018: -12,-53 + 4016: -12,-53 - node: color: '#52B4E9E6' id: MiniTileWhiteCornerNe decals: - 3879: 7,-46 + 3877: 7,-46 - node: color: '#707070B7' id: MiniTileWhiteCornerNe decals: - 3266: 31,-72 - 3267: 28,-71 - 3268: 27,-70 + 3264: 31,-72 + 3265: 28,-71 + 3266: 27,-70 - node: color: '#73C2A496' id: MiniTileWhiteCornerNe decals: - 2427: -23,-32 - 2435: -32,-32 - 2436: -31,-33 - 2456: -36,-33 - 2465: -32,-38 - 2506: -34,-44 + 2426: -23,-32 + 2434: -32,-32 + 2435: -31,-33 + 2455: -36,-33 + 2464: -32,-38 + 2505: -34,-44 - node: color: '#787878B7' id: MiniTileWhiteCornerNe decals: - 3301: 31,-78 - 3341: 50,-72 - 3353: 49,-78 + 3299: 31,-78 + 3339: 50,-72 + 3351: 49,-78 - node: color: '#88C598FF' id: MiniTileWhiteCornerNe decals: - 3766: 17,-82 + 3764: 17,-82 - node: color: '#9FED58E9' id: MiniTileWhiteCornerNe decals: - 4022: -13,-54 + 4020: -13,-54 - node: color: '#A4610696' id: MiniTileWhiteCornerNe decals: - 2189: -31,26 - 2190: -23,25 - 2192: -28,19 - 2212: -47,22 - 2225: -47,33 + 2188: -31,26 + 2189: -23,25 + 2191: -28,19 + 2211: -47,22 + 2224: -47,33 - node: color: '#D381C996' id: MiniTileWhiteCornerNe @@ -3954,100 +3955,100 @@ entities: 802: 52,-51 803: 53,-52 831: 46,-46 - 2869: 74,-32 - 2873: 73,-38 - 2988: 73,-44 - 2997: 68,-48 - 3003: 77,-44 - 3236: 64,-32 - 3237: 65,-33 + 2867: 74,-32 + 2871: 73,-38 + 2986: 73,-44 + 2995: 68,-48 + 3001: 77,-44 + 3234: 64,-32 + 3235: 65,-33 - node: color: '#D381C9C0' id: MiniTileWhiteCornerNe decals: - 2935: 65,-44 - 2942: 63,-43 + 2933: 65,-44 + 2940: 63,-43 - node: color: '#D4D4D406' id: MiniTileWhiteCornerNe decals: - 3748: -40,15 - 3749: -36,15 + 3746: -40,15 + 3747: -36,15 - node: color: '#D4D4D40F' id: MiniTileWhiteCornerNe decals: - 2949: 55,-35 + 2947: 55,-35 - node: color: '#D4D4D428' id: MiniTileWhiteCornerNe decals: - 2289: -46,-9 + 2288: -46,-9 - node: color: '#D4D4D4D3' id: MiniTileWhiteCornerNe decals: - 2018: 14,3 - 2061: 14,-1 - 2083: 3,-1 - 2084: 9,-1 - 2107: -3,-1 - 2108: -3,3 + 2017: 14,3 + 2060: 14,-1 + 2082: 3,-1 + 2083: 9,-1 + 2106: -3,-1 + 2107: -3,3 - node: color: '#DE3A3A96' id: MiniTileWhiteCornerNe decals: - 2538: 26,13 - 2542: 26,18 - 2561: 18,17 - 2565: 13,17 - 2575: 8,17 - 2609: 42,16 - 2896: -16,-21 - 2961: 22,-46 - 3124: -15,27 + 2537: 26,13 + 2541: 26,18 + 2560: 18,17 + 2564: 13,17 + 2574: 8,17 + 2608: 42,16 + 2894: -16,-21 + 2959: 22,-46 + 3122: -15,27 - node: color: '#DE3A3AA7' id: MiniTileWhiteCornerNe decals: - 3713: 30,22 + 3711: 30,22 - node: color: '#EFB34196' id: MiniTileWhiteCornerNe decals: - 2246: -23,-9 - 2250: -28,-17 - 2278: -42,-10 - 2317: -45,-6 - 2341: -51,-6 - 2345: -51,-17 - 2346: -53,-13 - 2405: -71,-24 - 3060: -28,-10 - 3085: -35,-6 - 3118: -42,-6 - 3155: -32,-10 + 2245: -23,-9 + 2249: -28,-17 + 2277: -42,-10 + 2316: -45,-6 + 2340: -51,-6 + 2344: -51,-17 + 2345: -53,-13 + 2404: -71,-24 + 3058: -28,-10 + 3083: -35,-6 + 3116: -42,-6 + 3153: -32,-10 - node: color: '#EFB341A7' id: MiniTileWhiteCornerNe decals: - 3732: -32,-22 + 3730: -32,-22 - node: color: '#EFB341B1' id: MiniTileWhiteCornerNe decals: - 3722: -51,-23 + 3720: -51,-23 - node: color: '#258CC0EA' id: MiniTileWhiteCornerNw decals: - 3462: -27,-58 + 3460: -27,-58 - node: color: '#334E6DC8' id: MiniTileWhiteCornerNw decals: - 2753: 18,-21 - 2754: 31,-21 + 2752: 18,-21 + 2753: 31,-21 - node: color: '#478C5DDC' id: MiniTileWhiteCornerNw @@ -4060,12 +4061,12 @@ entities: color: '#52B4E963' id: MiniTileWhiteCornerNw decals: - 3019: 69,-48 + 3017: 69,-48 - node: color: '#52B4E9B7' id: MiniTileWhiteCornerNw decals: - 3430: 44,8 + 3428: 44,8 - node: color: '#52B4E9CD' id: MiniTileWhiteCornerNw @@ -4076,69 +4077,69 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteCornerNw decals: - 4032: -6,-65 + 4030: -6,-65 - node: color: '#52B4E9D6' id: MiniTileWhiteCornerNw decals: - 3964: -10,-53 + 3962: -10,-53 - node: color: '#52B4E9DC' id: MiniTileWhiteCornerNw decals: - 4081: 0,-56 + 4079: 0,-56 - node: color: '#52B4E9DF' id: MiniTileWhiteCornerNw decals: - 4017: -16,-53 + 4015: -16,-53 - node: color: '#52B4E9E6' id: MiniTileWhiteCornerNw decals: - 3880: 2,-46 + 3878: 2,-46 - node: color: '#707070B7' id: MiniTileWhiteCornerNw decals: - 3270: 22,-72 - 3271: 23,-71 - 3272: 24,-70 + 3268: 22,-72 + 3269: 23,-71 + 3270: 24,-70 - node: color: '#73C2A496' id: MiniTileWhiteCornerNw decals: - 2428: -26,-32 - 2437: -33,-32 - 2438: -34,-33 - 2457: -41,-33 - 2466: -33,-38 + 2427: -26,-32 + 2436: -33,-32 + 2437: -34,-33 + 2456: -41,-33 + 2465: -33,-38 - node: color: '#787878B7' id: MiniTileWhiteCornerNw decals: - 3302: 29,-78 - 3335: 27,-81 - 3342: 47,-72 - 3352: 47,-78 + 3300: 29,-78 + 3333: 27,-81 + 3340: 47,-72 + 3350: 47,-78 - node: color: '#88C598FF' id: MiniTileWhiteCornerNw decals: - 3767: 13,-82 + 3765: 13,-82 - node: color: '#9FED58E9' id: MiniTileWhiteCornerNw decals: - 4021: -15,-54 + 4019: -15,-54 - node: color: '#A4610696' id: MiniTileWhiteCornerNw decals: - 2188: -35,26 - 2191: -26,25 - 2211: -49,22 - 2224: -49,33 + 2187: -35,26 + 2190: -26,25 + 2210: -49,22 + 2223: -49,33 - node: color: '#D381C996' id: MiniTileWhiteCornerNw @@ -4149,91 +4150,91 @@ entities: 799: 48,-50 800: 45,-57 833: 41,-46 - 2868: 71,-32 - 2874: 70,-33 - 2987: 67,-44 - 2996: 67,-48 - 3001: 74,-48 - 3002: 76,-44 - 3235: 60,-32 + 2866: 71,-32 + 2872: 70,-33 + 2985: 67,-44 + 2994: 67,-48 + 2999: 74,-48 + 3000: 76,-44 + 3233: 60,-32 - node: color: '#D381C9C0' id: MiniTileWhiteCornerNw decals: - 2934: 59,-44 - 2941: 61,-43 + 2932: 59,-44 + 2939: 61,-43 - node: color: '#D4D4D406' id: MiniTileWhiteCornerNw decals: - 3752: -41,15 - 3753: -37,15 + 3750: -41,15 + 3751: -37,15 - node: color: '#D4D4D40F' id: MiniTileWhiteCornerNw decals: - 2947: 53,-35 + 2945: 53,-35 - node: color: '#D4D4D428' id: MiniTileWhiteCornerNw decals: - 2309: -48,-9 + 2308: -48,-9 - node: color: '#D4D4D4D3' id: MiniTileWhiteCornerNw decals: - 2021: -11,3 - 2022: -1,3 - 2068: -1,-1 - 2069: -11,-1 - 2081: 11,-1 - 2082: 5,-1 + 2020: -11,3 + 2021: -1,3 + 2067: -1,-1 + 2068: -11,-1 + 2080: 11,-1 + 2081: 5,-1 - node: color: '#DE3A3A96' id: MiniTileWhiteCornerNw decals: - 2537: 24,13 - 2544: 20,18 - 2564: 15,17 - 2571: 10,17 - 2576: 4,17 - 2608: 28,22 - 2894: -17,-21 - 2960: 19,-46 - 3123: -17,27 - 3137: 28,16 + 2536: 24,13 + 2543: 20,18 + 2563: 15,17 + 2570: 10,17 + 2575: 4,17 + 2607: 28,22 + 2892: -17,-21 + 2958: 19,-46 + 3121: -17,27 + 3135: 28,16 - node: color: '#EFB34196' id: MiniTileWhiteCornerNw decals: - 2249: -26,-9 - 2279: -43,-10 - 2318: -49,-6 - 2336: -56,-7 - 2337: -55,-6 - 2382: -55,-23 - 2384: -63,-24 - 2404: -75,-24 - 3059: -30,-10 - 3086: -40,-6 - 3119: -43,-6 - 3154: -33,-10 + 2248: -26,-9 + 2278: -43,-10 + 2317: -49,-6 + 2335: -56,-7 + 2336: -55,-6 + 2381: -55,-23 + 2383: -63,-24 + 2403: -75,-24 + 3057: -30,-10 + 3084: -40,-6 + 3117: -43,-6 + 3152: -33,-10 - node: color: '#EFB341A7' id: MiniTileWhiteCornerNw decals: - 3733: -33,-22 + 3731: -33,-22 - node: color: '#258CC0EA' id: MiniTileWhiteCornerSe decals: - 3465: -23,-63 + 3463: -23,-63 - node: color: '#334E6DC8' id: MiniTileWhiteCornerSe decals: - 2759: 32,-23 - 2760: 30,-26 + 2758: 32,-23 + 2759: 30,-26 - node: color: '#478C5DDC' id: MiniTileWhiteCornerSe @@ -4245,12 +4246,12 @@ entities: color: '#52B4E963' id: MiniTileWhiteCornerSe decals: - 3021: 73,-50 + 3019: 73,-50 - node: color: '#52B4E9B7' id: MiniTileWhiteCornerSe decals: - 3429: 47,4 + 3427: 47,4 - node: color: '#52B4E9CD' id: MiniTileWhiteCornerSe @@ -4262,71 +4263,71 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteCornerSe decals: - 4033: -4,-67 + 4031: -4,-67 - node: color: '#52B4E9D6' id: MiniTileWhiteCornerSe decals: - 3962: -4,-63 - 3963: 0,-54 + 3960: -4,-63 + 3961: 0,-54 - node: color: '#52B4E9DC' id: MiniTileWhiteCornerSe decals: - 3994: -2,-57 - 4099: 5,-64 - 4100: 6,-63 + 3992: -2,-57 + 4097: 5,-64 + 4098: 6,-63 - node: color: '#52B4E9DF' id: MiniTileWhiteCornerSe decals: - 4015: -12,-57 + 4013: -12,-57 - node: color: '#52B4E9E6' id: MiniTileWhiteCornerSe decals: - 3881: 7,-51 - 3882: 6,-54 + 3879: 7,-51 + 3880: 6,-54 - node: color: '#73C2A496' id: MiniTileWhiteCornerSe decals: - 2421: -23,-37 - 2441: -31,-36 - 2451: -36,-37 - 2467: -32,-42 - 2507: -34,-57 - 2508: -35,-58 + 2420: -23,-37 + 2440: -31,-36 + 2450: -36,-37 + 2466: -32,-42 + 2506: -34,-57 + 2507: -35,-58 - node: color: '#787878AB' id: MiniTileWhiteCornerSe decals: - 3291: 31,-76 + 3289: 31,-76 - node: color: '#787878B7' id: MiniTileWhiteCornerSe decals: - 3325: 31,-93 - 3338: 49,-76 - 3339: 50,-74 - 3354: 49,-93 + 3323: 31,-93 + 3336: 49,-76 + 3337: 50,-74 + 3352: 49,-93 - node: color: '#88C598FF' id: MiniTileWhiteCornerSe decals: - 3771: 17,-86 + 3769: 17,-86 - node: color: '#9FED58E9' id: MiniTileWhiteCornerSe decals: - 4019: -13,-56 + 4017: -13,-56 - node: color: '#A4610696' id: MiniTileWhiteCornerSe decals: - 2193: -28,17 - 2213: -47,20 - 2222: -47,31 + 2192: -28,17 + 2212: -47,20 + 2221: -47,31 - node: color: '#D381C996' id: MiniTileWhiteCornerSe @@ -4340,88 +4341,88 @@ entities: 797: 52,-56 798: 53,-54 829: 46,-50 - 2871: 73,-34 - 2872: 73,-39 - 2986: 73,-45 - 2995: 68,-50 - 3004: 77,-48 - 3005: 76,-50 - 3238: 65,-36 - 3239: 64,-37 + 2869: 73,-34 + 2870: 73,-39 + 2984: 73,-45 + 2993: 68,-50 + 3002: 77,-48 + 3003: 76,-50 + 3236: 65,-36 + 3237: 64,-37 - node: color: '#D4D4D406' id: MiniTileWhiteCornerSe decals: - 3750: -40,13 - 3751: -36,13 + 3748: -40,13 + 3749: -36,13 - node: color: '#D4D4D40F' id: MiniTileWhiteCornerSe decals: - 2948: 55,-37 + 2946: 55,-37 - node: color: '#D4D4D428' id: MiniTileWhiteCornerSe decals: - 2290: -46,-18 + 2289: -46,-18 - node: color: '#D4D4D4D3' id: MiniTileWhiteCornerSe decals: - 2019: 14,-2 - 2024: -3,-2 - 2070: -3,2 - 2071: 14,2 - 2073: 3,2 - 2076: 9,2 + 2018: 14,-2 + 2023: -3,-2 + 2069: -3,2 + 2070: 14,2 + 2072: 3,2 + 2075: 9,2 - node: color: '#DE3A3A96' id: MiniTileWhiteCornerSe decals: - 2539: 26,9 - 2543: 26,16 - 2562: 18,16 - 2566: 13,16 - 2581: 8,12 - 2607: 42,4 - 2897: -16,-24 - 2962: 22,-48 - 3126: -15,23 - 3138: 42,14 + 2538: 26,9 + 2542: 26,16 + 2561: 18,16 + 2565: 13,16 + 2580: 8,12 + 2606: 42,4 + 2895: -16,-24 + 2960: 22,-48 + 3124: -15,23 + 3136: 42,14 - node: color: '#EFB34196' id: MiniTileWhiteCornerSe decals: - 2244: -28,-15 - 2268: -35,-14 - 2281: -42,-14 - 2316: -45,-7 - 2320: -32,-30 - 2342: -51,-7 - 2373: -51,-21 - 2403: -71,-27 - 3055: -32,-19 - 3056: -24,-18 - 3057: -23,-16 - 3063: -28,-18 - 3117: -42,-8 + 2243: -28,-15 + 2267: -35,-14 + 2280: -42,-14 + 2315: -45,-7 + 2319: -32,-30 + 2341: -51,-7 + 2372: -51,-21 + 2402: -71,-27 + 3053: -32,-19 + 3054: -24,-18 + 3055: -23,-16 + 3061: -28,-18 + 3115: -42,-8 - node: color: '#EFB341B1' id: MiniTileWhiteCornerSe decals: - 3716: -51,-26 + 3714: -51,-26 - node: color: '#258CC0EA' id: MiniTileWhiteCornerSw decals: - 3463: -27,-62 - 3464: -26,-63 + 3461: -27,-62 + 3462: -26,-63 - node: color: '#334E6DC8' id: MiniTileWhiteCornerSw decals: - 2757: 20,-26 - 2758: 18,-23 + 2756: 20,-26 + 2757: 18,-23 - node: color: '#478C5DDC' id: MiniTileWhiteCornerSw @@ -4432,18 +4433,18 @@ entities: color: '#52B4E963' id: MiniTileWhiteCornerSw decals: - 3020: 69,-50 + 3018: 69,-50 - node: color: '#52B4E9B7' id: MiniTileWhiteCornerSw decals: - 3428: 44,4 + 3426: 44,4 - node: color: '#52B4E9CA' id: MiniTileWhiteCornerSw decals: - 4053: -16,-51 - 4054: -17,-50 + 4051: -16,-51 + 4052: -17,-50 - node: color: '#52B4E9CD' id: MiniTileWhiteCornerSw @@ -4454,74 +4455,74 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteCornerSw decals: - 4034: -6,-67 + 4032: -6,-67 - node: color: '#52B4E9D6' id: MiniTileWhiteCornerSw decals: - 3965: -10,-57 + 3963: -10,-57 - node: color: '#52B4E9DC' id: MiniTileWhiteCornerSw decals: - 3995: -6,-63 - 4101: 0,-63 - 4102: 1,-64 + 3993: -6,-63 + 4099: 0,-63 + 4100: 1,-64 - node: color: '#52B4E9DF' id: MiniTileWhiteCornerSw decals: - 4016: -16,-57 + 4014: -16,-57 - node: color: '#52B4E9E6' id: MiniTileWhiteCornerSw decals: - 3883: 2,-54 + 3881: 2,-54 - node: color: '#707070B7' id: MiniTileWhiteCornerSw decals: - 3269: 22,-74 + 3267: 22,-74 - node: color: '#73C2A496' id: MiniTileWhiteCornerSw decals: - 2422: -26,-37 - 2442: -34,-36 - 2452: -41,-37 - 2468: -33,-42 + 2421: -26,-37 + 2441: -34,-36 + 2451: -41,-37 + 2467: -33,-42 - node: color: '#787878AB' id: MiniTileWhiteCornerSw decals: - 3292: 24,-75 - 3293: 29,-76 + 3290: 24,-75 + 3291: 29,-76 - node: color: '#787878B7' id: MiniTileWhiteCornerSw decals: - 3326: 29,-93 - 3334: 27,-87 - 3340: 47,-76 - 3355: 47,-93 + 3324: 29,-93 + 3332: 27,-87 + 3338: 47,-76 + 3353: 47,-93 - node: color: '#88C598FF' id: MiniTileWhiteCornerSw decals: - 3775: 13,-86 + 3773: 13,-86 - node: color: '#9FED58E9' id: MiniTileWhiteCornerSw decals: - 4020: -15,-56 + 4018: -15,-56 - node: color: '#A4610696' id: MiniTileWhiteCornerSw decals: - 2186: -26,17 - 2187: -35,17 - 2214: -49,20 - 2223: -49,31 + 2185: -26,17 + 2186: -35,17 + 2213: -49,20 + 2222: -49,31 - node: color: '#D381C996' id: MiniTileWhiteCornerSw @@ -4532,81 +4533,81 @@ entities: 778: 59,-50 830: 42,-50 832: 41,-48 - 2977: 67,-45 - 2978: 67,-50 - 2979: 74,-50 - 3243: 60,-37 + 2975: 67,-45 + 2976: 67,-50 + 2977: 74,-50 + 3241: 60,-37 - node: color: '#D381C9AB' id: MiniTileWhiteCornerSw decals: - 2956: 70,-39 + 2954: 70,-39 - node: color: '#D4D4D406' id: MiniTileWhiteCornerSw decals: - 3746: -41,13 - 3747: -37,13 + 3744: -41,13 + 3745: -37,13 - node: color: '#D4D4D40F' id: MiniTileWhiteCornerSw decals: - 2946: 53,-37 + 2944: 53,-37 - node: color: '#D4D4D428' id: MiniTileWhiteCornerSw decals: - 2291: -48,-18 + 2290: -48,-18 - node: color: '#D4D4D4D3' id: MiniTileWhiteCornerSw decals: - 2020: -11,-2 - 2023: -1,-2 - 2072: -1,2 - 2074: 5,2 - 2075: 11,2 - 2109: -11,2 + 2019: -11,-2 + 2022: -1,-2 + 2071: -1,2 + 2073: 5,2 + 2074: 11,2 + 2108: -11,2 - node: color: '#DE3A3A96' id: MiniTileWhiteCornerSw decals: - 2540: 24,9 - 2541: 20,16 - 2563: 15,16 - 2572: 10,16 - 2579: 4,12 - 2631: 40,4 - 2653: 28,14 - 2895: -17,-24 - 2959: 19,-48 - 3125: -17,23 + 2539: 24,9 + 2540: 20,16 + 2562: 15,16 + 2571: 10,16 + 2578: 4,12 + 2630: 40,4 + 2652: 28,14 + 2893: -17,-24 + 2957: 19,-48 + 3123: -17,23 - node: color: '#EFB34196' id: MiniTileWhiteCornerSw decals: - 2245: -30,-15 - 2251: -33,-19 - 2269: -40,-14 - 2280: -43,-14 - 2319: -49,-7 - 2335: -33,-30 - 2343: -56,-19 - 2344: -55,-21 - 2383: -63,-26 - 2406: -75,-27 - 3058: -26,-18 - 3120: -43,-8 + 2244: -30,-15 + 2250: -33,-19 + 2268: -40,-14 + 2279: -43,-14 + 2318: -49,-7 + 2334: -33,-30 + 2342: -56,-19 + 2343: -55,-21 + 2382: -63,-26 + 2405: -75,-27 + 3056: -26,-18 + 3118: -43,-8 - node: color: '#D381C996' id: MiniTileWhiteEndE decals: - 2870: 75,-33 + 2868: 75,-33 - node: color: '#334E6DC8' id: MiniTileWhiteInnerNe decals: - 2763: 19,-22 + 2762: 19,-22 - node: color: '#478C5DDC' id: MiniTileWhiteInnerNe @@ -4616,38 +4617,38 @@ entities: color: '#52B4E9B7' id: MiniTileWhiteInnerNe decals: - 3433: 46,7 + 3431: 46,7 - node: color: '#52B4E9D6' id: MiniTileWhiteInnerNe decals: - 3985: -6,-63 + 3983: -6,-63 - node: color: '#52B4E9DC' id: MiniTileWhiteInnerNe decals: - 3996: -6,-63 + 3994: -6,-63 - node: color: '#707070B7' id: MiniTileWhiteInnerNe decals: - 3279: 27,-71 + 3277: 27,-71 - node: color: '#73C2A496' id: MiniTileWhiteInnerNe decals: - 2446: -32,-33 - 2510: -35,-44 + 2445: -32,-33 + 2509: -35,-44 - node: color: '#787878AB' id: MiniTileWhiteInnerNe decals: - 3288: 28,-72 + 3286: 28,-72 - node: color: '#A4610696' id: MiniTileWhiteInnerNe decals: - 2210: -31,19 + 2209: -31,19 - node: color: '#D381C996' id: MiniTileWhiteInnerNe @@ -4655,41 +4656,41 @@ entities: 763: 51,-40 815: 52,-52 825: 51,-51 - 2890: 74,-33 - 3257: 64,-33 + 2888: 74,-33 + 3255: 64,-33 - node: color: '#D381C9AB' id: MiniTileWhiteInnerNe decals: - 2958: 71,-38 + 2956: 71,-38 - node: color: '#D381C9C0' id: MiniTileWhiteInnerNe decals: - 2943: 63,-44 + 2941: 63,-44 - node: color: '#D4D4D4D3' id: MiniTileWhiteInnerNe decals: - 2114: 9,-2 - 2115: 3,-2 + 2113: 9,-2 + 2114: 3,-2 - node: color: '#EFB34196' id: MiniTileWhiteInnerNe decals: - 2263: -32,-17 - 2378: -54,-13 - 2379: -53,-17 + 2262: -32,-17 + 2377: -54,-13 + 2378: -53,-17 - node: color: '#F0F0F0FF' id: MiniTileWhiteInnerNe decals: - 3935: -10,-56 + 3933: -10,-56 - node: color: '#334E6DC8' id: MiniTileWhiteInnerNw decals: - 2764: 31,-22 + 2763: 31,-22 - node: color: '#478C5DDC' id: MiniTileWhiteInnerNw @@ -4700,60 +4701,60 @@ entities: color: '#52B4E9D6' id: MiniTileWhiteInnerNw decals: - 3984: -6,-60 - 3986: -4,-63 + 3982: -6,-60 + 3984: -4,-63 - node: color: '#707070B7' id: MiniTileWhiteInnerNw decals: - 3280: 23,-72 - 3281: 24,-71 + 3278: 23,-72 + 3279: 24,-71 - node: color: '#73C2A496' id: MiniTileWhiteInnerNw decals: - 2445: -33,-33 - 2512: -36,-54 - 2513: -36,-42 + 2444: -33,-33 + 2511: -36,-54 + 2512: -36,-42 - node: color: '#787878B7' id: MiniTileWhiteInnerNw decals: - 3336: 29,-81 + 3334: 29,-81 - node: color: '#D381C996' id: MiniTileWhiteInnerNw decals: 822: 48,-57 - 2891: 71,-33 - 3013: 76,-48 + 2889: 71,-33 + 3011: 76,-48 - node: color: '#D381C9C0' id: MiniTileWhiteInnerNw decals: - 2944: 61,-44 + 2942: 61,-44 - node: color: '#D4D4D4D3' id: MiniTileWhiteInnerNw decals: - 2116: 11,-2 - 2117: 5,-2 + 2115: 11,-2 + 2116: 5,-2 - node: color: '#EFB34196' id: MiniTileWhiteInnerNw decals: - 2381: -55,-7 - 2401: -55,-24 + 2380: -55,-7 + 2400: -55,-24 - node: color: '#F0F0F0FF' id: MiniTileWhiteInnerNw decals: - 3936: -8,-56 + 3934: -8,-56 - node: color: '#334E6DC8' id: MiniTileWhiteInnerSe decals: - 2761: 30,-23 + 2760: 30,-23 - node: color: '#52B4E9CD' id: MiniTileWhiteInnerSe @@ -4763,29 +4764,29 @@ entities: color: '#52B4E9D6' id: MiniTileWhiteInnerSe decals: - 3979: -4,-57 - 3980: -2,-54 - 3987: -6,-57 + 3977: -4,-57 + 3978: -2,-54 + 3985: -6,-57 - node: color: '#52B4E9DC' id: MiniTileWhiteInnerSe decals: - 4107: 5,-63 + 4105: 5,-63 - node: color: '#52B4E9E6' id: MiniTileWhiteInnerSe decals: - 3884: 6,-51 + 3882: 6,-51 - node: color: '#73C2A496' id: MiniTileWhiteInnerSe decals: - 2509: -35,-57 + 2508: -35,-57 - node: color: '#787878B7' id: MiniTileWhiteInnerSe decals: - 3351: 49,-74 + 3349: 49,-74 - node: color: '#D381C996' id: MiniTileWhiteInnerSe @@ -4793,76 +4794,76 @@ entities: 764: 51,-46 814: 52,-54 824: 51,-56 - 2888: 73,-33 - 2889: 71,-34 - 3014: 76,-48 - 3256: 64,-36 + 2886: 73,-33 + 2887: 71,-34 + 3012: 76,-48 + 3254: 64,-36 - node: color: '#D4D4D4D3' id: MiniTileWhiteInnerSe decals: - 2112: 3,3 - 2113: 9,3 + 2111: 3,3 + 2112: 9,3 - node: color: '#EFB34196' id: MiniTileWhiteInnerSe decals: - 2377: -54,-7 - 3067: -32,-18 - 3072: -24,-16 + 2376: -54,-7 + 3065: -32,-18 + 3070: -24,-16 - node: color: '#F0F0F0FF' id: MiniTileWhiteInnerSe decals: - 3933: -10,-54 + 3931: -10,-54 - node: color: '#258CC0EA' id: MiniTileWhiteInnerSw decals: - 3466: -26,-62 + 3464: -26,-62 - node: color: '#334E6DC8' id: MiniTileWhiteInnerSw decals: - 2762: 20,-23 + 2761: 20,-23 - node: color: '#52B4E9CA' id: MiniTileWhiteInnerSw decals: - 4055: -16,-50 + 4053: -16,-50 - node: color: '#52B4E9CD' id: MiniTileWhiteInnerSw decals: - 2857: -2,-48 + 2855: -2,-48 - node: color: '#52B4E9D6' id: MiniTileWhiteInnerSw decals: - 3978: -6,-57 - 3988: -5,-57 - 3989: -4,-57 + 3976: -6,-57 + 3986: -5,-57 + 3987: -4,-57 - node: color: '#52B4E9DC' id: MiniTileWhiteInnerSw decals: - 4002: -6,-61 - 4106: 1,-63 + 4000: -6,-61 + 4104: 1,-63 - node: color: '#73C2A496' id: MiniTileWhiteInnerSw decals: - 2511: -36,-47 + 2510: -36,-47 - node: color: '#787878AB' id: MiniTileWhiteInnerSw decals: - 3300: 29,-75 + 3298: 29,-75 - node: color: '#787878B7' id: MiniTileWhiteInnerSw decals: - 3337: 29,-87 + 3335: 29,-87 - node: color: '#D381C996' id: MiniTileWhiteInnerSw @@ -4872,35 +4873,35 @@ entities: color: '#D4D4D4D3' id: MiniTileWhiteInnerSw decals: - 2110: 11,3 - 2111: 5,3 + 2109: 11,3 + 2110: 5,3 - node: color: '#EFB34196' id: MiniTileWhiteInnerSw decals: - 2380: -55,-19 + 2379: -55,-19 - node: color: '#F0F0F0FF' id: MiniTileWhiteInnerSw decals: - 3934: -8,-54 + 3932: -8,-54 - node: color: '#258CC0EA' id: MiniTileWhiteLineE decals: - 3457: -23,-59 - 3458: -23,-60 - 3459: -23,-61 - 3460: -23,-62 + 3455: -23,-59 + 3456: -23,-60 + 3457: -23,-61 + 3458: -23,-62 - node: color: '#334E6DC8' id: MiniTileWhiteLineE decals: - 2750: 32,-22 - 2751: 30,-25 - 2752: 30,-24 - 2767: 16,-26 - 2768: 16,-25 + 2749: 32,-22 + 2750: 30,-25 + 2751: 30,-24 + 2766: 16,-26 + 2767: 16,-25 - node: color: '#478C5DDC' id: MiniTileWhiteLineE @@ -4919,13 +4920,13 @@ entities: color: '#52B4E963' id: MiniTileWhiteLineE decals: - 3026: 73,-49 + 3024: 73,-49 - node: color: '#52B4E9B7' id: MiniTileWhiteLineE decals: - 3426: 47,6 - 3427: 47,5 + 3424: 47,6 + 3425: 47,5 - node: color: '#52B4E9CD' id: MiniTileWhiteLineE @@ -4942,163 +4943,163 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteLineE decals: - 4029: -4,-66 + 4027: -4,-66 - node: color: '#52B4E9D6' id: MiniTileWhiteLineE decals: - 3957: -4,-58 - 3958: -4,-59 - 3959: -4,-60 - 3960: -4,-61 - 3961: -4,-62 - 3973: -6,-58 - 3974: -6,-59 - 3975: -6,-60 - 3976: -6,-61 - 3977: -6,-62 - 3981: -2,-55 - 3982: -2,-56 + 3955: -4,-58 + 3956: -4,-59 + 3957: -4,-60 + 3958: -4,-61 + 3959: -4,-62 + 3971: -6,-58 + 3972: -6,-59 + 3973: -6,-60 + 3974: -6,-61 + 3975: -6,-62 + 3979: -2,-55 + 3980: -2,-56 - node: color: '#52B4E9DC' id: MiniTileWhiteLineE decals: - 4087: 6,-57 - 4088: 6,-58 - 4089: 6,-59 - 4090: 6,-60 - 4091: 6,-61 - 4092: 6,-62 + 4085: 6,-57 + 4086: 6,-58 + 4087: 6,-59 + 4088: 6,-60 + 4089: 6,-61 + 4090: 6,-62 - node: color: '#52B4E9DF' id: MiniTileWhiteLineE decals: - 4007: -12,-54 - 4008: -12,-55 - 4009: -12,-56 + 4005: -12,-54 + 4006: -12,-55 + 4007: -12,-56 - node: color: '#52B4E9E6' id: MiniTileWhiteLineE decals: - 3859: 7,-48 - 3860: 7,-47 - 3861: 7,-49 - 3862: 7,-50 - 3863: 6,-52 - 3864: 6,-53 + 3857: 7,-48 + 3858: 7,-47 + 3859: 7,-49 + 3860: 7,-50 + 3861: 6,-52 + 3862: 6,-53 - node: color: '#646464C7' id: MiniTileWhiteLineE decals: - 3585: -46,0 + 3583: -46,0 - node: color: '#707070B7' id: MiniTileWhiteLineE decals: - 3273: 31,-73 + 3271: 31,-73 - node: color: '#73C2A496' id: MiniTileWhiteLineE decals: - 2423: -23,-36 - 2424: -23,-35 - 2425: -23,-34 - 2426: -23,-33 - 2443: -31,-34 - 2444: -31,-35 - 2453: -36,-36 - 2454: -36,-35 - 2455: -36,-34 - 2469: -32,-39 - 2470: -32,-40 - 2471: -32,-41 - 2479: -35,-41 - 2481: -35,-42 - 2482: -35,-43 - 2483: -34,-45 - 2484: -34,-46 - 2485: -34,-47 - 2486: -34,-48 - 2487: -34,-49 - 2488: -34,-50 - 2489: -34,-51 - 2490: -34,-52 - 2491: -34,-53 - 2492: -34,-54 - 2493: -34,-55 - 2494: -34,-56 + 2422: -23,-36 + 2423: -23,-35 + 2424: -23,-34 + 2425: -23,-33 + 2442: -31,-34 + 2443: -31,-35 + 2452: -36,-36 + 2453: -36,-35 + 2454: -36,-34 + 2468: -32,-39 + 2469: -32,-40 + 2470: -32,-41 + 2478: -35,-41 + 2480: -35,-42 + 2481: -35,-43 + 2482: -34,-45 + 2483: -34,-46 + 2484: -34,-47 + 2485: -34,-48 + 2486: -34,-49 + 2487: -34,-50 + 2488: -34,-51 + 2489: -34,-52 + 2490: -34,-53 + 2491: -34,-54 + 2492: -34,-55 + 2493: -34,-56 - node: color: '#787878AB' id: MiniTileWhiteLineE decals: - 3289: 31,-74 - 3290: 31,-75 + 3287: 31,-74 + 3288: 31,-75 - node: color: '#787878B7' id: MiniTileWhiteLineE decals: - 3306: 31,-79 - 3307: 31,-80 - 3308: 31,-81 - 3309: 31,-82 - 3310: 31,-83 - 3311: 31,-84 - 3312: 31,-85 - 3313: 31,-86 - 3314: 31,-87 - 3315: 31,-88 - 3316: 31,-89 - 3317: 31,-90 - 3318: 31,-91 - 3319: 31,-92 - 3347: 50,-73 - 3348: 49,-75 - 3356: 49,-92 - 3357: 49,-91 - 3358: 49,-90 - 3359: 49,-89 - 3360: 49,-88 - 3361: 49,-87 - 3362: 49,-86 - 3363: 49,-85 - 3364: 49,-84 - 3365: 49,-83 - 3366: 49,-82 - 3367: 49,-81 - 3368: 49,-80 - 3369: 49,-79 + 3304: 31,-79 + 3305: 31,-80 + 3306: 31,-81 + 3307: 31,-82 + 3308: 31,-83 + 3309: 31,-84 + 3310: 31,-85 + 3311: 31,-86 + 3312: 31,-87 + 3313: 31,-88 + 3314: 31,-89 + 3315: 31,-90 + 3316: 31,-91 + 3317: 31,-92 + 3345: 50,-73 + 3346: 49,-75 + 3354: 49,-92 + 3355: 49,-91 + 3356: 49,-90 + 3357: 49,-89 + 3358: 49,-88 + 3359: 49,-87 + 3360: 49,-86 + 3361: 49,-85 + 3362: 49,-84 + 3363: 49,-83 + 3364: 49,-82 + 3365: 49,-81 + 3366: 49,-80 + 3367: 49,-79 - node: color: '#88C598FF' id: MiniTileWhiteLineE decals: - 3776: 17,-84 - 3777: 17,-83 - 3778: 17,-85 + 3774: 17,-84 + 3775: 17,-83 + 3776: 17,-85 - node: color: '#9FED58E9' id: MiniTileWhiteLineE decals: - 4024: -13,-55 + 4022: -13,-55 - node: color: '#A4610696' id: MiniTileWhiteLineE decals: - 2166: -23,18 - 2167: -23,19 - 2168: -23,20 - 2169: -23,21 - 2170: -23,22 - 2171: -23,23 - 2172: -23,24 - 2173: -31,24 - 2174: -31,23 - 2175: -31,25 - 2176: -31,22 - 2177: -31,21 - 2178: -31,20 - 2194: -28,18 - 2216: -47,21 - 2220: -47,32 + 2165: -23,18 + 2166: -23,19 + 2167: -23,20 + 2168: -23,21 + 2169: -23,22 + 2170: -23,23 + 2171: -23,24 + 2172: -31,24 + 2173: -31,23 + 2174: -31,25 + 2175: -31,22 + 2176: -31,21 + 2177: -31,20 + 2193: -28,18 + 2215: -47,21 + 2219: -47,32 - node: color: '#D381C996' id: MiniTileWhiteLineE @@ -5122,81 +5123,81 @@ entities: 838: 46,-47 839: 46,-48 840: 46,-49 - 2879: 71,-37 - 2880: 71,-36 - 2881: 71,-35 - 2998: 68,-49 - 3006: 76,-49 - 3007: 77,-47 - 3008: 77,-46 - 3009: 77,-45 - 3244: 65,-34 - 3245: 65,-35 + 2877: 71,-37 + 2878: 71,-36 + 2879: 71,-35 + 2996: 68,-49 + 3004: 76,-49 + 3005: 77,-47 + 3006: 77,-46 + 3007: 77,-45 + 3242: 65,-34 + 3243: 65,-35 - node: color: '#D381C9C0' id: MiniTileWhiteLineE decals: - 2936: 65,-45 + 2934: 65,-45 - node: color: '#D4D4D406' id: MiniTileWhiteLineE decals: - 3754: -40,14 - 3755: -36,14 + 3752: -40,14 + 3753: -36,14 - node: color: '#D4D4D40F' id: MiniTileWhiteLineE decals: - 2951: 55,-36 + 2949: 55,-36 - node: color: '#D4D4D428' id: MiniTileWhiteLineE decals: - 2293: -46,-17 - 2294: -46,-16 - 2295: -46,-14 - 2296: -46,-15 - 2297: -46,-13 - 2298: -46,-10 - 2299: -46,-11 - 2300: -46,-12 + 2292: -46,-17 + 2293: -46,-16 + 2294: -46,-14 + 2295: -46,-15 + 2296: -46,-13 + 2297: -46,-10 + 2298: -46,-11 + 2299: -46,-12 - node: color: '#DE3A3A96' id: MiniTileWhiteLineE decals: - 2531: 26,12 - 2532: 26,11 - 2533: 26,10 - 2550: 26,17 - 2582: 8,13 - 2583: 8,14 - 2584: 8,15 - 2585: 8,16 - 2620: 42,15 - 2621: 42,13 - 2622: 42,11 - 2623: 42,12 - 2624: 42,10 - 2625: 42,9 - 2626: 42,8 - 2627: 42,7 - 2628: 42,6 - 2629: 42,5 - 2646: 30,20 - 2654: 30,19 - 2655: 30,18 - 2656: 30,17 - 2898: -16,-22 - 2899: -16,-23 - 2968: 22,-47 - 3132: -15,26 - 3133: -15,25 - 3134: -15,24 + 2530: 26,12 + 2531: 26,11 + 2532: 26,10 + 2549: 26,17 + 2581: 8,13 + 2582: 8,14 + 2583: 8,15 + 2584: 8,16 + 2619: 42,15 + 2620: 42,13 + 2621: 42,11 + 2622: 42,12 + 2623: 42,10 + 2624: 42,9 + 2625: 42,8 + 2626: 42,7 + 2627: 42,6 + 2628: 42,5 + 2645: 30,20 + 2653: 30,19 + 2654: 30,18 + 2655: 30,17 + 2896: -16,-22 + 2897: -16,-23 + 2966: 22,-47 + 3130: -15,26 + 3131: -15,25 + 3132: -15,24 - node: color: '#DE3A3AA7' id: MiniTileWhiteLineE decals: - 3712: 30,21 + 3710: 30,21 - node: color: '#DE3A3AD3' id: MiniTileWhiteLineE @@ -5209,72 +5210,72 @@ entities: color: '#EFB34196' id: MiniTileWhiteLineE decals: - 2227: -23,-14 - 2228: -23,-13 - 2229: -23,-12 - 2230: -23,-11 - 2231: -23,-10 - 2240: -28,-12 - 2241: -28,-13 - 2242: -28,-14 - 2252: -32,-16 - 2253: -32,-14 - 2254: -32,-13 - 2255: -32,-15 - 2270: -35,-13 - 2271: -35,-12 - 2272: -35,-11 - 2273: -35,-10 - 2282: -42,-11 - 2283: -42,-12 - 2284: -42,-13 - 2321: -32,-29 - 2322: -32,-28 - 2323: -32,-27 - 2324: -32,-26 - 2325: -32,-25 - 2326: -32,-23 - 2327: -32,-24 - 2347: -51,-20 - 2348: -51,-19 - 2349: -51,-18 - 2350: -53,-16 - 2351: -53,-15 - 2352: -53,-14 - 2353: -54,-12 - 2354: -54,-11 - 2355: -54,-10 - 2356: -54,-9 - 2357: -54,-8 - 2413: -71,-25 - 2414: -71,-26 - 3050: -32,-11 - 3051: -32,-12 - 3052: -28,-11 - 3053: -23,-15 - 3054: -24,-17 - 3094: -35,-7 - 3095: -35,-8 - 3096: -35,-9 - 3121: -42,-7 + 2226: -23,-14 + 2227: -23,-13 + 2228: -23,-12 + 2229: -23,-11 + 2230: -23,-10 + 2239: -28,-12 + 2240: -28,-13 + 2241: -28,-14 + 2251: -32,-16 + 2252: -32,-14 + 2253: -32,-13 + 2254: -32,-15 + 2269: -35,-13 + 2270: -35,-12 + 2271: -35,-11 + 2272: -35,-10 + 2281: -42,-11 + 2282: -42,-12 + 2283: -42,-13 + 2320: -32,-29 + 2321: -32,-28 + 2322: -32,-27 + 2323: -32,-26 + 2324: -32,-25 + 2325: -32,-23 + 2326: -32,-24 + 2346: -51,-20 + 2347: -51,-19 + 2348: -51,-18 + 2349: -53,-16 + 2350: -53,-15 + 2351: -53,-14 + 2352: -54,-12 + 2353: -54,-11 + 2354: -54,-10 + 2355: -54,-9 + 2356: -54,-8 + 2412: -71,-25 + 2413: -71,-26 + 3048: -32,-11 + 3049: -32,-12 + 3050: -28,-11 + 3051: -23,-15 + 3052: -24,-17 + 3092: -35,-7 + 3093: -35,-8 + 3094: -35,-9 + 3119: -42,-7 - node: color: '#EFB341B1' id: MiniTileWhiteLineE decals: - 3717: -51,-25 - 3718: -51,-24 + 3715: -51,-25 + 3716: -51,-24 - node: color: '#F0F0F0FF' id: MiniTileWhiteLineE decals: - 3931: -10,-55 + 3929: -10,-55 - node: color: '#258CC0EA' id: MiniTileWhiteLineN decals: - 3449: -25,-58 - 3450: -26,-58 - 3451: -24,-58 + 3447: -25,-58 + 3448: -26,-58 + 3449: -24,-58 - node: color: '#334E6DC8' id: MiniTileWhiteLineN @@ -5284,19 +5285,19 @@ entities: 846: 31,-59 847: 30,-59 848: 29,-59 - 2590: 6,17 - 2736: 30,-22 - 2737: 29,-22 - 2738: 28,-22 - 2739: 27,-22 - 2740: 26,-22 - 2741: 25,-22 - 2742: 24,-22 - 2743: 23,-22 - 2744: 22,-22 - 2745: 21,-22 - 2746: 20,-22 - 2771: 32,-17 + 2589: 6,17 + 2735: 30,-22 + 2736: 29,-22 + 2737: 28,-22 + 2738: 27,-22 + 2739: 26,-22 + 2740: 25,-22 + 2741: 24,-22 + 2742: 23,-22 + 2743: 22,-22 + 2744: 21,-22 + 2745: 20,-22 + 2769: 32,-17 - node: color: '#478C5DDC' id: MiniTileWhiteLineN @@ -5319,19 +5320,19 @@ entities: color: '#52B4E963' id: MiniTileWhiteLineN decals: - 3016: 72,-48 - 3017: 71,-48 - 3018: 70,-48 + 3014: 72,-48 + 3015: 71,-48 + 3016: 70,-48 - node: color: '#52B4E996' id: MiniTileWhiteLineN decals: - 2773: -9,-42 + 2771: -9,-42 - node: color: '#52B4E9B7' id: MiniTileWhiteLineN decals: - 3420: 45,8 + 3418: 45,8 - node: color: '#52B4E9CD' id: MiniTileWhiteLineN @@ -5353,92 +5354,92 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteLineN decals: - 4031: -5,-65 + 4029: -5,-65 - node: color: '#52B4E9D6' id: MiniTileWhiteLineN decals: - 3937: -9,-53 - 3938: -8,-53 - 3939: -7,-53 - 3940: -6,-53 - 3941: -5,-53 - 3942: -4,-53 - 3943: -3,-53 - 3944: -2,-53 - 3945: -1,-53 - 3966: -5,-63 + 3935: -9,-53 + 3936: -8,-53 + 3937: -7,-53 + 3938: -6,-53 + 3939: -5,-53 + 3940: -4,-53 + 3941: -3,-53 + 3942: -2,-53 + 3943: -1,-53 + 3964: -5,-63 - node: color: '#52B4E9DC' id: MiniTileWhiteLineN decals: - 3998: -7,-60 - 3999: -8,-60 - 4082: 1,-56 - 4083: 2,-56 - 4084: 3,-56 - 4085: 4,-56 - 4086: 5,-56 + 3996: -7,-60 + 3997: -8,-60 + 4080: 1,-56 + 4081: 2,-56 + 4082: 3,-56 + 4083: 4,-56 + 4084: 5,-56 - node: color: '#52B4E9DF' id: MiniTileWhiteLineN decals: - 4012: -15,-53 - 4013: -14,-53 - 4014: -13,-53 + 4010: -15,-53 + 4011: -14,-53 + 4012: -13,-53 - node: color: '#52B4E9E6' id: MiniTileWhiteLineN decals: - 3875: 6,-46 - 3876: 5,-46 - 3877: 4,-46 - 3878: 3,-46 + 3873: 6,-46 + 3874: 5,-46 + 3875: 4,-46 + 3876: 3,-46 - node: color: '#5D9C7FC1' id: MiniTileWhiteLineN decals: - 3444: -41,-42 + 3442: -41,-42 - node: color: '#707070B7' id: MiniTileWhiteLineN decals: - 3274: 25,-70 - 3275: 26,-70 - 3277: 29,-72 - 3278: 30,-72 + 3272: 25,-70 + 3273: 26,-70 + 3275: 29,-72 + 3276: 30,-72 - node: color: '#73C2A496' id: MiniTileWhiteLineN decals: - 2417: -25,-32 - 2418: -24,-32 - 2458: -38,-33 - 2459: -39,-33 - 2460: -40,-33 - 2461: -37,-33 - 2475: -42,-42 - 2476: -40,-42 - 2477: -39,-42 - 2478: -38,-42 - 2497: -37,-54 - 2514: -37,-42 + 2416: -25,-32 + 2417: -24,-32 + 2457: -38,-33 + 2458: -39,-33 + 2459: -40,-33 + 2460: -37,-33 + 2474: -42,-42 + 2475: -40,-42 + 2476: -39,-42 + 2477: -38,-42 + 2496: -37,-54 + 2513: -37,-42 - node: color: '#787878B7' id: MiniTileWhiteLineN decals: - 3303: 30,-78 - 3329: 28,-81 - 3349: 48,-72 - 3350: 49,-72 - 3385: 48,-78 + 3301: 30,-78 + 3327: 28,-81 + 3347: 48,-72 + 3348: 49,-72 + 3383: 48,-78 - node: color: '#88C598FF' id: MiniTileWhiteLineN decals: - 3763: 16,-82 - 3764: 15,-82 - 3765: 14,-82 + 3761: 16,-82 + 3762: 15,-82 + 3763: 14,-82 - node: color: '#9FED5896' id: MiniTileWhiteLineN @@ -5450,20 +5451,20 @@ entities: color: '#9FED58E9' id: MiniTileWhiteLineN decals: - 4026: -14,-54 + 4024: -14,-54 - node: color: '#A4610696' id: MiniTileWhiteLineN decals: - 2179: -29,19 - 2180: -30,19 - 2181: -33,26 - 2182: -32,26 - 2183: -34,26 - 2184: -25,25 - 2185: -24,25 - 2215: -48,22 - 2226: -48,33 + 2178: -29,19 + 2179: -30,19 + 2180: -33,26 + 2181: -32,26 + 2182: -34,26 + 2183: -25,25 + 2184: -24,25 + 2214: -48,22 + 2225: -48,33 - node: color: '#D381C996' id: MiniTileWhiteLineN @@ -5484,179 +5485,179 @@ entities: 835: 44,-46 836: 42,-46 837: 43,-46 - 2885: 72,-38 - 2886: 72,-32 - 2887: 73,-32 - 2989: 68,-44 - 2990: 69,-44 - 2991: 70,-44 - 2992: 71,-44 - 2993: 72,-44 - 2994: 75,-48 - 3250: 61,-32 - 3251: 62,-32 - 3252: 63,-32 + 2883: 72,-38 + 2884: 72,-32 + 2885: 73,-32 + 2987: 68,-44 + 2988: 69,-44 + 2989: 70,-44 + 2990: 71,-44 + 2991: 72,-44 + 2992: 75,-48 + 3248: 61,-32 + 3249: 62,-32 + 3250: 63,-32 - node: color: '#D381C9C0' id: MiniTileWhiteLineN decals: - 2938: 60,-44 - 2939: 64,-44 - 2940: 62,-43 + 2936: 60,-44 + 2937: 64,-44 + 2938: 62,-43 - node: color: '#D4D4D40F' id: MiniTileWhiteLineN decals: - 2950: 54,-35 + 2948: 54,-35 - node: color: '#D4D4D428' id: MiniTileWhiteLineN decals: - 2288: -47,-9 + 2287: -47,-9 - node: color: '#D4D4D4D3' id: MiniTileWhiteLineN decals: - 1997: -10,3 - 1998: -9,3 - 1999: -8,3 - 2000: -6,3 - 2001: -7,3 - 2002: -5,3 - 2003: -4,3 - 2004: 0,3 - 2005: 1,3 - 2006: 2,3 - 2007: 3,3 - 2008: 4,3 - 2009: 5,3 - 2010: 6,3 - 2011: 7,3 - 2012: 8,3 - 2013: 9,3 - 2014: 10,3 - 2015: 11,3 - 2016: 12,3 - 2017: 13,3 - 2025: 13,-1 - 2026: 12,-1 - 2062: 8,-1 - 2063: 7,-1 - 2064: 6,-1 - 2065: 2,-1 - 2066: 0,-1 - 2067: 1,-1 - 2079: 10,-2 - 2080: 4,-2 - 2100: -4,-1 - 2101: -5,-1 - 2102: -7,-1 - 2103: -6,-1 - 2104: -8,-1 - 2105: -9,-1 - 2106: -10,-1 + 1996: -10,3 + 1997: -9,3 + 1998: -8,3 + 1999: -6,3 + 2000: -7,3 + 2001: -5,3 + 2002: -4,3 + 2003: 0,3 + 2004: 1,3 + 2005: 2,3 + 2006: 3,3 + 2007: 4,3 + 2008: 5,3 + 2009: 6,3 + 2010: 7,3 + 2011: 8,3 + 2012: 9,3 + 2013: 10,3 + 2014: 11,3 + 2015: 12,3 + 2016: 13,3 + 2024: 13,-1 + 2025: 12,-1 + 2061: 8,-1 + 2062: 7,-1 + 2063: 6,-1 + 2064: 2,-1 + 2065: 0,-1 + 2066: 1,-1 + 2078: 10,-2 + 2079: 4,-2 + 2099: -4,-1 + 2100: -5,-1 + 2101: -7,-1 + 2102: -6,-1 + 2103: -8,-1 + 2104: -9,-1 + 2105: -10,-1 - node: color: '#DE3A3A96' id: MiniTileWhiteLineN decals: - 2526: 26,8 - 2527: 25,8 - 2528: 24,8 - 2530: 25,13 - 2545: 21,18 - 2546: 22,18 - 2547: 23,18 - 2548: 24,18 - 2549: 25,18 - 2559: 17,17 - 2560: 16,17 - 2567: 12,17 - 2568: 11,17 - 2573: 7,17 - 2574: 5,17 - 2610: 29,22 - 2611: 33,16 - 2612: 34,16 - 2613: 35,16 - 2614: 36,16 - 2615: 37,16 - 2616: 38,16 - 2617: 39,16 - 2618: 40,16 - 2619: 41,16 - 2657: 32,16 - 2658: 31,16 - 2770: 20,-17 - 2965: 21,-46 - 2966: 20,-46 - 3127: -16,27 - 3135: 30,16 - 3136: 29,16 + 2525: 26,8 + 2526: 25,8 + 2527: 24,8 + 2529: 25,13 + 2544: 21,18 + 2545: 22,18 + 2546: 23,18 + 2547: 24,18 + 2548: 25,18 + 2558: 17,17 + 2559: 16,17 + 2566: 12,17 + 2567: 11,17 + 2572: 7,17 + 2573: 5,17 + 2609: 29,22 + 2610: 33,16 + 2611: 34,16 + 2612: 35,16 + 2613: 36,16 + 2614: 37,16 + 2615: 38,16 + 2616: 39,16 + 2617: 40,16 + 2618: 41,16 + 2656: 32,16 + 2657: 31,16 + 2768: 20,-17 + 2963: 21,-46 + 2964: 20,-46 + 3125: -16,27 + 3133: 30,16 + 3134: 29,16 - node: color: '#EFB34196' id: MiniTileWhiteLineN decals: - 2247: -24,-9 - 2248: -25,-9 - 2260: -29,-17 - 2261: -30,-17 - 2262: -31,-17 - 2310: -46,-6 - 2311: -47,-6 - 2312: -48,-6 - 2338: -54,-6 - 2339: -53,-6 - 2340: -52,-6 - 2374: -52,-17 - 2385: -56,-24 - 2386: -57,-24 - 2387: -58,-24 - 2388: -59,-24 - 2389: -60,-24 - 2390: -61,-24 - 2391: -62,-24 - 2407: -72,-24 - 2408: -73,-24 - 2409: -74,-24 - 3061: -29,-10 - 3087: -39,-6 - 3088: -38,-6 - 3089: -37,-6 - 3090: -36,-6 + 2246: -24,-9 + 2247: -25,-9 + 2259: -29,-17 + 2260: -30,-17 + 2261: -31,-17 + 2309: -46,-6 + 2310: -47,-6 + 2311: -48,-6 + 2337: -54,-6 + 2338: -53,-6 + 2339: -52,-6 + 2373: -52,-17 + 2384: -56,-24 + 2385: -57,-24 + 2386: -58,-24 + 2387: -59,-24 + 2388: -60,-24 + 2389: -61,-24 + 2390: -62,-24 + 2406: -72,-24 + 2407: -73,-24 + 2408: -74,-24 + 3059: -29,-10 + 3085: -39,-6 + 3086: -38,-6 + 3087: -37,-6 + 3088: -36,-6 - node: color: '#EFB341B1' id: MiniTileWhiteLineN decals: - 3719: -54,-23 - 3720: -53,-23 - 3721: -52,-23 + 3717: -54,-23 + 3718: -53,-23 + 3719: -52,-23 - node: color: '#F0F0F0FF' id: MiniTileWhiteLineN decals: - 3932: -9,-56 + 3930: -9,-56 - node: color: '#258CC0EA' id: MiniTileWhiteLineS decals: - 3452: -25,-63 - 3453: -24,-63 + 3450: -25,-63 + 3451: -24,-63 - node: color: '#334E6DC8' id: MiniTileWhiteLineS decals: - 2725: 29,-26 - 2726: 28,-26 - 2727: 27,-26 - 2728: 26,-26 - 2729: 25,-26 - 2730: 24,-26 - 2731: 23,-26 - 2732: 22,-26 - 2733: 21,-26 - 2734: 31,-23 - 2735: 19,-23 - 2772: 20,-44 + 2724: 29,-26 + 2725: 28,-26 + 2726: 27,-26 + 2727: 26,-26 + 2728: 25,-26 + 2729: 24,-26 + 2730: 23,-26 + 2731: 22,-26 + 2732: 21,-26 + 2733: 31,-23 + 2734: 19,-23 + 2770: 20,-44 - node: color: '#478C5DDC' id: MiniTileWhiteLineS @@ -5682,9 +5683,9 @@ entities: color: '#52B4E963' id: MiniTileWhiteLineS decals: - 3022: 70,-50 - 3023: 71,-50 - 3024: 72,-50 + 3020: 70,-50 + 3021: 71,-50 + 3022: 72,-50 - node: color: '#52B4E9AE' id: MiniTileWhiteLineS @@ -5699,8 +5700,8 @@ entities: color: '#52B4E9B7' id: MiniTileWhiteLineS decals: - 3421: 45,4 - 3422: 46,4 + 3419: 45,4 + 3420: 46,4 - node: color: '#52B4E9CD' id: MiniTileWhiteLineS @@ -5719,101 +5720,101 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteLineS decals: - 4030: -5,-67 + 4028: -5,-67 - node: color: '#52B4E9D6' id: MiniTileWhiteLineS decals: - 3946: -3,-57 - 3947: -7,-57 - 3948: -8,-57 - 3949: -9,-57 - 3950: -1,-54 - 3967: -5,-57 + 3944: -3,-57 + 3945: -7,-57 + 3946: -8,-57 + 3947: -9,-57 + 3948: -1,-54 + 3965: -5,-57 - node: color: '#52B4E9DC' id: MiniTileWhiteLineS decals: - 3997: -5,-63 - 4000: -7,-61 - 4001: -8,-61 - 4103: 3,-64 - 4104: 2,-64 - 4105: 4,-64 + 3995: -5,-63 + 3998: -7,-61 + 3999: -8,-61 + 4101: 3,-64 + 4102: 2,-64 + 4103: 4,-64 - node: color: '#52B4E9DF' id: MiniTileWhiteLineS decals: - 4004: -13,-57 - 4005: -14,-57 - 4006: -15,-57 + 4002: -13,-57 + 4003: -14,-57 + 4004: -15,-57 - node: color: '#52B4E9E6' id: MiniTileWhiteLineS decals: - 3865: 5,-54 - 3866: 4,-54 - 3867: 3,-54 + 3863: 5,-54 + 3864: 4,-54 + 3865: 3,-54 - node: color: '#73C2A496' id: MiniTileWhiteLineS decals: - 2419: -25,-37 - 2420: -24,-37 - 2439: -33,-36 - 2440: -32,-36 - 2447: -37,-37 - 2448: -38,-37 - 2449: -39,-37 - 2450: -40,-37 - 2495: -36,-58 - 2496: -37,-58 - 2504: -37,-47 - 2505: -38,-47 + 2418: -25,-37 + 2419: -24,-37 + 2438: -33,-36 + 2439: -32,-36 + 2446: -37,-37 + 2447: -38,-37 + 2448: -39,-37 + 2449: -40,-37 + 2494: -36,-58 + 2495: -37,-58 + 2503: -37,-47 + 2504: -38,-47 - node: color: '#787878AB' id: MiniTileWhiteLineS decals: - 3294: 28,-75 - 3295: 26,-75 - 3296: 27,-75 - 3297: 25,-75 - 3298: 23,-74 - 3299: 30,-76 + 3292: 28,-75 + 3293: 26,-75 + 3294: 27,-75 + 3295: 25,-75 + 3296: 23,-74 + 3297: 30,-76 - node: color: '#787878B7' id: MiniTileWhiteLineS decals: - 3327: 30,-93 - 3328: 28,-87 - 3343: 48,-76 - 3384: 48,-93 + 3325: 30,-93 + 3326: 28,-87 + 3341: 48,-76 + 3382: 48,-93 - node: color: '#88C598FF' id: MiniTileWhiteLineS decals: - 3772: 15,-86 - 3773: 16,-86 - 3774: 14,-86 + 3770: 15,-86 + 3771: 16,-86 + 3772: 14,-86 - node: color: '#9FED58E9' id: MiniTileWhiteLineS decals: - 4023: -14,-56 + 4021: -14,-56 - node: color: '#A4610696' id: MiniTileWhiteLineS decals: - 2158: -25,17 - 2159: -24,17 - 2160: -29,17 - 2161: -30,17 - 2162: -31,17 - 2163: -34,17 - 2164: -33,17 - 2165: -32,17 - 2218: -48,20 - 2219: -48,31 + 2157: -25,17 + 2158: -24,17 + 2159: -29,17 + 2160: -30,17 + 2161: -31,17 + 2162: -34,17 + 2163: -33,17 + 2164: -32,17 + 2217: -48,20 + 2218: -48,31 - node: color: '#D381C996' id: MiniTileWhiteLineS @@ -5838,170 +5839,170 @@ entities: 826: 45,-50 827: 44,-50 828: 43,-50 - 2882: 72,-34 - 2883: 72,-39 - 2884: 74,-33 - 2980: 75,-50 - 2981: 68,-45 - 2982: 69,-45 - 2983: 70,-45 - 2984: 71,-45 - 2985: 72,-45 - 3240: 63,-37 - 3241: 62,-37 - 3242: 61,-37 + 2880: 72,-34 + 2881: 72,-39 + 2882: 74,-33 + 2978: 75,-50 + 2979: 68,-45 + 2980: 69,-45 + 2981: 70,-45 + 2982: 71,-45 + 2983: 72,-45 + 3238: 63,-37 + 3239: 62,-37 + 3240: 61,-37 - node: color: '#D381C9AB' id: MiniTileWhiteLineS decals: - 2955: 71,-39 + 2953: 71,-39 - node: color: '#D4D4D40F' id: MiniTileWhiteLineS decals: - 2953: 54,-37 + 2951: 54,-37 - node: color: '#D4D4D428' id: MiniTileWhiteLineS decals: - 2292: -47,-18 + 2291: -47,-18 - node: color: '#D4D4D4D3' id: MiniTileWhiteLineS decals: - 1976: 6,-2 - 1977: 7,-2 - 1978: 8,-2 - 1979: 9,-2 - 1980: 10,-2 - 1981: 11,-2 - 1982: 12,-2 - 1983: 13,-2 - 1984: 5,-2 - 1985: 4,-2 - 1986: 3,-2 - 1987: 2,-2 - 1988: 1,-2 - 1989: 0,-2 - 1990: -4,-2 - 1991: -5,-2 - 1992: -6,-2 - 1993: -7,-2 - 1994: -8,-2 - 1995: -9,-2 - 1996: -10,-2 - 2077: 10,3 - 2078: 4,3 - 2085: 12,2 - 2086: 13,2 - 2087: 8,2 - 2088: 7,2 - 2089: 6,2 - 2090: 2,2 - 2091: 1,2 - 2092: 0,2 - 2093: -4,2 - 2094: -5,2 - 2095: -6,2 - 2096: -7,2 - 2097: -8,2 - 2098: -9,2 - 2099: -10,2 + 1975: 6,-2 + 1976: 7,-2 + 1977: 8,-2 + 1978: 9,-2 + 1979: 10,-2 + 1980: 11,-2 + 1981: 12,-2 + 1982: 13,-2 + 1983: 5,-2 + 1984: 4,-2 + 1985: 3,-2 + 1986: 2,-2 + 1987: 1,-2 + 1988: 0,-2 + 1989: -4,-2 + 1990: -5,-2 + 1991: -6,-2 + 1992: -7,-2 + 1993: -8,-2 + 1994: -9,-2 + 1995: -10,-2 + 2076: 10,3 + 2077: 4,3 + 2084: 12,2 + 2085: 13,2 + 2086: 8,2 + 2087: 7,2 + 2088: 6,2 + 2089: 2,2 + 2090: 1,2 + 2091: 0,2 + 2092: -4,2 + 2093: -5,2 + 2094: -6,2 + 2095: -7,2 + 2096: -8,2 + 2097: -9,2 + 2098: -10,2 - node: color: '#DE3A3A96' id: MiniTileWhiteLineS decals: - 2529: 25,9 - 2551: 25,16 - 2552: 24,16 - 2553: 23,16 - 2554: 21,16 - 2555: 22,16 - 2557: 17,16 - 2558: 16,16 - 2569: 12,16 - 2570: 11,16 - 2577: 6,12 - 2578: 7,12 - 2580: 5,12 - 2630: 41,4 - 2635: 39,14 - 2636: 38,14 - 2637: 37,14 - 2638: 36,14 - 2639: 34,14 - 2640: 35,14 - 2641: 33,14 - 2642: 32,14 - 2643: 31,14 - 2644: 29,14 - 2645: 30,14 - 2963: 21,-48 - 2964: 20,-48 - 3128: -16,23 - 3139: 41,14 - 3140: 40,14 + 2528: 25,9 + 2550: 25,16 + 2551: 24,16 + 2552: 23,16 + 2553: 21,16 + 2554: 22,16 + 2556: 17,16 + 2557: 16,16 + 2568: 12,16 + 2569: 11,16 + 2576: 6,12 + 2577: 7,12 + 2579: 5,12 + 2629: 41,4 + 2634: 39,14 + 2635: 38,14 + 2636: 37,14 + 2637: 36,14 + 2638: 34,14 + 2639: 35,14 + 2640: 33,14 + 2641: 32,14 + 2642: 31,14 + 2643: 29,14 + 2644: 30,14 + 2961: 21,-48 + 2962: 20,-48 + 3126: -16,23 + 3137: 41,14 + 3138: 40,14 - node: color: '#EFB34196' id: MiniTileWhiteLineS decals: - 2243: -29,-15 - 2264: -37,-14 - 2265: -38,-14 - 2266: -39,-14 - 2267: -36,-14 - 2313: -46,-7 - 2314: -48,-7 - 2315: -47,-7 - 2370: -54,-21 - 2371: -53,-21 - 2372: -52,-21 - 2375: -52,-7 - 2376: -53,-7 - 2392: -62,-26 + 2242: -29,-15 + 2263: -37,-14 + 2264: -38,-14 + 2265: -39,-14 + 2266: -36,-14 + 2312: -46,-7 + 2313: -48,-7 + 2314: -47,-7 + 2369: -54,-21 + 2370: -53,-21 + 2371: -52,-21 + 2374: -52,-7 + 2375: -53,-7 + 2391: -62,-26 + 2392: -61,-26 2393: -61,-26 - 2394: -61,-26 - 2395: -60,-26 - 2396: -59,-26 - 2397: -58,-26 - 2398: -57,-26 - 2399: -56,-26 - 2400: -55,-26 - 2410: -72,-27 - 2411: -73,-27 - 2412: -74,-27 - 3064: -29,-18 - 3065: -30,-18 - 3066: -31,-18 - 3068: -25,-18 + 2394: -60,-26 + 2395: -59,-26 + 2396: -58,-26 + 2397: -57,-26 + 2398: -56,-26 + 2399: -55,-26 + 2409: -72,-27 + 2410: -73,-27 + 2411: -74,-27 + 3062: -29,-18 + 3063: -30,-18 + 3064: -31,-18 + 3066: -25,-18 - node: color: '#EFB341B1' id: MiniTileWhiteLineS decals: - 3723: -52,-26 - 3724: -53,-26 - 3725: -54,-26 + 3721: -52,-26 + 3722: -53,-26 + 3723: -54,-26 - node: color: '#F0F0F0FF' id: MiniTileWhiteLineS decals: - 3929: -9,-54 + 3927: -9,-54 - node: color: '#258CC0EA' id: MiniTileWhiteLineW decals: - 3454: -27,-59 - 3455: -27,-60 - 3456: -27,-61 + 3452: -27,-59 + 3453: -27,-60 + 3454: -27,-61 - node: color: '#334E6DC8' id: MiniTileWhiteLineW decals: - 2747: 20,-25 - 2748: 20,-24 - 2749: 18,-22 - 2765: 34,-25 - 2766: 34,-26 + 2746: 20,-25 + 2747: 20,-24 + 2748: 18,-22 + 2764: 34,-25 + 2765: 34,-26 - node: color: '#478C5DDC' id: MiniTileWhiteLineW @@ -6019,14 +6020,14 @@ entities: color: '#52B4E963' id: MiniTileWhiteLineW decals: - 3025: 69,-49 + 3023: 69,-49 - node: color: '#52B4E9B7' id: MiniTileWhiteLineW decals: - 3423: 44,7 - 3424: 44,6 - 3425: 44,5 + 3421: 44,7 + 3422: 44,6 + 3423: 44,5 - node: color: '#52B4E9CD' id: MiniTileWhiteLineW @@ -6042,143 +6043,143 @@ entities: color: '#52B4E9D3' id: MiniTileWhiteLineW decals: - 4027: -16,-56 - 4028: -6,-66 + 4025: -16,-56 + 4026: -6,-66 - node: color: '#52B4E9D6' id: MiniTileWhiteLineW decals: - 3951: -10,-56 - 3952: -10,-55 - 3953: -10,-54 - 3954: -6,-58 - 3955: -6,-59 - 3956: -6,-62 - 3968: -4,-58 - 3969: -4,-59 - 3970: -4,-60 - 3971: -4,-61 - 3972: -4,-62 + 3949: -10,-56 + 3950: -10,-55 + 3951: -10,-54 + 3952: -6,-58 + 3953: -6,-59 + 3954: -6,-62 + 3966: -4,-58 + 3967: -4,-59 + 3968: -4,-60 + 3969: -4,-61 + 3970: -4,-62 - node: color: '#52B4E9DC' id: MiniTileWhiteLineW decals: - 4093: 0,-57 - 4094: 0,-58 - 4095: 0,-59 - 4096: 0,-60 - 4097: 0,-61 - 4098: 0,-62 + 4091: 0,-57 + 4092: 0,-58 + 4093: 0,-59 + 4094: 0,-60 + 4095: 0,-61 + 4096: 0,-62 - node: color: '#52B4E9DF' id: MiniTileWhiteLineW decals: - 4010: -16,-54 - 4011: -16,-55 + 4008: -16,-54 + 4009: -16,-55 - node: color: '#52B4E9E6' id: MiniTileWhiteLineW decals: - 3868: 2,-53 - 3869: 2,-52 - 3870: 2,-51 - 3871: 2,-50 - 3872: 2,-49 - 3873: 2,-48 - 3874: 2,-47 + 3866: 2,-53 + 3867: 2,-52 + 3868: 2,-51 + 3869: 2,-50 + 3870: 2,-49 + 3871: 2,-48 + 3872: 2,-47 - node: color: '#707070B7' id: MiniTileWhiteLineW decals: - 3276: 22,-73 + 3274: 22,-73 - node: color: '#73C2A496' id: MiniTileWhiteLineW decals: - 2429: -26,-33 - 2430: -26,-34 - 2431: -26,-35 - 2432: -26,-36 - 2433: -34,-34 - 2434: -34,-35 - 2462: -41,-34 - 2463: -41,-35 - 2464: -41,-36 - 2472: -33,-39 - 2473: -33,-40 - 2474: -33,-41 - 2480: -36,-41 - 2498: -36,-53 - 2499: -36,-51 - 2500: -36,-50 - 2501: -36,-52 - 2502: -36,-49 - 2503: -36,-48 + 2428: -26,-33 + 2429: -26,-34 + 2430: -26,-35 + 2431: -26,-36 + 2432: -34,-34 + 2433: -34,-35 + 2461: -41,-34 + 2462: -41,-35 + 2463: -41,-36 + 2471: -33,-39 + 2472: -33,-40 + 2473: -33,-41 + 2479: -36,-41 + 2497: -36,-53 + 2498: -36,-51 + 2499: -36,-50 + 2500: -36,-52 + 2501: -36,-49 + 2502: -36,-48 - node: color: '#787878B7' id: MiniTileWhiteLineW decals: - 3304: 29,-79 - 3305: 29,-80 - 3320: 29,-92 - 3321: 29,-91 - 3322: 29,-90 - 3323: 29,-89 - 3324: 29,-88 - 3330: 27,-82 - 3331: 27,-84 - 3332: 27,-85 - 3333: 27,-86 - 3344: 47,-75 - 3345: 47,-74 - 3346: 47,-73 - 3370: 47,-79 - 3371: 47,-80 - 3372: 47,-82 - 3373: 47,-81 - 3374: 47,-83 - 3375: 47,-84 - 3376: 47,-85 - 3377: 47,-86 - 3378: 47,-88 - 3379: 47,-87 - 3380: 47,-89 - 3381: 47,-90 - 3382: 47,-91 - 3383: 47,-92 + 3302: 29,-79 + 3303: 29,-80 + 3318: 29,-92 + 3319: 29,-91 + 3320: 29,-90 + 3321: 29,-89 + 3322: 29,-88 + 3328: 27,-82 + 3329: 27,-84 + 3330: 27,-85 + 3331: 27,-86 + 3342: 47,-75 + 3343: 47,-74 + 3344: 47,-73 + 3368: 47,-79 + 3369: 47,-80 + 3370: 47,-82 + 3371: 47,-81 + 3372: 47,-83 + 3373: 47,-84 + 3374: 47,-85 + 3375: 47,-86 + 3376: 47,-88 + 3377: 47,-87 + 3378: 47,-89 + 3379: 47,-90 + 3380: 47,-91 + 3381: 47,-92 - node: color: '#88C598FF' id: MiniTileWhiteLineW decals: - 3768: 13,-83 - 3769: 13,-84 - 3770: 13,-85 + 3766: 13,-83 + 3767: 13,-84 + 3768: 13,-85 - node: color: '#9FED58E9' id: MiniTileWhiteLineW decals: - 4025: -15,-55 + 4023: -15,-55 - node: color: '#A4610696' id: MiniTileWhiteLineW decals: - 2195: -26,18 - 2196: -26,19 - 2197: -26,20 - 2198: -26,21 - 2199: -26,22 - 2200: -26,23 - 2201: -26,24 - 2202: -35,18 - 2203: -35,19 - 2204: -35,21 - 2205: -35,22 - 2206: -35,20 - 2207: -35,23 - 2208: -35,24 - 2209: -35,25 - 2217: -49,21 - 2221: -49,32 + 2194: -26,18 + 2195: -26,19 + 2196: -26,20 + 2197: -26,21 + 2198: -26,22 + 2199: -26,23 + 2200: -26,24 + 2201: -35,18 + 2202: -35,19 + 2203: -35,21 + 2204: -35,22 + 2205: -35,20 + 2206: -35,23 + 2207: -35,24 + 2208: -35,25 + 2216: -49,21 + 2220: -49,32 - node: color: '#D381C996' id: MiniTileWhiteLineW @@ -6202,203 +6203,203 @@ entities: 823: 48,-56 841: 41,-47 842: 42,-49 - 2875: 70,-34 - 2876: 70,-35 - 2877: 70,-36 - 2878: 70,-37 - 2999: 67,-49 - 3000: 74,-49 - 3010: 76,-47 - 3011: 76,-46 - 3012: 76,-45 - 3246: 60,-33 - 3247: 60,-34 - 3248: 60,-35 - 3249: 60,-36 + 2873: 70,-34 + 2874: 70,-35 + 2875: 70,-36 + 2876: 70,-37 + 2997: 67,-49 + 2998: 74,-49 + 3008: 76,-47 + 3009: 76,-46 + 3010: 76,-45 + 3244: 60,-33 + 3245: 60,-34 + 3246: 60,-35 + 3247: 60,-36 - node: color: '#D381C9AB' id: MiniTileWhiteLineW decals: - 2957: 70,-38 + 2955: 70,-38 - node: color: '#D381C9C0' id: MiniTileWhiteLineW decals: - 2937: 59,-45 + 2935: 59,-45 - node: color: '#D4D4D406' id: MiniTileWhiteLineW decals: - 3756: -41,14 - 3757: -37,14 + 3754: -41,14 + 3755: -37,14 - node: color: '#D4D4D40F' id: MiniTileWhiteLineW decals: - 2952: 53,-36 + 2950: 53,-36 - node: color: '#D4D4D428' id: MiniTileWhiteLineW decals: - 2301: -48,-10 - 2302: -48,-11 - 2303: -48,-12 - 2304: -48,-13 - 2305: -48,-14 - 2306: -48,-15 - 2307: -48,-16 - 2308: -48,-17 + 2300: -48,-10 + 2301: -48,-11 + 2302: -48,-12 + 2303: -48,-13 + 2304: -48,-14 + 2305: -48,-15 + 2306: -48,-16 + 2307: -48,-17 - node: color: '#DE3A3A96' id: MiniTileWhiteLineW decals: - 2534: 24,12 - 2535: 24,11 - 2536: 24,10 - 2556: 20,17 - 2586: 4,16 - 2587: 4,15 - 2588: 4,13 - 2589: 4,14 - 2632: 40,5 - 2633: 40,6 - 2634: 40,7 - 2647: 28,21 - 2648: 28,20 - 2649: 28,19 - 2650: 28,18 - 2651: 28,17 - 2652: 28,15 - 2900: -17,-22 - 2901: -17,-23 - 2967: 19,-47 - 3129: -17,24 - 3130: -17,25 - 3131: -17,26 - 3414: 40,13 - 3415: 40,12 - 3416: 40,11 - 3417: 40,10 - 3418: 40,9 - 3419: 40,8 + 2533: 24,12 + 2534: 24,11 + 2535: 24,10 + 2555: 20,17 + 2585: 4,16 + 2586: 4,15 + 2587: 4,13 + 2588: 4,14 + 2631: 40,5 + 2632: 40,6 + 2633: 40,7 + 2646: 28,21 + 2647: 28,20 + 2648: 28,19 + 2649: 28,18 + 2650: 28,17 + 2651: 28,15 + 2898: -17,-22 + 2899: -17,-23 + 2965: 19,-47 + 3127: -17,24 + 3128: -17,25 + 3129: -17,26 + 3412: 40,13 + 3413: 40,12 + 3414: 40,11 + 3415: 40,10 + 3416: 40,9 + 3417: 40,8 - node: color: '#EFB34196' id: MiniTileWhiteLineW decals: - 2232: -26,-14 - 2233: -26,-13 - 2234: -26,-11 - 2235: -26,-12 - 2236: -26,-10 - 2237: -30,-12 - 2238: -30,-13 - 2239: -30,-14 - 2256: -33,-15 - 2257: -33,-17 - 2258: -33,-16 - 2259: -33,-18 - 2274: -40,-10 - 2275: -40,-11 - 2276: -40,-12 - 2277: -40,-13 - 2285: -43,-11 - 2286: -43,-12 - 2287: -43,-13 - 2328: -33,-23 - 2329: -33,-24 - 2330: -33,-25 - 2331: -33,-26 - 2332: -33,-27 - 2333: -33,-28 - 2334: -33,-29 - 2358: -56,-8 - 2359: -56,-9 - 2360: -56,-10 - 2361: -56,-11 - 2362: -56,-12 - 2363: -56,-14 - 2364: -56,-13 - 2365: -56,-15 - 2366: -56,-16 - 2367: -56,-17 - 2368: -56,-18 - 2369: -55,-20 - 2402: -63,-25 - 2415: -75,-25 - 2416: -75,-26 - 3048: -33,-12 - 3049: -33,-11 - 3062: -30,-11 - 3069: -26,-17 - 3070: -26,-16 - 3071: -26,-15 - 3091: -40,-7 - 3092: -40,-8 - 3093: -40,-9 - 3122: -43,-7 - 3623: -33,-14 - 3624: -33,-13 + 2231: -26,-14 + 2232: -26,-13 + 2233: -26,-11 + 2234: -26,-12 + 2235: -26,-10 + 2236: -30,-12 + 2237: -30,-13 + 2238: -30,-14 + 2255: -33,-15 + 2256: -33,-17 + 2257: -33,-16 + 2258: -33,-18 + 2273: -40,-10 + 2274: -40,-11 + 2275: -40,-12 + 2276: -40,-13 + 2284: -43,-11 + 2285: -43,-12 + 2286: -43,-13 + 2327: -33,-23 + 2328: -33,-24 + 2329: -33,-25 + 2330: -33,-26 + 2331: -33,-27 + 2332: -33,-28 + 2333: -33,-29 + 2357: -56,-8 + 2358: -56,-9 + 2359: -56,-10 + 2360: -56,-11 + 2361: -56,-12 + 2362: -56,-14 + 2363: -56,-13 + 2364: -56,-15 + 2365: -56,-16 + 2366: -56,-17 + 2367: -56,-18 + 2368: -55,-20 + 2401: -63,-25 + 2414: -75,-25 + 2415: -75,-26 + 3046: -33,-12 + 3047: -33,-11 + 3060: -30,-11 + 3067: -26,-17 + 3068: -26,-16 + 3069: -26,-15 + 3089: -40,-7 + 3090: -40,-8 + 3091: -40,-9 + 3120: -43,-7 + 3621: -33,-14 + 3622: -33,-13 - node: color: '#F0F0F0FF' id: MiniTileWhiteLineW decals: - 3930: -8,-55 + 3928: -8,-55 - node: color: '#646C6447' id: MonoOverlay decals: - 3586: -20,-19 - 3587: -20,-23 - 3588: -20,-11 - 3589: -20,-28 - 3590: -16,-27 - 3591: -20,-35 - 3592: -10,-27 - 3593: -5,-33 - 3594: -5,-25 - 3595: 1,-27 - 3596: 8,-27 - 3597: -1,-43 - 3598: -12,-43 - 3599: -19,-43 - 3600: -20,-37 - 3601: 33,-3 - 3602: 43,1 - 3603: 52,-2 - 3604: 32,7 + 3584: -20,-19 + 3585: -20,-23 + 3586: -20,-11 + 3587: -20,-28 + 3588: -16,-27 + 3589: -20,-35 + 3590: -10,-27 + 3591: -5,-33 + 3592: -5,-25 + 3593: 1,-27 + 3594: 8,-27 + 3595: -1,-43 + 3596: -12,-43 + 3597: -19,-43 + 3598: -20,-37 + 3599: 33,-3 + 3600: 43,1 + 3601: 52,-2 + 3602: 32,7 - node: color: '#D4F8D406' id: MonoOverlay decals: - 3758: -5,-11 - 3759: -5,-5 - 3760: -5,-20 - 3761: -20,-13 - 3762: -17,-27 + 3756: -5,-11 + 3757: -5,-5 + 3758: -5,-20 + 3759: -20,-13 + 3760: -17,-27 - node: color: '#646C6447' id: OffsetCheckerAOverlay decals: - 3605: -4,-26 - 3606: -5,-28 + 3603: -4,-26 + 3604: -5,-28 - node: color: '#52B4E9A1' id: OffsetCheckerBOverlay decals: - 4003: -9,-55 + 4001: -9,-55 - node: color: '#8259640C' id: OffsetCheckerBOverlay decals: - 3607: -32,9 - 3608: -33,9 - 3609: -34,9 - 3610: -34,10 - 3611: -31,10 - 3612: -31,9 - 3613: -31,8 - 3614: -30,10 - 3615: -30,9 + 3605: -32,9 + 3606: -33,9 + 3607: -34,9 + 3608: -34,10 + 3609: -31,10 + 3610: -31,9 + 3611: -31,8 + 3612: -30,10 + 3613: -30,9 - node: color: '#FFFFFFFF' id: OriginStationSign1 @@ -6468,52 +6469,52 @@ entities: color: '#3B000098' id: PavementVerticalCheckerAOverlay decals: - 3568: -39,6 - 3569: -39,5 - 3570: -39,4 - 3571: -39,3 - 3572: -38,3 - 3573: -38,4 - 3574: -38,5 - 3575: -38,6 + 3566: -39,6 + 3567: -39,5 + 3568: -39,4 + 3569: -39,3 + 3570: -38,3 + 3571: -38,4 + 3572: -38,5 + 3573: -38,6 - node: color: '#476F6433' id: PavementVerticalCheckerAOverlay decals: - 3616: -42,-13 - 3617: -43,-11 - 3618: -42,-7 - 3619: -43,-8 - 3620: -39,-11 - 3621: -30,-13 - 3622: -29,-15 + 3614: -42,-13 + 3615: -43,-11 + 3616: -42,-7 + 3617: -43,-8 + 3618: -39,-11 + 3619: -30,-13 + 3620: -29,-15 - node: color: '#00000093' id: PavementVerticalCheckerBOverlay decals: - 3576: -39,6 - 3577: -38,6 - 3578: -39,5 - 3579: -38,5 - 3580: -39,4 - 3581: -38,4 - 3582: -39,3 - 3583: -38,3 + 3574: -39,6 + 3575: -38,6 + 3576: -39,5 + 3577: -38,5 + 3578: -39,4 + 3579: -38,4 + 3580: -39,3 + 3581: -38,3 - node: color: '#EFB34160' id: QuarterTileOverlayGreyscale decals: - 2828: -15,-5 + 2826: -15,-5 - node: color: '#F0F0F08F' id: QuarterTileOverlayGreyscale decals: - 4052: -10,-62 + 4050: -10,-62 - node: color: '#EFB34160' id: QuarterTileOverlayGreyscale180 decals: - 2822: -25,6 + 2820: -25,6 - node: color: '#FFFFFF79' id: QuarterTileOverlayGreyscale180 @@ -6523,17 +6524,17 @@ entities: color: '#EFB34153' id: QuarterTileOverlayGreyscale270 decals: - 2847: -15,6 + 2845: -15,6 - node: color: '#F0F0F08F' id: QuarterTileOverlayGreyscale270 decals: - 4051: -10,-59 + 4049: -10,-59 - node: color: '#EFB34150' id: QuarterTileOverlayGreyscale90 decals: - 2853: -25,-5 + 2851: -25,-5 - node: color: '#FFFFFF79' id: QuarterTileOverlayGreyscale90 @@ -6543,8 +6544,8 @@ entities: color: '#FFFFFFFF' id: Rock01 decals: - 3842: 32.28251,-88.02844 - 3844: 45.023026,-87.13585 + 3840: 32.28251,-88.02844 + 3842: 45.023026,-87.13585 - node: color: '#FFFFFFFF' id: Rock02 @@ -6552,9 +6553,9 @@ entities: 460: -10.301918,53.89685 461: -9.380043,53.8031 462: -3.5987926,53.818726 - 3536: -8.789691,17.921444 - 3537: -4.6178155,17.827694 - 3841: 32.90751,-86.01282 + 3534: -8.789691,17.921444 + 3535: -4.6178155,17.827694 + 3839: 32.90751,-86.01282 - node: color: '#FFFFFFFF' id: Rock03 @@ -6564,7 +6565,7 @@ entities: 436: -7.1241894,49.888622 463: -4.3331676,54.14685 464: -8.959863,49.049328 - 3843: 45.491776,-86.3546 + 3841: 45.491776,-86.3546 - node: color: '#FFFFFFFF' id: Rock04 @@ -6574,34 +6575,34 @@ entities: 439: -4.0786057,48.216747 440: -7.6469474,55.2557 441: -6.2719474,53.567944 - 3044: -36,6 - 3045: -32,5 - 3046: -31,3 + 3042: -36,6 + 3043: -32,5 + 3044: -31,3 - node: color: '#FFFFFFFF' id: Rock06 decals: - 3041: -42,3 - 3043: -35,4 - 3047: -33,3 + 3039: -42,3 + 3041: -35,4 + 3045: -33,3 - node: cleanable: True color: '#FFFFFFFF' id: Rock06 decals: - 3805: 53.911736,-9.502742 + 3803: 53.911736,-9.502742 - node: color: '#FFFFFFFF' id: Rock07 decals: - 3042: -40,5 + 3040: -40,5 - node: cleanable: True color: '#FFFFFFFF' id: Rock07 decals: - 3806: 60.067986,-9.424617 - 3807: 66.06798,-9.408992 + 3804: 60.067986,-9.424617 + 3805: 66.06798,-9.408992 - node: color: '#FFFFFFFF' id: SpaceStationSign1 @@ -6643,10 +6644,10 @@ entities: decals: 369: -9,-45 370: -1,-45 - 2927: 77.48695,-34.5492 - 2928: 77.50258,-37.51795 - 3156: -1,-52 - 4036: -9,-52 + 2925: 77.48695,-34.5492 + 2926: 77.50258,-37.51795 + 3154: -1,-52 + 4034: -9,-52 - node: color: '#D381C996' id: ThreeQuarterTileOverlayGreyscale @@ -6682,12 +6683,12 @@ entities: color: '#FFFFFFFF' id: VentSmall decals: - 2973: 62,-44 + 2971: 62,-44 - node: color: '#A46106FF' id: WarnBox decals: - 3146: -13,-13 + 3144: -13,-13 - node: color: '#FFFFFFFF' id: WarnBox @@ -6696,79 +6697,79 @@ entities: 337: -52,20 353: -52,33 354: -52,31 - 3147: -11,-13 - 3149: -41,18 + 3145: -11,-13 + 3147: -41,18 - node: color: '#FFFFFFFF' id: WarnCornerNE decals: - 2892: -40,-59 - 2922: 54,-62 - 2925: 78,-34 - 2926: 78,-37 - 3665: -50,-37 + 2890: -40,-59 + 2920: 54,-62 + 2923: 78,-34 + 2924: 78,-37 + 3663: -50,-37 - node: color: '#FFFFFFFF' id: WarnCornerNW decals: - 2893: -38,-59 - 2921: 56,-61 - 2923: 77,-34 - 2924: 77,-37 + 2891: -38,-59 + 2919: 56,-61 + 2921: 77,-34 + 2922: 77,-37 - node: color: '#FFFFFFFF' id: WarnCornerSE decals: - 2929: 78,-38 - 2930: 78,-35 - 3561: -72,-40 + 2927: 78,-38 + 2928: 78,-35 + 3559: -72,-40 - node: color: '#FFFFFFFF' id: WarnCornerSW decals: - 2931: 77,-35 - 2932: 77,-38 + 2929: 77,-35 + 2930: 77,-38 - node: color: '#FFFFFFFF' id: WarnCornerSmallNE decals: - 2915: 17,36 - 2916: 15,37 - 3660: -78,-43 - 3670: -50,-40 + 2913: 17,36 + 2914: 15,37 + 3658: -78,-43 + 3668: -50,-40 - node: color: '#FFFFFFFF' id: WarnCornerSmallNW decals: - 2917: 15,36 - 2918: 17,37 - 3659: -76,-43 + 2915: 15,36 + 2916: 17,37 + 3657: -76,-43 - node: color: '#FFFFFFFF' id: WarnCornerSmallSE decals: - 2913: 15,39 - 2914: 17,38 - 3658: -78,-41 + 2911: 15,39 + 2912: 17,38 + 3656: -78,-41 - node: color: '#FFFFFFFF' id: WarnCornerSmallSW decals: 306: 47,-58 - 2524: -38,-42 - 2911: 17,39 - 2912: 15,38 - 3661: -76,-41 + 2523: -38,-42 + 2909: 17,39 + 2910: 15,38 + 3659: -76,-41 - node: color: '#FFFFFFFF' id: WarnEndN decals: - 3566: -70,-46 + 3564: -70,-46 - node: color: '#FFFFFFFF' id: WarnEndS decals: - 3567: -70,-47 + 3565: -70,-47 - node: color: '#FFFFFFFF' id: WarnLineE @@ -6776,15 +6777,15 @@ entities: 252: -39,-53 253: -39,-54 254: -39,-55 - 2153: 38,-26 - 2154: 38,-27 - 2905: 15,38 - 2909: 17,37 - 3562: -72,-39 - 3657: -78,-42 - 3668: -50,-38 - 3669: -50,-39 - 3672: -72,-38 + 2152: 38,-26 + 2153: 38,-27 + 2903: 15,38 + 2907: 17,37 + 3560: -72,-39 + 3655: -78,-42 + 3666: -50,-38 + 3667: -50,-39 + 3670: -72,-38 - node: color: '#DE3A3A96' id: WarnLineGreyscaleE @@ -6805,17 +6806,17 @@ entities: 255: -39,-42 256: -40,-42 821: 45,-58 - 2904: 14,38 - 2907: 16,39 - 2908: 18,38 - 3253: 63,-31 - 3254: 62,-31 - 3255: 61,-31 - 3443: -42,-42 - 3445: -41,-42 - 3563: -73,-40 - 3564: -74,-40 - 3656: -77,-41 + 2902: 14,38 + 2905: 16,39 + 2906: 18,38 + 3251: 63,-31 + 3252: 62,-31 + 3253: 61,-31 + 3441: -42,-42 + 3443: -41,-42 + 3561: -73,-40 + 3562: -74,-40 + 3654: -77,-41 - node: color: '#FFFFFFFF' id: WarnLineS @@ -6832,17 +6833,17 @@ entities: 246: -40,-54 247: -40,-55 820: 47,-59 - 2517: -38,-43 - 2518: -38,-44 - 2519: -38,-45 - 2520: -38,-46 - 2521: -38,-47 - 2522: -37,-54 - 2523: -37,-58 - 2525: -42,-42 - 2902: 15,37 - 2906: 17,38 - 3655: -76,-42 + 2516: -38,-43 + 2517: -38,-44 + 2518: -38,-45 + 2519: -38,-46 + 2520: -38,-47 + 2521: -37,-54 + 2522: -37,-58 + 2524: -42,-42 + 2900: 15,37 + 2904: 17,38 + 3653: -76,-42 - node: color: '#FFFFFFFF' id: WarnLineW @@ -6851,358 +6852,358 @@ entities: 213: 53,-62 250: -40,-53 251: -39,-53 - 2515: -36,-41 - 2516: -35,-41 - 2903: 14,36 - 2910: 18,36 - 2920: 16,37 - 3654: -77,-43 - 3666: -49,-40 - 3667: -51,-37 + 2514: -36,-41 + 2515: -35,-41 + 2901: 14,36 + 2908: 18,36 + 2918: 16,37 + 3652: -77,-43 + 3664: -49,-40 + 3665: -51,-37 - node: color: '#A7A5FFFF' id: WoodTrimThinCornerNe decals: - 3681: 29,-35 - 3682: 29,-39 + 3679: 29,-35 + 3680: 29,-39 - node: color: '#AE8C69FF' id: WoodTrimThinCornerNe decals: - 3784: 18,-81 - 3785: 19,-82 + 3782: 18,-81 + 3783: 19,-82 - node: color: '#D4D4D4E3' id: WoodTrimThinCornerNe decals: - 2662: 14,14 - 2688: 18,14 - 2699: 13,-11 - 2700: 12,-4 + 2661: 14,14 + 2687: 18,14 + 2698: 13,-11 + 2699: 12,-4 - node: color: '#FFFFFFFF' id: WoodTrimThinCornerNe decals: - 2144: 34,-54 - 3512: 2,21 + 2143: 34,-54 + 3510: 2,21 - node: color: '#A7A5FFFF' id: WoodTrimThinCornerNw decals: - 3678: 21,-35 + 3676: 21,-35 - node: color: '#AE8C69FF' id: WoodTrimThinCornerNw decals: - 3789: 12,-81 + 3787: 12,-81 - node: color: '#D4D4D4E3' id: WoodTrimThinCornerNw decals: - 2660: 8,10 - 2661: 10,14 - 2689: 16,14 - 2701: 10,-4 + 2659: 8,10 + 2660: 10,14 + 2688: 16,14 + 2700: 10,-4 - node: color: '#FFFFFFFF' id: WoodTrimThinCornerNw decals: - 2145: 28,-54 - 3510: -2,21 + 2144: 28,-54 + 3508: -2,21 - node: color: '#A7A5FFFF' id: WoodTrimThinCornerSe decals: - 3683: 29,-37 - 3684: 29,-40 + 3681: 29,-37 + 3682: 29,-40 - node: color: '#AE8C69FF' id: WoodTrimThinCornerSe decals: - 3786: 18,-87 - 3787: 19,-86 + 3784: 18,-87 + 3785: 19,-86 - node: color: '#D4D4D4E3' id: WoodTrimThinCornerSe decals: - 2659: 14,5 - 2697: 13,-13 + 2658: 14,5 + 2696: 13,-13 - node: color: '#D4D4D4E9' id: WoodTrimThinCornerSe decals: - 3027: 18,9 + 3025: 18,9 - node: color: '#FFFFFFFF' id: WoodTrimThinCornerSe decals: - 2141: 34,-57 - 3511: 2,16 + 2140: 34,-57 + 3509: 2,16 - node: color: '#A7A5FFFF' id: WoodTrimThinCornerSw decals: - 3679: 21,-38 - 3680: 22,-40 + 3677: 21,-38 + 3678: 22,-40 - node: color: '#AE8C69FF' id: WoodTrimThinCornerSw decals: - 3788: 12,-87 + 3786: 12,-87 - node: color: '#D4D4D4E3' id: WoodTrimThinCornerSw decals: - 2663: 8,5 - 2698: 8,-13 + 2662: 8,5 + 2697: 8,-13 - node: color: '#D4D4D4E9' id: WoodTrimThinCornerSw decals: - 3028: 16,9 + 3026: 16,9 - node: color: '#FFFFFFFF' id: WoodTrimThinCornerSw decals: - 2140: 28,-57 - 3508: -1,16 - 3509: -2,17 + 2139: 28,-57 + 3506: -1,16 + 3507: -2,17 - node: color: '#A7A5FFFF' id: WoodTrimThinInnerNe decals: - 3704: 28,-39 + 3702: 28,-39 - node: color: '#AE8C69FF' id: WoodTrimThinInnerNe decals: - 3798: 18,-82 + 3796: 18,-82 - node: color: '#D4D4D4E3' id: WoodTrimThinInnerNe decals: - 2719: 12,-11 + 2718: 12,-11 - node: color: '#D4D4D4E3' id: WoodTrimThinInnerNw decals: - 2686: 10,10 - 2720: 10,-5 + 2685: 10,10 + 2719: 10,-5 - node: color: '#A7A5FFFF' id: WoodTrimThinInnerSe decals: - 3705: 28,-37 + 3703: 28,-37 - node: color: '#AE8C69FF' id: WoodTrimThinInnerSe decals: - 3799: 18,-86 + 3797: 18,-86 - node: color: '#A7A5FFFF' id: WoodTrimThinInnerSw decals: - 3703: 22,-38 + 3701: 22,-38 - node: color: '#D4D4D4E3' id: WoodTrimThinInnerSw decals: - 2687: 10,13 - 2721: 8,-8 + 2686: 10,13 + 2720: 8,-8 - node: color: '#FFFFFFFF' id: WoodTrimThinInnerSw decals: - 3525: -1,17 + 3523: -1,17 - node: color: '#A7A5FFFF' id: WoodTrimThinLineE decals: - 3691: 29,-36 - 3692: 28,-38 + 3689: 29,-36 + 3690: 28,-38 - node: color: '#AE8C69FF' id: WoodTrimThinLineE decals: - 3790: 19,-83 - 3791: 19,-84 - 3792: 19,-85 + 3788: 19,-83 + 3789: 19,-84 + 3790: 19,-85 - node: color: '#D4D4D4E3' id: WoodTrimThinLineE decals: - 2668: 14,6 - 2669: 14,7 - 2670: 14,10 - 2671: 14,11 - 2672: 14,12 - 2673: 14,13 - 2690: 18,11 - 2691: 18,12 - 2692: 18,13 - 2712: 12,-5 - 2713: 12,-6 - 2714: 12,-7 - 2715: 12,-8 - 2716: 12,-9 - 2717: 12,-10 - 2718: 13,-12 + 2667: 14,6 + 2668: 14,7 + 2669: 14,10 + 2670: 14,11 + 2671: 14,12 + 2672: 14,13 + 2689: 18,11 + 2690: 18,12 + 2691: 18,13 + 2711: 12,-5 + 2712: 12,-6 + 2713: 12,-7 + 2714: 12,-8 + 2715: 12,-9 + 2716: 12,-10 + 2717: 13,-12 - node: color: '#D4D4D4E9' id: WoodTrimThinLineE decals: - 3030: 14,8 - 3031: 14,9 + 3028: 14,8 + 3029: 14,9 - node: color: '#FFFFFFFF' id: WoodTrimThinLineE decals: - 2142: 34,-56 - 2143: 34,-55 - 3521: 2,17 - 3522: 2,18 - 3523: 2,19 - 3524: 2,20 + 2141: 34,-56 + 2142: 34,-55 + 3519: 2,17 + 3520: 2,18 + 3521: 2,19 + 3522: 2,20 - node: color: '#A7A5FFFF' id: WoodTrimThinLineN decals: - 3693: 22,-35 - 3694: 23,-35 - 3695: 24,-35 - 3696: 25,-35 - 3697: 26,-35 - 3698: 27,-35 - 3699: 28,-35 + 3691: 22,-35 + 3692: 23,-35 + 3693: 24,-35 + 3694: 25,-35 + 3695: 26,-35 + 3696: 27,-35 + 3697: 28,-35 - node: color: '#AE8C69FF' id: WoodTrimThinLineN decals: - 3800: 13,-81 - 3801: 14,-81 - 3802: 15,-81 - 3803: 16,-81 - 3804: 17,-81 + 3798: 13,-81 + 3799: 14,-81 + 3800: 15,-81 + 3801: 16,-81 + 3802: 17,-81 - node: color: '#D4D4D4E3' id: WoodTrimThinLineN decals: - 2664: 9,10 - 2665: 11,14 - 2666: 12,14 - 2667: 13,14 - 2696: 17,14 - 2709: 7,-5 - 2710: 8,-5 - 2711: 9,-5 - 2722: 11,-4 + 2663: 9,10 + 2664: 11,14 + 2665: 12,14 + 2666: 13,14 + 2695: 17,14 + 2708: 7,-5 + 2709: 8,-5 + 2710: 9,-5 + 2721: 11,-4 - node: color: '#FFFFFFFF' id: WoodTrimThinLineN decals: - 2146: 33,-54 - 2147: 32,-54 - 2148: 31,-54 - 2149: 30,-54 - 2150: 29,-54 - 3513: -1,21 - 3514: 0,21 - 3515: 1,21 + 2145: 33,-54 + 2146: 32,-54 + 2147: 31,-54 + 2148: 30,-54 + 2149: 29,-54 + 3511: -1,21 + 3512: 0,21 + 3513: 1,21 - node: color: '#A7A5FFFF' id: WoodTrimThinLineS decals: - 3685: 23,-40 - 3686: 24,-40 - 3687: 25,-40 - 3688: 26,-40 - 3689: 27,-40 - 3690: 28,-40 + 3683: 23,-40 + 3684: 24,-40 + 3685: 25,-40 + 3686: 26,-40 + 3687: 27,-40 + 3688: 28,-40 - node: color: '#AE8C69FF' id: WoodTrimThinLineS decals: - 3779: 13,-87 - 3780: 14,-87 - 3781: 15,-87 - 3782: 16,-87 - 3783: 17,-87 + 3777: 13,-87 + 3778: 14,-87 + 3779: 15,-87 + 3780: 16,-87 + 3781: 17,-87 - node: color: '#D4D4D4E3' id: WoodTrimThinLineS decals: - 2681: 13,5 - 2682: 12,5 - 2683: 11,5 - 2684: 10,5 - 2685: 9,5 - 2702: 9,-13 - 2703: 10,-13 - 2704: 11,-13 - 2705: 12,-13 + 2680: 13,5 + 2681: 12,5 + 2682: 11,5 + 2683: 10,5 + 2684: 9,5 + 2701: 9,-13 + 2702: 10,-13 + 2703: 11,-13 + 2704: 12,-13 - node: color: '#FFFFFFFF' id: WoodTrimThinLineS decals: - 2136: 32,-57 - 2137: 33,-57 - 2138: 30,-57 - 2139: 29,-57 - 3519: 0,16 - 3520: 1,16 + 2135: 32,-57 + 2136: 33,-57 + 2137: 30,-57 + 2138: 29,-57 + 3517: 0,16 + 3518: 1,16 - node: color: '#A7A5FFFF' id: WoodTrimThinLineW decals: - 3700: 21,-36 - 3701: 21,-37 - 3702: 22,-39 + 3698: 21,-36 + 3699: 21,-37 + 3700: 22,-39 - node: color: '#AE8C69FF' id: WoodTrimThinLineW decals: - 3793: 12,-82 - 3794: 12,-83 - 3795: 12,-84 - 3796: 12,-85 - 3797: 12,-86 + 3791: 12,-82 + 3792: 12,-83 + 3793: 12,-84 + 3794: 12,-85 + 3795: 12,-86 - node: color: '#D4D4D4E3' id: WoodTrimThinLineW decals: - 2674: 10,13 - 2675: 10,12 - 2676: 10,11 - 2677: 8,9 - 2678: 8,8 - 2679: 8,7 - 2680: 8,6 - 2693: 16,13 - 2694: 16,12 - 2695: 16,11 - 2706: 8,-12 - 2707: 8,-11 - 2708: 8,-10 + 2673: 10,13 + 2674: 10,12 + 2675: 10,11 + 2676: 8,9 + 2677: 8,8 + 2678: 8,7 + 2679: 8,6 + 2692: 16,13 + 2693: 16,12 + 2694: 16,11 + 2705: 8,-12 + 2706: 8,-11 + 2707: 8,-10 - node: color: '#D4D4D4E9' id: WoodTrimThinLineW decals: - 3029: 16,10 + 3027: 16,10 - node: color: '#FFFFFFFF' id: WoodTrimThinLineW decals: - 2151: 28,-55 - 2152: 28,-56 - 3516: -2,18 - 3517: -2,19 - 3518: -2,20 + 2150: 28,-55 + 2151: 28,-56 + 3514: -2,18 + 3515: -2,19 + 3516: -2,20 - node: cleanable: True color: '#D03F4A21' id: corgi decals: - 3628: 27,-19 + 3626: 27,-19 - node: color: '#FFFFFFFF' id: grasssnowb2 @@ -7235,7 +7236,7 @@ entities: color: '#EFB341F5' id: shop decals: - 3145: -49,12 + 3143: -49,12 - node: cleanable: True color: '#A4610696' @@ -10538,8 +10539,6 @@ entities: - 15159 - 15158 - 15157 - - type: AtmosDevice - joinedGrid: 2 - uid: 6 components: - type: Transform @@ -10557,8 +10556,6 @@ entities: - 15212 - 15207 - 15449 - - type: AtmosDevice - joinedGrid: 2 - uid: 7 components: - type: Transform @@ -10582,8 +10579,6 @@ entities: - 15181 - 15154 - 15188 - - type: AtmosDevice - joinedGrid: 2 - uid: 8 components: - type: Transform @@ -10610,8 +10605,6 @@ entities: - 20078 - 19844 - 20077 - - type: AtmosDevice - joinedGrid: 2 - uid: 9 components: - type: Transform @@ -10622,8 +10615,6 @@ entities: - 864 - 19934 - 20172 - - type: AtmosDevice - joinedGrid: 2 - uid: 10 components: - type: Transform @@ -10649,8 +10640,6 @@ entities: - 15195 - 15161 - 15351 - - type: AtmosDevice - joinedGrid: 2 - uid: 11 components: - type: Transform @@ -10671,8 +10660,6 @@ entities: - 15216 - 15240 - 15241 - - type: AtmosDevice - joinedGrid: 2 - uid: 12 components: - type: Transform @@ -10684,8 +10671,6 @@ entities: - 20014 - 19816 - 15187 - - type: AtmosDevice - joinedGrid: 2 - uid: 13 components: - type: Transform @@ -10707,8 +10692,6 @@ entities: - 15281 - 15304 - 15305 - - type: AtmosDevice - joinedGrid: 2 - uid: 14 components: - type: Transform @@ -10731,8 +10714,6 @@ entities: - 15173 - 15199 - 15233 - - type: AtmosDevice - joinedGrid: 2 - uid: 15 components: - type: Transform @@ -10750,8 +10731,6 @@ entities: - 15267 - 15364 - 15365 - - type: AtmosDevice - joinedGrid: 2 - uid: 16 components: - type: Transform @@ -10764,8 +10743,6 @@ entities: - 887 - 20096 - 15262 - - type: AtmosDevice - joinedGrid: 2 - uid: 17 components: - type: Transform @@ -10775,15 +10752,11 @@ entities: devices: - 844 - 19869 - - type: AtmosDevice - joinedGrid: 2 - uid: 18 components: - type: Transform pos: 7.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19 components: - type: Transform @@ -10803,8 +10776,6 @@ entities: - 15376 - 15390 - 15389 - - type: AtmosDevice - joinedGrid: 2 - uid: 20 components: - type: Transform @@ -10817,8 +10788,6 @@ entities: - 19930 - 15055 - 15052 - - type: AtmosDevice - joinedGrid: 2 - uid: 21 components: - type: Transform @@ -10844,8 +10813,6 @@ entities: - 15151 - 15143 - 15204 - - type: AtmosDevice - joinedGrid: 2 - uid: 22 components: - type: Transform @@ -10872,8 +10839,6 @@ entities: - 15223 - 15344 - 15007 - - type: AtmosDevice - joinedGrid: 2 - uid: 23 components: - type: Transform @@ -10893,8 +10858,6 @@ entities: - 15140 - 15229 - 15160 - - type: AtmosDevice - joinedGrid: 2 - uid: 24 components: - type: Transform @@ -10917,8 +10880,6 @@ entities: - 15000 - 15013 - 15146 - - type: AtmosDevice - joinedGrid: 2 - uid: 25 components: - type: Transform @@ -10931,8 +10892,6 @@ entities: - 865 - 15299 - 15300 - - type: AtmosDevice - joinedGrid: 2 - uid: 26 components: - type: Transform @@ -10951,8 +10910,6 @@ entities: - 15034 - 15299 - 15300 - - type: AtmosDevice - joinedGrid: 2 - uid: 27 components: - type: Transform @@ -10969,8 +10926,6 @@ entities: - 20061 - 19823 - 870 - - type: AtmosDevice - joinedGrid: 2 - uid: 28 components: - type: Transform @@ -10987,8 +10942,6 @@ entities: - 15422 - 15423 - 15424 - - type: AtmosDevice - joinedGrid: 2 - uid: 29 components: - type: Transform @@ -11003,8 +10956,6 @@ entities: - 843 - 19857 - 20094 - - type: AtmosDevice - joinedGrid: 2 - uid: 30 components: - type: Transform @@ -11028,8 +10979,6 @@ entities: - 15243 - 15244 - 14997 - - type: AtmosDevice - joinedGrid: 2 - uid: 31 components: - type: Transform @@ -11050,8 +10999,6 @@ entities: - 20031 - 871 - 19820 - - type: AtmosDevice - joinedGrid: 2 - uid: 32 components: - type: Transform @@ -11074,8 +11021,6 @@ entities: - 15236 - 15222 - 15164 - - type: AtmosDevice - joinedGrid: 2 - uid: 33 components: - type: Transform @@ -11086,8 +11031,6 @@ entities: - 826 - 20049 - 19818 - - type: AtmosDevice - joinedGrid: 2 - uid: 34 components: - type: Transform @@ -11098,8 +11041,6 @@ entities: - 826 - 20049 - 19818 - - type: AtmosDevice - joinedGrid: 2 - uid: 35 components: - type: Transform @@ -11114,8 +11055,6 @@ entities: - 19815 - 19787 - 20052 - - type: AtmosDevice - joinedGrid: 2 - uid: 36 components: - type: Transform @@ -11136,8 +11075,6 @@ entities: - 15227 - 15155 - 15176 - - type: AtmosDevice - joinedGrid: 2 - uid: 37 components: - type: Transform @@ -11148,8 +11085,6 @@ entities: - 19830 - 816 - 20067 - - type: AtmosDevice - joinedGrid: 2 - uid: 38 components: - type: Transform @@ -11166,8 +11101,6 @@ entities: - 15161 - 15195 - 15150 - - type: AtmosDevice - joinedGrid: 2 - uid: 39 components: - type: Transform @@ -11188,8 +11121,6 @@ entities: - 15399 - 15400 - 15433 - - type: AtmosDevice - joinedGrid: 2 - uid: 40 components: - type: Transform @@ -11208,8 +11139,6 @@ entities: - 874 - 19925 - 20160 - - type: AtmosDevice - joinedGrid: 2 - uid: 41 components: - type: Transform @@ -11225,8 +11154,6 @@ entities: - 15323 - 15324 - 15328 - - type: AtmosDevice - joinedGrid: 2 - uid: 42 components: - type: Transform @@ -11237,8 +11164,6 @@ entities: - 20166 - 19932 - 876 - - type: AtmosDevice - joinedGrid: 2 - uid: 43 components: - type: Transform @@ -11252,8 +11177,6 @@ entities: - 15413 - 15415 - 15189 - - type: AtmosDevice - joinedGrid: 2 - uid: 44 components: - type: Transform @@ -11266,8 +11189,6 @@ entities: - 15413 - 15415 - 15189 - - type: AtmosDevice - joinedGrid: 2 - uid: 45 components: - type: Transform @@ -11278,8 +11199,6 @@ entities: - 19911 - 879 - 20154 - - type: AtmosDevice - joinedGrid: 2 - uid: 46 components: - type: Transform @@ -11299,8 +11218,6 @@ entities: - 15318 - 15319 - 15320 - - type: AtmosDevice - joinedGrid: 2 - uid: 47 components: - type: Transform @@ -11318,8 +11235,6 @@ entities: - 15308 - 15062 - 15282 - - type: AtmosDevice - joinedGrid: 2 - uid: 48 components: - type: Transform @@ -11335,8 +11250,6 @@ entities: - 20132 - 15312 - 15355 - - type: AtmosDevice - joinedGrid: 2 - uid: 49 components: - type: Transform @@ -11351,8 +11264,6 @@ entities: - 15040 - 15302 - 15301 - - type: AtmosDevice - joinedGrid: 2 - uid: 50 components: - type: Transform @@ -11368,8 +11279,6 @@ entities: - 15313 - 15339 - 15036 - - type: AtmosDevice - joinedGrid: 2 - uid: 51 components: - type: Transform @@ -11381,8 +11290,6 @@ entities: - 15089 - 15303 - 15136 - - type: AtmosDevice - joinedGrid: 2 - uid: 52 components: - type: Transform @@ -11393,8 +11300,6 @@ entities: - 886 - 20130 - 19889 - - type: AtmosDevice - joinedGrid: 2 - uid: 53 components: - type: Transform @@ -11415,8 +11320,6 @@ entities: - 15273 - 15362 - 15363 - - type: AtmosDevice - joinedGrid: 2 - uid: 54 components: - type: Transform @@ -11430,8 +11333,6 @@ entities: - 848 - 15272 - 15273 - - type: AtmosDevice - joinedGrid: 2 - uid: 55 components: - type: Transform @@ -11443,8 +11344,6 @@ entities: - 20103 - 19865 - 899 - - type: AtmosDevice - joinedGrid: 2 - uid: 56 components: - type: Transform @@ -11456,8 +11355,6 @@ entities: - 20104 - 19866 - 15267 - - type: AtmosDevice - joinedGrid: 2 - uid: 57 components: - type: Transform @@ -11470,8 +11367,6 @@ entities: - 20150 - 15401 - 15402 - - type: AtmosDevice - joinedGrid: 2 - uid: 58 components: - type: Transform @@ -11482,8 +11377,6 @@ entities: - 20173 - 19935 - 893 - - type: AtmosDevice - joinedGrid: 2 - uid: 59 components: - type: Transform @@ -11506,8 +11399,6 @@ entities: - 15172 - 15400 - 15399 - - type: AtmosDevice - joinedGrid: 2 - uid: 60 components: - type: Transform @@ -11523,8 +11414,6 @@ entities: - 15347 - 15346 - 15250 - - type: AtmosDevice - joinedGrid: 2 - uid: 61 components: - type: Transform @@ -11544,8 +11433,6 @@ entities: - 15202 - 15218 - 15059 - - type: AtmosDevice - joinedGrid: 2 - uid: 62 components: - type: Transform @@ -11559,8 +11446,6 @@ entities: - 15191 - 15234 - 15361 - - type: AtmosDevice - joinedGrid: 2 - uid: 63 components: - type: Transform @@ -11574,8 +11459,6 @@ entities: - 15354 - 15234 - 15191 - - type: AtmosDevice - joinedGrid: 2 - uid: 64 components: - type: Transform @@ -11586,8 +11469,6 @@ entities: - 847 - 20122 - 19883 - - type: AtmosDevice - joinedGrid: 2 - uid: 65 components: - type: Transform @@ -11597,15 +11478,11 @@ entities: devices: - 927 - 15314 - - type: AtmosDevice - joinedGrid: 2 - uid: 66 components: - type: Transform pos: -29.5,-68.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 67 components: - type: Transform @@ -11618,15 +11495,11 @@ entities: - 20224 - 15432 - 15431 - - type: AtmosDevice - joinedGrid: 2 - uid: 68 components: - type: Transform pos: 43.5,49.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 69 components: - type: Transform @@ -11654,8 +11527,6 @@ entities: - 15369 - 15370 - 15060 - - type: AtmosDevice - joinedGrid: 2 - uid: 70 components: - type: Transform @@ -11675,8 +11546,6 @@ entities: - 15383 - 15384 - 15382 - - type: AtmosDevice - joinedGrid: 2 - uid: 71 components: - type: Transform @@ -11696,8 +11565,6 @@ entities: - 15431 - 15388 - 15366 - - type: AtmosDevice - joinedGrid: 2 - uid: 72 components: - type: Transform @@ -11714,8 +11581,6 @@ entities: - 15397 - 15391 - 15392 - - type: AtmosDevice - joinedGrid: 2 - uid: 73 components: - type: Transform @@ -11726,8 +11591,6 @@ entities: - 19963 - 20204 - 903 - - type: AtmosDevice - joinedGrid: 2 - uid: 74 components: - type: Transform @@ -11741,8 +11604,6 @@ entities: - 15354 - 15138 - 15074 - - type: AtmosDevice - joinedGrid: 2 - uid: 75 components: - type: Transform @@ -11756,8 +11617,6 @@ entities: - 19990 - 20233 - 926 - - type: AtmosDevice - joinedGrid: 2 - uid: 76 components: - type: Transform @@ -11770,8 +11629,6 @@ entities: - 19819 - 15231 - 15017 - - type: AtmosDevice - joinedGrid: 2 - uid: 77 components: - type: Transform @@ -11787,8 +11644,6 @@ entities: - 907 - 15026 - 15090 - - type: AtmosDevice - joinedGrid: 2 - uid: 78 components: - type: Transform @@ -11802,8 +11657,6 @@ entities: - 15406 - 906 - 20207 - - type: AtmosDevice - joinedGrid: 2 - uid: 79 components: - type: Transform @@ -11818,8 +11671,6 @@ entities: - 15023 - 15407 - 15408 - - type: AtmosDevice - joinedGrid: 2 - uid: 80 components: - type: Transform @@ -11837,8 +11688,6 @@ entities: - 20015 - 19779 - 827 - - type: AtmosDevice - joinedGrid: 2 - uid: 81 components: - type: Transform @@ -11855,8 +11704,6 @@ entities: - 15306 - 15307 - 15061 - - type: AtmosDevice - joinedGrid: 2 - uid: 82 components: - type: Transform @@ -11879,8 +11726,6 @@ entities: - 15409 - 15410 - 15095 - - type: AtmosDevice - joinedGrid: 2 - uid: 83 components: - type: Transform @@ -11897,8 +11742,6 @@ entities: - 15421 - 15420 - 15419 - - type: AtmosDevice - joinedGrid: 2 - uid: 84 components: - type: Transform @@ -11910,8 +11753,6 @@ entities: - 19982 - 20221 - 915 - - type: AtmosDevice - joinedGrid: 2 - uid: 85 components: - type: Transform @@ -11927,8 +11768,6 @@ entities: - 15419 - 15420 - 15421 - - type: AtmosDevice - joinedGrid: 2 - uid: 86 components: - type: Transform @@ -11943,8 +11782,6 @@ entities: - 15428 - 15429 - 15430 - - type: AtmosDevice - joinedGrid: 2 - uid: 87 components: - type: Transform @@ -11959,8 +11796,6 @@ entities: - 15345 - 19985 - 20226 - - type: AtmosDevice - joinedGrid: 2 - uid: 88 components: - type: Transform @@ -11986,8 +11821,6 @@ entities: - 15014 - 15004 - 14987 - - type: AtmosDevice - joinedGrid: 2 - uid: 89 components: - type: Transform @@ -12001,8 +11834,6 @@ entities: - 918 - 15435 - 15436 - - type: AtmosDevice - joinedGrid: 2 - uid: 90 components: - type: Transform @@ -12017,8 +11848,6 @@ entities: - 15029 - 15054 - 15107 - - type: AtmosDevice - joinedGrid: 2 - uid: 91 components: - type: Transform @@ -12033,8 +11862,6 @@ entities: - 15438 - 15109 - 15113 - - type: AtmosDevice - joinedGrid: 2 - uid: 92 components: - type: Transform @@ -12044,8 +11871,6 @@ entities: - type: DeviceList devices: - 921 - - type: AtmosDevice - joinedGrid: 2 - uid: 93 components: - type: Transform @@ -12056,8 +11881,6 @@ entities: devices: - 922 - 20146 - - type: AtmosDevice - joinedGrid: 2 - uid: 94 components: - type: Transform @@ -12071,8 +11894,6 @@ entities: - 15439 - 15441 - 15442 - - type: AtmosDevice - joinedGrid: 2 - uid: 95 components: - type: Transform @@ -12086,8 +11907,6 @@ entities: - 19769 - 15441 - 15440 - - type: AtmosDevice - joinedGrid: 2 - uid: 96 components: - type: Transform @@ -12100,8 +11919,6 @@ entities: - 20232 - 15443 - 15444 - - type: AtmosDevice - joinedGrid: 2 - uid: 97 components: - type: Transform @@ -12133,8 +11950,6 @@ entities: - 15269 - 15270 - 14998 - - type: AtmosDevice - joinedGrid: 2 - uid: 98 components: - type: Transform @@ -12154,8 +11969,6 @@ entities: - 15131 - 15451 - 15452 - - type: AtmosDevice - joinedGrid: 2 - uid: 99 components: - type: Transform @@ -12172,8 +11985,6 @@ entities: - 15133 - 15134 - 15132 - - type: AtmosDevice - joinedGrid: 2 - uid: 100 components: - type: Transform @@ -12186,8 +11997,6 @@ entities: - 19775 - 15072 - 15118 - - type: AtmosDevice - joinedGrid: 2 - uid: 101 components: - type: Transform @@ -12201,8 +12010,6 @@ entities: - 15450 - 15135 - 931 - - type: AtmosDevice - joinedGrid: 2 - uid: 102 components: - type: Transform @@ -12228,8 +12035,6 @@ entities: - 14990 - 14989 - 14988 - - type: AtmosDevice - joinedGrid: 2 - uid: 103 components: - type: Transform @@ -12244,16 +12049,12 @@ entities: - 15325 - 15450 - 15130 - - type: AtmosDevice - joinedGrid: 2 - uid: 104 components: - type: Transform rot: 1.5707963267948966 rad pos: -16.5,-53.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: AirCanister entities: - uid: 105 @@ -12261,71 +12062,51 @@ entities: - type: Transform pos: -34.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 106 components: - type: Transform pos: -29.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 107 components: - type: Transform pos: 60.5,29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 108 components: - type: Transform pos: 45.5,-53.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 109 components: - type: Transform pos: -15.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 110 components: - type: Transform pos: 71.5,38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 111 components: - type: Transform pos: -42.5,37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 112 components: - type: Transform pos: 51.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 113 components: - type: Transform pos: 46.5,-53.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 114 components: - type: Transform pos: 11.5,-59.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Airlock entities: - uid: 115 @@ -12608,7 +12389,7 @@ entities: pos: 19.5,16.5 parent: 2 - type: Door - secondsUntilStateChange: -25577.016 + secondsUntilStateChange: -25630.516 state: Opening - uid: 156 components: @@ -14425,7 +14206,7 @@ entities: pos: 51.5,-3.5 parent: 2 - type: Door - secondsUntilStateChange: -24390.834 + secondsUntilStateChange: -24444.334 state: Opening - uid: 458 components: @@ -14434,7 +14215,7 @@ entities: pos: 52.5,-3.5 parent: 2 - type: Door - secondsUntilStateChange: -24389.617 + secondsUntilStateChange: -24443.117 state: Opening - uid: 459 components: @@ -22730,22 +22511,16 @@ entities: - type: Transform pos: -49.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 1974 components: - type: Transform pos: -49.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 1975 components: - type: Transform pos: 10.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Basketball entities: - uid: 1976 @@ -24013,67 +23788,59 @@ entities: - type: Transform pos: -8.120271,14.578207 parent: 2 -- proto: BookDetective +- proto: BookRandom entities: - - uid: 2152 + - uid: 2158 components: - type: Transform - pos: 8.262031,-12.4473095 + pos: 40.523384,18.611706 parent: 2 - - uid: 2153 + - uid: 2159 components: - type: Transform - pos: 40.304634,21.43983 + pos: 38.492134,18.674206 parent: 2 -- proto: BookEscalation - entities: - - uid: 2154 + - uid: 2160 components: - type: Transform - pos: 9.419705,-6.507422 + pos: 38.429634,21.580456 parent: 2 -- proto: BookEscalationSecurity - entities: - - uid: 2155 + - uid: 2161 components: - type: Transform - pos: 15.607252,21.663286 + pos: -33.495968,-67.45002 parent: 2 -- proto: BookFishing +- proto: BookRandomStory entities: - - uid: 2156 + - uid: 2152 components: - type: Transform - pos: 40.53901,21.517956 + pos: 8.262031,-12.4473095 parent: 2 -- proto: BookGnominomicon - entities: - - uid: 2157 + - uid: 2153 components: - type: Transform - pos: 8.605781,-12.4316845 + pos: 40.304634,21.43983 parent: 2 -- proto: BookRandom - entities: - - uid: 2158 + - uid: 2154 components: - type: Transform - pos: 40.523384,18.611706 + pos: 9.419705,-6.507422 parent: 2 - - uid: 2159 + - uid: 2155 components: - type: Transform - pos: 38.492134,18.674206 + pos: 15.607252,21.663286 parent: 2 - - uid: 2160 + - uid: 2156 components: - type: Transform - pos: 38.429634,21.580456 + pos: 40.53901,21.517956 parent: 2 - - uid: 2161 + - uid: 2157 components: - type: Transform - pos: -33.495968,-67.45002 + pos: 8.605781,-12.4316845 parent: 2 - proto: Bookshelf entities: @@ -64288,36 +64055,26 @@ entities: - type: Transform pos: -40.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10166 components: - type: Transform pos: -50.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10167 components: - type: Transform pos: -52.5,-62.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10168 components: - type: Transform pos: -76.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10169 components: - type: Transform pos: 46.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Carpet entities: - uid: 10170 @@ -76274,23 +76031,6 @@ entities: - type: Transform pos: -9.476166,-48.27978 parent: 2 -- proto: chem_master - entities: - - uid: 12354 - components: - - type: Transform - pos: 2.5,-45.5 - parent: 2 - - uid: 12355 - components: - - type: Transform - pos: 2.5,-47.5 - parent: 2 - - uid: 12356 - components: - - type: Transform - pos: 2.5,-53.5 - parent: 2 - proto: ChemDispenser entities: - uid: 12357 @@ -76315,6 +76055,23 @@ entities: - type: Transform pos: 5.5,-50.5 parent: 2 +- proto: ChemMaster + entities: + - uid: 12354 + components: + - type: Transform + pos: 2.5,-45.5 + parent: 2 + - uid: 12355 + components: + - type: Transform + pos: 2.5,-47.5 + parent: 2 + - uid: 12356 + components: + - type: Transform + pos: 2.5,-53.5 + parent: 2 - proto: ChessBoard entities: - uid: 12361 @@ -79114,14 +78871,6 @@ entities: - type: Transform pos: 31.51696,-61.276703 parent: 2 -- proto: ClothingHeadHatHairflower - entities: - - uid: 12569 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 12.635506,-36.53619 - parent: 2 - proto: ClothingHeadHatHardhatOrange entities: - uid: 12570 @@ -79278,6 +79027,13 @@ entities: - type: Transform pos: -27.578125,55.49253 parent: 2 +- proto: ClothingHeadHelmetBasic + entities: + - uid: 12597 + components: + - type: Transform + pos: -31.458502,-43.474 + parent: 2 - proto: ClothingHeadHelmetCosmonaut entities: - uid: 12594 @@ -79297,13 +79053,6 @@ entities: - type: Transform pos: -71.04211,-26.39878 parent: 2 -- proto: ClothingHeadHelmetScaf - entities: - - uid: 12597 - components: - - type: Transform - pos: -31.458502,-43.474 - parent: 2 - proto: ClothingHeadHelmetTemplar entities: - uid: 12598 @@ -80564,6 +80313,7 @@ entities: - uid: 12798 components: - type: Transform + rot: 1.5707963267948966 rad pos: 60.5,-53.5 parent: 2 - uid: 12799 @@ -80700,6 +80450,14 @@ entities: - type: Transform pos: 74.5,-31.5 parent: 2 +- proto: ComputerRoboticsControl + entities: + - uid: 31807 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 60.5,-54.5 + parent: 2 - proto: ComputerSalvageExpedition entities: - uid: 12821 @@ -82802,15 +82560,11 @@ entities: - type: Transform pos: 3.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 13045 components: - type: Transform pos: 3.5,-60.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: CryoxadoneBeakerSmall entities: - uid: 13046 @@ -93759,8 +93513,6 @@ entities: - 15249 - 15247 - 15096 - - type: AtmosDevice - joinedGrid: 2 - uid: 14896 components: - type: Transform @@ -93780,8 +93532,6 @@ entities: - 850 - 15377 - 15376 - - type: AtmosDevice - joinedGrid: 2 - uid: 14897 components: - type: Transform @@ -93798,8 +93548,6 @@ entities: - 15388 - 15366 - 851 - - type: AtmosDevice - joinedGrid: 2 - uid: 14898 components: - type: Transform @@ -93816,8 +93564,6 @@ entities: - 15062 - 15308 - 15309 - - type: AtmosDevice - joinedGrid: 2 - uid: 14899 components: - type: Transform @@ -93839,8 +93585,6 @@ entities: - 15260 - 15329 - 15255 - - type: AtmosDevice - joinedGrid: 2 - uid: 14900 components: - type: Transform @@ -93857,8 +93601,6 @@ entities: - 15235 - 15350 - 15352 - - type: AtmosDevice - joinedGrid: 2 - uid: 14901 components: - type: Transform @@ -93877,8 +93619,6 @@ entities: - 15371 - 15372 - 15320 - - type: AtmosDevice - joinedGrid: 2 - uid: 14902 components: - type: Transform @@ -93894,8 +93634,6 @@ entities: - 15267 - 15364 - 15365 - - type: AtmosDevice - joinedGrid: 2 - uid: 14903 components: - type: Transform @@ -93908,8 +93646,6 @@ entities: - 15061 - 15062 - 909 - - type: AtmosDevice - joinedGrid: 2 - uid: 14904 components: - type: Transform @@ -93926,8 +93662,6 @@ entities: - 15355 - 15312 - 15063 - - type: AtmosDevice - joinedGrid: 2 - uid: 14905 components: - type: Transform @@ -93944,8 +93678,6 @@ entities: - 15013 - 15203 - 833 - - type: AtmosDevice - joinedGrid: 2 - uid: 14906 components: - type: Transform @@ -93960,8 +93692,6 @@ entities: - 15383 - 15382 - 852 - - type: AtmosDevice - joinedGrid: 2 - uid: 14907 components: - type: Transform @@ -93975,8 +93705,6 @@ entities: - 15262 - 15025 - 15024 - - type: AtmosDevice - joinedGrid: 2 - uid: 14908 components: - type: Transform @@ -94001,8 +93729,6 @@ entities: - 15151 - 15016 - 831 - - type: AtmosDevice - joinedGrid: 2 - uid: 14909 components: - type: Transform @@ -94026,8 +93752,6 @@ entities: - 15195 - 15161 - 830 - - type: AtmosDevice - joinedGrid: 2 - uid: 14910 components: - type: Transform @@ -94048,8 +93772,6 @@ entities: - 15340 - 15341 - 15007 - - type: AtmosDevice - joinedGrid: 2 - uid: 14911 components: - type: Transform @@ -94063,8 +93785,6 @@ entities: - 15346 - 15250 - 840 - - type: AtmosDevice - joinedGrid: 2 - uid: 14912 components: - type: Transform @@ -94083,8 +93803,6 @@ entities: - 834 - 15220 - 15216 - - type: AtmosDevice - joinedGrid: 2 - uid: 14913 components: - type: Transform @@ -94100,8 +93818,6 @@ entities: - 15306 - 15307 - 15061 - - type: AtmosDevice - joinedGrid: 2 - uid: 14914 components: - type: Transform @@ -94126,8 +93842,6 @@ entities: - 15242 - 15243 - 15244 - - type: AtmosDevice - joinedGrid: 2 - uid: 14915 components: - type: Transform @@ -94149,8 +93863,6 @@ entities: - 15336 - 15337 - 15338 - - type: AtmosDevice - joinedGrid: 2 - uid: 14916 components: - type: Transform @@ -94167,8 +93879,6 @@ entities: - 15144 - 15289 - 15290 - - type: AtmosDevice - joinedGrid: 2 - uid: 14917 components: - type: Transform @@ -94190,8 +93900,6 @@ entities: - 15242 - 15243 - 15244 - - type: AtmosDevice - joinedGrid: 2 - uid: 14918 components: - type: Transform @@ -94210,8 +93918,6 @@ entities: - 15166 - 15167 - 871 - - type: AtmosDevice - joinedGrid: 2 - uid: 14919 components: - type: Transform @@ -94229,8 +93935,6 @@ entities: - 15140 - 15229 - 15160 - - type: AtmosDevice - joinedGrid: 2 - uid: 14920 components: - type: Transform @@ -94251,8 +93955,6 @@ entities: - 15236 - 15222 - 15164 - - type: AtmosDevice - joinedGrid: 2 - uid: 14921 components: - type: Transform @@ -94272,8 +93974,6 @@ entities: - 15261 - 15230 - 14977 - - type: AtmosDevice - joinedGrid: 2 - uid: 14922 components: - type: Transform @@ -94292,8 +93992,6 @@ entities: - 15227 - 15155 - 15176 - - type: AtmosDevice - joinedGrid: 2 - uid: 14923 components: - type: Transform @@ -94313,8 +94011,6 @@ entities: - 15214 - 15334 - 15187 - - type: AtmosDevice - joinedGrid: 2 - uid: 14924 components: - type: Transform @@ -94330,8 +94026,6 @@ entities: - 15256 - 15353 - 15275 - - type: AtmosDevice - joinedGrid: 2 - uid: 14925 components: - type: Transform @@ -94352,8 +94046,6 @@ entities: - 15258 - 15400 - 15399 - - type: AtmosDevice - joinedGrid: 2 - uid: 14926 components: - type: Transform @@ -94370,8 +94062,6 @@ entities: - 15219 - 15177 - 15449 - - type: AtmosDevice - joinedGrid: 2 - uid: 14927 components: - type: Transform @@ -94389,8 +94079,6 @@ entities: - 15323 - 15324 - 15328 - - type: AtmosDevice - joinedGrid: 2 - uid: 14928 components: - type: Transform @@ -94404,8 +94092,6 @@ entities: - 15323 - 15324 - 15328 - - type: AtmosDevice - joinedGrid: 2 - uid: 14929 components: - type: Transform @@ -94419,8 +94105,6 @@ entities: - 15301 - 15039 - 15040 - - type: AtmosDevice - joinedGrid: 2 - uid: 14930 components: - type: Transform @@ -94434,8 +94118,6 @@ entities: - 15036 - 15301 - 15302 - - type: AtmosDevice - joinedGrid: 2 - uid: 14931 components: - type: Transform @@ -94453,8 +94135,6 @@ entities: - 15030 - 15035 - 15034 - - type: AtmosDevice - joinedGrid: 2 - uid: 14932 components: - type: Transform @@ -94473,8 +94153,6 @@ entities: - 15273 - 15362 - 15363 - - type: AtmosDevice - joinedGrid: 2 - uid: 14933 components: - type: Transform @@ -94492,8 +94170,6 @@ entities: - 15186 - 15171 - 15200 - - type: AtmosDevice - joinedGrid: 2 - uid: 14934 components: - type: Transform @@ -94505,8 +94181,6 @@ entities: - 15354 - 15234 - 15191 - - type: AtmosDevice - joinedGrid: 2 - uid: 14935 components: - type: Transform @@ -94526,8 +94200,6 @@ entities: - 842 - 15400 - 15399 - - type: AtmosDevice - joinedGrid: 2 - uid: 14936 components: - type: Transform @@ -94540,8 +94212,6 @@ entities: - 15354 - 15138 - 15074 - - type: AtmosDevice - joinedGrid: 2 - uid: 14937 components: - type: Transform @@ -94559,8 +94229,6 @@ entities: - 15024 - 15025 - 896 - - type: AtmosDevice - joinedGrid: 2 - uid: 14938 components: - type: Transform @@ -94571,8 +94239,6 @@ entities: - 898 - 15432 - 15431 - - type: AtmosDevice - joinedGrid: 2 - uid: 14939 components: - type: Transform @@ -94598,8 +94264,6 @@ entities: - 15386 - 15387 - 15060 - - type: AtmosDevice - joinedGrid: 2 - uid: 14940 components: - type: Transform @@ -94617,8 +94281,6 @@ entities: - 15383 - 15384 - 15395 - - type: AtmosDevice - joinedGrid: 2 - uid: 14941 components: - type: Transform @@ -94632,8 +94294,6 @@ entities: - 15090 - 15092 - 15091 - - type: AtmosDevice - joinedGrid: 2 - uid: 14942 components: - type: Transform @@ -94647,8 +94307,6 @@ entities: - 15128 - 15023 - 892 - - type: AtmosDevice - joinedGrid: 2 - uid: 14943 components: - type: Transform @@ -94670,8 +94328,6 @@ entities: - 15279 - 15409 - 15410 - - type: AtmosDevice - joinedGrid: 2 - uid: 14944 components: - type: Transform @@ -94688,8 +94344,6 @@ entities: - 15006 - 14999 - 15011 - - type: AtmosDevice - joinedGrid: 2 - uid: 14945 components: - type: Transform @@ -94703,8 +94357,6 @@ entities: - 15093 - 15406 - 15405 - - type: AtmosDevice - joinedGrid: 2 - uid: 14946 components: - type: Transform @@ -94719,8 +94371,6 @@ entities: - 15421 - 15420 - 15419 - - type: AtmosDevice - joinedGrid: 2 - uid: 14947 components: - type: Transform @@ -94731,8 +94381,6 @@ entities: devices: - 15418 - 915 - - type: AtmosDevice - joinedGrid: 2 - uid: 14948 components: - type: Transform @@ -94746,8 +94394,6 @@ entities: - 15419 - 15420 - 15421 - - type: AtmosDevice - joinedGrid: 2 - uid: 14949 components: - type: Transform @@ -94763,8 +94409,6 @@ entities: - 15423 - 15424 - 846 - - type: AtmosDevice - joinedGrid: 2 - uid: 14950 components: - type: Transform @@ -94780,8 +94424,6 @@ entities: - 15430 - 15429 - 15428 - - type: AtmosDevice - joinedGrid: 2 - uid: 14951 components: - type: Transform @@ -94794,8 +94436,6 @@ entities: - 15428 - 15429 - 15430 - - type: AtmosDevice - joinedGrid: 2 - uid: 14952 components: - type: Transform @@ -94808,8 +94448,6 @@ entities: - 15345 - 809 - 15251 - - type: AtmosDevice - joinedGrid: 2 - uid: 14953 components: - type: Transform @@ -94823,8 +94461,6 @@ entities: - 15029 - 15054 - 15107 - - type: AtmosDevice - joinedGrid: 2 - uid: 14954 components: - type: Transform @@ -94840,8 +94476,6 @@ entities: - 15220 - 15108 - 15029 - - type: AtmosDevice - joinedGrid: 2 - uid: 14955 components: - type: Transform @@ -94854,8 +94488,6 @@ entities: - 15438 - 15109 - 15113 - - type: AtmosDevice - joinedGrid: 2 - uid: 14956 components: - type: Transform @@ -94868,8 +94500,6 @@ entities: - 15439 - 15441 - 15442 - - type: AtmosDevice - joinedGrid: 2 - uid: 14957 components: - type: Transform @@ -94881,8 +94511,6 @@ entities: - 923 - 15441 - 15440 - - type: AtmosDevice - joinedGrid: 2 - uid: 14958 components: - type: Transform @@ -94894,8 +94522,6 @@ entities: - 925 - 15443 - 15444 - - type: AtmosDevice - joinedGrid: 2 - uid: 14959 components: - type: Transform @@ -94908,8 +94534,6 @@ entities: - 15446 - 15448 - 926 - - type: AtmosDevice - joinedGrid: 2 - uid: 14960 components: - type: Transform @@ -94924,8 +94548,6 @@ entities: - 15133 - 15134 - 15132 - - type: AtmosDevice - joinedGrid: 2 - uid: 14961 components: - type: Transform @@ -94943,8 +94565,6 @@ entities: - 15131 - 15451 - 15452 - - type: AtmosDevice - joinedGrid: 2 - uid: 14962 components: - type: Transform @@ -94969,8 +94589,6 @@ entities: - 14990 - 14989 - 14988 - - type: AtmosDevice - joinedGrid: 2 - uid: 14963 components: - type: Transform @@ -94983,8 +94601,6 @@ entities: - 15450 - 15135 - 931 - - type: AtmosDevice - joinedGrid: 2 - uid: 14964 components: - type: Transform @@ -94999,8 +94615,6 @@ entities: - 15325 - 15450 - 15130 - - type: AtmosDevice - joinedGrid: 2 - uid: 14965 components: - type: Transform @@ -95012,8 +94626,6 @@ entities: - 15118 - 810 - 15072 - - type: AtmosDevice - joinedGrid: 2 - proto: FireAxeCabinetFilled entities: - uid: 14966 @@ -98452,6 +98064,14 @@ entities: - type: Transform pos: 49.46722,33.501156 parent: 2 +- proto: FoodPoppy + entities: + - uid: 12569 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.635506,-36.53619 + parent: 2 - proto: FoodRiceBoiled entities: - uid: 15561 @@ -98636,22 +98256,16 @@ entities: - type: Transform pos: -44.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15588 components: - type: Transform pos: -44.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15589 components: - type: Transform pos: -44.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15590 @@ -98659,29 +98273,21 @@ entities: - type: Transform pos: -44.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15591 components: - type: Transform pos: -44.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15592 components: - type: Transform pos: -44.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15593 components: - type: Transform pos: -44.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMinerCarbonDioxide entities: - uid: 15594 @@ -98689,8 +98295,6 @@ entities: - type: Transform pos: -49.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMinerNitrogenStationLarge entities: - uid: 15595 @@ -98698,8 +98302,6 @@ entities: - type: Transform pos: -49.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMinerOxygenStationLarge entities: - uid: 15596 @@ -98707,8 +98309,6 @@ entities: - type: Transform pos: -49.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMinerWaterVapor entities: - uid: 15597 @@ -98716,8 +98316,6 @@ entities: - type: Transform pos: -49.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMixerFlipped entities: - uid: 15598 @@ -98728,8 +98326,6 @@ entities: - type: GasMixer inletTwoConcentration: 0 inletOneConcentration: 1 - - type: AtmosDevice - joinedGrid: 2 - uid: 15599 components: - type: Transform @@ -98738,8 +98334,6 @@ entities: - type: GasMixer inletTwoConcentration: 1 inletOneConcentration: 0 - - type: AtmosDevice - joinedGrid: 2 - uid: 15600 components: - type: Transform @@ -98749,8 +98343,6 @@ entities: - type: GasMixer inletTwoConcentration: 0.22000003 inletOneConcentration: 0.78 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 15601 @@ -98761,8 +98353,6 @@ entities: - type: GasMixer inletTwoConcentration: 0 inletOneConcentration: 1 - - type: AtmosDevice - joinedGrid: 2 - uid: 15602 components: - type: Transform @@ -98771,8 +98361,6 @@ entities: - type: GasMixer inletTwoConcentration: 0 inletOneConcentration: 1 - - type: AtmosDevice - joinedGrid: 2 - uid: 15603 components: - type: Transform @@ -98781,8 +98369,6 @@ entities: - type: GasMixer inletTwoConcentration: 0 inletOneConcentration: 1 - - type: AtmosDevice - joinedGrid: 2 - uid: 15604 components: - type: Transform @@ -98791,8 +98377,6 @@ entities: - type: GasMixer inletTwoConcentration: 0 inletOneConcentration: 1 - - type: AtmosDevice - joinedGrid: 2 - proto: GasOutletInjector entities: - uid: 15605 @@ -98801,63 +98385,47 @@ entities: rot: 1.5707963267948966 rad pos: -48.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15606 components: - type: Transform rot: 1.5707963267948966 rad pos: -48.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15607 components: - type: Transform rot: 1.5707963267948966 rad pos: -48.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15608 components: - type: Transform rot: 1.5707963267948966 rad pos: -48.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15609 components: - type: Transform rot: 1.5707963267948966 rad pos: -48.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15610 components: - type: Transform rot: 1.5707963267948966 rad pos: -48.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15611 components: - type: Transform rot: 1.5707963267948966 rad pos: -48.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15612 components: - type: Transform pos: -42.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasPassiveVent entities: - uid: 15613 @@ -98865,30 +98433,22 @@ entities: - type: Transform pos: -44.5,-36.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15614 components: - type: Transform rot: -1.5707963267948966 rad pos: -63.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15615 components: - type: Transform pos: -50.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15616 components: - type: Transform pos: 73.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15617 @@ -98897,8 +98457,6 @@ entities: rot: 3.141592653589793 rad pos: 49.5,-63.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15618 @@ -98906,67 +98464,49 @@ entities: - type: Transform pos: -50.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15619 components: - type: Transform pos: -50.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15620 components: - type: Transform pos: -50.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15621 components: - type: Transform pos: -50.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15622 components: - type: Transform pos: -50.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15623 components: - type: Transform pos: -50.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15624 components: - type: Transform rot: 3.141592653589793 rad pos: -38.5,-60.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15625 components: - type: Transform rot: 3.141592653589793 rad pos: 70.5,32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15626 components: - type: Transform rot: 3.141592653589793 rad pos: 3.5,64.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15627 @@ -98975,8 +98515,6 @@ entities: rot: 3.141592653589793 rad pos: 2.5,63.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15628 @@ -98985,8 +98523,6 @@ entities: rot: 3.141592653589793 rad pos: -5.5,63.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15629 @@ -98995,8 +98531,6 @@ entities: rot: 3.141592653589793 rad pos: -6.5,64.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15630 @@ -99005,8 +98539,6 @@ entities: rot: 1.5707963267948966 rad pos: -0.5,69.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15631 @@ -99015,8 +98547,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,69.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15632 @@ -99025,8 +98555,6 @@ entities: rot: 3.141592653589793 rad pos: 66.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15633 @@ -99034,8 +98562,6 @@ entities: - type: Transform pos: 72.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#999000FF' - uid: 15634 @@ -99044,15 +98570,11 @@ entities: rot: 3.141592653589793 rad pos: -55.5,-63.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15635 components: - type: Transform pos: 71.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#9755CCFF' - uid: 15636 @@ -99061,8 +98583,6 @@ entities: rot: 1.5707963267948966 rad pos: 68.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#999000FF' - uid: 15637 @@ -99071,16 +98591,12 @@ entities: rot: 3.141592653589793 rad pos: 55.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15638 components: - type: Transform rot: 1.5707963267948966 rad pos: 68.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#9755CCFF' - uid: 15639 @@ -99089,16 +98605,12 @@ entities: rot: -1.5707963267948966 rad pos: -44.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 15640 components: - type: Transform rot: 1.5707963267948966 rad pos: -76.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15641 @@ -99107,8 +98619,6 @@ entities: rot: 1.5707963267948966 rad pos: -76.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 15642 @@ -99117,8 +98627,6 @@ entities: rot: 3.141592653589793 rad pos: 40.5,58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 15643 @@ -99127,8 +98635,6 @@ entities: rot: 1.5707963267948966 rad pos: 1.5,13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasPipeBend entities: - uid: 15644 @@ -124995,9 +124501,13 @@ entities: - uid: 19035 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -74.5,-41.5 parent: 2 + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 19036 components: - type: Transform @@ -129953,24 +129463,18 @@ entities: rot: 3.141592653589793 rad pos: 2.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19679 components: - type: Transform rot: -1.5707963267948966 rad pos: -66.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19680 components: - type: Transform rot: -1.5707963267948966 rad pos: -66.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19681 @@ -129979,8 +129483,6 @@ entities: rot: -1.5707963267948966 rad pos: -39.5,-49.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19682 @@ -129989,8 +129491,6 @@ entities: rot: -1.5707963267948966 rad pos: -39.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19683 @@ -129999,8 +129499,6 @@ entities: rot: -1.5707963267948966 rad pos: -39.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19684 @@ -130009,8 +129507,6 @@ entities: rot: 1.5707963267948966 rad pos: -38.5,-49.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19685 @@ -130019,8 +129515,6 @@ entities: rot: 1.5707963267948966 rad pos: -38.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19686 @@ -130029,8 +129523,6 @@ entities: rot: 1.5707963267948966 rad pos: -38.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19687 @@ -130039,8 +129531,6 @@ entities: rot: -1.5707963267948966 rad pos: -33.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19688 @@ -130049,8 +129539,6 @@ entities: rot: -1.5707963267948966 rad pos: -33.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19689 @@ -130059,8 +129547,6 @@ entities: rot: -1.5707963267948966 rad pos: -33.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19690 @@ -130068,16 +129554,12 @@ entities: - type: Transform pos: 70.5,38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19691 components: - type: Transform rot: -1.5707963267948966 rad pos: 72.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#9755CCFF' - uid: 19692 @@ -130086,8 +129568,6 @@ entities: rot: -1.5707963267948966 rad pos: 72.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#999000FF' - uid: 19693 @@ -130096,8 +129576,6 @@ entities: rot: 3.141592653589793 rad pos: 71.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#9755CCFF' - uid: 19694 @@ -130106,8 +129584,6 @@ entities: rot: 3.141592653589793 rad pos: 72.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#999000FF' - uid: 19695 @@ -130116,39 +129592,29 @@ entities: rot: 1.5707963267948966 rad pos: -57.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19696 components: - type: Transform pos: -54.5,-59.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19697 components: - type: Transform rot: 3.141592653589793 rad pos: -48.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19698 components: - type: Transform rot: -1.5707963267948966 rad pos: -66.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19699 components: - type: Transform rot: 1.5707963267948966 rad pos: -72.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19700 @@ -130157,24 +129623,18 @@ entities: rot: -1.5707963267948966 rad pos: 11.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19701 components: - type: Transform rot: -1.5707963267948966 rad pos: 6.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19702 components: - type: Transform rot: -1.5707963267948966 rad pos: 6.5,-61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasPressurePump entities: - uid: 19703 @@ -130183,16 +129643,12 @@ entities: rot: 3.141592653589793 rad pos: 10.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19704 components: - type: Transform rot: -1.5707963267948966 rad pos: -67.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19705 @@ -130201,15 +129657,11 @@ entities: rot: 1.5707963267948966 rad pos: -73.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19706 components: - type: Transform pos: -70.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19707 @@ -130217,8 +129669,6 @@ entities: - type: Transform pos: -68.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19708 @@ -130227,64 +129677,48 @@ entities: rot: 1.5707963267948966 rad pos: -44.5,-53.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19709 components: - type: Transform rot: 1.5707963267948966 rad pos: -44.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19710 components: - type: Transform rot: 1.5707963267948966 rad pos: -44.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19711 components: - type: Transform rot: 1.5707963267948966 rad pos: -44.5,-49.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19712 components: - type: Transform rot: 1.5707963267948966 rad pos: -44.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19713 components: - type: Transform rot: 1.5707963267948966 rad pos: -44.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19714 components: - type: Transform rot: 1.5707963267948966 rad pos: -44.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19715 components: - type: Transform rot: 1.5707963267948966 rad pos: -39.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19716 @@ -130292,8 +129726,6 @@ entities: - type: Transform pos: -40.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 19717 @@ -130302,15 +129734,11 @@ entities: rot: 3.141592653589793 rad pos: -42.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19718 components: - type: Transform pos: -37.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19719 @@ -130318,8 +129746,6 @@ entities: - type: Transform pos: -38.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19720 @@ -130328,8 +129754,6 @@ entities: rot: 3.141592653589793 rad pos: 72.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#999000FF' - uid: 19721 @@ -130337,8 +129761,6 @@ entities: - type: Transform pos: 71.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#9755CCFF' - uid: 19722 @@ -130346,16 +129768,12 @@ entities: - type: Transform pos: -56.5,-59.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19723 components: - type: Transform rot: -1.5707963267948966 rad pos: 70.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#999000FF' - uid: 19724 @@ -130364,16 +129782,12 @@ entities: rot: 3.141592653589793 rad pos: -54.5,-60.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19725 components: - type: Transform rot: 1.5707963267948966 rad pos: 70.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#9755CCFF' - uid: 19726 @@ -130381,16 +129795,12 @@ entities: - type: Transform pos: -48.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19727 components: - type: Transform rot: 3.141592653589793 rad pos: -70.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19728 @@ -130399,8 +129809,6 @@ entities: rot: -1.5707963267948966 rad pos: -67.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19729 @@ -130408,8 +129816,6 @@ entities: - type: Transform pos: 2.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19730 @@ -130418,8 +129824,6 @@ entities: rot: 3.141592653589793 rad pos: 2.5,-62.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19731 @@ -130427,8 +129831,6 @@ entities: - type: Transform pos: 4.5,-62.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19732 @@ -130437,8 +129839,6 @@ entities: rot: 3.141592653589793 rad pos: 4.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19733 @@ -130447,16 +129847,12 @@ entities: rot: -1.5707963267948966 rad pos: 5.5,-61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19734 components: - type: Transform rot: -1.5707963267948966 rad pos: 5.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasRecyclerMachineCircuitboard entities: - uid: 19735 @@ -130472,8 +129868,6 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,-61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19737 components: - type: Transform @@ -130481,22 +129875,16 @@ entities: parent: 2 - type: AtmosPipeColor color: '#0055CCFF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19738 components: - type: Transform pos: 2.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19739 components: - type: Transform pos: -33.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19740 components: - type: Transform @@ -130504,8 +129892,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#990000FF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19741 components: - type: Transform @@ -130513,8 +129899,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#990000FF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19742 components: - type: Transform @@ -130522,8 +129906,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#990000FF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19743 components: - type: Transform @@ -130531,15 +129913,11 @@ entities: parent: 2 - type: AtmosPipeColor color: '#990000FF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19744 components: - type: Transform pos: 53.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19745 components: - type: Transform @@ -130547,8 +129925,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#0055CCFF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19746 components: - type: Transform @@ -130556,8 +129932,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#0055CCFF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19747 components: - type: Transform @@ -130565,16 +129939,12 @@ entities: parent: 2 - type: AtmosPipeColor color: '#0055CCFF' - - type: AtmosDevice - joinedGrid: 2 - uid: 19748 components: - type: Transform rot: 1.5707963267948966 rad pos: 0.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasThermoMachineHeater entities: - uid: 19749 @@ -130582,15 +129952,11 @@ entities: - type: Transform pos: -33.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19750 components: - type: Transform pos: -57.5,-59.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasValve entities: - uid: 19751 @@ -130600,8 +129966,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - uid: 19752 components: - type: Transform @@ -130610,8 +129974,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19753 @@ -130622,8 +129984,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19754 @@ -130634,8 +129994,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19755 @@ -130644,8 +130002,6 @@ entities: rot: -1.5707963267948966 rad pos: -43.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19756 @@ -130655,8 +130011,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19757 @@ -130667,8 +130021,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19758 @@ -130678,8 +130030,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#947507FF' - uid: 19759 @@ -130689,8 +130039,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19760 @@ -130701,8 +130049,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19761 @@ -130713,8 +130059,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19762 @@ -130724,8 +130068,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - uid: 19763 components: - type: Transform @@ -130734,8 +130076,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19764 @@ -130746,8 +130086,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - proto: GasVentPump @@ -130757,8 +130095,6 @@ entities: - type: Transform pos: -18.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19766 @@ -130766,8 +130102,6 @@ entities: - type: Transform pos: -23.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19767 @@ -130776,8 +130110,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19768 @@ -130786,8 +130118,6 @@ entities: rot: 3.141592653589793 rad pos: 18.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19769 @@ -130796,8 +130126,6 @@ entities: rot: 3.141592653589793 rad pos: -0.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19770 @@ -130806,8 +130134,6 @@ entities: rot: 3.141592653589793 rad pos: 1.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19771 @@ -130816,8 +130142,6 @@ entities: rot: -1.5707963267948966 rad pos: -70.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19772 @@ -130826,8 +130150,6 @@ entities: rot: 3.141592653589793 rad pos: -72.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19773 @@ -130836,8 +130158,6 @@ entities: rot: 1.5707963267948966 rad pos: -72.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19774 @@ -130846,8 +130166,6 @@ entities: rot: 1.5707963267948966 rad pos: -9.5,2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19775 @@ -130859,8 +130177,6 @@ entities: - type: DeviceNetwork deviceLists: - 100 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19776 @@ -130868,8 +130184,6 @@ entities: - type: Transform pos: 25.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19777 @@ -130878,8 +130192,6 @@ entities: rot: 1.5707963267948966 rad pos: -12.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19778 @@ -130888,8 +130200,6 @@ entities: rot: 3.141592653589793 rad pos: -23.5,-86.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19779 @@ -130897,8 +130207,6 @@ entities: - type: Transform pos: 2.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19780 @@ -130909,8 +130217,6 @@ entities: - type: DeviceNetwork deviceLists: - 97 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19781 @@ -130919,8 +130225,6 @@ entities: rot: -1.5707963267948966 rad pos: 6.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19782 @@ -130928,8 +130232,6 @@ entities: - type: Transform pos: 26.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19783 @@ -130938,8 +130240,6 @@ entities: rot: 1.5707963267948966 rad pos: 5.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19784 @@ -130948,8 +130248,6 @@ entities: rot: -1.5707963267948966 rad pos: -4.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19785 @@ -130958,8 +130256,6 @@ entities: rot: -1.5707963267948966 rad pos: 32.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19786 @@ -130968,8 +130264,6 @@ entities: rot: 1.5707963267948966 rad pos: 16.5,13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19787 @@ -130978,8 +130272,6 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19788 @@ -130987,8 +130279,6 @@ entities: - type: Transform pos: 10.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19789 @@ -130997,8 +130287,6 @@ entities: rot: -1.5707963267948966 rad pos: 29.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19790 @@ -131007,8 +130295,6 @@ entities: rot: 3.141592653589793 rad pos: 18.5,3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19791 @@ -131017,8 +130303,6 @@ entities: rot: 1.5707963267948966 rad pos: 8.5,1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19792 @@ -131027,8 +130311,6 @@ entities: rot: 1.5707963267948966 rad pos: 8.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19793 @@ -131036,8 +130318,6 @@ entities: - type: Transform pos: 22.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19794 @@ -131046,8 +130326,6 @@ entities: rot: 1.5707963267948966 rad pos: -0.5,17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19795 @@ -131056,8 +130334,6 @@ entities: rot: -1.5707963267948966 rad pos: -10.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19796 @@ -131066,8 +130342,6 @@ entities: rot: -1.5707963267948966 rad pos: -9.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19797 @@ -131079,8 +130353,6 @@ entities: - type: DeviceNetwork deviceLists: - 102 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19798 @@ -131089,8 +130361,6 @@ entities: rot: -1.5707963267948966 rad pos: 35.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19799 @@ -131099,8 +130369,6 @@ entities: rot: 1.5707963267948966 rad pos: -30.5,-80.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19800 @@ -131109,8 +130377,6 @@ entities: rot: 3.141592653589793 rad pos: 36.5,7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19801 @@ -131119,8 +130385,6 @@ entities: rot: 3.141592653589793 rad pos: 11.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19802 @@ -131129,8 +130393,6 @@ entities: rot: 1.5707963267948966 rad pos: 9.5,3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19803 @@ -131138,8 +130400,6 @@ entities: - type: Transform pos: 20.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19804 @@ -131147,8 +130407,6 @@ entities: - type: Transform pos: 5.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19805 @@ -131157,8 +130415,6 @@ entities: rot: 3.141592653589793 rad pos: 0.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19806 @@ -131166,8 +130422,6 @@ entities: - type: Transform pos: -24.5,-79.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19807 @@ -131176,8 +130430,6 @@ entities: rot: 3.141592653589793 rad pos: -18.5,-78.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19808 @@ -131186,8 +130438,6 @@ entities: rot: -1.5707963267948966 rad pos: 20.5,18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19809 @@ -131195,8 +130445,6 @@ entities: - type: Transform pos: 17.5,20.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19810 @@ -131205,8 +130453,6 @@ entities: rot: 1.5707963267948966 rad pos: 33.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19811 @@ -131214,8 +130460,6 @@ entities: - type: Transform pos: -4.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19812 @@ -131224,8 +130468,6 @@ entities: rot: 3.141592653589793 rad pos: -4.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19813 @@ -131233,8 +130475,6 @@ entities: - type: Transform pos: -29.5,-70.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19814 @@ -131243,8 +130483,6 @@ entities: rot: 1.5707963267948966 rad pos: -23.5,29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19815 @@ -131252,8 +130490,6 @@ entities: - type: Transform pos: 47.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19816 @@ -131262,8 +130498,6 @@ entities: rot: 1.5707963267948966 rad pos: 27.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19817 @@ -131271,8 +130505,6 @@ entities: - type: Transform pos: -7.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19818 @@ -131281,8 +130513,6 @@ entities: rot: -1.5707963267948966 rad pos: 15.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19819 @@ -131291,8 +130521,6 @@ entities: rot: 1.5707963267948966 rad pos: 17.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19820 @@ -131300,8 +130528,6 @@ entities: - type: Transform pos: 30.5,-17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19821 @@ -131309,8 +130535,6 @@ entities: - type: Transform pos: -18.5,33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19822 @@ -131319,8 +130543,6 @@ entities: rot: 3.141592653589793 rad pos: 36.5,4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19823 @@ -131329,8 +130551,6 @@ entities: rot: -1.5707963267948966 rad pos: 27.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19824 @@ -131339,8 +130559,6 @@ entities: rot: 3.141592653589793 rad pos: -24.5,-89.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19825 @@ -131348,8 +130566,6 @@ entities: - type: Transform pos: 31.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19826 @@ -131358,8 +130574,6 @@ entities: rot: -1.5707963267948966 rad pos: 42.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19827 @@ -131368,8 +130582,6 @@ entities: rot: -1.5707963267948966 rad pos: -17.5,-72.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19828 @@ -131378,8 +130590,6 @@ entities: rot: 1.5707963267948966 rad pos: -19.5,-67.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19829 @@ -131388,8 +130598,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-88.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19830 @@ -131398,8 +130606,6 @@ entities: rot: -1.5707963267948966 rad pos: 35.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19831 @@ -131407,8 +130613,6 @@ entities: - type: Transform pos: -16.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19832 @@ -131416,8 +130620,6 @@ entities: - type: Transform pos: -11.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19833 @@ -131426,8 +130628,6 @@ entities: rot: -1.5707963267948966 rad pos: -0.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19834 @@ -131436,8 +130636,6 @@ entities: rot: 3.141592653589793 rad pos: 21.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19835 @@ -131445,8 +130643,6 @@ entities: - type: Transform pos: 30.5,28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19836 @@ -131454,8 +130650,6 @@ entities: - type: Transform pos: 45.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19837 @@ -131464,8 +130658,6 @@ entities: rot: -1.5707963267948966 rad pos: 61.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19838 @@ -131474,8 +130666,6 @@ entities: rot: -1.5707963267948966 rad pos: 52.5,13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19839 @@ -131484,8 +130674,6 @@ entities: rot: -1.5707963267948966 rad pos: 61.5,18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19840 @@ -131493,8 +130681,6 @@ entities: - type: Transform pos: 59.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19841 @@ -131502,8 +130688,6 @@ entities: - type: Transform pos: 56.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19842 @@ -131511,8 +130695,6 @@ entities: - type: Transform pos: 53.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19843 @@ -131520,8 +130702,6 @@ entities: - type: Transform pos: 50.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19844 @@ -131529,8 +130709,6 @@ entities: - type: Transform pos: 47.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19845 @@ -131539,8 +130717,6 @@ entities: rot: 3.141592653589793 rad pos: 47.5,13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19846 @@ -131549,8 +130725,6 @@ entities: rot: -1.5707963267948966 rad pos: 60.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19847 @@ -131558,8 +130732,6 @@ entities: - type: Transform pos: 39.5,20.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19848 @@ -131568,8 +130740,6 @@ entities: rot: 1.5707963267948966 rad pos: 34.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19849 @@ -131577,8 +130747,6 @@ entities: - type: Transform pos: 45.5,1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19850 @@ -131587,8 +130755,6 @@ entities: rot: -1.5707963267948966 rad pos: 57.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19851 @@ -131597,8 +130763,6 @@ entities: rot: 1.5707963267948966 rad pos: 43.5,-1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19852 @@ -131607,8 +130771,6 @@ entities: rot: 1.5707963267948966 rad pos: 36.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19853 @@ -131617,8 +130779,6 @@ entities: rot: 3.141592653589793 rad pos: 41.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19854 @@ -131627,8 +130787,6 @@ entities: rot: 1.5707963267948966 rad pos: 29.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19855 @@ -131637,8 +130795,6 @@ entities: rot: 1.5707963267948966 rad pos: 38.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19856 @@ -131647,8 +130803,6 @@ entities: rot: -1.5707963267948966 rad pos: 46.5,-1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19857 @@ -131657,8 +130811,6 @@ entities: rot: -1.5707963267948966 rad pos: 57.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19858 @@ -131667,8 +130819,6 @@ entities: rot: 3.141592653589793 rad pos: 49.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19859 @@ -131677,8 +130827,6 @@ entities: rot: 3.141592653589793 rad pos: 56.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19860 @@ -131687,8 +130835,6 @@ entities: rot: 3.141592653589793 rad pos: 44.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19861 @@ -131697,8 +130843,6 @@ entities: rot: 3.141592653589793 rad pos: 57.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19862 @@ -131707,8 +130851,6 @@ entities: rot: 3.141592653589793 rad pos: 61.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19863 @@ -131717,8 +130859,6 @@ entities: rot: 1.5707963267948966 rad pos: 59.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19864 @@ -131727,8 +130867,6 @@ entities: rot: -1.5707963267948966 rad pos: 62.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19865 @@ -131736,8 +130874,6 @@ entities: - type: Transform pos: 61.5,-2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19866 @@ -131746,8 +130882,6 @@ entities: rot: 3.141592653589793 rad pos: 60.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19867 @@ -131756,8 +130890,6 @@ entities: rot: 1.5707963267948966 rad pos: 44.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19868 @@ -131766,8 +130898,6 @@ entities: rot: -1.5707963267948966 rad pos: 51.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19869 @@ -131776,8 +130906,6 @@ entities: rot: 1.5707963267948966 rad pos: 25.5,-56.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19870 @@ -131786,8 +130914,6 @@ entities: rot: -1.5707963267948966 rad pos: 30.5,-56.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19871 @@ -131796,8 +130922,6 @@ entities: rot: -1.5707963267948966 rad pos: 30.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19872 @@ -131806,8 +130930,6 @@ entities: rot: 1.5707963267948966 rad pos: 28.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19873 @@ -131816,8 +130938,6 @@ entities: rot: -1.5707963267948966 rad pos: 33.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19874 @@ -131825,8 +130945,6 @@ entities: - type: Transform pos: 29.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19875 @@ -131835,8 +130953,6 @@ entities: rot: -1.5707963267948966 rad pos: 53.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19876 @@ -131844,8 +130960,6 @@ entities: - type: Transform pos: -13.5,2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19877 @@ -131854,8 +130968,6 @@ entities: rot: 1.5707963267948966 rad pos: -17.5,1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19878 @@ -131864,8 +130976,6 @@ entities: rot: 3.141592653589793 rad pos: -24.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19879 @@ -131873,8 +130983,6 @@ entities: - type: Transform pos: -28.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19880 @@ -131883,8 +130991,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19881 @@ -131893,8 +130999,6 @@ entities: rot: 3.141592653589793 rad pos: -24.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19882 @@ -131902,8 +131006,6 @@ entities: - type: Transform pos: 38.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19883 @@ -131912,8 +131014,6 @@ entities: rot: -1.5707963267948966 rad pos: 39.5,-63.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19884 @@ -131922,8 +131022,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19885 @@ -131932,8 +131030,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19886 @@ -131942,8 +131038,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19887 @@ -131952,8 +131046,6 @@ entities: rot: 1.5707963267948966 rad pos: 37.5,-71.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19888 @@ -131961,8 +131053,6 @@ entities: - type: Transform pos: -28.5,-16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19889 @@ -131971,8 +131061,6 @@ entities: rot: 1.5707963267948966 rad pos: -32.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19890 @@ -131981,8 +131069,6 @@ entities: rot: 1.5707963267948966 rad pos: -34.5,-15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19891 @@ -131991,8 +131077,6 @@ entities: rot: 3.141592653589793 rad pos: -36.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19892 @@ -132001,8 +131085,6 @@ entities: rot: 3.141592653589793 rad pos: -41.5,-16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19893 @@ -132011,8 +131093,6 @@ entities: rot: -1.5707963267948966 rad pos: -25.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19894 @@ -132021,8 +131101,6 @@ entities: rot: 3.141592653589793 rad pos: -44.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19895 @@ -132031,8 +131109,6 @@ entities: rot: 3.141592653589793 rad pos: -46.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19896 @@ -132041,8 +131117,6 @@ entities: rot: 1.5707963267948966 rad pos: -54.5,-13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19897 @@ -132051,8 +131125,6 @@ entities: rot: -1.5707963267948966 rad pos: -50.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19898 @@ -132060,8 +131132,6 @@ entities: - type: Transform pos: -45.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19899 @@ -132069,8 +131139,6 @@ entities: - type: Transform pos: -59.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19900 @@ -132079,8 +131147,6 @@ entities: rot: 1.5707963267948966 rad pos: -65.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19901 @@ -132089,8 +131155,6 @@ entities: rot: 3.141592653589793 rad pos: -64.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19902 @@ -132099,8 +131163,6 @@ entities: rot: 1.5707963267948966 rad pos: -32.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19903 @@ -132108,8 +131170,6 @@ entities: - type: Transform pos: -30.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19904 @@ -132118,8 +131178,6 @@ entities: rot: 1.5707963267948966 rad pos: -38.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19905 @@ -132128,8 +131186,6 @@ entities: rot: -1.5707963267948966 rad pos: -23.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19906 @@ -132138,8 +131194,6 @@ entities: rot: 1.5707963267948966 rad pos: -41.5,-71.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19907 @@ -132147,8 +131201,6 @@ entities: - type: Transform pos: 21.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19908 @@ -132157,8 +131209,6 @@ entities: rot: -1.5707963267948966 rad pos: 29.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19909 @@ -132167,8 +131217,6 @@ entities: rot: 1.5707963267948966 rad pos: -19.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19910 @@ -132177,8 +131225,6 @@ entities: rot: 3.141592653589793 rad pos: -28.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19911 @@ -132187,8 +131233,6 @@ entities: rot: 3.141592653589793 rad pos: -32.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19912 @@ -132196,8 +131240,6 @@ entities: - type: Transform pos: -32.5,28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19913 @@ -132206,8 +131248,6 @@ entities: rot: 1.5707963267948966 rad pos: -41.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19914 @@ -132216,8 +131256,6 @@ entities: rot: 3.141592653589793 rad pos: -24.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19915 @@ -132226,8 +131264,6 @@ entities: rot: 1.5707963267948966 rad pos: -50.5,33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19916 @@ -132236,8 +131272,6 @@ entities: rot: 1.5707963267948966 rad pos: -50.5,31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19917 @@ -132245,8 +131279,6 @@ entities: - type: Transform pos: -44.5,34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19918 @@ -132255,8 +131287,6 @@ entities: rot: -1.5707963267948966 rad pos: -37.5,30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19919 @@ -132265,8 +131295,6 @@ entities: rot: 1.5707963267948966 rad pos: -26.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19920 @@ -132275,8 +131303,6 @@ entities: rot: 3.141592653589793 rad pos: -28.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19921 @@ -132285,8 +131311,6 @@ entities: rot: 3.141592653589793 rad pos: -29.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19922 @@ -132294,8 +131318,6 @@ entities: - type: Transform pos: -29.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19923 @@ -132304,8 +131326,6 @@ entities: rot: -1.5707963267948966 rad pos: -36.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19924 @@ -132314,8 +131334,6 @@ entities: rot: 1.5707963267948966 rad pos: -38.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19925 @@ -132324,8 +131342,6 @@ entities: rot: 3.141592653589793 rad pos: -41.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19926 @@ -132334,8 +131350,6 @@ entities: rot: 3.141592653589793 rad pos: -45.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19927 @@ -132344,8 +131358,6 @@ entities: rot: -1.5707963267948966 rad pos: -44.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19928 @@ -132354,8 +131366,6 @@ entities: rot: 1.5707963267948966 rad pos: -51.5,7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19929 @@ -132364,8 +131374,6 @@ entities: rot: -1.5707963267948966 rad pos: -43.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19930 @@ -132373,8 +131381,6 @@ entities: - type: Transform pos: -45.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19931 @@ -132382,8 +131388,6 @@ entities: - type: Transform pos: -51.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19932 @@ -132392,8 +131396,6 @@ entities: rot: 1.5707963267948966 rad pos: -52.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19933 @@ -132402,27 +131404,25 @@ entities: rot: 3.141592653589793 rad pos: 19.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19934 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 19.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 19935 components: - type: Transform pos: -54.5,-74.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19936 @@ -132430,8 +131430,6 @@ entities: - type: Transform pos: -8.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19937 @@ -132443,8 +131441,6 @@ entities: - type: DeviceNetwork deviceLists: - 97 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19938 @@ -132453,8 +131449,6 @@ entities: rot: 1.5707963267948966 rad pos: -36.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19939 @@ -132463,8 +131457,6 @@ entities: rot: 1.5707963267948966 rad pos: -30.5,-78.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19940 @@ -132473,8 +131465,6 @@ entities: rot: 1.5707963267948966 rad pos: 39.5,46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19941 @@ -132482,8 +131472,6 @@ entities: - type: Transform pos: 54.5,56.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19942 @@ -132492,8 +131480,6 @@ entities: rot: -1.5707963267948966 rad pos: 55.5,43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19943 @@ -132502,8 +131488,6 @@ entities: rot: -1.5707963267948966 rad pos: -12.5,33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19944 @@ -132512,8 +131496,6 @@ entities: rot: 1.5707963267948966 rad pos: -20.5,44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19945 @@ -132521,8 +131503,6 @@ entities: - type: Transform pos: -14.5,45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19946 @@ -132531,16 +131511,12 @@ entities: rot: 3.141592653589793 rad pos: 70.5,37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 19947 components: - type: Transform rot: -1.5707963267948966 rad pos: -11.5,38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19948 @@ -132548,8 +131524,6 @@ entities: - type: Transform pos: -1.5,66.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19949 @@ -132558,8 +131532,6 @@ entities: rot: -1.5707963267948966 rad pos: -0.5,61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19950 @@ -132568,8 +131540,6 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19951 @@ -132578,8 +131548,6 @@ entities: rot: 1.5707963267948966 rad pos: -13.5,60.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19952 @@ -132588,8 +131556,6 @@ entities: rot: 3.141592653589793 rad pos: -17.5,60.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19953 @@ -132597,8 +131563,6 @@ entities: - type: Transform pos: -12.5,73.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19954 @@ -132606,8 +131570,6 @@ entities: - type: Transform pos: -22.5,73.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19955 @@ -132616,8 +131578,6 @@ entities: rot: -1.5707963267948966 rad pos: -21.5,60.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19956 @@ -132626,8 +131586,6 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19957 @@ -132636,8 +131594,6 @@ entities: rot: -1.5707963267948966 rad pos: 30.5,46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19958 @@ -132646,8 +131602,6 @@ entities: rot: 3.141592653589793 rad pos: 23.5,45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19959 @@ -132656,8 +131610,6 @@ entities: rot: -1.5707963267948966 rad pos: -7.5,-91.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19960 @@ -132666,8 +131618,6 @@ entities: rot: 1.5707963267948966 rad pos: -21.5,-96.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19961 @@ -132676,8 +131626,6 @@ entities: rot: -1.5707963267948966 rad pos: -7.5,-97.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19962 @@ -132685,8 +131633,6 @@ entities: - type: Transform pos: -8.5,-84.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19963 @@ -132695,8 +131641,6 @@ entities: rot: 1.5707963267948966 rad pos: -34.5,-97.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19964 @@ -132704,8 +131648,6 @@ entities: - type: Transform pos: 65.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19965 @@ -132714,8 +131656,6 @@ entities: rot: 3.141592653589793 rad pos: 68.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19966 @@ -132724,8 +131664,6 @@ entities: rot: 1.5707963267948966 rad pos: 74.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19967 @@ -132734,8 +131672,6 @@ entities: rot: -1.5707963267948966 rad pos: 74.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19968 @@ -132744,8 +131680,6 @@ entities: rot: 1.5707963267948966 rad pos: 66.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19969 @@ -132753,8 +131687,6 @@ entities: - type: Transform pos: 74.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19970 @@ -132762,8 +131694,6 @@ entities: - type: Transform pos: 73.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19971 @@ -132772,8 +131702,6 @@ entities: rot: 3.141592653589793 rad pos: 3.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19972 @@ -132782,8 +131710,6 @@ entities: rot: -1.5707963267948966 rad pos: -18.5,66.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19973 @@ -132792,8 +131718,6 @@ entities: rot: 3.141592653589793 rad pos: 72.5,-49.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19974 @@ -132802,8 +131726,6 @@ entities: rot: -1.5707963267948966 rad pos: -15.5,24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19975 @@ -132812,8 +131734,6 @@ entities: rot: 1.5707963267948966 rad pos: -8.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19976 @@ -132821,8 +131741,6 @@ entities: - type: Transform pos: -11.5,-18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19977 @@ -132831,8 +131749,6 @@ entities: rot: 3.141592653589793 rad pos: -30.5,-74.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19978 @@ -132841,8 +131757,6 @@ entities: rot: -1.5707963267948966 rad pos: 62.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19979 @@ -132851,8 +131765,6 @@ entities: rot: 3.141592653589793 rad pos: 30.5,-84.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19980 @@ -132861,8 +131773,6 @@ entities: rot: -1.5707963267948966 rad pos: 48.5,-72.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19981 @@ -132870,8 +131780,6 @@ entities: - type: Transform pos: 25.5,-71.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19982 @@ -132880,8 +131788,6 @@ entities: rot: 3.141592653589793 rad pos: 18.5,-83.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19983 @@ -132890,8 +131796,6 @@ entities: rot: -1.5707963267948966 rad pos: 48.5,-86.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19984 @@ -132899,8 +131803,6 @@ entities: - type: Transform pos: 12.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19985 @@ -132909,8 +131811,6 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19986 @@ -132918,8 +131818,6 @@ entities: - type: Transform pos: -45.5,43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19987 @@ -132927,8 +131825,6 @@ entities: - type: Transform pos: 68.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19988 @@ -132937,8 +131833,6 @@ entities: rot: -1.5707963267948966 rad pos: -5.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19989 @@ -132947,8 +131841,6 @@ entities: rot: -1.5707963267948966 rad pos: -1.5,-21.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19990 @@ -132957,8 +131849,6 @@ entities: rot: 3.141592653589793 rad pos: 22.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19991 @@ -132966,8 +131856,6 @@ entities: - type: Transform pos: 42.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19992 @@ -132976,8 +131864,6 @@ entities: rot: 1.5707963267948966 rad pos: 38.5,61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19993 @@ -132989,8 +131875,6 @@ entities: - type: DeviceNetwork deviceLists: - 103 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19994 @@ -132999,8 +131883,6 @@ entities: rot: -1.5707963267948966 rad pos: 11.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 19995 @@ -133012,8 +131894,6 @@ entities: - type: DeviceNetwork deviceLists: - 98 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19996 @@ -133022,8 +131902,6 @@ entities: rot: 1.5707963267948966 rad pos: -12.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19997 @@ -133032,8 +131910,6 @@ entities: rot: 1.5707963267948966 rad pos: -6.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19998 @@ -133042,8 +131918,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 19999 @@ -133052,8 +131926,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-60.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 20000 @@ -133062,8 +131934,6 @@ entities: rot: 1.5707963267948966 rad pos: -6.5,-62.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 20001 @@ -133072,8 +131942,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-62.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 20002 @@ -133082,8 +131950,6 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,-64.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 20003 @@ -133095,8 +131961,6 @@ entities: - type: DeviceNetwork deviceLists: - 101 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 20004 @@ -133108,8 +131972,6 @@ entities: - type: DeviceNetwork deviceLists: - 99 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - proto: GasVentScrubber @@ -133119,8 +131981,6 @@ entities: - type: Transform pos: -0.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20006 @@ -133129,8 +131989,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20007 @@ -133139,8 +131997,6 @@ entities: rot: 1.5707963267948966 rad pos: 1.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20008 @@ -133149,8 +132005,6 @@ entities: rot: 1.5707963267948966 rad pos: -74.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20009 @@ -133159,8 +132013,6 @@ entities: rot: 3.141592653589793 rad pos: -73.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20010 @@ -133169,8 +132021,6 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20011 @@ -133178,8 +132028,6 @@ entities: - type: Transform pos: 25.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20012 @@ -133187,8 +132035,6 @@ entities: - type: Transform pos: 22.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20013 @@ -133196,8 +132042,6 @@ entities: - type: Transform pos: 11.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20014 @@ -133206,8 +132050,6 @@ entities: rot: 1.5707963267948966 rad pos: 27.5,1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20015 @@ -133216,8 +132058,6 @@ entities: rot: 3.141592653589793 rad pos: 7.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20016 @@ -133225,8 +132065,6 @@ entities: - type: Transform pos: -8.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20017 @@ -133237,8 +132075,6 @@ entities: - type: DeviceNetwork deviceLists: - 97 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20018 @@ -133246,8 +132082,6 @@ entities: - type: Transform pos: 31.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20019 @@ -133256,8 +132090,6 @@ entities: rot: 3.141592653589793 rad pos: -5.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20020 @@ -133266,8 +132098,6 @@ entities: rot: -1.5707963267948966 rad pos: -8.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20021 @@ -133276,8 +132106,6 @@ entities: rot: 3.141592653589793 rad pos: 31.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20022 @@ -133286,8 +132114,6 @@ entities: rot: 1.5707963267948966 rad pos: 37.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20023 @@ -133296,8 +132122,6 @@ entities: rot: 1.5707963267948966 rad pos: 37.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20024 @@ -133306,8 +132130,6 @@ entities: rot: 3.141592653589793 rad pos: 28.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20025 @@ -133315,8 +132137,6 @@ entities: - type: Transform pos: 38.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20026 @@ -133325,8 +132145,6 @@ entities: rot: 3.141592653589793 rad pos: -4.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20027 @@ -133335,8 +132153,6 @@ entities: rot: 1.5707963267948966 rad pos: 16.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20028 @@ -133345,8 +132161,6 @@ entities: rot: 3.141592653589793 rad pos: 34.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20029 @@ -133355,8 +132169,6 @@ entities: rot: -1.5707963267948966 rad pos: 26.5,7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20030 @@ -133365,8 +132177,6 @@ entities: rot: -1.5707963267948966 rad pos: 8.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20031 @@ -133375,8 +132185,6 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,-18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20032 @@ -133385,8 +132193,6 @@ entities: rot: -1.5707963267948966 rad pos: 29.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20033 @@ -133394,8 +132200,6 @@ entities: - type: Transform pos: 23.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20034 @@ -133404,8 +132208,6 @@ entities: rot: -1.5707963267948966 rad pos: -8.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20035 @@ -133417,8 +132219,6 @@ entities: - type: DeviceNetwork deviceLists: - 102 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20036 @@ -133430,8 +132230,6 @@ entities: - type: DeviceNetwork deviceLists: - 100 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20037 @@ -133440,8 +132238,6 @@ entities: rot: 3.141592653589793 rad pos: -20.5,-85.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20038 @@ -133450,8 +132246,6 @@ entities: rot: -1.5707963267948966 rad pos: -24.5,-77.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20039 @@ -133460,8 +132254,6 @@ entities: rot: 1.5707963267948966 rad pos: -28.5,-77.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20040 @@ -133469,8 +132261,6 @@ entities: - type: Transform pos: 17.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20041 @@ -133478,8 +132268,6 @@ entities: - type: Transform pos: 33.5,2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20042 @@ -133488,8 +132276,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20043 @@ -133498,8 +132284,6 @@ entities: rot: 1.5707963267948966 rad pos: -23.5,-89.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20044 @@ -133508,8 +132292,6 @@ entities: rot: 3.141592653589793 rad pos: -21.5,-90.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20045 @@ -133517,8 +132299,6 @@ entities: - type: Transform pos: 33.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20046 @@ -133527,8 +132307,6 @@ entities: rot: 3.141592653589793 rad pos: 10.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20047 @@ -133536,8 +132314,6 @@ entities: - type: Transform pos: 25.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20048 @@ -133545,8 +132321,6 @@ entities: - type: Transform pos: 16.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20049 @@ -133555,8 +132329,6 @@ entities: rot: -1.5707963267948966 rad pos: 16.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20050 @@ -133565,8 +132337,6 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,-11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20051 @@ -133575,8 +132345,6 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20052 @@ -133585,8 +132353,6 @@ entities: rot: 3.141592653589793 rad pos: 46.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20053 @@ -133595,8 +132361,6 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20054 @@ -133604,8 +132368,6 @@ entities: - type: Transform pos: -20.5,33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20055 @@ -133614,8 +132376,6 @@ entities: rot: -1.5707963267948966 rad pos: 3.5,1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20056 @@ -133623,8 +132383,6 @@ entities: - type: Transform pos: 21.5,17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20057 @@ -133633,8 +132391,6 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20058 @@ -133643,8 +132399,6 @@ entities: rot: 1.5707963267948966 rad pos: -28.5,-79.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20059 @@ -133653,8 +132407,6 @@ entities: rot: 1.5707963267948966 rad pos: 20.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20060 @@ -133662,8 +132414,6 @@ entities: - type: Transform pos: 12.5,17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20061 @@ -133672,8 +132422,6 @@ entities: rot: 1.5707963267948966 rad pos: 23.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20062 @@ -133682,8 +132430,6 @@ entities: rot: 1.5707963267948966 rad pos: 6.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20063 @@ -133692,8 +132438,6 @@ entities: rot: -1.5707963267948966 rad pos: 42.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20064 @@ -133702,8 +132446,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-75.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20065 @@ -133712,8 +132454,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-70.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20066 @@ -133722,8 +132462,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,-66.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20067 @@ -133732,8 +132470,6 @@ entities: rot: 1.5707963267948966 rad pos: 35.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20068 @@ -133742,8 +132478,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20069 @@ -133752,8 +132486,6 @@ entities: rot: 1.5707963267948966 rad pos: -14.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20070 @@ -133761,8 +132493,6 @@ entities: - type: Transform pos: -9.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20071 @@ -133771,8 +132501,6 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20072 @@ -133781,8 +132509,6 @@ entities: rot: 3.141592653589793 rad pos: 20.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20073 @@ -133790,8 +132516,6 @@ entities: - type: Transform pos: 28.5,28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20074 @@ -133800,8 +132524,6 @@ entities: rot: 3.141592653589793 rad pos: 44.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20075 @@ -133809,8 +132531,6 @@ entities: - type: Transform pos: 47.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20076 @@ -133819,8 +132539,6 @@ entities: rot: -1.5707963267948966 rad pos: 52.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20077 @@ -133828,8 +132546,6 @@ entities: - type: Transform pos: 46.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20078 @@ -133837,8 +132553,6 @@ entities: - type: Transform pos: 49.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20079 @@ -133846,8 +132560,6 @@ entities: - type: Transform pos: 52.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20080 @@ -133855,8 +132567,6 @@ entities: - type: Transform pos: 55.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20081 @@ -133864,8 +132574,6 @@ entities: - type: Transform pos: 58.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20082 @@ -133874,8 +132582,6 @@ entities: rot: -1.5707963267948966 rad pos: 61.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20083 @@ -133884,8 +132590,6 @@ entities: rot: -1.5707963267948966 rad pos: 61.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20084 @@ -133894,8 +132598,6 @@ entities: rot: 1.5707963267948966 rad pos: 57.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20085 @@ -133904,8 +132606,6 @@ entities: rot: 3.141592653589793 rad pos: 40.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20086 @@ -133914,8 +132614,6 @@ entities: rot: 1.5707963267948966 rad pos: 34.5,20.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20087 @@ -133924,8 +132622,6 @@ entities: rot: -1.5707963267948966 rad pos: 56.5,1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20088 @@ -133934,8 +132630,6 @@ entities: rot: 1.5707963267948966 rad pos: 41.5,-1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20089 @@ -133944,8 +132638,6 @@ entities: rot: 1.5707963267948966 rad pos: 36.5,-2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20090 @@ -133954,8 +132646,6 @@ entities: rot: -1.5707963267948966 rad pos: 29.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20091 @@ -133964,8 +132654,6 @@ entities: rot: 3.141592653589793 rad pos: 38.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20092 @@ -133974,8 +132662,6 @@ entities: rot: -1.5707963267948966 rad pos: 46.5,-2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20093 @@ -133984,8 +132670,6 @@ entities: rot: 1.5707963267948966 rad pos: 41.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20094 @@ -133994,8 +132678,6 @@ entities: rot: -1.5707963267948966 rad pos: 57.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20095 @@ -134004,8 +132686,6 @@ entities: rot: 3.141592653589793 rad pos: 73.5,-28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20096 @@ -134013,8 +132693,6 @@ entities: - type: Transform pos: 43.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20097 @@ -134023,8 +132701,6 @@ entities: rot: -1.5707963267948966 rad pos: 50.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20098 @@ -134032,8 +132708,6 @@ entities: - type: Transform pos: 55.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20099 @@ -134041,8 +132715,6 @@ entities: - type: Transform pos: 45.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20100 @@ -134050,8 +132722,6 @@ entities: - type: Transform pos: 56.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20101 @@ -134060,8 +132730,6 @@ entities: rot: 3.141592653589793 rad pos: 63.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20102 @@ -134070,8 +132738,6 @@ entities: rot: 1.5707963267948966 rad pos: 62.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20103 @@ -134079,8 +132745,6 @@ entities: - type: Transform pos: 63.5,-2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20104 @@ -134089,8 +132753,6 @@ entities: rot: 3.141592653589793 rad pos: 64.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20105 @@ -134099,8 +132761,6 @@ entities: rot: 3.141592653589793 rad pos: 42.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20106 @@ -134109,8 +132769,6 @@ entities: rot: -1.5707963267948966 rad pos: 50.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20107 @@ -134119,8 +132777,6 @@ entities: rot: 1.5707963267948966 rad pos: 48.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20108 @@ -134129,8 +132785,6 @@ entities: rot: 3.141592653589793 rad pos: 70.5,-49.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20109 @@ -134139,8 +132793,6 @@ entities: rot: 1.5707963267948966 rad pos: 31.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20110 @@ -134149,8 +132801,6 @@ entities: rot: -1.5707963267948966 rad pos: 33.5,-56.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20111 @@ -134159,8 +132809,6 @@ entities: rot: 1.5707963267948966 rad pos: 33.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20112 @@ -134168,8 +132816,6 @@ entities: - type: Transform pos: 34.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20113 @@ -134177,8 +132823,6 @@ entities: - type: Transform pos: 28.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20114 @@ -134187,8 +132831,6 @@ entities: rot: 3.141592653589793 rad pos: -13.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20115 @@ -134197,8 +132839,6 @@ entities: rot: 3.141592653589793 rad pos: -19.5,4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20116 @@ -134206,8 +132846,6 @@ entities: - type: Transform pos: -24.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20117 @@ -134216,8 +132854,6 @@ entities: rot: 3.141592653589793 rad pos: -28.5,-11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20118 @@ -134226,8 +132862,6 @@ entities: rot: 1.5707963267948966 rad pos: -19.5,-19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20119 @@ -134236,8 +132870,6 @@ entities: rot: 3.141592653589793 rad pos: -23.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20120 @@ -134246,8 +132878,6 @@ entities: rot: -1.5707963267948966 rad pos: 54.5,-61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20121 @@ -134255,8 +132885,6 @@ entities: - type: Transform pos: 40.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20122 @@ -134265,8 +132893,6 @@ entities: rot: 1.5707963267948966 rad pos: 39.5,-65.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20123 @@ -134275,8 +132901,6 @@ entities: rot: -1.5707963267948966 rad pos: -17.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20124 @@ -134285,8 +132909,6 @@ entities: rot: 1.5707963267948966 rad pos: -19.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20125 @@ -134295,8 +132917,6 @@ entities: rot: 1.5707963267948966 rad pos: -19.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20126 @@ -134305,8 +132925,6 @@ entities: rot: -1.5707963267948966 rad pos: 30.5,-85.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20127 @@ -134315,8 +132933,6 @@ entities: rot: -1.5707963267948966 rad pos: 49.5,-73.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20128 @@ -134325,8 +132941,6 @@ entities: rot: -1.5707963267948966 rad pos: 41.5,-71.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20129 @@ -134335,8 +132949,6 @@ entities: rot: 3.141592653589793 rad pos: -29.5,-17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20130 @@ -134345,8 +132957,6 @@ entities: rot: -1.5707963267948966 rad pos: -31.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20131 @@ -134355,8 +132965,6 @@ entities: rot: 1.5707963267948966 rad pos: -34.5,-17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20132 @@ -134364,8 +132972,6 @@ entities: - type: Transform pos: -35.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20133 @@ -134374,8 +132980,6 @@ entities: rot: -1.5707963267948966 rad pos: -41.5,-15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20134 @@ -134383,8 +132987,6 @@ entities: - type: Transform pos: -44.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20135 @@ -134393,8 +132995,6 @@ entities: rot: 3.141592653589793 rad pos: -47.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20136 @@ -134403,8 +133003,6 @@ entities: rot: 3.141592653589793 rad pos: -50.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20137 @@ -134413,8 +133011,6 @@ entities: rot: 1.5707963267948966 rad pos: -53.5,-16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20138 @@ -134422,8 +133018,6 @@ entities: - type: Transform pos: -47.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20139 @@ -134432,8 +133026,6 @@ entities: rot: 3.141592653589793 rad pos: -56.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20140 @@ -134442,8 +133034,6 @@ entities: rot: -1.5707963267948966 rad pos: -67.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20141 @@ -134452,8 +133042,6 @@ entities: rot: 3.141592653589793 rad pos: -68.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20142 @@ -134462,8 +133050,6 @@ entities: rot: -1.5707963267948966 rad pos: -31.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20143 @@ -134472,8 +133058,6 @@ entities: rot: 3.141592653589793 rad pos: -33.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20144 @@ -134482,8 +133066,6 @@ entities: rot: 1.5707963267948966 rad pos: -38.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20145 @@ -134492,8 +133074,6 @@ entities: rot: -1.5707963267948966 rad pos: -24.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20146 @@ -134502,8 +133082,6 @@ entities: rot: 1.5707963267948966 rad pos: -43.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20147 @@ -134511,8 +133089,6 @@ entities: - type: Transform pos: -24.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20148 @@ -134521,8 +133097,6 @@ entities: rot: 3.141592653589793 rad pos: -27.5,-70.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20149 @@ -134530,8 +133104,6 @@ entities: - type: Transform pos: -19.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20150 @@ -134540,8 +133112,6 @@ entities: rot: 3.141592653589793 rad pos: -42.5,-72.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20151 @@ -134550,8 +133120,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20152 @@ -134560,8 +133128,6 @@ entities: rot: 3.141592653589793 rad pos: -23.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20153 @@ -134569,8 +133135,6 @@ entities: - type: Transform pos: -28.5,21.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20154 @@ -134579,8 +133143,6 @@ entities: rot: 3.141592653589793 rad pos: -33.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20155 @@ -134589,8 +133151,6 @@ entities: rot: 1.5707963267948966 rad pos: -42.5,20.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20156 @@ -134598,8 +133158,6 @@ entities: - type: Transform pos: -33.5,28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20157 @@ -134608,8 +133166,6 @@ entities: rot: -1.5707963267948966 rad pos: -37.5,29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20158 @@ -134618,8 +133174,6 @@ entities: rot: 1.5707963267948966 rad pos: -25.5,13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20159 @@ -134628,8 +133182,6 @@ entities: rot: 3.141592653589793 rad pos: -29.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20160 @@ -134638,8 +133190,6 @@ entities: rot: 3.141592653589793 rad pos: -39.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20161 @@ -134648,8 +133198,6 @@ entities: rot: -1.5707963267948966 rad pos: -37.5,3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20162 @@ -134658,8 +133206,6 @@ entities: rot: 1.5707963267948966 rad pos: -39.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20163 @@ -134667,8 +133213,6 @@ entities: - type: Transform pos: -30.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20164 @@ -134677,8 +133221,6 @@ entities: rot: 3.141592653589793 rad pos: -30.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20165 @@ -134687,8 +133229,6 @@ entities: rot: 3.141592653589793 rad pos: -52.5,7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20166 @@ -134696,8 +133236,6 @@ entities: - type: Transform pos: -51.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20167 @@ -134705,8 +133243,6 @@ entities: - type: Transform pos: -52.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20168 @@ -134715,8 +133251,6 @@ entities: rot: -1.5707963267948966 rad pos: -42.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20169 @@ -134725,8 +133259,6 @@ entities: rot: 1.5707963267948966 rad pos: -48.5,3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20170 @@ -134735,8 +133267,6 @@ entities: rot: 3.141592653589793 rad pos: -47.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20171 @@ -134744,8 +133274,6 @@ entities: - type: Transform pos: -46.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20172 @@ -134754,8 +133282,6 @@ entities: rot: 1.5707963267948966 rad pos: 21.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20173 @@ -134764,8 +133290,6 @@ entities: rot: 3.141592653589793 rad pos: -54.5,-77.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20174 @@ -134774,8 +133298,6 @@ entities: rot: 3.141592653589793 rad pos: -7.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20175 @@ -134786,8 +133308,6 @@ entities: - type: DeviceNetwork deviceLists: - 97 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20176 @@ -134796,8 +133316,6 @@ entities: rot: 1.5707963267948966 rad pos: -25.5,-2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20177 @@ -134806,8 +133324,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20178 @@ -134816,8 +133332,6 @@ entities: rot: 1.5707963267948966 rad pos: 39.5,45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20179 @@ -134826,8 +133340,6 @@ entities: rot: 1.5707963267948966 rad pos: 51.5,43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20180 @@ -134835,8 +133347,6 @@ entities: - type: Transform pos: 52.5,56.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20181 @@ -134845,8 +133355,6 @@ entities: rot: -1.5707963267948966 rad pos: -12.5,34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20182 @@ -134855,8 +133363,6 @@ entities: rot: 1.5707963267948966 rad pos: -24.5,30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20183 @@ -134865,8 +133371,6 @@ entities: rot: -1.5707963267948966 rad pos: -14.5,43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20184 @@ -134875,8 +133379,6 @@ entities: rot: 1.5707963267948966 rad pos: -20.5,43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20185 @@ -134884,16 +133386,12 @@ entities: - type: Transform pos: 70.5,36.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 20186 components: - type: Transform rot: -1.5707963267948966 rad pos: -11.5,39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20187 @@ -134902,8 +133400,6 @@ entities: rot: -1.5707963267948966 rad pos: 1.5,69.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20188 @@ -134912,8 +133408,6 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,69.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20189 @@ -134922,8 +133416,6 @@ entities: rot: -1.5707963267948966 rad pos: -1.5,62.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20190 @@ -134931,8 +133423,6 @@ entities: - type: Transform pos: -1.5,68.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20191 @@ -134941,8 +133431,6 @@ entities: rot: -1.5707963267948966 rad pos: 0.5,48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20192 @@ -134951,8 +133439,6 @@ entities: rot: 1.5707963267948966 rad pos: -22.5,58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20193 @@ -134960,8 +133446,6 @@ entities: - type: Transform pos: -17.5,63.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20194 @@ -134969,8 +133453,6 @@ entities: - type: Transform pos: -21.5,73.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20195 @@ -134978,8 +133460,6 @@ entities: - type: Transform pos: -13.5,73.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20196 @@ -134988,8 +133468,6 @@ entities: rot: -1.5707963267948966 rad pos: -12.5,57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20197 @@ -134998,8 +133476,6 @@ entities: rot: -1.5707963267948966 rad pos: 0.5,56.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20198 @@ -135008,8 +133484,6 @@ entities: rot: -1.5707963267948966 rad pos: 30.5,45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20199 @@ -135018,8 +133492,6 @@ entities: rot: 1.5707963267948966 rad pos: 24.5,45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20200 @@ -135027,8 +133499,6 @@ entities: - type: Transform pos: -7.5,-92.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20201 @@ -135036,8 +133506,6 @@ entities: - type: Transform pos: -21.5,-97.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20202 @@ -135046,8 +133514,6 @@ entities: rot: -1.5707963267948966 rad pos: -6.5,-98.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20203 @@ -135055,8 +133521,6 @@ entities: - type: Transform pos: -6.5,-84.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20204 @@ -135065,8 +133529,6 @@ entities: rot: 1.5707963267948966 rad pos: -34.5,-96.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20205 @@ -135075,8 +133537,6 @@ entities: rot: 3.141592653589793 rad pos: 65.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20206 @@ -135084,8 +133544,6 @@ entities: - type: Transform pos: 67.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20207 @@ -135094,8 +133552,6 @@ entities: rot: 3.141592653589793 rad pos: 73.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20208 @@ -135104,8 +133560,6 @@ entities: rot: -1.5707963267948966 rad pos: 75.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20209 @@ -135114,8 +133568,6 @@ entities: rot: -1.5707963267948966 rad pos: 72.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20210 @@ -135123,8 +133575,6 @@ entities: - type: Transform pos: 66.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20211 @@ -135133,8 +133583,6 @@ entities: rot: 3.141592653589793 rad pos: 5.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20212 @@ -135143,8 +133591,6 @@ entities: rot: 1.5707963267948966 rad pos: 59.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20213 @@ -135153,16 +133599,12 @@ entities: rot: 3.141592653589793 rad pos: -54.5,-63.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 20214 components: - type: Transform rot: -1.5707963267948966 rad pos: -15.5,25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20215 @@ -135171,8 +133613,6 @@ entities: rot: 1.5707963267948966 rad pos: -8.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20216 @@ -135181,8 +133621,6 @@ entities: rot: -1.5707963267948966 rad pos: -7.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20217 @@ -135190,8 +133628,6 @@ entities: - type: Transform pos: -10.5,-18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20218 @@ -135200,8 +133636,6 @@ entities: rot: 3.141592653589793 rad pos: -30.5,-70.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20219 @@ -135210,8 +133644,6 @@ entities: rot: 3.141592653589793 rad pos: -28.5,-74.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20220 @@ -135220,8 +133652,6 @@ entities: rot: 1.5707963267948966 rad pos: 61.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20221 @@ -135230,8 +133660,6 @@ entities: rot: 1.5707963267948966 rad pos: 19.5,-83.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20222 @@ -135239,8 +133667,6 @@ entities: - type: Transform pos: 24.5,-72.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20223 @@ -135249,8 +133675,6 @@ entities: rot: 3.141592653589793 rad pos: 48.5,-85.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20224 @@ -135259,8 +133683,6 @@ entities: rot: 1.5707963267948966 rad pos: -16.5,66.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20225 @@ -135269,8 +133691,6 @@ entities: rot: 1.5707963267948966 rad pos: 7.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20226 @@ -135278,8 +133698,6 @@ entities: - type: Transform pos: 45.5,7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20227 @@ -135288,8 +133706,6 @@ entities: rot: 3.141592653589793 rad pos: -44.5,30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20228 @@ -135297,8 +133713,6 @@ entities: - type: Transform pos: -46.5,43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20229 @@ -135307,8 +133721,6 @@ entities: rot: -1.5707963267948966 rad pos: 67.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20230 @@ -135317,8 +133729,6 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20231 @@ -135327,8 +133737,6 @@ entities: rot: 3.141592653589793 rad pos: -1.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20232 @@ -135336,8 +133744,6 @@ entities: - type: Transform pos: -1.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20233 @@ -135346,8 +133752,6 @@ entities: rot: 3.141592653589793 rad pos: 28.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20234 @@ -135355,8 +133759,6 @@ entities: - type: Transform pos: 40.5,61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20235 @@ -135365,8 +133767,6 @@ entities: rot: 1.5707963267948966 rad pos: 11.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 20236 @@ -135378,8 +133778,6 @@ entities: - type: DeviceNetwork deviceLists: - 98 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20237 @@ -135388,8 +133786,6 @@ entities: rot: 3.141592653589793 rad pos: -14.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20238 @@ -135398,8 +133794,6 @@ entities: rot: 1.5707963267948966 rad pos: -6.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20239 @@ -135408,8 +133802,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20240 @@ -135418,8 +133810,6 @@ entities: rot: 1.5707963267948966 rad pos: -6.5,-61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20241 @@ -135428,8 +133818,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-61.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20242 @@ -135438,8 +133826,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-59.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20243 @@ -135448,8 +133834,6 @@ entities: rot: -1.5707963267948966 rad pos: -4.5,-66.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20244 @@ -135461,8 +133845,6 @@ entities: - type: DeviceNetwork deviceLists: - 101 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20245 @@ -135473,8 +133855,6 @@ entities: - type: DeviceNetwork deviceLists: - 99 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - uid: 20246 @@ -135483,8 +133863,6 @@ entities: rot: 3.141592653589793 rad pos: 6.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - proto: GasVolumePump @@ -135495,16 +133873,12 @@ entities: rot: 3.141592653589793 rad pos: 2.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 20248 components: - type: Transform rot: -1.5707963267948966 rad pos: -39.5,-57.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#990000FF' - proto: Gauze1 @@ -141230,8 +139604,6 @@ entities: rot: -1.5707963267948966 rad pos: -63.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 21309 @@ -141240,8 +139612,6 @@ entities: rot: -1.5707963267948966 rad pos: -63.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 21310 @@ -141249,8 +139619,6 @@ entities: - type: Transform pos: -62.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - uid: 21311 @@ -141258,8 +139626,6 @@ entities: - type: Transform pos: -62.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0055CCFF' - proto: Hemostat @@ -145156,78 +143522,56 @@ entities: - type: Transform pos: -8.5,-72.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21818 components: - type: Transform pos: 45.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21819 components: - type: Transform pos: -50.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21820 components: - type: Transform pos: -39.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21821 components: - type: Transform pos: -51.5,-70.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21822 components: - type: Transform pos: -26.5,37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21823 components: - type: Transform pos: -28.5,41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21824 components: - type: Transform pos: 72.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21825 components: - type: Transform pos: 46.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21826 components: - type: Transform pos: 3.5,-73.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21827 components: - type: Transform pos: 9.5,-59.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: NitrogenTankFilled entities: - uid: 21828 @@ -145257,22 +143601,16 @@ entities: - type: Transform pos: -38.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21833 components: - type: Transform pos: 54.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21834 components: - type: Transform pos: -76.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: NitrousOxideTankFilled entities: - uid: 21835 @@ -145396,113 +143734,81 @@ entities: - type: Transform pos: -76.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21854 components: - type: Transform pos: -9.5,-72.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21855 components: - type: Transform pos: 59.5,29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21856 components: - type: Transform pos: 45.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21857 components: - type: Transform pos: -25.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21858 components: - type: Transform pos: -50.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21859 components: - type: Transform pos: -37.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21860 components: - type: Transform pos: -25.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21861 components: - type: Transform pos: -34.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21862 components: - type: Transform pos: -48.5,28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21863 components: - type: Transform pos: -31.5,17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21864 components: - type: Transform pos: -29.5,41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21865 components: - type: Transform pos: 73.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21866 components: - type: Transform pos: 46.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21867 components: - type: Transform pos: 4.5,-73.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 21868 components: - type: Transform pos: 9.5,-58.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: OxygenTankFilled entities: - uid: 21869 @@ -146688,29 +144994,21 @@ entities: - type: Transform pos: 55.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 22069 components: - type: Transform pos: -40.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 22070 components: - type: Transform pos: -50.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 22071 components: - type: Transform pos: -75.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: PlasmaOre1 entities: - uid: 22072 @@ -164615,7 +162913,7 @@ entities: - type: Transform pos: -31.5,-55.5 parent: 2 -- proto: soda_dispenser +- proto: SodaDispenser entities: - uid: 24744 components: @@ -166826,127 +165124,91 @@ entities: - type: Transform pos: -75.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25119 components: - type: Transform pos: 45.5,-54.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25120 components: - type: Transform pos: -16.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25121 components: - type: Transform pos: -38.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25122 components: - type: Transform pos: -38.5,-50.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25123 components: - type: Transform pos: -38.5,-49.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25124 components: - type: Transform pos: -34.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25125 components: - type: Transform pos: -35.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25126 components: - type: Transform pos: -50.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25127 components: - type: Transform pos: -50.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25128 components: - type: Transform pos: 53.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25129 components: - type: Transform pos: -24.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25130 components: - type: Transform pos: -26.5,-55.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25131 components: - type: Transform pos: 51.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25132 components: - type: Transform pos: -50.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25133 components: - type: Transform pos: -50.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25134 components: - type: Transform pos: -35.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 25135 components: - type: Transform pos: -75.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Stunbaton entities: - uid: 25136 @@ -172289,8 +170551,6 @@ entities: rot: -1.5707963267948966 rad pos: -69.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: TegCirculator entities: - uid: 26053 @@ -200756,15 +199016,11 @@ entities: - type: Transform pos: -50.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 31149 components: - type: Transform pos: -34.5,-28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: WeaponCapacitorRecharger entities: - uid: 31150 From 771c34c304873dae9f1185f9bc1a15710b1c5b4c Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sun, 16 Jun 2024 21:36:38 +0200 Subject: [PATCH 36/82] Update omega (#28343) * Update omega robotics console * morgue door --- Resources/Maps/omega.yml | 39 +++++++++++++++++---------------------- 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/Resources/Maps/omega.yml b/Resources/Maps/omega.yml index 07ebb24b9da8c8..661149f4fe2a3f 100644 --- a/Resources/Maps/omega.yml +++ b/Resources/Maps/omega.yml @@ -6354,7 +6354,9 @@ entities: - type: Transform pos: -19.5,-19.5 parent: 4812 - - uid: 7416 +- proto: AirlockMedicalMorgueLocked + entities: + - uid: 6282 components: - type: Transform pos: -19.5,-13.5 @@ -31656,6 +31658,13 @@ entities: - type: Transform pos: 26.5,-17.5 parent: 4812 +- proto: ComputerRoboticsControl + entities: + - uid: 1482 + components: + - type: Transform + pos: 25.5,-17.5 + parent: 4812 - proto: ComputerSalvageExpedition entities: - uid: 7830 @@ -56224,6 +56233,12 @@ entities: parent: 4812 - proto: Lamp entities: + - uid: 1481 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 26.696417,-19.020947 + parent: 4812 - uid: 1520 components: - type: Transform @@ -56320,21 +56335,6 @@ entities: showEnts: False occludes: True ent: null - - uid: 6291 - components: - - type: Transform - pos: 25.537617,-17.441427 - parent: 4812 - - type: ContainerContainer - containers: - cellslot_cell_container: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - uid: 6409 components: - type: Transform @@ -58827,7 +58827,7 @@ entities: - uid: 6307 components: - type: Transform - pos: 26.432638,-19.383717 + pos: 26.003157,-19.425182 parent: 4812 - uid: 7142 components: @@ -70310,11 +70310,6 @@ entities: - type: Transform pos: 19.5,-18.5 parent: 4812 - - uid: 6282 - components: - - type: Transform - pos: 25.5,-17.5 - parent: 4812 - uid: 6283 components: - type: Transform From 99358e8d4db7db70fc63284f2f19fee5780c74de Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sun, 16 Jun 2024 21:36:54 +0200 Subject: [PATCH 37/82] Update marathon (#28344) * Update marathon robotics console * morgue door --- Resources/Maps/marathon.yml | 1445 ++--------------------------------- 1 file changed, 59 insertions(+), 1386 deletions(-) diff --git a/Resources/Maps/marathon.yml b/Resources/Maps/marathon.yml index b5eccd570f22cd..caa60e91490baa 100644 --- a/Resources/Maps/marathon.yml +++ b/Resources/Maps/marathon.yml @@ -7754,12 +7754,13 @@ entities: - type: MetaData - type: Transform - type: Map + mapPaused: True - type: PhysicsMap + - type: GridTree + - type: MovedGrids - type: Broadphase - type: OccluderTree - type: LoadedMap - - type: GridTree - - type: MovedGrids - proto: AcousticGuitarInstrument entities: - uid: 525 @@ -7812,24 +7813,18 @@ entities: - 22086 - 3421 - 3422 - - type: AtmosDevice - joinedGrid: 30 - uid: 7927 components: - type: Transform rot: 3.141592653589793 rad pos: -11.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8252 components: - type: Transform rot: -1.5707963267948966 rad pos: -32.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8254 components: - type: Transform @@ -7843,8 +7838,6 @@ entities: - 7156 - 7571 - 7569 - - type: AtmosDevice - joinedGrid: 30 - uid: 8267 components: - type: Transform @@ -7862,16 +7855,12 @@ entities: - 7137 - 7131 - 7130 - - type: AtmosDevice - joinedGrid: 30 - uid: 9029 components: - type: Transform rot: -1.5707963267948966 rad pos: -11.5,-19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9477 components: - type: Transform @@ -7883,8 +7872,6 @@ entities: - 9952 - 11153 - 11094 - - type: AtmosDevice - joinedGrid: 30 - uid: 9671 components: - type: Transform @@ -7897,8 +7884,6 @@ entities: - 7116 - 9686 - 9864 - - type: AtmosDevice - joinedGrid: 30 - uid: 17960 components: - type: Transform @@ -7911,8 +7896,6 @@ entities: - 18435 - 18436 - 18437 - - type: AtmosDevice - joinedGrid: 30 - uid: 20325 components: - type: Transform @@ -7928,8 +7911,6 @@ entities: - 18442 - 18439 - 17228 - - type: AtmosDevice - joinedGrid: 30 - uid: 20353 components: - type: Transform @@ -7943,8 +7924,6 @@ entities: - 11264 - 11114 - 11163 - - type: AtmosDevice - joinedGrid: 30 - uid: 20356 components: - type: Transform @@ -7963,8 +7942,6 @@ entities: - 11098 - 11099 - 11154 - - type: AtmosDevice - joinedGrid: 30 - uid: 21740 components: - type: Transform @@ -7975,8 +7952,6 @@ entities: - 11097 - 11227 - 21741 - - type: AtmosDevice - joinedGrid: 30 - uid: 21743 components: - type: Transform @@ -7988,8 +7963,6 @@ entities: - 11176 - 11107 - 21744 - - type: AtmosDevice - joinedGrid: 30 - uid: 21747 components: - type: Transform @@ -8006,8 +7979,6 @@ entities: - 21749 - 11178 - 11179 - - type: AtmosDevice - joinedGrid: 30 - uid: 21754 components: - type: Transform @@ -8023,8 +7994,6 @@ entities: - 9300 - 11188 - 11189 - - type: AtmosDevice - joinedGrid: 30 - uid: 21755 components: - type: Transform @@ -8033,8 +8002,6 @@ entities: - type: DeviceList devices: - 21756 - - type: AtmosDevice - joinedGrid: 30 - uid: 21757 components: - type: Transform @@ -8052,8 +8019,6 @@ entities: - 9309 - 11192 - 11180 - - type: AtmosDevice - joinedGrid: 30 - uid: 21760 components: - type: Transform @@ -8064,8 +8029,6 @@ entities: devices: - 11214 - 21761 - - type: AtmosDevice - joinedGrid: 30 - uid: 21762 components: - type: Transform @@ -8082,8 +8045,6 @@ entities: - 12039 - 16096 - 11714 - - type: AtmosDevice - joinedGrid: 30 - uid: 21771 components: - type: Transform @@ -8103,8 +8064,6 @@ entities: - 21772 - 11201 - 11200 - - type: AtmosDevice - joinedGrid: 30 - uid: 21774 components: - type: Transform @@ -8122,8 +8081,6 @@ entities: - 21773 - 11211 - 11210 - - type: AtmosDevice - joinedGrid: 30 - uid: 21777 components: - type: Transform @@ -8144,8 +8101,6 @@ entities: - 11220 - 11219 - 20335 - - type: AtmosDevice - joinedGrid: 30 - uid: 21781 components: - type: Transform @@ -8163,8 +8118,6 @@ entities: - 8468 - 11221 - 11222 - - type: AtmosDevice - joinedGrid: 30 - uid: 21783 components: - type: Transform @@ -8183,8 +8136,6 @@ entities: - 11939 - 14540 - 11991 - - type: AtmosDevice - joinedGrid: 30 - uid: 21785 components: - type: Transform @@ -8202,8 +8153,6 @@ entities: - 12081 - 11764 - 11872 - - type: AtmosDevice - joinedGrid: 30 - uid: 21789 components: - type: Transform @@ -8216,8 +8165,6 @@ entities: - 12043 - 12044 - 12010 - - type: AtmosDevice - joinedGrid: 30 - uid: 21791 components: - type: Transform @@ -8230,8 +8177,6 @@ entities: - 21792 - 11985 - 11981 - - type: AtmosDevice - joinedGrid: 30 - uid: 21796 components: - type: Transform @@ -8248,8 +8193,6 @@ entities: - 21794 - 11218 - 11217 - - type: AtmosDevice - joinedGrid: 30 - uid: 21797 components: - type: Transform @@ -8282,8 +8225,6 @@ entities: - 3407 - 3409 - 3410 - - type: AtmosDevice - joinedGrid: 30 - uid: 21801 components: - type: Transform @@ -8303,8 +8244,6 @@ entities: - 6788 - 7339 - 7340 - - type: AtmosDevice - joinedGrid: 30 - uid: 21814 components: - type: Transform @@ -8315,8 +8254,6 @@ entities: - 21813 - 8223 - 8224 - - type: AtmosDevice - joinedGrid: 30 - uid: 21835 components: - type: Transform @@ -8327,8 +8264,6 @@ entities: - 6911 - 21836 - 6900 - - type: AtmosDevice - joinedGrid: 30 - uid: 21840 components: - type: Transform @@ -8340,8 +8275,6 @@ entities: - 21839 - 18730 - 18732 - - type: AtmosDevice - joinedGrid: 30 - uid: 21841 components: - type: Transform @@ -8355,8 +8288,6 @@ entities: - 18758 - 18759 - 21843 - - type: AtmosDevice - joinedGrid: 30 - uid: 21844 components: - type: Transform @@ -8368,8 +8299,6 @@ entities: - 18770 - 18769 - 21845 - - type: AtmosDevice - joinedGrid: 30 - uid: 21846 components: - type: Transform @@ -8381,8 +8310,6 @@ entities: - 18519 - 18662 - 21847 - - type: AtmosDevice - joinedGrid: 30 - uid: 21849 components: - type: Transform @@ -8393,8 +8320,6 @@ entities: - 18655 - 18520 - 21848 - - type: AtmosDevice - joinedGrid: 30 - uid: 21850 components: - type: Transform @@ -8408,8 +8333,6 @@ entities: - 21851 - 18524 - 18629 - - type: AtmosDevice - joinedGrid: 30 - uid: 21855 components: - type: Transform @@ -8423,8 +8346,6 @@ entities: - 21854 - 20351 - 20352 - - type: AtmosDevice - joinedGrid: 30 - uid: 21856 components: - type: Transform @@ -8438,8 +8359,6 @@ entities: - 20348 - 18451 - 18450 - - type: AtmosDevice - joinedGrid: 30 - uid: 21863 components: - type: Transform @@ -8455,8 +8374,6 @@ entities: - 3147 - 3136 - 3135 - - type: AtmosDevice - joinedGrid: 30 - uid: 21868 components: - type: Transform @@ -8476,8 +8393,6 @@ entities: - 3100 - 3111 - 3112 - - type: AtmosDevice - joinedGrid: 30 - uid: 21872 components: - type: Transform @@ -8496,8 +8411,6 @@ entities: - 3267 - 3253 - 3254 - - type: AtmosDevice - joinedGrid: 30 - uid: 21874 components: - type: Transform @@ -8518,8 +8431,6 @@ entities: - 1102 - 3069 - 3068 - - type: AtmosDevice - joinedGrid: 30 - uid: 21878 components: - type: Transform @@ -8535,8 +8446,6 @@ entities: - 3323 - 3318 - 3324 - - type: AtmosDevice - joinedGrid: 30 - uid: 21879 components: - type: Transform @@ -8557,8 +8466,6 @@ entities: - 3327 - 3326 - 3325 - - type: AtmosDevice - joinedGrid: 30 - uid: 21883 components: - type: Transform @@ -8579,8 +8486,6 @@ entities: - 21882 - 3067 - 3066 - - type: AtmosDevice - joinedGrid: 30 - uid: 21886 components: - type: Transform @@ -8601,8 +8506,6 @@ entities: - 21885 - 3065 - 3064 - - type: AtmosDevice - joinedGrid: 30 - uid: 21888 components: - type: Transform @@ -8625,8 +8528,6 @@ entities: - 2452 - 2454 - 2453 - - type: AtmosDevice - joinedGrid: 30 - uid: 21897 components: - type: Transform @@ -8640,8 +8541,6 @@ entities: - 21896 - 2493 - 2492 - - type: AtmosDevice - joinedGrid: 30 - uid: 21899 components: - type: Transform @@ -8653,8 +8552,6 @@ entities: - 21900 - 2490 - 2491 - - type: AtmosDevice - joinedGrid: 30 - uid: 21901 components: - type: Transform @@ -8665,8 +8562,6 @@ entities: - 21902 - 2483 - 2482 - - type: AtmosDevice - joinedGrid: 30 - uid: 21903 components: - type: Transform @@ -8688,8 +8583,6 @@ entities: - 21895 - 2523 - 2525 - - type: AtmosDevice - joinedGrid: 30 - uid: 21906 components: - type: Transform @@ -8703,8 +8596,6 @@ entities: - 1443 - 2545 - 2544 - - type: AtmosDevice - joinedGrid: 30 - uid: 21913 components: - type: Transform @@ -8724,8 +8615,6 @@ entities: - 2670 - 2675 - 2676 - - type: AtmosDevice - joinedGrid: 30 - uid: 21917 components: - type: Transform @@ -8742,8 +8631,6 @@ entities: - 2595 - 2526 - 2524 - - type: AtmosDevice - joinedGrid: 30 - uid: 21921 components: - type: Transform @@ -8754,8 +8641,6 @@ entities: - 2592 - 21920 - 2593 - - type: AtmosDevice - joinedGrid: 30 - uid: 21922 components: - type: Transform @@ -8767,8 +8652,6 @@ entities: - 21923 - 2573 - 2574 - - type: AtmosDevice - joinedGrid: 30 - uid: 21924 components: - type: Transform @@ -8780,8 +8663,6 @@ entities: - 3041 - 3042 - 21925 - - type: AtmosDevice - joinedGrid: 30 - uid: 21928 components: - type: Transform @@ -8798,8 +8679,6 @@ entities: - 6104 - 6109 - 6108 - - type: AtmosDevice - joinedGrid: 30 - uid: 21930 components: - type: Transform @@ -8818,8 +8697,6 @@ entities: - 6092 - 6113 - 6112 - - type: AtmosDevice - joinedGrid: 30 - uid: 21932 components: - type: Transform @@ -8831,8 +8708,6 @@ entities: - 6122 - 21933 - 6123 - - type: AtmosDevice - joinedGrid: 30 - uid: 21939 components: - type: Transform @@ -8844,8 +8719,6 @@ entities: - 6222 - 21940 - 21674 - - type: AtmosDevice - joinedGrid: 30 - uid: 21941 components: - type: Transform @@ -8861,8 +8734,6 @@ entities: - 5650 - 6204 - 6205 - - type: AtmosDevice - joinedGrid: 30 - uid: 21944 components: - type: Transform @@ -8874,8 +8745,6 @@ entities: - 21945 - 6213 - 6214 - - type: AtmosDevice - joinedGrid: 30 - uid: 21946 components: - type: Transform @@ -8890,8 +8759,6 @@ entities: - 6265 - 6268 - 6245 - - type: AtmosDevice - joinedGrid: 30 - uid: 22028 components: - type: Transform @@ -8905,8 +8772,6 @@ entities: - 6538 - 12605 - 12606 - - type: AtmosDevice - joinedGrid: 30 - uid: 22030 components: - type: Transform @@ -8924,8 +8789,6 @@ entities: - 12539 - 12538 - 11275 - - type: AtmosDevice - joinedGrid: 30 - uid: 22035 components: - type: Transform @@ -8940,8 +8803,6 @@ entities: - 22036 - 12490 - 12491 - - type: AtmosDevice - joinedGrid: 30 - uid: 22038 components: - type: Transform @@ -8964,8 +8825,6 @@ entities: - 22039 - 12537 - 12536 - - type: AtmosDevice - joinedGrid: 30 - uid: 22043 components: - type: Transform @@ -8976,8 +8835,6 @@ entities: - 22042 - 13799 - 13788 - - type: AtmosDevice - joinedGrid: 30 - uid: 22045 components: - type: Transform @@ -8988,8 +8845,6 @@ entities: - 21553 - 13593 - 22044 - - type: AtmosDevice - joinedGrid: 30 - uid: 22047 components: - type: Transform @@ -9001,8 +8856,6 @@ entities: - 22046 - 21549 - 21545 - - type: AtmosDevice - joinedGrid: 30 - uid: 22048 components: - type: Transform @@ -9021,8 +8874,6 @@ entities: - 20954 - 13084 - 13004 - - type: AtmosDevice - joinedGrid: 30 - uid: 22052 components: - type: Transform @@ -9036,8 +8887,6 @@ entities: - 22053 - 12959 - 12813 - - type: AtmosDevice - joinedGrid: 30 - uid: 22054 components: - type: Transform @@ -9058,8 +8907,6 @@ entities: - 13002 - 13086 - 13003 - - type: AtmosDevice - joinedGrid: 30 - uid: 22057 components: - type: Transform @@ -9070,8 +8917,6 @@ entities: - 22058 - 13360 - 12824 - - type: AtmosDevice - joinedGrid: 30 - uid: 22062 components: - type: Transform @@ -9081,8 +8926,6 @@ entities: - type: DeviceList devices: - 22063 - - type: AtmosDevice - joinedGrid: 30 - uid: 22065 components: - type: Transform @@ -9102,8 +8945,6 @@ entities: - 22066 - 11223 - 11224 - - type: AtmosDevice - joinedGrid: 30 - uid: 22067 components: - type: Transform @@ -9121,8 +8962,6 @@ entities: - 12620 - 13335 - 13336 - - type: AtmosDevice - joinedGrid: 30 - uid: 22070 components: - type: Transform @@ -9134,8 +8973,6 @@ entities: - 22071 - 13006 - 9161 - - type: AtmosDevice - joinedGrid: 30 - uid: 22073 components: - type: Transform @@ -9148,8 +8985,6 @@ entities: - 22072 - 3357 - 3358 - - type: AtmosDevice - joinedGrid: 30 - uid: 22075 components: - type: Transform @@ -9167,8 +9002,6 @@ entities: - 22077 - 3400 - 3401 - - type: AtmosDevice - joinedGrid: 30 - uid: 22078 components: - type: Transform @@ -9179,8 +9012,6 @@ entities: - 3482 - 22079 - 3479 - - type: AtmosDevice - joinedGrid: 30 - uid: 22081 components: - type: Transform @@ -9199,8 +9030,6 @@ entities: - 651 - 3485 - 3486 - - type: AtmosDevice - joinedGrid: 30 - uid: 22083 components: - type: Transform @@ -9212,8 +9041,6 @@ entities: - 22084 - 3484 - 3481 - - type: AtmosDevice - joinedGrid: 30 - proto: AirCanister entities: - uid: 2087 @@ -9221,71 +9048,51 @@ entities: - type: Transform pos: -7.5,64.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 11422 components: - type: Transform pos: 1.5,-16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12135 components: - type: Transform pos: 22.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15156 components: - type: Transform pos: 16.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15645 components: - type: Transform pos: 22.5,-14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 16895 components: - type: Transform pos: -44.5,25.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 18782 components: - type: Transform pos: -66.5,-65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 18783 components: - type: Transform pos: -65.5,-65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 18784 components: - type: Transform pos: -64.5,-65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 22767 components: - type: Transform pos: -27.5,-63.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: Airlock entities: - uid: 752 @@ -11351,13 +11158,6 @@ entities: - type: Transform pos: -16.5,-5.5 parent: 30 - - uid: 6878 - components: - - type: MetaData - name: Morgue - - type: Transform - pos: -22.5,0.5 - parent: 30 - uid: 6879 components: - type: MetaData @@ -11416,6 +11216,13 @@ entities: - type: Transform pos: -23.5,-22.5 parent: 30 +- proto: AirlockMedicalMorgueLocked + entities: + - uid: 6878 + components: + - type: Transform + pos: -22.5,0.5 + parent: 30 - proto: AirlockQuartermasterLocked entities: - uid: 11196 @@ -13842,15 +13649,11 @@ entities: rot: -1.5707963267948966 rad pos: -4.5,-8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9809 components: - type: Transform pos: 15.5,-21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: Beaker entities: - uid: 8000 @@ -14599,11 +14402,15 @@ entities: - type: Transform pos: -49.5,25.5 parent: 30 + - type: SpamEmitSound + enabled: False - uid: 2384 components: - type: Transform pos: -44.5,67.5 parent: 30 + - type: SpamEmitSound + enabled: False - proto: BookAtmosAirAlarms entities: - uid: 22308 @@ -14639,22 +14446,18 @@ entities: - type: Transform pos: -15.506373,7.7216425 parent: 30 -- proto: BookDetective +- proto: BookRandomStory entities: - uid: 21487 components: - type: Transform pos: 8.515235,-13.437349 parent: 30 -- proto: BookEscalation - entities: - uid: 22306 components: - type: Transform pos: -54.57496,-63.325558 parent: 30 -- proto: BookEscalationSecurity - entities: - uid: 22307 components: - type: Transform @@ -43355,29 +43158,21 @@ entities: - type: Transform pos: 27.5,-26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9115 components: - type: Transform pos: 18.5,-17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9116 components: - type: Transform pos: 19.5,-17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 10430 components: - type: Transform pos: -14.5,-47.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: Carpet entities: - uid: 626 @@ -49727,18 +49522,6 @@ entities: - type: Transform pos: -12.663173,-12.436495 parent: 30 -- proto: chem_master - entities: - - uid: 6690 - components: - - type: Transform - pos: -9.5,-6.5 - parent: 30 - - uid: 6691 - components: - - type: Transform - pos: -5.5,-6.5 - parent: 30 - proto: ChemDispenser entities: - uid: 6692 @@ -49758,6 +49541,18 @@ entities: - type: Transform pos: -7.5,-7.5 parent: 30 +- proto: ChemMaster + entities: + - uid: 6690 + components: + - type: Transform + pos: -9.5,-6.5 + parent: 30 + - uid: 6691 + components: + - type: Transform + pos: -5.5,-6.5 + parent: 30 - proto: ChessBoard entities: - uid: 16771 @@ -52024,13 +51819,6 @@ entities: - type: Transform pos: -0.618871,-7.128199 parent: 30 -- proto: ClothingHeadHatHairflower - entities: - - uid: 5626 - components: - - type: Transform - pos: 7.8005,42.792442 - parent: 30 - proto: ClothingHeadHatHetmanHat entities: - uid: 13666 @@ -53275,12 +53063,6 @@ entities: rot: -1.5707963267948966 rad pos: 7.5,-28.5 parent: 30 - - uid: 13073 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 25.5,14.5 - parent: 30 - uid: 17345 components: - type: Transform @@ -53591,6 +53373,14 @@ entities: rot: 1.5707963267948966 rad pos: 26.5,9.5 parent: 30 +- proto: ComputerRoboticsControl + entities: + - uid: 10251 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 25.5,14.5 + parent: 30 - proto: ComputerSalvageExpedition entities: - uid: 7266 @@ -54765,15 +54555,11 @@ entities: - type: Transform pos: -33.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 6784 components: - type: Transform pos: -31.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: CryoxadoneBeakerSmall entities: - uid: 8274 @@ -61879,8 +61665,6 @@ entities: - 2648 - 1443 - 21911 - - type: AtmosDevice - joinedGrid: 30 - uid: 4354 components: - type: Transform @@ -61897,16 +61681,12 @@ entities: - 13644 - 17059 - 17625 - - type: AtmosDevice - joinedGrid: 30 - uid: 8248 components: - type: Transform rot: 3.141592653589793 rad pos: -15.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8249 components: - type: Transform @@ -61920,16 +61700,12 @@ entities: - 7960 - 7007 - 7200 - - type: AtmosDevice - joinedGrid: 30 - uid: 8259 components: - type: Transform rot: -1.5707963267948966 rad pos: -32.5,-4.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8262 components: - type: Transform @@ -61942,8 +61718,6 @@ entities: - 8288 - 7155 - 7156 - - type: AtmosDevice - joinedGrid: 30 - uid: 9712 components: - type: Transform @@ -61954,8 +61728,6 @@ entities: devices: - 7960 - 7116 - - type: AtmosDevice - joinedGrid: 30 - uid: 17226 components: - type: Transform @@ -61968,8 +61740,6 @@ entities: - 15117 - 15116 - 13644 - - type: AtmosDevice - joinedGrid: 30 - uid: 20334 components: - type: Transform @@ -61982,8 +61752,6 @@ entities: - 11262 - 11263 - 11264 - - type: AtmosDevice - joinedGrid: 30 - uid: 20357 components: - type: Transform @@ -61998,8 +61766,6 @@ entities: - 11341 - 11342 - 20355 - - type: AtmosDevice - joinedGrid: 30 - uid: 21739 components: - type: Transform @@ -62011,8 +61777,6 @@ entities: - 11341 - 11342 - 20358 - - type: AtmosDevice - joinedGrid: 30 - uid: 21746 components: - type: Transform @@ -62028,8 +61792,6 @@ entities: - 9305 - 9304 - 9306 - - type: AtmosDevice - joinedGrid: 30 - uid: 21748 components: - type: Transform @@ -62044,8 +61806,6 @@ entities: - 8626 - 7731 - 21749 - - type: AtmosDevice - joinedGrid: 30 - uid: 21752 components: - type: Transform @@ -62059,8 +61819,6 @@ entities: - 9303 - 9301 - 9300 - - type: AtmosDevice - joinedGrid: 30 - uid: 21758 components: - type: Transform @@ -62076,8 +61834,6 @@ entities: - 9307 - 9308 - 9309 - - type: AtmosDevice - joinedGrid: 30 - uid: 21769 components: - type: Transform @@ -62092,8 +61848,6 @@ entities: - 11762 - 11803 - 12039 - - type: AtmosDevice - joinedGrid: 30 - uid: 21770 components: - type: Transform @@ -62111,8 +61865,6 @@ entities: - 8365 - 8364 - 21772 - - type: AtmosDevice - joinedGrid: 30 - uid: 21775 components: - type: Transform @@ -62128,8 +61880,6 @@ entities: - 8369 - 8367 - 21773 - - type: AtmosDevice - joinedGrid: 30 - uid: 21776 components: - type: Transform @@ -62148,8 +61898,6 @@ entities: - 8467 - 8468 - 21778 - - type: AtmosDevice - joinedGrid: 30 - uid: 21779 components: - type: Transform @@ -62165,8 +61913,6 @@ entities: - 6619 - 8467 - 8468 - - type: AtmosDevice - joinedGrid: 30 - uid: 21784 components: - type: Transform @@ -62181,8 +61927,6 @@ entities: - 11774 - 11705 - 21782 - - type: AtmosDevice - joinedGrid: 30 - uid: 21786 components: - type: Transform @@ -62196,8 +61940,6 @@ entities: - 11774 - 954 - 21787 - - type: AtmosDevice - joinedGrid: 30 - uid: 21793 components: - type: Transform @@ -62208,8 +61950,6 @@ entities: - 8473 - 8474 - 21792 - - type: AtmosDevice - joinedGrid: 30 - uid: 21795 components: - type: Transform @@ -62223,8 +61963,6 @@ entities: - 24 - 23 - 21794 - - type: AtmosDevice - joinedGrid: 30 - uid: 21798 components: - type: Transform @@ -62253,8 +61991,6 @@ entities: - 601 - 600 - 21799 - - type: AtmosDevice - joinedGrid: 30 - uid: 21800 components: - type: Transform @@ -62283,15 +62019,11 @@ entities: - 601 - 600 - 21799 - - type: AtmosDevice - joinedGrid: 30 - uid: 21802 components: - type: Transform pos: -7.5,-0.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 21852 components: - type: Transform @@ -62302,8 +62034,6 @@ entities: - 20349 - 20350 - 21851 - - type: AtmosDevice - joinedGrid: 30 - uid: 21853 components: - type: Transform @@ -62314,8 +62044,6 @@ entities: - 21854 - 20351 - 20352 - - type: AtmosDevice - joinedGrid: 30 - uid: 21857 components: - type: Transform @@ -62327,8 +62055,6 @@ entities: - 21859 - 20347 - 20348 - - type: AtmosDevice - joinedGrid: 30 - uid: 21858 components: - type: Transform @@ -62339,8 +62065,6 @@ entities: - 21859 - 20347 - 20348 - - type: AtmosDevice - joinedGrid: 30 - uid: 21866 components: - type: Transform @@ -62356,8 +62080,6 @@ entities: - 1410 - 21867 - 10401 - - type: AtmosDevice - joinedGrid: 30 - uid: 21871 components: - type: Transform @@ -62372,8 +62094,6 @@ entities: - 1412 - 1413 - 21870 - - type: AtmosDevice - joinedGrid: 30 - uid: 21873 components: - type: Transform @@ -62391,8 +62111,6 @@ entities: - 1104 - 1103 - 1102 - - type: AtmosDevice - joinedGrid: 30 - uid: 21876 components: - type: Transform @@ -62405,8 +62123,6 @@ entities: - 1405 - 1406 - 1407 - - type: AtmosDevice - joinedGrid: 30 - uid: 21880 components: - type: Transform @@ -62423,8 +62139,6 @@ entities: - 31 - 29 - 28 - - type: AtmosDevice - joinedGrid: 30 - uid: 21884 components: - type: Transform @@ -62443,8 +62157,6 @@ entities: - 1412 - 1413 - 21882 - - type: AtmosDevice - joinedGrid: 30 - uid: 21887 components: - type: Transform @@ -62463,8 +62175,6 @@ entities: - 20384 - 20383 - 21885 - - type: AtmosDevice - joinedGrid: 30 - uid: 21889 components: - type: Transform @@ -62483,8 +62193,6 @@ entities: - 20385 - 20383 - 21890 - - type: AtmosDevice - joinedGrid: 30 - uid: 21898 components: - type: Transform @@ -62497,8 +62205,6 @@ entities: - 2745 - 2744 - 21896 - - type: AtmosDevice - joinedGrid: 30 - uid: 21904 components: - type: Transform @@ -62519,8 +62225,6 @@ entities: - 21893 - 21894 - 21895 - - type: AtmosDevice - joinedGrid: 30 - uid: 21907 components: - type: Transform @@ -62532,8 +62236,6 @@ entities: - 2005 - 2006 - 1443 - - type: AtmosDevice - joinedGrid: 30 - uid: 21912 components: - type: Transform @@ -62549,8 +62251,6 @@ entities: - 2222 - 2221 - 21914 - - type: AtmosDevice - joinedGrid: 30 - uid: 21915 components: - type: Transform @@ -62562,8 +62262,6 @@ entities: - 4891 - 4892 - 21916 - - type: AtmosDevice - joinedGrid: 30 - uid: 21918 components: - type: Transform @@ -62576,8 +62274,6 @@ entities: - 20387 - 20388 - 21919 - - type: AtmosDevice - joinedGrid: 30 - uid: 21927 components: - type: Transform @@ -62592,8 +62288,6 @@ entities: - 6102 - 6103 - 6104 - - type: AtmosDevice - joinedGrid: 30 - uid: 21929 components: - type: Transform @@ -62611,8 +62305,6 @@ entities: - 6094 - 6093 - 6092 - - type: AtmosDevice - joinedGrid: 30 - uid: 21935 components: - type: Transform @@ -62624,8 +62316,6 @@ entities: - 21938 - 5649 - 5650 - - type: AtmosDevice - joinedGrid: 30 - uid: 21936 components: - type: Transform @@ -62637,8 +62327,6 @@ entities: - 5651 - 5652 - 21937 - - type: AtmosDevice - joinedGrid: 30 - uid: 21942 components: - type: Transform @@ -62652,8 +62340,6 @@ entities: - 5652 - 5649 - 5650 - - type: AtmosDevice - joinedGrid: 30 - uid: 22031 components: - type: Transform @@ -62669,8 +62355,6 @@ entities: - 6537 - 6538 - 11275 - - type: AtmosDevice - joinedGrid: 30 - uid: 22033 components: - type: Transform @@ -62682,8 +62366,6 @@ entities: - 22032 - 5441 - 923 - - type: AtmosDevice - joinedGrid: 30 - uid: 22034 components: - type: Transform @@ -62699,8 +62381,6 @@ entities: - 1538 - 5441 - 923 - - type: AtmosDevice - joinedGrid: 30 - uid: 22037 components: - type: Transform @@ -62722,8 +62402,6 @@ entities: - 6540 - 6541 - 22039 - - type: AtmosDevice - joinedGrid: 30 - uid: 22040 components: - type: Transform @@ -62735,8 +62413,6 @@ entities: - 6536 - 6537 - 6538 - - type: AtmosDevice - joinedGrid: 30 - uid: 22049 components: - type: Transform @@ -62753,8 +62429,6 @@ entities: - 20952 - 20953 - 20954 - - type: AtmosDevice - joinedGrid: 30 - uid: 22051 components: - type: Transform @@ -62767,8 +62441,6 @@ entities: - 20953 - 20954 - 22053 - - type: AtmosDevice - joinedGrid: 30 - uid: 22055 components: - type: Transform @@ -62784,8 +62456,6 @@ entities: - 12858 - 13391 - 22056 - - type: AtmosDevice - joinedGrid: 30 - uid: 22060 components: - type: Transform @@ -62796,8 +62466,6 @@ entities: - 12858 - 13391 - 22061 - - type: AtmosDevice - joinedGrid: 30 - uid: 22064 components: - type: Transform @@ -62815,8 +62483,6 @@ entities: - 12626 - 12624 - 22066 - - type: AtmosDevice - joinedGrid: 30 - uid: 22068 components: - type: Transform @@ -62832,8 +62498,6 @@ entities: - 12622 - 12621 - 12620 - - type: AtmosDevice - joinedGrid: 30 - uid: 22074 components: - type: Transform @@ -62844,8 +62508,6 @@ entities: - 320 - 21456 - 22072 - - type: AtmosDevice - joinedGrid: 30 - uid: 22076 components: - type: Transform @@ -62861,8 +62523,6 @@ entities: - 20378 - 20377 - 22077 - - type: AtmosDevice - joinedGrid: 30 - uid: 22080 components: - type: Transform @@ -62879,8 +62539,6 @@ entities: - 649 - 650 - 651 - - type: AtmosDevice - joinedGrid: 30 - uid: 22085 components: - type: Transform @@ -62910,8 +62568,6 @@ entities: - 601 - 600 - 22086 - - type: AtmosDevice - joinedGrid: 30 - proto: FireAxeCabinetFilled entities: - uid: 5846 @@ -65014,6 +64670,13 @@ entities: - type: Transform pos: 43.4532,20.776619 parent: 30 +- proto: FoodPoppy + entities: + - uid: 5626 + components: + - type: Transform + pos: 7.8005,42.792442 + parent: 30 - proto: FoodTinBeansTrash entities: - uid: 16164 @@ -65067,8 +64730,6 @@ entities: rot: 1.5707963267948966 rad pos: -32.5,-11.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - proto: GasMinerCarbonDioxide @@ -65078,8 +64739,6 @@ entities: - type: Transform pos: 26.5,-26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasMinerNitrogen entities: - uid: 8689 @@ -65087,8 +64746,6 @@ entities: - type: Transform pos: 26.5,-22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasMinerOxygen entities: - uid: 8690 @@ -65096,8 +64753,6 @@ entities: - type: Transform pos: 26.5,-24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasMinerWaterVapor entities: - uid: 8692 @@ -65105,8 +64760,6 @@ entities: - type: Transform pos: 26.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasMixer entities: - uid: 12927 @@ -65115,8 +64768,6 @@ entities: rot: -1.5707963267948966 rad pos: 36.5,9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasOutletInjector entities: - uid: 8693 @@ -65125,56 +64776,42 @@ entities: rot: -1.5707963267948966 rad pos: 25.5,-22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8695 components: - type: Transform rot: -1.5707963267948966 rad pos: 25.5,-24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8702 components: - type: Transform rot: -1.5707963267948966 rad pos: 25.5,-34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8703 components: - type: Transform rot: -1.5707963267948966 rad pos: 25.5,-32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8704 components: - type: Transform rot: -1.5707963267948966 rad pos: 25.5,-30.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8705 components: - type: Transform rot: -1.5707963267948966 rad pos: 25.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8706 components: - type: Transform rot: -1.5707963267948966 rad pos: 25.5,-26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasPassiveVent entities: - uid: 368 @@ -65183,129 +64820,95 @@ entities: rot: 1.5707963267948966 rad pos: -17.5,16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 481 components: - type: Transform rot: -1.5707963267948966 rad pos: -15.5,16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 3125 components: - type: Transform rot: -1.5707963267948966 rad pos: -4.5,-57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 3126 components: - type: Transform rot: -1.5707963267948966 rad pos: -4.5,-58.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 3221 components: - type: Transform rot: -1.5707963267948966 rad pos: -4.5,-59.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7099 components: - type: Transform rot: 1.5707963267948966 rad pos: -10.5,-57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7100 components: - type: Transform rot: 1.5707963267948966 rad pos: -10.5,-58.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8566 components: - type: Transform rot: -1.5707963267948966 rad pos: 23.5,-38.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8694 components: - type: Transform pos: 27.5,-22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8696 components: - type: Transform pos: 27.5,-24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8697 components: - type: Transform pos: 27.5,-26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8698 components: - type: Transform pos: 27.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8699 components: - type: Transform pos: 27.5,-30.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8700 components: - type: Transform pos: 27.5,-32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8701 components: - type: Transform pos: 27.5,-34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9018 components: - type: Transform rot: 1.5707963267948966 rad pos: 13.5,-36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9019 components: - type: Transform rot: -1.5707963267948966 rad pos: 11.5,-36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#947507FF' - uid: 9622 @@ -65314,30 +64917,22 @@ entities: rot: 1.5707963267948966 rad pos: -10.5,-59.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12869 components: - type: Transform pos: 35.5,12.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12870 components: - type: Transform pos: 38.5,12.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 21275 components: - type: Transform rot: 1.5707963267948966 rad pos: 23.5,-20.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasPipeBend entities: - uid: 866 @@ -75997,10 +75592,14 @@ entities: - uid: 8933 components: - type: Transform + anchored: False pos: 7.5,-22.5 parent: 30 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 8934 components: - type: Transform @@ -77107,10 +76706,14 @@ entities: - uid: 9980 components: - type: Transform + anchored: False pos: 5.5,-22.5 parent: 30 - type: AtmosPipeColor color: '#FF1212FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 9982 components: - type: Transform @@ -83814,9 +83417,13 @@ entities: - uid: 925 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: -11.5,-56.5 parent: 30 + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 962 components: - type: Transform @@ -86686,56 +86293,42 @@ entities: rot: 3.141592653589793 rad pos: -10.5,-48.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 6711 components: - type: Transform rot: 3.141592653589793 rad pos: -11.5,-48.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 6757 components: - type: Transform rot: 1.5707963267948966 rad pos: -38.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 6799 components: - type: Transform rot: 1.5707963267948966 rad pos: -38.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8800 components: - type: Transform rot: 1.5707963267948966 rad pos: -10.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8801 components: - type: Transform rot: -1.5707963267948966 rad pos: -4.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9064 components: - type: Transform rot: -1.5707963267948966 rad pos: -11.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9676 @@ -86744,8 +86337,6 @@ entities: rot: 1.5707963267948966 rad pos: -3.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 10390 @@ -86754,8 +86345,6 @@ entities: rot: 1.5707963267948966 rad pos: 20.5,-17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10392 @@ -86764,8 +86353,6 @@ entities: rot: 1.5707963267948966 rad pos: 20.5,-16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11744 @@ -86774,8 +86361,6 @@ entities: rot: 1.5707963267948966 rad pos: 5.5,-25.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11869 @@ -86784,8 +86369,6 @@ entities: rot: 1.5707963267948966 rad pos: 5.5,-24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12867 @@ -86794,63 +86377,47 @@ entities: rot: 3.141592653589793 rad pos: 39.5,9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12918 components: - type: Transform rot: -1.5707963267948966 rad pos: 37.5,9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12921 components: - type: Transform rot: 3.141592653589793 rad pos: 38.5,9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 16775 components: - type: Transform pos: 36.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 18776 components: - type: Transform rot: 3.141592653589793 rad pos: -64.5,-65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 18777 components: - type: Transform rot: 3.141592653589793 rad pos: -65.5,-65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 18778 components: - type: Transform rot: 3.141592653589793 rad pos: -66.5,-65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 19440 components: - type: Transform rot: 1.5707963267948966 rad pos: -5.5,-8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasPressurePump entities: - uid: 7140 @@ -86861,24 +86428,18 @@ entities: rot: 1.5707963267948966 rad pos: -36.5,-11.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7911 components: - type: Transform rot: -1.5707963267948966 rad pos: 21.5,-35.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7913 components: - type: Transform rot: -1.5707963267948966 rad pos: 21.5,-31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7962 components: - type: MetaData @@ -86886,8 +86447,6 @@ entities: - type: Transform pos: -30.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8781 @@ -86896,8 +86455,6 @@ entities: rot: -1.5707963267948966 rad pos: 16.5,-24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8792 @@ -86906,40 +86463,30 @@ entities: rot: -1.5707963267948966 rad pos: 21.5,-29.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8793 components: - type: Transform rot: -1.5707963267948966 rad pos: 21.5,-27.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8796 components: - type: Transform rot: -1.5707963267948966 rad pos: 21.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8797 components: - type: Transform rot: -1.5707963267948966 rad pos: 21.5,-25.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8802 components: - type: Transform rot: -1.5707963267948966 rad pos: 21.5,-33.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9013 components: - type: MetaData @@ -86948,8 +86495,6 @@ entities: rot: -1.5707963267948966 rad pos: 17.5,-36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9028 components: - type: MetaData @@ -86957,8 +86502,6 @@ entities: - type: Transform pos: 6.5,-36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#EB9834FF' - uid: 9066 @@ -86967,8 +86510,6 @@ entities: rot: 1.5707963267948966 rad pos: -9.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9102 @@ -86977,8 +86518,6 @@ entities: rot: -1.5707963267948966 rad pos: -5.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 9862 @@ -86989,8 +86528,6 @@ entities: rot: -1.5707963267948966 rad pos: -1.5,-54.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#34E5EBFF' - uid: 12922 @@ -86999,23 +86536,17 @@ entities: rot: 3.141592653589793 rad pos: 35.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 13354 components: - type: Transform pos: 38.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 18772 components: - type: Transform rot: 3.141592653589793 rad pos: -64.5,-62.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - proto: GasThermoMachineFreezer @@ -87025,22 +86556,16 @@ entities: - type: Transform pos: -16.5,17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 901 components: - type: Transform pos: -36.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 6659 components: - type: Transform pos: -10.5,-47.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7109 components: - type: Transform @@ -87049,8 +86574,6 @@ entities: parent: 30 - type: AtmosPipeColor color: '#03FCD3FF' - - type: AtmosDevice - joinedGrid: 30 - uid: 7112 components: - type: Transform @@ -87059,46 +86582,34 @@ entities: parent: 30 - type: AtmosPipeColor color: '#03FCD3FF' - - type: AtmosDevice - joinedGrid: 30 - uid: 7598 components: - type: Transform rot: 3.141592653589793 rad pos: -34.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12038 components: - type: Transform rot: -1.5707963267948966 rad pos: 17.5,-33.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12084 components: - type: Transform rot: -1.5707963267948966 rad pos: 17.5,-34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12749 components: - type: Transform pos: 31.5,12.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12868 components: - type: Transform pos: 39.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasThermoMachineHeater entities: - uid: 6642 @@ -87106,16 +86617,12 @@ entities: - type: Transform pos: -11.5,-47.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12085 components: - type: Transform rot: -1.5707963267948966 rad pos: 17.5,-35.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: GasValve entities: - uid: 6714 @@ -87125,8 +86632,6 @@ entities: parent: 30 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7222 @@ -87139,8 +86644,6 @@ entities: parent: 30 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 8278 @@ -87153,8 +86656,6 @@ entities: parent: 30 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 9657 @@ -87164,8 +86665,6 @@ entities: parent: 30 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9807 @@ -87176,8 +86675,6 @@ entities: parent: 30 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 30 - uid: 9808 components: - type: Transform @@ -87186,8 +86683,6 @@ entities: parent: 30 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 30 - uid: 21274 components: - type: MetaData @@ -87198,8 +86693,6 @@ entities: parent: 30 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - proto: GasVentPump @@ -87210,8 +86703,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2454 @@ -87220,8 +86711,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2482 @@ -87230,8 +86719,6 @@ entities: rot: 3.141592653589793 rad pos: -49.5,32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2491 @@ -87240,8 +86727,6 @@ entities: rot: 3.141592653589793 rad pos: -41.5,32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2493 @@ -87249,8 +86734,6 @@ entities: - type: Transform pos: -45.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2503 @@ -87259,8 +86742,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2523 @@ -87268,8 +86749,6 @@ entities: - type: Transform pos: -33.5,43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2524 @@ -87278,8 +86757,6 @@ entities: rot: -1.5707963267948966 rad pos: -30.5,46.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2544 @@ -87288,8 +86765,6 @@ entities: rot: 1.5707963267948966 rad pos: -41.5,48.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2551 @@ -87297,8 +86772,6 @@ entities: - type: Transform pos: -40.5,51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2573 @@ -87307,8 +86780,6 @@ entities: rot: -1.5707963267948966 rad pos: -25.5,49.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2592 @@ -87317,8 +86788,6 @@ entities: rot: 1.5707963267948966 rad pos: -31.5,57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2594 @@ -87327,8 +86796,6 @@ entities: rot: 3.141592653589793 rad pos: -30.5,52.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2638 @@ -87337,8 +86804,6 @@ entities: rot: 3.141592653589793 rad pos: -38.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2639 @@ -87347,8 +86812,6 @@ entities: rot: 3.141592653589793 rad pos: -42.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2640 @@ -87357,8 +86820,6 @@ entities: rot: 3.141592653589793 rad pos: -46.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2644 @@ -87366,8 +86827,6 @@ entities: - type: Transform pos: -41.5,43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2669 @@ -87376,8 +86835,6 @@ entities: rot: 1.5707963267948966 rad pos: -47.5,49.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2676 @@ -87386,8 +86843,6 @@ entities: rot: 1.5707963267948966 rad pos: -50.5,52.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2705 @@ -87395,8 +86850,6 @@ entities: - type: Transform pos: -48.5,68.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2706 @@ -87405,8 +86858,6 @@ entities: rot: 3.141592653589793 rad pos: -48.5,66.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2707 @@ -87415,8 +86866,6 @@ entities: rot: -1.5707963267948966 rad pos: -49.5,61.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2708 @@ -87425,8 +86874,6 @@ entities: rot: -1.5707963267948966 rad pos: -45.5,61.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2734 @@ -87435,8 +86882,6 @@ entities: rot: 1.5707963267948966 rad pos: -47.5,56.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2743 @@ -87445,8 +86890,6 @@ entities: rot: -1.5707963267948966 rad pos: -28.5,42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2862 @@ -87454,8 +86897,6 @@ entities: - type: Transform pos: -8.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3042 @@ -87464,8 +86905,6 @@ entities: rot: 1.5707963267948966 rad pos: -26.5,31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3050 @@ -87474,8 +86913,6 @@ entities: rot: 3.141592653589793 rad pos: -30.5,22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3056 @@ -87484,8 +86921,6 @@ entities: rot: 3.141592653589793 rad pos: -26.5,23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3062 @@ -87494,8 +86929,6 @@ entities: rot: 3.141592653589793 rad pos: -22.5,23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3064 @@ -87504,8 +86937,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3066 @@ -87514,8 +86945,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3069 @@ -87524,8 +86953,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3077 @@ -87533,8 +86960,6 @@ entities: - type: Transform pos: -40.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3099 @@ -87542,8 +86967,6 @@ entities: - type: Transform pos: -42.5,6.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3111 @@ -87552,8 +86975,6 @@ entities: rot: 3.141592653589793 rad pos: -39.5,0.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3135 @@ -87562,8 +86983,6 @@ entities: rot: 3.141592653589793 rad pos: -53.5,9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3148 @@ -87572,8 +86991,6 @@ entities: rot: 1.5707963267948966 rad pos: -45.5,4.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3171 @@ -87582,8 +86999,6 @@ entities: rot: 1.5707963267948966 rad pos: -45.5,-2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3228 @@ -87592,8 +87007,6 @@ entities: rot: -1.5707963267948966 rad pos: -31.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3230 @@ -87601,8 +87014,6 @@ entities: - type: Transform pos: -32.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3253 @@ -87610,8 +87021,6 @@ entities: - type: Transform pos: -43.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3266 @@ -87619,8 +87028,6 @@ entities: - type: Transform pos: -44.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3302 @@ -87629,8 +87036,6 @@ entities: rot: 1.5707963267948966 rad pos: -60.5,13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3303 @@ -87639,8 +87044,6 @@ entities: rot: 1.5707963267948966 rad pos: -60.5,15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3304 @@ -87649,8 +87052,6 @@ entities: rot: 1.5707963267948966 rad pos: -60.5,21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3305 @@ -87659,8 +87060,6 @@ entities: rot: 1.5707963267948966 rad pos: -60.5,23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3323 @@ -87669,8 +87068,6 @@ entities: rot: -1.5707963267948966 rad pos: -56.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3324 @@ -87678,8 +87075,6 @@ entities: - type: Transform pos: -50.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3325 @@ -87687,8 +87082,6 @@ entities: - type: Transform pos: -27.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3327 @@ -87696,8 +87089,6 @@ entities: - type: Transform pos: -17.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3357 @@ -87706,8 +87097,6 @@ entities: rot: -1.5707963267948966 rad pos: -26.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3376 @@ -87715,8 +87104,6 @@ entities: - type: Transform pos: -26.5,16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3401 @@ -87725,8 +87112,6 @@ entities: rot: -1.5707963267948966 rad pos: -13.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3407 @@ -87734,8 +87119,6 @@ entities: - type: Transform pos: -10.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3410 @@ -87743,8 +87126,6 @@ entities: - type: Transform pos: 5.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3422 @@ -87753,8 +87134,6 @@ entities: rot: -1.5707963267948966 rad pos: -0.5,7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3469 @@ -87762,8 +87141,6 @@ entities: - type: Transform pos: -16.5,15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3479 @@ -87772,8 +87149,6 @@ entities: rot: 3.141592653589793 rad pos: -8.5,13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3480 @@ -87781,8 +87156,6 @@ entities: - type: Transform pos: -9.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3481 @@ -87791,8 +87164,6 @@ entities: rot: -1.5707963267948966 rad pos: 3.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3485 @@ -87801,8 +87172,6 @@ entities: rot: 3.141592653589793 rad pos: -0.5,13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6109 @@ -87810,8 +87179,6 @@ entities: - type: Transform pos: -23.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6113 @@ -87819,8 +87186,6 @@ entities: - type: Transform pos: 3.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6123 @@ -87829,8 +87194,6 @@ entities: rot: 3.141592653589793 rad pos: -0.5,21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6205 @@ -87838,8 +87201,6 @@ entities: - type: Transform pos: -9.5,43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6214 @@ -87848,8 +87209,6 @@ entities: rot: 3.141592653589793 rad pos: -7.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6223 @@ -87858,8 +87217,6 @@ entities: rot: -1.5707963267948966 rad pos: 0.5,31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6229 @@ -87868,8 +87225,6 @@ entities: rot: 1.5707963267948966 rad pos: -19.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6239 @@ -87878,8 +87233,6 @@ entities: rot: 1.5707963267948966 rad pos: -25.5,37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6245 @@ -87888,8 +87241,6 @@ entities: rot: 3.141592653589793 rad pos: -20.5,31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6246 @@ -87898,8 +87249,6 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6834 @@ -87908,8 +87257,6 @@ entities: rot: 3.141592653589793 rad pos: -25.5,-22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6900 @@ -87918,8 +87265,6 @@ entities: rot: -1.5707963267948966 rad pos: -28.5,-1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6920 @@ -87928,8 +87273,6 @@ entities: rot: 1.5707963267948966 rad pos: -33.5,-16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6939 @@ -87938,8 +87281,6 @@ entities: rot: 1.5707963267948966 rad pos: -18.5,-2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7115 @@ -87947,8 +87288,6 @@ entities: - type: Transform pos: -28.5,-20.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7136 @@ -87959,8 +87298,6 @@ entities: - type: DeviceNetwork deviceLists: - 8267 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7137 @@ -87971,8 +87308,6 @@ entities: - type: DeviceNetwork deviceLists: - 8267 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7340 @@ -87980,8 +87315,6 @@ entities: - type: Transform pos: -12.5,-1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7373 @@ -87990,8 +87323,6 @@ entities: rot: -1.5707963267948966 rad pos: -7.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7424 @@ -88000,8 +87331,6 @@ entities: rot: 1.5707963267948966 rad pos: -35.5,-1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7569 @@ -88013,8 +87342,6 @@ entities: - type: DeviceNetwork deviceLists: - 8254 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8033 @@ -88022,8 +87349,6 @@ entities: - type: Transform pos: -13.5,-8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8100 @@ -88032,8 +87357,6 @@ entities: rot: 3.141592653589793 rad pos: -13.5,-20.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8224 @@ -88041,8 +87364,6 @@ entities: - type: Transform pos: -22.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8316 @@ -88051,8 +87372,6 @@ entities: rot: -1.5707963267948966 rad pos: -29.5,-7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9046 @@ -88060,8 +87379,6 @@ entities: - type: Transform pos: -25.5,-15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9686 @@ -88073,8 +87390,6 @@ entities: - type: DeviceNetwork deviceLists: - 9671 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9811 @@ -88083,8 +87398,6 @@ entities: rot: 1.5707963267948966 rad pos: -54.5,-8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11153 @@ -88093,8 +87406,6 @@ entities: rot: 1.5707963267948966 rad pos: -22.5,-42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11154 @@ -88102,8 +87413,6 @@ entities: - type: Transform pos: -12.5,-40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11155 @@ -88111,8 +87420,6 @@ entities: - type: Transform pos: -2.5,-40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11162 @@ -88120,8 +87427,6 @@ entities: - type: Transform pos: -6.5,-35.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11163 @@ -88130,8 +87435,6 @@ entities: rot: 3.141592653589793 rad pos: -6.5,-43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11165 @@ -88140,8 +87443,6 @@ entities: rot: 1.5707963267948966 rad pos: 1.5,-32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11176 @@ -88150,8 +87451,6 @@ entities: rot: 1.5707963267948966 rad pos: -10.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11178 @@ -88160,8 +87459,6 @@ entities: rot: 1.5707963267948966 rad pos: -2.5,-26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11180 @@ -88169,8 +87466,6 @@ entities: - type: Transform pos: 10.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11188 @@ -88179,8 +87474,6 @@ entities: rot: 3.141592653589793 rad pos: 10.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11200 @@ -88188,8 +87481,6 @@ entities: - type: Transform pos: 2.5,-19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11208 @@ -88197,8 +87488,6 @@ entities: - type: Transform pos: 9.5,-15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11211 @@ -88207,8 +87496,6 @@ entities: rot: 1.5707963267948966 rad pos: 12.5,-17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11216 @@ -88216,8 +87503,6 @@ entities: - type: Transform pos: -2.5,-1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11217 @@ -88226,8 +87511,6 @@ entities: rot: 3.141592653589793 rad pos: 5.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11220 @@ -88236,8 +87519,6 @@ entities: rot: 1.5707963267948966 rad pos: 8.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11222 @@ -88246,8 +87527,6 @@ entities: rot: -1.5707963267948966 rad pos: 14.5,-4.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11224 @@ -88255,8 +87534,6 @@ entities: - type: Transform pos: 12.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11227 @@ -88264,8 +87541,6 @@ entities: - type: Transform pos: -19.5,-36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11664 @@ -88274,8 +87549,6 @@ entities: rot: 3.141592653589793 rad pos: 33.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11868 @@ -88284,8 +87557,6 @@ entities: rot: 3.141592653589793 rad pos: 24.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11872 @@ -88294,8 +87565,6 @@ entities: rot: 3.141592653589793 rad pos: 24.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11922 @@ -88304,8 +87573,6 @@ entities: rot: -1.5707963267948966 rad pos: 37.5,-5.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11938 @@ -88314,8 +87581,6 @@ entities: rot: 3.141592653589793 rad pos: 17.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11939 @@ -88324,8 +87589,6 @@ entities: rot: 3.141592653589793 rad pos: 20.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11981 @@ -88333,8 +87596,6 @@ entities: - type: Transform pos: 20.5,0.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11991 @@ -88343,8 +87604,6 @@ entities: rot: 1.5707963267948966 rad pos: 19.5,-1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12007 @@ -88352,8 +87611,6 @@ entities: - type: Transform pos: 30.5,1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12010 @@ -88361,8 +87618,6 @@ entities: - type: Transform pos: 25.5,0.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12060 @@ -88371,8 +87626,6 @@ entities: rot: -1.5707963267948966 rad pos: 37.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12081 @@ -88381,8 +87634,6 @@ entities: rot: 3.141592653589793 rad pos: 30.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12230 @@ -88391,8 +87642,6 @@ entities: rot: 3.141592653589793 rad pos: 34.5,-14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12491 @@ -88401,8 +87650,6 @@ entities: rot: 1.5707963267948966 rad pos: 9.5,33.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12492 @@ -88411,8 +87658,6 @@ entities: rot: -1.5707963267948966 rad pos: 11.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12495 @@ -88420,8 +87665,6 @@ entities: - type: Transform pos: 9.5,41.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12537 @@ -88430,8 +87673,6 @@ entities: rot: 1.5707963267948966 rad pos: 9.5,24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12538 @@ -88439,8 +87680,6 @@ entities: - type: Transform pos: 18.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12579 @@ -88449,8 +87688,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12580 @@ -88459,8 +87696,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12581 @@ -88469,8 +87704,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12587 @@ -88478,8 +87711,6 @@ entities: - type: Transform pos: 25.5,42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12605 @@ -88488,8 +87719,6 @@ entities: rot: -1.5707963267948966 rad pos: 24.5,38.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12611 @@ -88497,8 +87726,6 @@ entities: - type: Transform pos: 27.5,27.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12756 @@ -88507,15 +87734,11 @@ entities: rot: -1.5707963267948966 rad pos: 33.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12796 components: - type: Transform pos: 32.5,11.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12959 @@ -88524,8 +87747,6 @@ entities: rot: -1.5707963267948966 rad pos: 27.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12976 @@ -88534,8 +87755,6 @@ entities: rot: -1.5707963267948966 rad pos: 37.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 12983 @@ -88544,8 +87763,6 @@ entities: rot: 1.5707963267948966 rad pos: 16.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13002 @@ -88554,8 +87771,6 @@ entities: rot: 1.5707963267948966 rad pos: 22.5,13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13003 @@ -88564,8 +87779,6 @@ entities: rot: 3.141592653589793 rad pos: 28.5,7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13004 @@ -88574,8 +87787,6 @@ entities: rot: -1.5707963267948966 rad pos: 24.5,19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13005 @@ -88583,8 +87794,6 @@ entities: - type: Transform pos: 14.5,21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13006 @@ -88593,8 +87802,6 @@ entities: rot: 1.5707963267948966 rad pos: 13.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13081 @@ -88602,8 +87809,6 @@ entities: - type: Transform pos: 18.5,16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13335 @@ -88612,8 +87817,6 @@ entities: rot: 1.5707963267948966 rad pos: 9.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13360 @@ -88622,8 +87825,6 @@ entities: rot: -1.5707963267948966 rad pos: 26.5,15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13469 @@ -88631,8 +87832,6 @@ entities: - type: Transform pos: 16.5,57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13470 @@ -88640,8 +87839,6 @@ entities: - type: Transform pos: 20.5,44.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13593 @@ -88649,8 +87846,6 @@ entities: - type: Transform pos: 35.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13783 @@ -88659,8 +87854,6 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,38.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13788 @@ -88669,8 +87862,6 @@ entities: rot: 3.141592653589793 rad pos: 30.5,37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 13789 @@ -88678,8 +87869,6 @@ entities: - type: Transform pos: 30.5,42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 15441 @@ -88688,8 +87877,6 @@ entities: rot: 1.5707963267948966 rad pos: 51.5,20.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 15619 @@ -88697,8 +87884,6 @@ entities: - type: Transform pos: 52.5,23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 16096 @@ -88707,8 +87892,6 @@ entities: rot: 3.141592653589793 rad pos: 6.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18436 @@ -88717,8 +87900,6 @@ entities: rot: 1.5707963267948966 rad pos: -45.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18437 @@ -88727,8 +87908,6 @@ entities: rot: 1.5707963267948966 rad pos: -45.5,-21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18438 @@ -88736,8 +87915,6 @@ entities: - type: Transform pos: -58.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18439 @@ -88745,8 +87922,6 @@ entities: - type: Transform pos: -49.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18440 @@ -88754,8 +87929,6 @@ entities: - type: Transform pos: -53.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18449 @@ -88763,8 +87936,6 @@ entities: - type: Transform pos: -63.5,-19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18450 @@ -88773,8 +87944,6 @@ entities: rot: -1.5707963267948966 rad pos: -62.5,-21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18629 @@ -88783,8 +87952,6 @@ entities: rot: 1.5707963267948966 rad pos: -59.5,-44.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18655 @@ -88792,8 +87959,6 @@ entities: - type: Transform pos: -79.5,-39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18662 @@ -88801,8 +87966,6 @@ entities: - type: Transform pos: -77.5,-42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18663 @@ -88810,8 +87973,6 @@ entities: - type: Transform pos: -75.5,-41.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18667 @@ -88819,8 +87980,6 @@ entities: - type: Transform pos: -68.5,-45.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18668 @@ -88828,8 +87987,6 @@ entities: - type: Transform pos: -67.5,-42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18674 @@ -88837,8 +87994,6 @@ entities: - type: Transform pos: -55.5,-45.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18678 @@ -88847,8 +88002,6 @@ entities: rot: -1.5707963267948966 rad pos: -52.5,-56.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18679 @@ -88857,8 +88010,6 @@ entities: rot: -1.5707963267948966 rad pos: -52.5,-52.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18720 @@ -88867,8 +88018,6 @@ entities: rot: 1.5707963267948966 rad pos: -83.5,-60.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18731 @@ -88877,8 +88026,6 @@ entities: rot: 3.141592653589793 rad pos: -80.5,-61.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18732 @@ -88887,8 +88034,6 @@ entities: rot: 3.141592653589793 rad pos: -74.5,-61.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18753 @@ -88897,8 +88042,6 @@ entities: rot: 1.5707963267948966 rad pos: -76.5,-55.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18754 @@ -88906,8 +88049,6 @@ entities: - type: Transform pos: -71.5,-53.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18757 @@ -88915,8 +88056,6 @@ entities: - type: Transform pos: -60.5,-59.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18758 @@ -88925,8 +88064,6 @@ entities: rot: 3.141592653589793 rad pos: -60.5,-49.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 18769 @@ -88935,8 +88072,6 @@ entities: rot: 3.141592653589793 rad pos: -59.5,-64.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 20335 @@ -88945,8 +88080,6 @@ entities: rot: 3.141592653589793 rad pos: 4.5,-8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 21549 @@ -88955,8 +88088,6 @@ entities: rot: 3.141592653589793 rad pos: 39.5,34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 22023 @@ -88964,8 +88095,6 @@ entities: - type: Transform pos: -0.5,74.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 22024 @@ -88974,8 +88103,6 @@ entities: rot: -1.5707963267948966 rad pos: 0.5,65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 22025 @@ -88983,8 +88110,6 @@ entities: - type: Transform pos: -1.5,38.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 22768 @@ -88993,8 +88118,6 @@ entities: rot: -1.5707963267948966 rad pos: -16.5,-47.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 22799 @@ -89003,8 +88126,6 @@ entities: rot: 3.141592653589793 rad pos: -26.5,-59.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 22800 @@ -89013,8 +88134,6 @@ entities: rot: 1.5707963267948966 rad pos: -31.5,-58.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - uid: 22801 @@ -89023,8 +88142,6 @@ entities: rot: 1.5707963267948966 rad pos: -36.5,-60.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#0335FCFF' - proto: GasVentScrubber @@ -89034,16 +88151,12 @@ entities: - type: Transform pos: -43.5,64.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 2452 components: - type: Transform rot: -1.5707963267948966 rad pos: -35.5,32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2453 @@ -89052,8 +88165,6 @@ entities: rot: -1.5707963267948966 rad pos: -35.5,37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2483 @@ -89062,8 +88173,6 @@ entities: rot: 3.141592653589793 rad pos: -50.5,32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2490 @@ -89072,8 +88181,6 @@ entities: rot: 3.141592653589793 rad pos: -42.5,32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2492 @@ -89082,8 +88189,6 @@ entities: rot: 3.141592653589793 rad pos: -41.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2504 @@ -89092,8 +88197,6 @@ entities: rot: -1.5707963267948966 rad pos: -35.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2525 @@ -89102,8 +88205,6 @@ entities: rot: 3.141592653589793 rad pos: -35.5,43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2526 @@ -89112,8 +88213,6 @@ entities: rot: 1.5707963267948966 rad pos: -34.5,46.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2545 @@ -89122,8 +88221,6 @@ entities: rot: 1.5707963267948966 rad pos: -41.5,47.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2552 @@ -89131,8 +88228,6 @@ entities: - type: Transform pos: -38.5,51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2574 @@ -89141,8 +88236,6 @@ entities: rot: -1.5707963267948966 rad pos: -25.5,51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2593 @@ -89151,8 +88244,6 @@ entities: rot: -1.5707963267948966 rad pos: -33.5,57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2595 @@ -89161,8 +88252,6 @@ entities: rot: 3.141592653589793 rad pos: -34.5,52.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2641 @@ -89171,8 +88260,6 @@ entities: rot: 3.141592653589793 rad pos: -48.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2642 @@ -89181,8 +88268,6 @@ entities: rot: 3.141592653589793 rad pos: -44.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2643 @@ -89191,8 +88276,6 @@ entities: rot: 3.141592653589793 rad pos: -40.5,40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2645 @@ -89201,8 +88284,6 @@ entities: rot: 3.141592653589793 rad pos: -43.5,43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2670 @@ -89211,8 +88292,6 @@ entities: rot: -1.5707963267948966 rad pos: -47.5,50.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2675 @@ -89221,8 +88300,6 @@ entities: rot: 1.5707963267948966 rad pos: -50.5,51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2730 @@ -89231,8 +88308,6 @@ entities: rot: 3.141592653589793 rad pos: -48.5,63.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2731 @@ -89241,8 +88316,6 @@ entities: rot: -1.5707963267948966 rad pos: -50.5,60.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2732 @@ -89251,8 +88324,6 @@ entities: rot: -1.5707963267948966 rad pos: -46.5,60.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2733 @@ -89261,8 +88332,6 @@ entities: rot: 1.5707963267948966 rad pos: -49.5,56.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2742 @@ -89271,8 +88340,6 @@ entities: rot: 3.141592653589793 rad pos: -28.5,43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3006 @@ -89281,8 +88348,6 @@ entities: rot: 3.141592653589793 rad pos: -10.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3041 @@ -89291,8 +88356,6 @@ entities: rot: -1.5707963267948966 rad pos: -30.5,31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3049 @@ -89301,8 +88364,6 @@ entities: rot: 3.141592653589793 rad pos: -31.5,22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3055 @@ -89311,8 +88372,6 @@ entities: rot: 3.141592653589793 rad pos: -27.5,23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3063 @@ -89321,8 +88380,6 @@ entities: rot: 3.141592653589793 rad pos: -21.5,22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3065 @@ -89331,8 +88388,6 @@ entities: rot: -1.5707963267948966 rad pos: -35.5,24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3067 @@ -89341,8 +88396,6 @@ entities: rot: -1.5707963267948966 rad pos: -35.5,17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3068 @@ -89351,8 +88404,6 @@ entities: rot: -1.5707963267948966 rad pos: -35.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3076 @@ -89361,8 +88412,6 @@ entities: rot: 1.5707963267948966 rad pos: -39.5,10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3100 @@ -89371,8 +88420,6 @@ entities: rot: 3.141592653589793 rad pos: -39.5,6.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3112 @@ -89381,8 +88428,6 @@ entities: rot: 3.141592653589793 rad pos: -41.5,0.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3136 @@ -89391,8 +88436,6 @@ entities: rot: 1.5707963267948966 rad pos: -52.5,9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3147 @@ -89401,8 +88444,6 @@ entities: rot: -1.5707963267948966 rad pos: -44.5,6.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3170 @@ -89411,8 +88452,6 @@ entities: rot: -1.5707963267948966 rad pos: -44.5,-5.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3229 @@ -89421,8 +88460,6 @@ entities: rot: -1.5707963267948966 rad pos: -31.5,7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3231 @@ -89431,8 +88468,6 @@ entities: rot: 3.141592653589793 rad pos: -31.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3254 @@ -89440,8 +88475,6 @@ entities: - type: Transform pos: -42.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3267 @@ -89450,8 +88483,6 @@ entities: rot: 3.141592653589793 rad pos: -41.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3317 @@ -89460,8 +88491,6 @@ entities: rot: 1.5707963267948966 rad pos: -53.5,16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3318 @@ -89470,8 +88499,6 @@ entities: rot: 1.5707963267948966 rad pos: -53.5,20.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3326 @@ -89480,8 +88507,6 @@ entities: rot: 3.141592653589793 rad pos: -24.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3328 @@ -89490,8 +88515,6 @@ entities: rot: 3.141592653589793 rad pos: -14.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3358 @@ -89500,8 +88523,6 @@ entities: rot: 1.5707963267948966 rad pos: -24.5,9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3377 @@ -89510,8 +88531,6 @@ entities: rot: 1.5707963267948966 rad pos: -24.5,16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3398 @@ -89519,8 +88538,6 @@ entities: - type: Transform pos: -17.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3400 @@ -89529,8 +88546,6 @@ entities: rot: -1.5707963267948966 rad pos: -13.5,7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3408 @@ -89539,8 +88554,6 @@ entities: rot: 3.141592653589793 rad pos: -6.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3409 @@ -89549,8 +88562,6 @@ entities: rot: 3.141592653589793 rad pos: 1.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3421 @@ -89559,8 +88570,6 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3482 @@ -89568,8 +88577,6 @@ entities: - type: Transform pos: -12.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3483 @@ -89577,8 +88584,6 @@ entities: - type: Transform pos: -10.5,17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3484 @@ -89587,8 +88592,6 @@ entities: rot: -1.5707963267948966 rad pos: 3.5,13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3486 @@ -89596,8 +88599,6 @@ entities: - type: Transform pos: -4.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 5029 @@ -89606,8 +88607,6 @@ entities: rot: 1.5707963267948966 rad pos: -28.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6108 @@ -89616,8 +88615,6 @@ entities: rot: 3.141592653589793 rad pos: -19.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6112 @@ -89626,8 +88623,6 @@ entities: rot: 3.141592653589793 rad pos: 0.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6122 @@ -89636,8 +88631,6 @@ entities: rot: 3.141592653589793 rad pos: -2.5,21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6204 @@ -89646,8 +88639,6 @@ entities: rot: 3.141592653589793 rad pos: -9.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6213 @@ -89656,8 +88647,6 @@ entities: rot: 3.141592653589793 rad pos: -11.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6222 @@ -89666,8 +88655,6 @@ entities: rot: -1.5707963267948966 rad pos: 0.5,32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6265 @@ -89676,8 +88663,6 @@ entities: rot: 1.5707963267948966 rad pos: -27.5,37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6266 @@ -89686,8 +88671,6 @@ entities: rot: 3.141592653589793 rad pos: -21.5,34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6268 @@ -89696,8 +88679,6 @@ entities: rot: 3.141592653589793 rad pos: -19.5,31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6911 @@ -89705,8 +88686,6 @@ entities: - type: Transform pos: -28.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6935 @@ -89715,8 +88694,6 @@ entities: rot: 1.5707963267948966 rad pos: -33.5,-18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7119 @@ -89725,8 +88702,6 @@ entities: rot: 3.141592653589793 rad pos: -28.5,-18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7130 @@ -89738,8 +88713,6 @@ entities: - type: DeviceNetwork deviceLists: - 8267 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7131 @@ -89751,8 +88724,6 @@ entities: - type: DeviceNetwork deviceLists: - 8267 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7339 @@ -89760,8 +88731,6 @@ entities: - type: Transform pos: -11.5,-2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7377 @@ -89770,8 +88739,6 @@ entities: rot: 3.141592653589793 rad pos: -7.5,-11.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7378 @@ -89780,8 +88747,6 @@ entities: rot: 3.141592653589793 rad pos: -5.5,-11.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7407 @@ -89790,8 +88755,6 @@ entities: rot: -1.5707963267948966 rad pos: -18.5,-1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7567 @@ -89800,8 +88763,6 @@ entities: rot: -1.5707963267948966 rad pos: -17.5,-20.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7571 @@ -89812,8 +88773,6 @@ entities: - type: DeviceNetwork deviceLists: - 8254 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7572 @@ -89822,8 +88781,6 @@ entities: rot: 3.141592653589793 rad pos: -13.5,-12.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8223 @@ -89831,8 +88788,6 @@ entities: - type: Transform pos: -24.5,-3.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9049 @@ -89840,8 +88795,6 @@ entities: - type: Transform pos: -25.5,-16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9713 @@ -89850,8 +88803,6 @@ entities: rot: 3.141592653589793 rad pos: -25.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9846 @@ -89860,8 +88811,6 @@ entities: rot: 1.5707963267948966 rad pos: -29.5,-5.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9864 @@ -89873,8 +88822,6 @@ entities: - type: DeviceNetwork deviceLists: - 9671 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10039 @@ -89883,8 +88830,6 @@ entities: rot: 1.5707963267948966 rad pos: -55.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11094 @@ -89893,8 +88838,6 @@ entities: rot: 1.5707963267948966 rad pos: -22.5,-41.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11097 @@ -89902,8 +88845,6 @@ entities: - type: Transform pos: -17.5,-36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11098 @@ -89912,8 +88853,6 @@ entities: rot: 3.141592653589793 rad pos: -3.5,-40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11099 @@ -89922,8 +88861,6 @@ entities: rot: 3.141592653589793 rad pos: -11.5,-40.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11107 @@ -89932,8 +88869,6 @@ entities: rot: 1.5707963267948966 rad pos: -10.5,-30.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11114 @@ -89942,8 +88877,6 @@ entities: rot: 3.141592653589793 rad pos: -8.5,-43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11115 @@ -89951,8 +88884,6 @@ entities: - type: Transform pos: -8.5,-35.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11166 @@ -89961,8 +88892,6 @@ entities: rot: -1.5707963267948966 rad pos: 1.5,-34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11179 @@ -89971,8 +88900,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-27.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11189 @@ -89981,8 +88908,6 @@ entities: rot: 3.141592653589793 rad pos: 11.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11192 @@ -89991,8 +88916,6 @@ entities: rot: 3.141592653589793 rad pos: 12.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11201 @@ -90001,8 +88924,6 @@ entities: rot: 3.141592653589793 rad pos: 4.5,-19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11209 @@ -90010,8 +88931,6 @@ entities: - type: Transform pos: 7.5,-15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11210 @@ -90020,8 +88939,6 @@ entities: rot: -1.5707963267948966 rad pos: 12.5,-15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11214 @@ -90029,8 +88946,6 @@ entities: - type: Transform pos: 20.5,-18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11215 @@ -90039,8 +88954,6 @@ entities: rot: 3.141592653589793 rad pos: -2.5,-4.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11218 @@ -90048,8 +88961,6 @@ entities: - type: Transform pos: 6.5,-2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11219 @@ -90058,8 +88969,6 @@ entities: rot: -1.5707963267948966 rad pos: 8.5,-8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11221 @@ -90068,8 +88977,6 @@ entities: rot: -1.5707963267948966 rad pos: 12.5,-4.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11223 @@ -90078,8 +88985,6 @@ entities: rot: 3.141592653589793 rad pos: 9.5,2.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11681 @@ -90087,8 +88992,6 @@ entities: - type: Transform pos: 25.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11714 @@ -90097,8 +89000,6 @@ entities: rot: 3.141592653589793 rad pos: 6.5,-26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11764 @@ -90106,8 +89007,6 @@ entities: - type: Transform pos: 24.5,-5.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11797 @@ -90115,8 +89014,6 @@ entities: - type: Transform pos: 32.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11944 @@ -90124,8 +89021,6 @@ entities: - type: Transform pos: 19.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11945 @@ -90133,8 +89028,6 @@ entities: - type: Transform pos: 16.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11985 @@ -90143,8 +89036,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12043 @@ -90152,8 +89043,6 @@ entities: - type: Transform pos: 29.5,1.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12044 @@ -90161,8 +89050,6 @@ entities: - type: Transform pos: 26.5,0.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12489 @@ -90170,8 +89057,6 @@ entities: - type: Transform pos: 8.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12490 @@ -90180,8 +89065,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,31.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12536 @@ -90190,8 +89073,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12539 @@ -90200,8 +89081,6 @@ entities: rot: 3.141592653589793 rad pos: 16.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12576 @@ -90210,8 +89089,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,33.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12577 @@ -90220,8 +89097,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12578 @@ -90230,8 +89105,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12583 @@ -90239,8 +89112,6 @@ entities: - type: Transform pos: 21.5,43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12606 @@ -90248,8 +89119,6 @@ entities: - type: Transform pos: 24.5,37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12619 @@ -90258,8 +89127,6 @@ entities: rot: -1.5707963267948966 rad pos: 27.5,29.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12755 @@ -90268,16 +89135,12 @@ entities: rot: 1.5707963267948966 rad pos: 31.5,14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 12813 components: - type: Transform rot: -1.5707963267948966 rad pos: 29.5,20.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 12824 @@ -90286,8 +89149,6 @@ entities: rot: 3.141592653589793 rad pos: 28.5,15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13078 @@ -90296,8 +89157,6 @@ entities: rot: 1.5707963267948966 rad pos: 16.5,11.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13079 @@ -90306,8 +89165,6 @@ entities: rot: 3.141592653589793 rad pos: 13.5,21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13080 @@ -90316,8 +89173,6 @@ entities: rot: -1.5707963267948966 rad pos: 13.5,16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13082 @@ -90325,8 +89180,6 @@ entities: - type: Transform pos: 18.5,15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13084 @@ -90335,8 +89188,6 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,18.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13085 @@ -90345,8 +89196,6 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,11.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13086 @@ -90354,8 +89203,6 @@ entities: - type: Transform pos: 25.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13336 @@ -90364,8 +89211,6 @@ entities: rot: -1.5707963267948966 rad pos: 9.5,15.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13353 @@ -90373,8 +89218,6 @@ entities: - type: Transform pos: 40.5,13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13355 @@ -90382,8 +89225,6 @@ entities: - type: Transform pos: 38.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13782 @@ -90392,8 +89233,6 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,35.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13798 @@ -90401,8 +89240,6 @@ entities: - type: Transform pos: 29.5,42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 13799 @@ -90410,8 +89247,6 @@ entities: - type: Transform pos: 30.5,36.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 14540 @@ -90420,8 +89255,6 @@ entities: rot: 1.5707963267948966 rad pos: 20.5,-5.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18060 @@ -90429,8 +89262,6 @@ entities: - type: Transform pos: 30.5,-5.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18435 @@ -90439,8 +89270,6 @@ entities: rot: -1.5707963267948966 rad pos: -44.5,-17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18441 @@ -90449,8 +89278,6 @@ entities: rot: 3.141592653589793 rad pos: -57.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18442 @@ -90459,8 +89286,6 @@ entities: rot: 3.141592653589793 rad pos: -51.5,-23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18451 @@ -90468,8 +89293,6 @@ entities: - type: Transform pos: -61.5,-21.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18519 @@ -90478,8 +89301,6 @@ entities: rot: 3.141592653589793 rad pos: -77.5,-48.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18520 @@ -90487,8 +89308,6 @@ entities: - type: Transform pos: -78.5,-39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18523 @@ -90496,8 +89315,6 @@ entities: - type: Transform pos: -68.5,-42.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18524 @@ -90505,8 +89322,6 @@ entities: - type: Transform pos: -64.5,-44.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18630 @@ -90515,8 +89330,6 @@ entities: rot: -1.5707963267948966 rad pos: -67.5,-44.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18675 @@ -90524,8 +89337,6 @@ entities: - type: Transform pos: -56.5,-45.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18676 @@ -90534,8 +89345,6 @@ entities: rot: -1.5707963267948966 rad pos: -52.5,-53.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18677 @@ -90544,8 +89353,6 @@ entities: rot: -1.5707963267948966 rad pos: -52.5,-57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18729 @@ -90554,8 +89361,6 @@ entities: rot: 1.5707963267948966 rad pos: -80.5,-59.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18730 @@ -90564,8 +89369,6 @@ entities: rot: 3.141592653589793 rad pos: -75.5,-61.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18744 @@ -90573,8 +89376,6 @@ entities: - type: Transform pos: -76.5,-53.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18745 @@ -90582,8 +89383,6 @@ entities: - type: Transform pos: -72.5,-53.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18756 @@ -90592,8 +89391,6 @@ entities: rot: 3.141592653589793 rad pos: -63.5,-60.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18759 @@ -90601,8 +89398,6 @@ entities: - type: Transform pos: -63.5,-48.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 18770 @@ -90611,8 +89406,6 @@ entities: rot: 1.5707963267948966 rad pos: -59.5,-65.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 21545 @@ -90621,8 +89414,6 @@ entities: rot: 3.141592653589793 rad pos: 35.5,34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 21553 @@ -90630,8 +89421,6 @@ entities: - type: Transform pos: 43.5,39.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - proto: GasVolumePump @@ -90641,8 +89430,6 @@ entities: - type: Transform pos: -9.5,-50.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8258 @@ -90651,8 +89438,6 @@ entities: rot: 3.141592653589793 rad pos: -5.5,-50.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#03FCD3FF' - proto: GeneratorRTG @@ -97380,29 +96165,21 @@ entities: - type: Transform pos: -3.5,-58.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 3155 components: - type: Transform pos: -3.5,-57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7104 components: - type: Transform pos: -11.5,-58.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8295 components: - type: Transform pos: 3.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 9621 @@ -97410,8 +96187,6 @@ entities: - type: Transform pos: -11.5,-57.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: HighSecCommandLocked entities: - uid: 2128 @@ -102023,71 +100798,51 @@ entities: - type: Transform pos: -19.5,23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7770 components: - type: Transform pos: -11.5,-37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8771 components: - type: Transform pos: 27.5,-22.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9118 components: - type: Transform pos: 21.5,-19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 10397 components: - type: Transform pos: -14.5,-46.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15154 components: - type: Transform pos: 15.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15755 components: - type: Transform pos: 44.5,13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 16893 components: - type: Transform pos: -44.5,27.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 16894 components: - type: Transform pos: -44.5,26.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 19624 components: - type: Transform pos: -32.5,-38.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: NitrogenTankFilled entities: - uid: 8247 @@ -102107,15 +100862,11 @@ entities: - type: Transform pos: 19.5,-16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7769 components: - type: Transform pos: 18.5,-16.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: NuclearBomb entities: - uid: 5607 @@ -102188,148 +100939,106 @@ entities: - type: Transform pos: 0.5,23.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 1983 components: - type: Transform pos: 33.5,-14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 5661 components: - type: Transform pos: -24.5,45.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 5670 components: - type: Transform pos: -39.5,19.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 6032 components: - type: Transform pos: -1.5,38.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7970 components: - type: Transform pos: -38.5,-9.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8770 components: - type: Transform pos: 27.5,-24.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9095 components: - type: Transform pos: 20.5,-14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9096 components: - type: Transform pos: 20.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9114 components: - type: Transform pos: 21.5,-14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9117 components: - type: Transform pos: 21.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9427 components: - type: Transform pos: -13.5,-37.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9845 components: - type: Transform pos: -38.5,-10.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 10444 components: - type: Transform pos: -14.5,-48.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 11266 components: - type: Transform pos: -18.5,-50.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15155 components: - type: Transform pos: 14.5,8.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15438 components: - type: Transform pos: 46.5,17.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15754 components: - type: Transform pos: 44.5,12.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 15968 components: - type: Transform pos: 51.5,29.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 16983 components: - type: Transform pos: -63.5,44.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 19623 components: - type: Transform pos: -33.5,-38.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: OxygenTankFilled entities: - uid: 8226 @@ -103031,36 +101740,26 @@ entities: - type: Transform pos: 18.5,-14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9696 components: - type: Transform pos: 18.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 10510 components: - type: Transform pos: -14.5,-51.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 17005 components: - type: Transform pos: 27.5,-30.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 20465 components: - type: Transform pos: -25.5,-48.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: PlasticFlapsAirtightClear entities: - uid: 1952 @@ -116583,7 +115282,7 @@ entities: - type: Transform pos: 48.50878,41.513634 parent: 30 -- proto: soda_dispenser +- proto: SodaDispenser entities: - uid: 512 components: @@ -117945,11 +116644,15 @@ entities: - type: Transform pos: 18.5,44.5 parent: 30 + - type: SpamEmitSound + enabled: False - uid: 15237 components: - type: Transform pos: 37.5,45.5 parent: 30 + - type: SpamEmitSound + enabled: False - proto: SpawnMobAlexander entities: - uid: 9033 @@ -119050,92 +117753,66 @@ entities: - type: Transform pos: 19.5,-13.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7939 components: - type: Transform pos: 14.5,-29.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 7973 components: - type: Transform pos: 19.5,-14.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8775 components: - type: Transform pos: 27.5,-32.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8776 components: - type: Transform pos: 27.5,-34.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8791 components: - type: Transform pos: 14.5,-27.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 8803 components: - type: Transform pos: 14.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9794 components: - type: Transform pos: -12.5,-43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 9998 components: - type: Transform pos: -13.5,-43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 10000 components: - type: Transform pos: -11.5,-43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 10001 components: - type: Transform pos: -10.5,-43.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 13342 components: - type: Transform pos: 35.5,7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - uid: 13343 components: - type: Transform pos: 36.5,7.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: Stunbaton entities: - uid: 2030 @@ -123274,8 +121951,6 @@ entities: rot: 1.5707963267948966 rad pos: -7.5,-50.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: TegCirculator entities: - uid: 15013 @@ -139731,8 +138406,6 @@ entities: - type: Transform pos: 27.5,-28.5 parent: 30 - - type: AtmosDevice - joinedGrid: 30 - proto: WeaponCapacitorRecharger entities: - uid: 1084 From 93ea4c07ff4585eeedef3e90dca35c6dc270d975 Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sun, 16 Jun 2024 21:37:08 +0200 Subject: [PATCH 38/82] Update packed (#28346) robotics console --- Resources/Maps/packed.yml | 898 +++----------------------------------- 1 file changed, 62 insertions(+), 836 deletions(-) diff --git a/Resources/Maps/packed.yml b/Resources/Maps/packed.yml index 56d169e1abd473..5e533af961dfde 100644 --- a/Resources/Maps/packed.yml +++ b/Resources/Maps/packed.yml @@ -5975,12 +5975,13 @@ entities: - type: MetaData - type: Transform - type: Map + mapPaused: True - type: PhysicsMap + - type: GridTree + - type: MovedGrids - type: Broadphase - type: OccluderTree - type: LoadedMap - - type: GridTree - - type: MovedGrids - proto: AccordionInstrument entities: - uid: 5749 @@ -6000,8 +6001,6 @@ entities: devices: - 4027 - 4092 - - type: AtmosDevice - joinedGrid: 2 - uid: 151 components: - type: Transform @@ -6015,8 +6014,6 @@ entities: - 12554 - 10358 - 10403 - - type: AtmosDevice - joinedGrid: 2 - uid: 170 components: - type: Transform @@ -6027,8 +6024,6 @@ entities: devices: - 4460 - 4447 - - type: AtmosDevice - joinedGrid: 2 - uid: 182 components: - type: Transform @@ -6039,8 +6034,6 @@ entities: - 12564 - 10347 - 10400 - - type: AtmosDevice - joinedGrid: 2 - uid: 195 components: - type: Transform @@ -6051,8 +6044,6 @@ entities: devices: - 6949 - 4035 - - type: AtmosDevice - joinedGrid: 2 - uid: 360 components: - type: Transform @@ -6079,8 +6070,6 @@ entities: - 6638 - 6622 - 6609 - - type: AtmosDevice - joinedGrid: 2 - uid: 1017 components: - type: Transform @@ -6097,8 +6086,6 @@ entities: - 5684 - 1305 - 1625 - - type: AtmosDevice - joinedGrid: 2 - uid: 1520 components: - type: Transform @@ -6108,8 +6095,6 @@ entities: - type: DeviceList devices: - 1560 - - type: AtmosDevice - joinedGrid: 2 - uid: 1647 components: - type: Transform @@ -6123,8 +6108,6 @@ entities: - 10412 - 12559 - 10352 - - type: AtmosDevice - joinedGrid: 2 - uid: 2124 components: - type: Transform @@ -6149,8 +6132,6 @@ entities: - 7950 - 7837 - 7838 - - type: AtmosDevice - joinedGrid: 2 - uid: 2296 components: - type: Transform @@ -6168,8 +6149,6 @@ entities: - 10415 - 10356 - 10375 - - type: AtmosDevice - joinedGrid: 2 - uid: 5020 components: - type: Transform @@ -6199,8 +6178,6 @@ entities: - 7011 - 6621 - 6620 - - type: AtmosDevice - joinedGrid: 2 - uid: 5101 components: - type: Transform @@ -6211,8 +6188,6 @@ entities: devices: - 10402 - 10331 - - type: AtmosDevice - joinedGrid: 2 - uid: 5680 components: - type: Transform @@ -6222,8 +6197,6 @@ entities: devices: - 5679 - 5678 - - type: AtmosDevice - joinedGrid: 2 - uid: 6158 components: - type: Transform @@ -6233,8 +6206,6 @@ entities: devices: - 5968 - 5964 - - type: AtmosDevice - joinedGrid: 2 - uid: 6632 components: - type: Transform @@ -6252,8 +6223,6 @@ entities: - 6610 - 6593 - 6595 - - type: AtmosDevice - joinedGrid: 2 - uid: 6682 components: - type: Transform @@ -6270,8 +6239,6 @@ entities: - 6684 - 6570 - 6571 - - type: AtmosDevice - joinedGrid: 2 - uid: 7839 components: - type: Transform @@ -6289,8 +6256,6 @@ entities: - 7843 - 7472 - 7469 - - type: AtmosDevice - joinedGrid: 2 - uid: 8011 components: - type: Transform @@ -6319,8 +6284,6 @@ entities: - 8009 - 6778 - 7708 - - type: AtmosDevice - joinedGrid: 2 - uid: 8239 components: - type: Transform @@ -6333,8 +6296,6 @@ entities: - 8238 - 8222 - 8229 - - type: AtmosDevice - joinedGrid: 2 - uid: 8922 components: - type: Transform @@ -6354,8 +6315,6 @@ entities: - 6804 - 10206 - 10205 - - type: AtmosDevice - joinedGrid: 2 - uid: 9587 components: - type: Transform @@ -6370,8 +6329,6 @@ entities: - 9589 - 9570 - 9569 - - type: AtmosDevice - joinedGrid: 2 - uid: 9637 components: - type: Transform @@ -6381,8 +6338,6 @@ entities: devices: - 9636 - 9635 - - type: AtmosDevice - joinedGrid: 2 - uid: 10201 components: - type: Transform @@ -6394,8 +6349,6 @@ entities: - 12459 - 10172 - 10180 - - type: AtmosDevice - joinedGrid: 2 - uid: 10202 components: - type: Transform @@ -6405,8 +6358,6 @@ entities: devices: - 10181 - 10178 - - type: AtmosDevice - joinedGrid: 2 - uid: 10203 components: - type: Transform @@ -6417,8 +6368,6 @@ entities: devices: - 10182 - 10171 - - type: AtmosDevice - joinedGrid: 2 - uid: 10204 components: - type: Transform @@ -6429,8 +6378,6 @@ entities: devices: - 8017 - 8016 - - type: AtmosDevice - joinedGrid: 2 - uid: 10207 components: - type: Transform @@ -6443,8 +6390,6 @@ entities: - 10206 - 10215 - 10214 - - type: AtmosDevice - joinedGrid: 2 - uid: 10250 components: - type: Transform @@ -6455,8 +6400,6 @@ entities: devices: - 10249 - 10248 - - type: AtmosDevice - joinedGrid: 2 - uid: 10419 components: - type: Transform @@ -6467,8 +6410,6 @@ entities: devices: - 10411 - 10355 - - type: AtmosDevice - joinedGrid: 2 - uid: 10653 components: - type: Transform @@ -6478,8 +6419,6 @@ entities: devices: - 10652 - 10643 - - type: AtmosDevice - joinedGrid: 2 - uid: 10930 components: - type: Transform @@ -6488,8 +6427,6 @@ entities: - type: DeviceList devices: - 8659 - - type: AtmosDevice - joinedGrid: 2 - uid: 11165 components: - type: Transform @@ -6516,8 +6453,6 @@ entities: - 9586 - 9585 - 9584 - - type: AtmosDevice - joinedGrid: 2 - uid: 11508 components: - type: Transform @@ -6551,8 +6486,6 @@ entities: - 6568 - 6640 - 6628 - - type: AtmosDevice - joinedGrid: 2 - uid: 11730 components: - type: Transform @@ -6563,8 +6496,6 @@ entities: devices: - 11515 - 11719 - - type: AtmosDevice - joinedGrid: 2 - uid: 11731 components: - type: Transform @@ -6574,8 +6505,6 @@ entities: devices: - 5189 - 10128 - - type: AtmosDevice - joinedGrid: 2 - uid: 11990 components: - type: Transform @@ -6597,8 +6526,6 @@ entities: - 5622 - 4552 - 4551 - - type: AtmosDevice - joinedGrid: 2 - uid: 12152 components: - type: Transform @@ -6625,8 +6552,6 @@ entities: - 12162 - 11938 - 11945 - - type: AtmosDevice - joinedGrid: 2 - uid: 12163 components: - type: Transform @@ -6639,16 +6564,12 @@ entities: - 12158 - 12159 - 12161 - - type: AtmosDevice - joinedGrid: 2 - uid: 12416 components: - type: Transform rot: 1.5707963267948966 rad pos: 24.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12447 components: - type: Transform @@ -6667,8 +6588,6 @@ entities: - 11246 - 6951 - 6950 - - type: AtmosDevice - joinedGrid: 2 - uid: 12473 components: - type: Transform @@ -6687,8 +6606,6 @@ entities: - 6931 - 6927 - 4183 - - type: AtmosDevice - joinedGrid: 2 - uid: 12476 components: - type: Transform @@ -6712,8 +6629,6 @@ entities: - 9351 - 9353 - 9352 - - type: AtmosDevice - joinedGrid: 2 - uid: 12480 components: - type: Transform @@ -6722,8 +6637,6 @@ entities: - type: DeviceList devices: - 12481 - - type: AtmosDevice - joinedGrid: 2 - uid: 12484 components: - type: Transform @@ -6747,8 +6660,6 @@ entities: - 9362 - 3693 - 3692 - - type: AtmosDevice - joinedGrid: 2 - uid: 12486 components: - type: Transform @@ -6770,8 +6681,6 @@ entities: - 9352 - 5103 - 10365 - - type: AtmosDevice - joinedGrid: 2 - uid: 12488 components: - type: Transform @@ -6786,8 +6695,6 @@ entities: - 12076 - 11744 - 11743 - - type: AtmosDevice - joinedGrid: 2 - uid: 12503 components: - type: Transform @@ -6798,8 +6705,6 @@ entities: - 12502 - 11709 - 11729 - - type: AtmosDevice - joinedGrid: 2 - uid: 12504 components: - type: Transform @@ -6808,8 +6713,6 @@ entities: - type: DeviceList devices: - 11365 - - type: AtmosDevice - joinedGrid: 2 - uid: 12506 components: - type: Transform @@ -6819,8 +6722,6 @@ entities: devices: - 11957 - 11956 - - type: AtmosDevice - joinedGrid: 2 - uid: 12520 components: - type: Transform @@ -6834,8 +6735,6 @@ entities: - 8238 - 8236 - 8235 - - type: AtmosDevice - joinedGrid: 2 - uid: 12528 components: - type: Transform @@ -6848,8 +6747,6 @@ entities: - 8575 - 8629 - 8630 - - type: AtmosDevice - joinedGrid: 2 - uid: 12530 components: - type: Transform @@ -6861,8 +6758,6 @@ entities: - 12531 - 8597 - 8598 - - type: AtmosDevice - joinedGrid: 2 - uid: 12532 components: - type: Transform @@ -6872,8 +6767,6 @@ entities: devices: - 8684 - 8685 - - type: AtmosDevice - joinedGrid: 2 - uid: 12537 components: - type: Transform @@ -6884,8 +6777,6 @@ entities: - 12538 - 8296 - 9546 - - type: AtmosDevice - joinedGrid: 2 - uid: 12539 components: - type: Transform @@ -6897,8 +6788,6 @@ entities: - 12540 - 9558 - 9557 - - type: AtmosDevice - joinedGrid: 2 - uid: 12548 components: - type: Transform @@ -6910,8 +6799,6 @@ entities: - 12087 - 10366 - 10351 - - type: AtmosDevice - joinedGrid: 2 - uid: 12562 components: - type: Transform @@ -6923,8 +6810,6 @@ entities: - 12563 - 10346 - 10401 - - type: AtmosDevice - joinedGrid: 2 - proto: AirCanister entities: - uid: 2078 @@ -6932,78 +6817,56 @@ entities: - type: Transform pos: 28.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4555 components: - type: Transform pos: 28.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4572 components: - type: Transform pos: 32.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5518 components: - type: Transform pos: 66.5,44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5706 components: - type: Transform pos: 85.5,-1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5747 components: - type: Transform pos: 48.5,-13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 7858 components: - type: Transform pos: 70.5,-19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10794 components: - type: Transform pos: 78.5,-16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10842 components: - type: Transform pos: 46.5,36.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10843 components: - type: Transform pos: 46.5,35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12802 components: - type: Transform pos: 14.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Airlock entities: - uid: 467 @@ -8633,8 +8496,6 @@ entities: - type: Transform pos: 26.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12518 components: - type: Transform @@ -9706,8 +9567,6 @@ entities: rot: 1.5707963267948966 rad pos: 38.5,-21.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Basketball entities: - uid: 10804 @@ -10226,12 +10085,16 @@ entities: rot: -1.5707963267948966 rad pos: 41.5,30.5 parent: 2 + - type: SpamEmitSound + enabled: False - uid: 6617 components: - type: Transform rot: 1.5707963267948966 rad pos: 29.5,-6.5 parent: 2 + - type: SpamEmitSound + enabled: False - proto: Bonfire entities: - uid: 12709 @@ -28219,15 +28082,11 @@ entities: - type: Transform pos: 45.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12998 components: - type: Transform pos: 34.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Carpet entities: - uid: 3 @@ -31770,16 +31629,16 @@ entities: - type: Transform pos: 70.44693,7.937353 parent: 2 -- proto: chem_master +- proto: ChemDispenser entities: - - uid: 5052 + - uid: 5050 components: - type: Transform - pos: 49.5,-4.5 + pos: 49.5,-5.5 parent: 2 - type: ContainerContainer containers: - ChemMaster-reagentContainerContainer: !type:ContainerSlot + ReagentDispenser-reagentContainerContainer: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31791,7 +31650,7 @@ entities: showEnts: False occludes: True ents: [] - ChemMaster-beaker: !type:ContainerSlot + ReagentDispenser-beaker: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31799,18 +31658,14 @@ entities: showEnts: False occludes: True ent: null - outputSlot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - - uid: 5053 + - uid: 5051 components: - type: Transform - pos: 52.5,-3.5 + pos: 53.5,-3.5 parent: 2 - type: ContainerContainer containers: - ChemMaster-reagentContainerContainer: !type:ContainerSlot + ReagentDispenser-reagentContainerContainer: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31822,7 +31677,7 @@ entities: showEnts: False occludes: True ents: [] - ChemMaster-beaker: !type:ContainerSlot + ReagentDispenser-beaker: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31830,20 +31685,23 @@ entities: showEnts: False occludes: True ent: null - outputSlot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null -- proto: ChemDispenser +- proto: ChemistryHotplate entities: - - uid: 5050 + - uid: 11028 components: - type: Transform - pos: 49.5,-5.5 + pos: 51.5,-7.5 + parent: 2 +- proto: ChemMaster + entities: + - uid: 5052 + components: + - type: Transform + pos: 49.5,-4.5 parent: 2 - type: ContainerContainer containers: - ReagentDispenser-reagentContainerContainer: !type:ContainerSlot + ChemMaster-reagentContainerContainer: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31855,7 +31713,7 @@ entities: showEnts: False occludes: True ents: [] - ReagentDispenser-beaker: !type:ContainerSlot + ChemMaster-beaker: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31863,14 +31721,18 @@ entities: showEnts: False occludes: True ent: null - - uid: 5051 + outputSlot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + - uid: 5053 components: - type: Transform - pos: 53.5,-3.5 + pos: 52.5,-3.5 parent: 2 - type: ContainerContainer containers: - ReagentDispenser-reagentContainerContainer: !type:ContainerSlot + ChemMaster-reagentContainerContainer: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31882,7 +31744,7 @@ entities: showEnts: False occludes: True ents: [] - ReagentDispenser-beaker: !type:ContainerSlot + ChemMaster-beaker: !type:ContainerSlot showEnts: False occludes: True ent: null @@ -31890,13 +31752,10 @@ entities: showEnts: False occludes: True ent: null -- proto: ChemistryHotplate - entities: - - uid: 11028 - components: - - type: Transform - pos: 51.5,-7.5 - parent: 2 + outputSlot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null - proto: ChurchOrganInstrument entities: - uid: 8921 @@ -32456,7 +32315,7 @@ entities: - type: Transform pos: 90.45974,-18.462885 parent: 2 -- proto: ClothingHeadHatFlowerCrown +- proto: ClothingHeadHatFlowerWreath entities: - uid: 8829 components: @@ -32470,13 +32329,6 @@ entities: - type: Transform pos: 45.45547,27.660194 parent: 2 -- proto: ClothingHeadHatHairflower - entities: - - uid: 12099 - components: - - type: Transform - pos: 19.740185,41.04155 - parent: 2 - proto: ClothingHeadHatHardhatOrange entities: - uid: 10798 @@ -33365,12 +33217,6 @@ entities: linkedPorts: 8666: - ArtifactAnalyzerSender: ArtifactAnalyzerReceiver - - uid: 10667 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 61.5,8.5 - parent: 2 - proto: computerBodyScanner entities: - uid: 31 @@ -33608,6 +33454,14 @@ entities: rot: 3.141592653589793 rad pos: 62.5,8.5 parent: 2 +- proto: ComputerRoboticsControl + entities: + - uid: 5652 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 61.5,8.5 + parent: 2 - proto: ComputerSalvageExpedition entities: - uid: 12820 @@ -34602,6 +34456,9 @@ entities: - type: Transform pos: 51.5,25.5 parent: 2 + - type: SingletonDeviceNetServer + active: False + available: False - proto: Crowbar entities: - uid: 686 @@ -34663,15 +34520,11 @@ entities: - type: Transform pos: 58.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 11774 components: - type: Transform pos: 60.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: CryoxadoneBeakerSmall entities: - uid: 11801 @@ -38679,8 +38532,6 @@ entities: - 12522 - 8237 - 8238 - - type: AtmosDevice - joinedGrid: 2 - uid: 194 components: - type: Transform @@ -38697,8 +38548,6 @@ entities: - 6930 - 11247 - 11246 - - type: AtmosDevice - joinedGrid: 2 - uid: 1016 components: - type: Transform @@ -38718,8 +38567,6 @@ entities: - 802 - 5621 - 5622 - - type: AtmosDevice - joinedGrid: 2 - uid: 1657 components: - type: Transform @@ -38741,8 +38588,6 @@ entities: - 1511 - 1515 - 1513 - - type: AtmosDevice - joinedGrid: 2 - uid: 2123 components: - type: Transform @@ -38765,8 +38610,6 @@ entities: - 7889 - 131 - 7950 - - type: AtmosDevice - joinedGrid: 2 - uid: 2474 components: - type: Transform @@ -38779,8 +38622,6 @@ entities: - 10413 - 10414 - 10415 - - type: AtmosDevice - joinedGrid: 2 - uid: 4049 components: - type: Transform @@ -38795,8 +38636,6 @@ entities: - 169 - 1024 - 5684 - - type: AtmosDevice - joinedGrid: 2 - uid: 5077 components: - type: Transform @@ -38826,8 +38665,6 @@ entities: - 7011 - 6620 - 5144 - - type: AtmosDevice - joinedGrid: 2 - uid: 6633 components: - type: Transform @@ -38841,8 +38678,6 @@ entities: - 1513 - 6645 - 6637 - - type: AtmosDevice - joinedGrid: 2 - uid: 6634 components: - type: Transform @@ -38859,8 +38694,6 @@ entities: - 6638 - 6523 - 1510 - - type: AtmosDevice - joinedGrid: 2 - uid: 6683 components: - type: Transform @@ -38875,8 +38708,6 @@ entities: - 6568 - 12077 - 6684 - - type: AtmosDevice - joinedGrid: 2 - uid: 7662 components: - type: Transform @@ -38899,8 +38730,6 @@ entities: - 7889 - 131 - 7950 - - type: AtmosDevice - joinedGrid: 2 - uid: 7842 components: - type: Transform @@ -38916,8 +38745,6 @@ entities: - 7749 - 7750 - 7843 - - type: AtmosDevice - joinedGrid: 2 - uid: 8005 components: - type: Transform @@ -38942,8 +38769,6 @@ entities: - 6952 - 11244 - 11245 - - type: AtmosDevice - joinedGrid: 2 - uid: 8006 components: - type: Transform @@ -38969,8 +38794,6 @@ entities: - 6952 - 11244 - 11245 - - type: AtmosDevice - joinedGrid: 2 - uid: 8007 components: - type: Transform @@ -38996,8 +38819,6 @@ entities: - 6952 - 11244 - 11245 - - type: AtmosDevice - joinedGrid: 2 - uid: 8316 components: - type: Transform @@ -39027,8 +38848,6 @@ entities: - 7011 - 6620 - 5144 - - type: AtmosDevice - joinedGrid: 2 - uid: 8920 components: - type: Transform @@ -39046,8 +38865,6 @@ entities: - 6800 - 10206 - 10205 - - type: AtmosDevice - joinedGrid: 2 - uid: 9588 components: - type: Transform @@ -39060,8 +38877,6 @@ entities: - 9585 - 9584 - 9589 - - type: AtmosDevice - joinedGrid: 2 - uid: 10208 components: - type: Transform @@ -39072,8 +38887,6 @@ entities: - 10216 - 10205 - 10206 - - type: AtmosDevice - joinedGrid: 2 - uid: 10956 components: - type: Transform @@ -39082,8 +38895,6 @@ entities: - type: DeviceList devices: - 8659 - - type: AtmosDevice - joinedGrid: 2 - uid: 10964 components: - type: Transform @@ -39106,8 +38917,6 @@ entities: - 9586 - 9585 - 9584 - - type: AtmosDevice - joinedGrid: 2 - uid: 11507 components: - type: Transform @@ -39139,8 +38948,6 @@ entities: - 7011 - 6509 - 6568 - - type: AtmosDevice - joinedGrid: 2 - uid: 12153 components: - type: Transform @@ -39165,8 +38972,6 @@ entities: - 12159 - 12161 - 12162 - - type: AtmosDevice - joinedGrid: 2 - uid: 12154 components: - type: Transform @@ -39191,8 +38996,6 @@ entities: - 12159 - 12161 - 12162 - - type: AtmosDevice - joinedGrid: 2 - uid: 12474 components: - type: Transform @@ -39209,8 +39012,6 @@ entities: - 6929 - 6930 - 6931 - - type: AtmosDevice - joinedGrid: 2 - uid: 12477 components: - type: Transform @@ -39232,8 +39033,6 @@ entities: - 9352 - 9353 - 9351 - - type: AtmosDevice - joinedGrid: 2 - uid: 12483 components: - type: Transform @@ -39255,8 +39054,6 @@ entities: - 9364 - 9363 - 9362 - - type: AtmosDevice - joinedGrid: 2 - uid: 12487 components: - type: Transform @@ -39276,8 +39073,6 @@ entities: - 9353 - 9352 - 12087 - - type: AtmosDevice - joinedGrid: 2 - uid: 12489 components: - type: Transform @@ -39291,8 +39086,6 @@ entities: - 12075 - 12490 - 12076 - - type: AtmosDevice - joinedGrid: 2 - uid: 12517 components: - type: Transform @@ -39307,8 +39100,6 @@ entities: - 11323 - 11324 - 12518 - - type: AtmosDevice - joinedGrid: 2 - uid: 12521 components: - type: Transform @@ -39320,8 +39111,6 @@ entities: - 12086 - 8237 - 8238 - - type: AtmosDevice - joinedGrid: 2 - uid: 12549 components: - type: Transform @@ -39331,8 +39120,6 @@ entities: devices: - 12550 - 12087 - - type: AtmosDevice - joinedGrid: 2 - uid: 12556 components: - type: Transform @@ -39347,8 +39134,6 @@ entities: - 1252 - 1162 - 6473 - - type: AtmosDevice - joinedGrid: 2 - uid: 12557 components: - type: Transform @@ -39364,8 +39149,6 @@ entities: - 10413 - 10414 - 10415 - - type: AtmosDevice - joinedGrid: 2 - proto: FireAxeCabinetFilled entities: - uid: 1571 @@ -40809,6 +40592,13 @@ entities: - type: Transform pos: -0.9697714,-25.884264 parent: 2 +- proto: FoodPoppy + entities: + - uid: 12099 + components: + - type: Transform + pos: 19.740185,41.04155 + parent: 2 - proto: FoodShakerPepper entities: - uid: 6758 @@ -40878,8 +40668,6 @@ entities: rot: 3.141592653589793 rad pos: 40.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 2785 @@ -40888,24 +40676,18 @@ entities: rot: 3.141592653589793 rad pos: 40.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4102 components: - type: Transform rot: 3.141592653589793 rad pos: 40.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4154 components: - type: Transform rot: 3.141592653589793 rad pos: 40.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4156 @@ -40914,32 +40696,24 @@ entities: rot: 3.141592653589793 rad pos: 40.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4176 components: - type: Transform rot: 3.141592653589793 rad pos: 40.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4903 components: - type: Transform rot: 1.5707963267948966 rad pos: 45.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 11767 components: - type: Transform rot: -1.5707963267948966 rad pos: 59.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - proto: GasMinerCarbonDioxide @@ -40949,8 +40723,6 @@ entities: - type: Transform pos: 46.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMinerNitrogenStation entities: - uid: 1182 @@ -40958,8 +40730,6 @@ entities: - type: Transform pos: 46.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMinerOxygenStation entities: - uid: 4098 @@ -40967,8 +40737,6 @@ entities: - type: Transform pos: 46.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMinerWaterVapor entities: - uid: 2138 @@ -40976,8 +40744,6 @@ entities: - type: Transform pos: 46.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMixer entities: - uid: 1938 @@ -40986,8 +40752,6 @@ entities: rot: -1.5707963267948966 rad pos: 39.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasMixerFlipped entities: - uid: 669 @@ -40996,24 +40760,18 @@ entities: rot: 3.141592653589793 rad pos: 39.5,-28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 671 components: - type: Transform rot: 3.141592653589793 rad pos: 39.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 757 components: - type: Transform rot: 3.141592653589793 rad pos: 39.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 1034 components: - type: Transform @@ -41023,8 +40781,6 @@ entities: - type: GasMixer inletTwoConcentration: 0.78 inletOneConcentration: 0.22 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 2751 @@ -41033,16 +40789,12 @@ entities: rot: 3.141592653589793 rad pos: 38.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4924 components: - type: Transform rot: -1.5707963267948966 rad pos: 43.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasOutletInjector entities: - uid: 474 @@ -41051,63 +40803,47 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 2072 components: - type: Transform rot: -1.5707963267948966 rad pos: 45.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 2075 components: - type: Transform rot: -1.5707963267948966 rad pos: 45.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 2140 components: - type: Transform rot: -1.5707963267948966 rad pos: 45.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 2141 components: - type: Transform rot: -1.5707963267948966 rad pos: 45.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4047 components: - type: Transform rot: -1.5707963267948966 rad pos: 45.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4355 components: - type: Transform pos: 35.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12882 components: - type: Transform rot: -1.5707963267948966 rad pos: 46.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasPassiveVent entities: - uid: 351 @@ -41115,51 +40851,37 @@ entities: - type: Transform pos: 47.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 361 components: - type: Transform pos: 47.5,-31.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 367 components: - type: Transform pos: 47.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 628 components: - type: Transform pos: 47.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 675 components: - type: Transform pos: 47.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 745 components: - type: Transform pos: 47.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 3951 components: - type: Transform rot: 3.141592653589793 rad pos: 48.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3953 @@ -41168,8 +40890,6 @@ entities: rot: 3.141592653589793 rad pos: 49.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4179 @@ -41178,54 +40898,40 @@ entities: rot: -1.5707963267948966 rad pos: 47.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4354 components: - type: Transform rot: 3.141592653589793 rad pos: 35.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5265 components: - type: Transform rot: 3.141592653589793 rad pos: 79.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 8677 components: - type: Transform rot: -1.5707963267948966 rad pos: 43.5,33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10426 components: - type: Transform pos: 63.5,28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10427 components: - type: Transform pos: 64.5,28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 11587 components: - type: Transform rot: 3.141592653589793 rad pos: 47.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11588 @@ -41234,8 +40940,6 @@ entities: rot: 3.141592653589793 rad pos: 46.5,-48.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - proto: GasPipeBend @@ -51600,8 +51304,6 @@ entities: rot: 1.5707963267948966 rad pos: 24.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4034 @@ -51610,24 +51312,18 @@ entities: rot: -1.5707963267948966 rad pos: 28.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4038 components: - type: Transform rot: -1.5707963267948966 rad pos: 28.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4040 components: - type: Transform rot: 1.5707963267948966 rad pos: 24.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4362 @@ -51636,145 +51332,107 @@ entities: rot: 3.141592653589793 rad pos: 36.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4363 components: - type: Transform rot: 3.141592653589793 rad pos: 37.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4913 components: - type: Transform rot: -1.5707963267948966 rad pos: 41.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4920 components: - type: Transform rot: -1.5707963267948966 rad pos: 39.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4921 components: - type: Transform rot: 1.5707963267948966 rad pos: 42.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4922 components: - type: Transform pos: 43.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4923 components: - type: Transform rot: -1.5707963267948966 rad pos: 44.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4925 components: - type: Transform rot: 3.141592653589793 rad pos: 45.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4926 components: - type: Transform rot: 1.5707963267948966 rad pos: 44.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4927 components: - type: Transform rot: -1.5707963267948966 rad pos: 46.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5072 components: - type: Transform rot: -1.5707963267948966 rad pos: 39.5,-21.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 6480 components: - type: Transform pos: 37.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 7882 components: - type: Transform pos: 38.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10420 components: - type: Transform rot: 3.141592653589793 rad pos: 63.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10425 components: - type: Transform rot: 3.141592653589793 rad pos: 64.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12871 components: - type: Transform pos: 41.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12872 components: - type: Transform pos: 42.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12873 components: - type: Transform pos: 43.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12874 components: - type: Transform pos: 44.5,-42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasPressurePump entities: - uid: 670 @@ -51782,8 +51440,6 @@ entities: - type: Transform pos: 31.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 1942 @@ -51792,24 +51448,18 @@ entities: rot: -1.5707963267948966 rad pos: 40.5,-30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 2781 components: - type: Transform rot: -1.5707963267948966 rad pos: 40.5,-28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4030 components: - type: Transform rot: 1.5707963267948966 rad pos: 27.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 4033 @@ -51818,8 +51468,6 @@ entities: rot: 1.5707963267948966 rad pos: 27.5,-23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 4128 @@ -51828,48 +51476,36 @@ entities: rot: -1.5707963267948966 rad pos: 40.5,-34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4130 components: - type: Transform rot: -1.5707963267948966 rad pos: 40.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4145 components: - type: Transform rot: -1.5707963267948966 rad pos: 40.5,-26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4178 components: - type: Transform rot: -1.5707963267948966 rad pos: 40.5,-24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4361 components: - type: Transform rot: 3.141592653589793 rad pos: 35.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5037 components: - type: Transform rot: 3.141592653589793 rad pos: 57.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6583 @@ -51878,8 +51514,6 @@ entities: rot: -1.5707963267948966 rad pos: 31.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7803 @@ -51888,8 +51522,6 @@ entities: rot: -1.5707963267948966 rad pos: 51.5,24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7883 @@ -51897,8 +51529,6 @@ entities: - type: Transform pos: 37.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10423 @@ -51907,22 +51537,16 @@ entities: rot: 3.141592653589793 rad pos: 63.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10424 components: - type: Transform pos: 64.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 11577 components: - type: Transform pos: 38.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - proto: GasThermoMachineFreezer @@ -51933,31 +51557,23 @@ entities: rot: 3.141592653589793 rad pos: 34.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4912 components: - type: Transform rot: 1.5707963267948966 rad pos: 40.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 7984 components: - type: Transform rot: 3.141592653589793 rad pos: 50.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 11775 components: - type: Transform pos: 59.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12989 components: - type: Transform @@ -51966,8 +51582,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#03FCD3FF' - - type: AtmosDevice - joinedGrid: 2 - proto: GasThermoMachineFreezerEnabled entities: - uid: 1156 @@ -51977,8 +51591,6 @@ entities: parent: 2 - type: GasThermoMachine targetTemperature: 0 - - type: AtmosDevice - joinedGrid: 2 - proto: GasThermoMachineHeater entities: - uid: 1216 @@ -51989,16 +51601,12 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF1212FF' - - type: AtmosDevice - joinedGrid: 2 - uid: 4906 components: - type: Transform rot: 1.5707963267948966 rad pos: 38.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: GasValve entities: - uid: 1233 @@ -52008,8 +51616,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 4150 @@ -52020,8 +51626,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4250 @@ -52032,8 +51636,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11586 @@ -52044,8 +51646,6 @@ entities: parent: 2 - type: GasValve open: False - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - proto: GasVentPump @@ -52056,8 +51656,6 @@ entities: rot: 3.141592653589793 rad pos: 26.5,-29.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 1560 @@ -52066,8 +51664,6 @@ entities: rot: 1.5707963267948966 rad pos: 21.5,-17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 1625 @@ -52076,8 +51672,6 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 2393 @@ -52085,8 +51679,6 @@ entities: - type: Transform pos: 30.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 3692 @@ -52095,8 +51687,6 @@ entities: rot: 1.5707963267948966 rad pos: 41.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 4027 @@ -52105,8 +51695,6 @@ entities: rot: 1.5707963267948966 rad pos: 15.5,13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 4035 @@ -52115,8 +51703,6 @@ entities: rot: 3.141592653589793 rad pos: 19.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 4460 @@ -52125,8 +51711,6 @@ entities: rot: 3.141592653589793 rad pos: 32.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 4465 @@ -52135,8 +51719,6 @@ entities: rot: 3.141592653589793 rad pos: 20.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 4551 @@ -52145,8 +51727,6 @@ entities: rot: 3.141592653589793 rad pos: 24.5,-36.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 5103 @@ -52154,8 +51734,6 @@ entities: - type: Transform pos: 41.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 5189 @@ -52164,8 +51742,6 @@ entities: rot: 3.141592653589793 rad pos: 57.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 5422 @@ -52174,8 +51750,6 @@ entities: rot: 3.141592653589793 rad pos: 11.5,-40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 5533 @@ -52184,8 +51758,6 @@ entities: rot: -1.5707963267948966 rad pos: 36.5,42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 5678 @@ -52194,8 +51766,6 @@ entities: rot: 3.141592653589793 rad pos: 13.5,-36.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 5964 @@ -52204,8 +51774,6 @@ entities: rot: 3.141592653589793 rad pos: 11.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6570 @@ -52214,8 +51782,6 @@ entities: rot: 1.5707963267948966 rad pos: 45.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6590 @@ -52224,16 +51790,12 @@ entities: rot: 3.141592653589793 rad pos: 30.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 6593 components: - type: Transform rot: 3.141592653589793 rad pos: 35.5,-11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6608 @@ -52242,8 +51804,6 @@ entities: rot: 3.141592653589793 rad pos: 39.5,-11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6609 @@ -52252,8 +51812,6 @@ entities: rot: 1.5707963267948966 rad pos: 38.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6620 @@ -52262,8 +51820,6 @@ entities: rot: -1.5707963267948966 rad pos: 36.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6627 @@ -52272,8 +51828,6 @@ entities: rot: 1.5707963267948966 rad pos: 34.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6640 @@ -52281,8 +51835,6 @@ entities: - type: Transform pos: 46.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6778 @@ -52291,8 +51843,6 @@ entities: rot: 1.5707963267948966 rad pos: 4.5,4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6804 @@ -52300,8 +51850,6 @@ entities: - type: Transform pos: 26.5,-16.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6927 @@ -52310,8 +51858,6 @@ entities: rot: 3.141592653589793 rad pos: 22.5,12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 6951 @@ -52320,8 +51866,6 @@ entities: rot: -1.5707963267948966 rad pos: 20.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7469 @@ -52330,8 +51874,6 @@ entities: rot: 1.5707963267948966 rad pos: -16.5,-14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 7801 @@ -52340,16 +51882,12 @@ entities: rot: 1.5707963267948966 rad pos: 49.5,24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 7838 components: - type: Transform rot: 1.5707963267948966 rad pos: -6.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8009 @@ -52357,8 +51895,6 @@ entities: - type: Transform pos: 12.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8016 @@ -52367,8 +51903,6 @@ entities: rot: -1.5707963267948966 rad pos: 15.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8220 @@ -52377,8 +51911,6 @@ entities: rot: 3.141592653589793 rad pos: 9.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8222 @@ -52386,8 +51918,6 @@ entities: - type: Transform pos: 9.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8236 @@ -52395,8 +51925,6 @@ entities: - type: Transform pos: 19.5,21.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8240 @@ -52404,8 +51932,6 @@ entities: - type: Transform pos: 26.5,21.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8242 @@ -52413,8 +51939,6 @@ entities: - type: Transform pos: 22.5,21.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8296 @@ -52423,8 +51947,6 @@ entities: rot: 1.5707963267948966 rad pos: 26.5,46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8301 @@ -52433,8 +51955,6 @@ entities: rot: 1.5707963267948966 rad pos: 23.5,41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8344 @@ -52443,8 +51963,6 @@ entities: rot: 1.5707963267948966 rad pos: 31.5,42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8575 @@ -52452,8 +51970,6 @@ entities: - type: Transform pos: 34.5,25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8596 @@ -52462,8 +51978,6 @@ entities: rot: -1.5707963267948966 rad pos: 43.5,24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8597 @@ -52472,8 +51986,6 @@ entities: rot: 3.141592653589793 rad pos: 39.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8607 @@ -52481,8 +51993,6 @@ entities: - type: Transform pos: 39.5,27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8629 @@ -52490,8 +52000,6 @@ entities: - type: Transform pos: 38.5,18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8673 @@ -52499,8 +52007,6 @@ entities: - type: Transform pos: 40.5,32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8684 @@ -52508,8 +52014,6 @@ entities: - type: Transform pos: 42.5,17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8700 @@ -52518,8 +52022,6 @@ entities: rot: -1.5707963267948966 rad pos: 57.5,30.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 8701 @@ -52527,8 +52029,6 @@ entities: - type: Transform pos: 56.5,34.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9358 @@ -52536,8 +52036,6 @@ entities: - type: Transform pos: 32.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9558 @@ -52546,8 +52044,6 @@ entities: rot: 1.5707963267948966 rad pos: 27.5,39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9570 @@ -52555,8 +52051,6 @@ entities: - type: Transform pos: 26.5,36.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9581 @@ -52564,8 +52058,6 @@ entities: - type: Transform pos: 18.5,40.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9582 @@ -52574,8 +52066,6 @@ entities: rot: 1.5707963267948966 rad pos: 14.5,36.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 9635 @@ -52583,8 +52073,6 @@ entities: - type: Transform pos: 47.5,3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10163 @@ -52593,8 +52081,6 @@ entities: rot: 3.141592653589793 rad pos: 7.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10170 @@ -52603,8 +52089,6 @@ entities: rot: 3.141592653589793 rad pos: 1.5,-12.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10171 @@ -52613,8 +52097,6 @@ entities: rot: -1.5707963267948966 rad pos: 10.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10172 @@ -52623,8 +52105,6 @@ entities: rot: -1.5707963267948966 rad pos: 4.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10173 @@ -52633,8 +52113,6 @@ entities: rot: 1.5707963267948966 rad pos: -1.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10178 @@ -52643,8 +52121,6 @@ entities: rot: 1.5707963267948966 rad pos: -2.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10214 @@ -52653,8 +52129,6 @@ entities: rot: 1.5707963267948966 rad pos: 23.5,-11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10248 @@ -52663,8 +52137,6 @@ entities: rot: 3.141592653589793 rad pos: 26.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10331 @@ -52672,8 +52144,6 @@ entities: - type: Transform pos: 48.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10346 @@ -52682,8 +52152,6 @@ entities: rot: 3.141592653589793 rad pos: 62.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10347 @@ -52692,8 +52160,6 @@ entities: rot: -1.5707963267948966 rad pos: 67.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10351 @@ -52702,8 +52168,6 @@ entities: rot: 1.5707963267948966 rad pos: 55.5,18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10352 @@ -52712,8 +52176,6 @@ entities: rot: -1.5707963267948966 rad pos: 57.5,25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10355 @@ -52722,8 +52184,6 @@ entities: rot: -1.5707963267948966 rad pos: 62.5,24.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10356 @@ -52732,8 +52192,6 @@ entities: rot: -1.5707963267948966 rad pos: 60.5,18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10358 @@ -52742,8 +52200,6 @@ entities: rot: -1.5707963267948966 rad pos: 60.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 10643 @@ -52752,8 +52208,6 @@ entities: rot: 3.141592653589793 rad pos: 29.5,8.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11365 @@ -52762,8 +52216,6 @@ entities: rot: 3.141592653589793 rad pos: 77.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11366 @@ -52772,8 +52224,6 @@ entities: rot: -1.5707963267948966 rad pos: 78.5,1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11514 @@ -52782,8 +52232,6 @@ entities: rot: 1.5707963267948966 rad pos: 64.5,-1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11515 @@ -52791,8 +52239,6 @@ entities: - type: Transform pos: 66.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11516 @@ -52801,8 +52247,6 @@ entities: rot: 3.141592653589793 rad pos: 66.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11709 @@ -52810,8 +52254,6 @@ entities: - type: Transform pos: 71.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11743 @@ -52820,8 +52262,6 @@ entities: rot: 1.5707963267948966 rad pos: 52.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11924 @@ -52830,8 +52270,6 @@ entities: rot: 3.141592653589793 rad pos: 56.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11937 @@ -52840,8 +52278,6 @@ entities: rot: 3.141592653589793 rad pos: 61.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11945 @@ -52849,8 +52285,6 @@ entities: - type: Transform pos: 63.5,2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - uid: 11956 @@ -52858,8 +52292,6 @@ entities: - type: Transform pos: 71.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#0335FCFF' - proto: GasVentScrubber @@ -52870,8 +52302,6 @@ entities: rot: 1.5707963267948966 rad pos: 30.5,-32.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 1324 @@ -52880,8 +52310,6 @@ entities: rot: 3.141592653589793 rad pos: 10.5,-41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 3475 @@ -52889,16 +52317,12 @@ entities: - type: Transform pos: 79.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 3693 components: - type: Transform rot: -1.5707963267948966 rad pos: 41.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4092 @@ -52907,8 +52331,6 @@ entities: rot: 1.5707963267948966 rad pos: 15.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4183 @@ -52917,8 +52339,6 @@ entities: rot: -1.5707963267948966 rad pos: 19.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4447 @@ -52927,8 +52347,6 @@ entities: rot: 3.141592653589793 rad pos: 31.5,-39.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4464 @@ -52937,8 +52355,6 @@ entities: rot: 3.141592653589793 rad pos: 22.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4552 @@ -52946,8 +52362,6 @@ entities: - type: Transform pos: 28.5,-35.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4553 @@ -52956,8 +52370,6 @@ entities: rot: 3.141592653589793 rad pos: 26.5,-28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 5679 @@ -52965,8 +52377,6 @@ entities: - type: Transform pos: 13.5,-33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 5968 @@ -52975,8 +52385,6 @@ entities: rot: 3.141592653589793 rad pos: 9.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6571 @@ -52985,8 +52393,6 @@ entities: rot: -1.5707963267948966 rad pos: 43.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6595 @@ -52995,8 +52401,6 @@ entities: rot: 3.141592653589793 rad pos: 33.5,-11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6610 @@ -53005,8 +52409,6 @@ entities: rot: -1.5707963267948966 rad pos: 39.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6614 @@ -53015,8 +52417,6 @@ entities: rot: -1.5707963267948966 rad pos: 29.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6621 @@ -53025,8 +52425,6 @@ entities: rot: 1.5707963267948966 rad pos: 32.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6622 @@ -53035,8 +52433,6 @@ entities: rot: -1.5707963267948966 rad pos: 38.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6628 @@ -53045,8 +52441,6 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6629 @@ -53055,8 +52449,6 @@ entities: rot: 3.141592653589793 rad pos: 34.5,-7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6805 @@ -53064,8 +52456,6 @@ entities: - type: Transform pos: 26.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6949 @@ -53074,8 +52464,6 @@ entities: rot: 3.141592653589793 rad pos: 18.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 6950 @@ -53084,8 +52472,6 @@ entities: rot: -1.5707963267948966 rad pos: 20.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7472 @@ -53094,8 +52480,6 @@ entities: rot: 1.5707963267948966 rad pos: -15.5,-13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7708 @@ -53104,8 +52488,6 @@ entities: rot: -1.5707963267948966 rad pos: 4.5,7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 7837 @@ -53114,8 +52496,6 @@ entities: rot: -1.5707963267948966 rad pos: -5.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8010 @@ -53124,8 +52504,6 @@ entities: rot: 3.141592653589793 rad pos: 14.5,0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8017 @@ -53134,8 +52512,6 @@ entities: rot: 1.5707963267948966 rad pos: 15.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8221 @@ -53144,8 +52520,6 @@ entities: rot: 3.141592653589793 rad pos: 8.5,17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8229 @@ -53153,8 +52527,6 @@ entities: - type: Transform pos: 8.5,26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8235 @@ -53162,8 +52534,6 @@ entities: - type: Transform pos: 18.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8243 @@ -53171,8 +52541,6 @@ entities: - type: Transform pos: 23.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8564 @@ -53181,8 +52549,6 @@ entities: rot: 3.141592653589793 rad pos: 34.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8595 @@ -53191,8 +52557,6 @@ entities: rot: -1.5707963267948966 rad pos: 43.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8598 @@ -53201,8 +52565,6 @@ entities: rot: 1.5707963267948966 rad pos: 39.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8610 @@ -53210,8 +52572,6 @@ entities: - type: Transform pos: 40.5,26.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8630 @@ -53220,8 +52580,6 @@ entities: rot: -1.5707963267948966 rad pos: 38.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8674 @@ -53230,15 +52588,11 @@ entities: rot: 1.5707963267948966 rad pos: 40.5,33.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 8685 components: - type: Transform pos: 41.5,18.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 8810 @@ -53247,8 +52601,6 @@ entities: rot: 3.141592653589793 rad pos: 26.5,22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9359 @@ -53257,8 +52609,6 @@ entities: rot: 3.141592653589793 rad pos: 30.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9546 @@ -53266,8 +52616,6 @@ entities: - type: Transform pos: 28.5,46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9554 @@ -53276,8 +52624,6 @@ entities: rot: 3.141592653589793 rad pos: 22.5,41.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9557 @@ -53286,8 +52632,6 @@ entities: rot: -1.5707963267948966 rad pos: 27.5,42.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9569 @@ -53296,8 +52640,6 @@ entities: rot: 1.5707963267948966 rad pos: 23.5,37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 9636 @@ -53305,8 +52647,6 @@ entities: - type: Transform pos: 44.5,3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10128 @@ -53315,8 +52655,6 @@ entities: rot: 3.141592653589793 rad pos: 55.5,-9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10179 @@ -53325,8 +52663,6 @@ entities: rot: 3.141592653589793 rad pos: -0.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10180 @@ -53335,8 +52671,6 @@ entities: rot: 3.141592653589793 rad pos: 4.5,-3.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10181 @@ -53345,8 +52679,6 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10182 @@ -53355,8 +52687,6 @@ entities: rot: -1.5707963267948966 rad pos: 10.5,-7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10215 @@ -53365,8 +52695,6 @@ entities: rot: 1.5707963267948966 rad pos: 22.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10217 @@ -53375,8 +52703,6 @@ entities: rot: 3.141592653589793 rad pos: 29.5,-28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10249 @@ -53384,8 +52710,6 @@ entities: - type: Transform pos: 26.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10365 @@ -53394,8 +52718,6 @@ entities: rot: 3.141592653589793 rad pos: 45.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10366 @@ -53404,8 +52726,6 @@ entities: rot: 3.141592653589793 rad pos: 50.5,17.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10375 @@ -53414,8 +52734,6 @@ entities: rot: -1.5707963267948966 rad pos: 59.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10400 @@ -53424,8 +52742,6 @@ entities: rot: -1.5707963267948966 rad pos: 67.5,15.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10401 @@ -53434,8 +52750,6 @@ entities: rot: 3.141592653589793 rad pos: 63.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10402 @@ -53444,8 +52758,6 @@ entities: rot: 1.5707963267948966 rad pos: 54.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10403 @@ -53453,8 +52765,6 @@ entities: - type: Transform pos: 57.5,14.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10411 @@ -53463,8 +52773,6 @@ entities: rot: -1.5707963267948966 rad pos: 62.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10412 @@ -53473,8 +52781,6 @@ entities: rot: 1.5707963267948966 rad pos: 57.5,23.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 10652 @@ -53483,8 +52789,6 @@ entities: rot: 1.5707963267948966 rad pos: 32.5,6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11367 @@ -53493,8 +52797,6 @@ entities: rot: -1.5707963267948966 rad pos: 77.5,2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11719 @@ -53503,8 +52805,6 @@ entities: rot: 3.141592653589793 rad pos: 64.5,-6.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11726 @@ -53513,8 +52813,6 @@ entities: rot: -1.5707963267948966 rad pos: 67.5,-1.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11729 @@ -53523,8 +52821,6 @@ entities: rot: 3.141592653589793 rad pos: 72.5,-0.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11744 @@ -53533,8 +52829,6 @@ entities: rot: 1.5707963267948966 rad pos: 52.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11923 @@ -53542,8 +52836,6 @@ entities: - type: Transform pos: 60.5,-4.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11936 @@ -53552,8 +52844,6 @@ entities: rot: 3.141592653589793 rad pos: 60.5,-10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11938 @@ -53561,8 +52851,6 @@ entities: - type: Transform pos: 56.5,2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 11957 @@ -53570,8 +52858,6 @@ entities: - type: Transform pos: 73.5,5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - proto: GasVolumePump @@ -53582,8 +52868,6 @@ entities: rot: -1.5707963267948966 rad pos: 38.5,-47.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 1373 @@ -53592,8 +52876,6 @@ entities: rot: 1.5707963267948966 rad pos: 39.5,-22.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - uid: 4501 @@ -53602,8 +52884,6 @@ entities: rot: 1.5707963267948966 rad pos: 38.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - proto: Gauze @@ -57967,8 +57247,6 @@ entities: rot: 1.5707963267948966 rad pos: 42.5,-51.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 12861 @@ -57977,8 +57255,6 @@ entities: rot: 1.5707963267948966 rad pos: 42.5,-52.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 12862 @@ -57987,8 +57263,6 @@ entities: rot: 1.5707963267948966 rad pos: 42.5,-53.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#03FCD3FF' - uid: 12904 @@ -57997,8 +57271,6 @@ entities: rot: 3.141592653589793 rad pos: 48.5,-45.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - type: AtmosPipeColor color: '#FF1212FF' - proto: Hemostat @@ -59360,36 +58632,26 @@ entities: - type: Transform pos: 43.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4311 components: - type: Transform pos: 43.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4571 components: - type: Transform pos: 32.5,-27.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5746 components: - type: Transform pos: 49.5,-13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10442 components: - type: Transform pos: 58.5,11.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: NitrousOxideCanister entities: - uid: 4334 @@ -59397,8 +58659,6 @@ entities: - type: Transform pos: 44.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: NuclearBomb entities: - uid: 12093 @@ -59447,71 +58707,51 @@ entities: - type: Transform pos: 42.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 2833 components: - type: Transform pos: 42.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4570 components: - type: Transform pos: 32.5,-28.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 5745 components: - type: Transform pos: 50.5,-13.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 6424 components: - type: Transform pos: 46.5,7.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 7969 components: - type: Transform pos: 5.5,19.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 9620 components: - type: Transform pos: 47.5,2.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10314 components: - type: Transform pos: 8.5,-5.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10441 components: - type: Transform pos: 58.5,10.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12997 components: - type: Transform pos: 34.5,-44.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: OxygenTankFilled entities: - uid: 5720 @@ -59759,15 +58999,11 @@ entities: - type: Transform pos: 44.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 12996 components: - type: Transform pos: 34.5,-43.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: PlasmaReinforcedWindowDirectional entities: - uid: 2092 @@ -67725,7 +66961,7 @@ entities: - type: Transform pos: 32.982197,41.628204 parent: 2 -- proto: soda_dispenser +- proto: SodaDispenser entities: - uid: 2922 components: @@ -68360,6 +67596,8 @@ entities: - type: Transform pos: 20.5,10.5 parent: 2 + - type: SpamEmitSound + enabled: False - proto: SpawnMechRipley entities: - uid: 8178 @@ -69124,36 +68362,26 @@ entities: - type: Transform pos: 46.5,-38.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 951 components: - type: Transform pos: 46.5,-37.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4568 components: - type: Transform pos: 36.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 4569 components: - type: Transform pos: 37.5,-25.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - uid: 10440 components: - type: Transform pos: 58.5,9.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: Stunbaton entities: - uid: 10137 @@ -71741,8 +70969,6 @@ entities: - type: Transform pos: 40.5,-46.5 parent: 2 - - type: AtmosDevice - joinedGrid: 2 - proto: TegCirculator entities: - uid: 13128 From 92e6e10c0afc871201b27a1c001583aa1b04928b Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sun, 16 Jun 2024 21:37:17 +0200 Subject: [PATCH 39/82] Update train (#28345) robotics console --- Resources/Maps/train.yml | 488 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 458 insertions(+), 30 deletions(-) diff --git a/Resources/Maps/train.yml b/Resources/Maps/train.yml index f83c5019f73f33..ae2783e643d2cd 100644 --- a/Resources/Maps/train.yml +++ b/Resources/Maps/train.yml @@ -34699,18 +34699,6 @@ entities: - type: Transform pos: 4.5698934,-180.42856 parent: 2 -- proto: chem_master - entities: - - uid: 3116 - components: - - type: Transform - pos: 5.5,-165.5 - parent: 2 - - uid: 3117 - components: - - type: Transform - pos: 7.5,-167.5 - parent: 2 - proto: ChemDispenser entities: - uid: 3112 @@ -34730,6 +34718,18 @@ entities: - type: Transform pos: 4.5,-167.5 parent: 2 +- proto: ChemMaster + entities: + - uid: 3116 + components: + - type: Transform + pos: 5.5,-165.5 + parent: 2 + - uid: 3117 + components: + - type: Transform + pos: 7.5,-167.5 + parent: 2 - proto: ChessBoard entities: - uid: 12938 @@ -36687,6 +36687,14 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-316.5 parent: 2 +- proto: ComputerRoboticsControl + entities: + - uid: 6661 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -9.5,-300.5 + parent: 2 - proto: ComputerSalvageExpedition entities: - uid: 8873 @@ -54872,11 +54880,15 @@ entities: - uid: 4565 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 3.5,-149.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4566 components: - type: Transform @@ -55133,11 +55145,15 @@ entities: - uid: 4664 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 1.5,-192.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4665 components: - type: Transform @@ -61359,11 +61375,15 @@ entities: - uid: 14873 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 5.5,-109.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 14892 components: - type: Transform @@ -63407,15 +63427,23 @@ entities: - uid: 11927 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: -20.5,-263.5 parent: 2 + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 11930 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: -19.5,-263.5 parent: 2 + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12412 components: - type: Transform @@ -63559,11 +63587,15 @@ entities: - uid: 838 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-157.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 855 components: - type: Transform @@ -63601,6 +63633,7 @@ entities: - uid: 884 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 0.5,0.5 parent: 2 @@ -63609,6 +63642,9 @@ entities: - 12935 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 905 components: - type: Transform @@ -63620,11 +63656,15 @@ entities: - uid: 921 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 5.5,-57.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 954 components: - type: Transform @@ -63639,6 +63679,7 @@ entities: - uid: 977 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-30.5 parent: 2 @@ -63647,13 +63688,20 @@ entities: - 13109 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1004 components: - type: Transform + anchored: False pos: 0.5,-22.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1057 components: - type: Transform @@ -63665,11 +63713,15 @@ entities: - uid: 1123 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-49.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1138 components: - type: Transform @@ -63734,14 +63786,19 @@ entities: - uid: 1373 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-56.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1375 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -2.5,-189.5 parent: 2 @@ -63750,6 +63807,9 @@ entities: - 14727 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1382 components: - type: Transform @@ -63772,10 +63832,14 @@ entities: - uid: 1769 components: - type: Transform + anchored: False pos: 0.5,-68.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1806 components: - type: Transform @@ -63829,10 +63893,14 @@ entities: - uid: 3040 components: - type: Transform + anchored: False pos: 0.5,-184.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3110 components: - type: Transform @@ -63844,14 +63912,19 @@ entities: - uid: 3333 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-76.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3351 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 4.5,-81.5 parent: 2 @@ -63860,14 +63933,21 @@ entities: - 13147 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3352 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -4.5,-81.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3371 components: - type: Transform @@ -63892,11 +63972,15 @@ entities: - uid: 3373 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -3.5,-88.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3374 components: - type: Transform @@ -63927,11 +64011,15 @@ entities: - uid: 3393 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-103.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3403 components: - type: Transform @@ -63965,10 +64053,14 @@ entities: - uid: 3438 components: - type: Transform + anchored: False pos: -3.5,-107.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3451 components: - type: Transform @@ -63999,6 +64091,7 @@ entities: - uid: 3474 components: - type: Transform + anchored: False pos: -6.5,-113.5 parent: 2 - type: DeviceNetwork @@ -64006,9 +64099,13 @@ entities: - 13161 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3475 components: - type: Transform + anchored: False pos: -6.5,-116.5 parent: 2 - type: DeviceNetwork @@ -64016,9 +64113,13 @@ entities: - 13161 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3476 components: - type: Transform + anchored: False pos: -6.5,-119.5 parent: 2 - type: DeviceNetwork @@ -64026,9 +64127,13 @@ entities: - 13168 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3477 components: - type: Transform + anchored: False pos: -6.5,-122.5 parent: 2 - type: DeviceNetwork @@ -64036,6 +64141,9 @@ entities: - 13168 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3478 components: - type: Transform @@ -64060,10 +64168,14 @@ entities: - uid: 3481 components: - type: Transform + anchored: False pos: 0.5,-130.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3482 components: - type: Transform @@ -64097,6 +64209,7 @@ entities: - uid: 3650 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 5.5,-138.5 parent: 2 @@ -64105,9 +64218,13 @@ entities: - 13182 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4016 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-136.5 parent: 2 @@ -64116,25 +64233,37 @@ entities: - 13176 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4018 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 3.5,-138.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4020 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 8.5,-138.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4031 components: - type: Transform + anchored: False pos: -4.5,-136.5 parent: 2 - type: DeviceNetwork @@ -64142,6 +64271,9 @@ entities: - 13187 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4033 components: - type: Transform @@ -64195,6 +64327,7 @@ entities: - uid: 4202 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 15.5,-256.5 parent: 2 @@ -64203,6 +64336,9 @@ entities: - 15292 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4234 components: - type: Transform @@ -64225,11 +64361,15 @@ entities: - uid: 4558 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 3.5,-152.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4559 components: - type: Transform @@ -64274,6 +64414,7 @@ entities: - uid: 4950 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 17.5,-248.5 parent: 2 @@ -64282,6 +64423,9 @@ entities: - 15292 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4967 components: - type: Transform @@ -64320,6 +64464,7 @@ entities: - uid: 5082 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 4.5,-189.5 parent: 2 @@ -64328,9 +64473,13 @@ entities: - 13241 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5083 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-194.5 parent: 2 @@ -64339,6 +64488,9 @@ entities: - 13249 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5108 components: - type: Transform @@ -64364,6 +64516,7 @@ entities: - uid: 5121 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: -2.5,-202.5 parent: 2 @@ -64372,6 +64525,9 @@ entities: - 13252 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5126 components: - type: Transform @@ -64418,11 +64574,15 @@ entities: - uid: 5161 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-221.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5163 components: - type: Transform @@ -64442,13 +64602,18 @@ entities: - uid: 5199 components: - type: Transform + anchored: False pos: 0.5,-228.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5251 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-178.5 parent: 2 @@ -64457,9 +64622,13 @@ entities: - 13211 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5260 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 3.5,-175.5 parent: 2 @@ -64468,9 +64637,13 @@ entities: - 8201 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5261 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -1.5,-175.5 parent: 2 @@ -64479,6 +64652,9 @@ entities: - 13213 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5288 components: - type: Transform @@ -64490,11 +64666,15 @@ entities: - uid: 5293 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -2.5,-163.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5302 components: - type: Transform @@ -64517,6 +64697,7 @@ entities: - uid: 6036 components: - type: Transform + anchored: False pos: 0.5,-34.5 parent: 2 - type: DeviceNetwork @@ -64525,6 +64706,9 @@ entities: - 13109 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 6727 components: - type: Transform @@ -64552,6 +64736,7 @@ entities: - uid: 6915 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 1.5,-15.5 parent: 2 @@ -64560,6 +64745,9 @@ entities: - 13105 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 7504 components: - type: Transform @@ -64571,11 +64759,15 @@ entities: - uid: 7506 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-265.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 7769 components: - type: Transform @@ -64587,19 +64779,27 @@ entities: - uid: 8066 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -2.5,-260.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 8070 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -2.5,-243.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 8071 components: - type: Transform @@ -64614,17 +64814,25 @@ entities: - uid: 8113 components: - type: Transform + anchored: False pos: 0.5,-238.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 8123 components: - type: Transform + anchored: False pos: 0.5,-211.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 8157 components: - type: Transform @@ -64636,6 +64844,7 @@ entities: - uid: 8314 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 8.5,-248.5 parent: 2 @@ -64644,6 +64853,9 @@ entities: - 15280 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 8431 components: - type: Transform @@ -64663,6 +64875,7 @@ entities: - uid: 10658 components: - type: Transform + anchored: False pos: -6.5,-338.5 parent: 2 - type: DeviceNetwork @@ -64670,6 +64883,9 @@ entities: - 5925 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 10811 components: - type: Transform @@ -64689,10 +64905,14 @@ entities: - uid: 10976 components: - type: Transform + anchored: False pos: 7.5,-337.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12142 components: - type: Transform @@ -64731,6 +64951,7 @@ entities: - uid: 12333 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 5.5,-273.5 parent: 2 @@ -64739,9 +64960,13 @@ entities: - 13322 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12341 components: - type: Transform + anchored: False pos: 0.5,-274.5 parent: 2 - type: DeviceNetwork @@ -64749,14 +64974,21 @@ entities: - 13317 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12345 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 2.5,-284.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12349 components: - type: Transform @@ -64768,6 +65000,7 @@ entities: - uid: 12356 components: - type: Transform + anchored: False pos: 0.5,-286.5 parent: 2 - type: DeviceNetwork @@ -64775,6 +65008,9 @@ entities: - 13333 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12362 components: - type: Transform @@ -64808,6 +65044,7 @@ entities: - uid: 12428 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: -4.5,-315.5 parent: 2 @@ -64816,6 +65053,9 @@ entities: - 13374 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12429 components: - type: Transform @@ -64827,6 +65067,7 @@ entities: - uid: 12430 components: - type: Transform + anchored: False pos: 0.5,-318.5 parent: 2 - type: DeviceNetwork @@ -64834,6 +65075,9 @@ entities: - 13370 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12470 components: - type: Transform @@ -64918,28 +65162,41 @@ entities: - uid: 12637 components: - type: Transform + anchored: False pos: 0.5,-292.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12641 components: - type: Transform + anchored: False pos: 0.5,-324.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12652 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -0.5,-327.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12705 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 0.5,-297.5 parent: 2 @@ -64948,6 +65205,9 @@ entities: - 13358 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12718 components: - type: Transform @@ -64959,6 +65219,7 @@ entities: - uid: 12754 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 0.5,-356.5 parent: 2 @@ -64967,16 +65228,24 @@ entities: - 13421 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12895 components: - type: Transform + anchored: False pos: 0.5,-344.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12897 components: - type: Transform + anchored: False pos: 0.5,-340.5 parent: 2 - type: DeviceNetwork @@ -64984,9 +65253,13 @@ entities: - 11906 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12898 components: - type: Transform + anchored: False pos: 0.5,-329.5 parent: 2 - type: DeviceNetwork @@ -64995,13 +65268,20 @@ entities: - 11906 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12918 components: - type: Transform + anchored: False pos: 0.5,-351.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12920 components: - type: Transform @@ -65121,17 +65401,25 @@ entities: - uid: 13077 components: - type: Transform + anchored: False pos: -3.5,-368.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13079 components: - type: Transform + anchored: False pos: 4.5,-368.5 parent: 2 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13145 components: - type: Transform @@ -65145,6 +65433,7 @@ entities: - uid: 13207 components: - type: Transform + anchored: False pos: 0.5,-167.5 parent: 2 - type: DeviceNetwork @@ -65152,6 +65441,9 @@ entities: - 13209 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13237 components: - type: Transform @@ -65275,6 +65567,7 @@ entities: - uid: 15284 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-254.5 parent: 2 @@ -65283,6 +65576,9 @@ entities: - 15282 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 16679 components: - type: Transform @@ -65360,6 +65656,7 @@ entities: - uid: 747 components: - type: Transform + anchored: False pos: 2.5,-6.5 parent: 2 - type: DeviceNetwork @@ -65367,6 +65664,9 @@ entities: - 13080 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 751 components: - type: Transform @@ -65410,6 +65710,7 @@ entities: - uid: 1155 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: -0.5,-30.5 parent: 2 @@ -65418,9 +65719,13 @@ entities: - 13109 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1191 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: -0.5,-34.5 parent: 2 @@ -65430,6 +65735,9 @@ entities: - 13109 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 1201 components: - type: Transform @@ -65554,6 +65862,7 @@ entities: - uid: 1825 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 0.5,1.5 parent: 2 @@ -65562,6 +65871,9 @@ entities: - 12935 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 2797 components: - type: Transform @@ -65584,8 +65896,12 @@ entities: - uid: 3120 components: - type: Transform + anchored: False pos: 1.5,-167.5 parent: 2 + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3261 components: - type: Transform @@ -65765,6 +66081,7 @@ entities: - uid: 3600 components: - type: Transform + anchored: False pos: -0.5,-120.5 parent: 2 - type: DeviceNetwork @@ -65772,9 +66089,13 @@ entities: - 13165 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3603 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: -0.5,-123.5 parent: 2 @@ -65783,6 +66104,9 @@ entities: - 13168 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3608 components: - type: Transform @@ -65797,11 +66121,15 @@ entities: - uid: 3622 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 6.5,-110.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3623 components: - type: Transform @@ -65838,11 +66166,15 @@ entities: - uid: 3637 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 4.5,-108.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3647 components: - type: Transform @@ -65900,11 +66232,15 @@ entities: - uid: 3982 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 7.5,-135.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 3993 components: - type: Transform @@ -65993,6 +66329,7 @@ entities: - uid: 4508 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 4.5,-88.5 parent: 2 @@ -66001,6 +66338,9 @@ entities: - 13146 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 4509 components: - type: Transform @@ -66100,6 +66440,7 @@ entities: - uid: 5072 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 1.5,-194.5 parent: 2 @@ -66108,6 +66449,9 @@ entities: - 13249 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5073 components: - type: Transform @@ -66141,19 +66485,27 @@ entities: - uid: 5179 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 4.5,-229.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5185 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 0.5,-229.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5188 components: - type: Transform @@ -66165,19 +66517,27 @@ entities: - uid: 5189 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: -3.5,-220.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5190 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 0.5,-220.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5225 components: - type: Transform @@ -66188,6 +66548,7 @@ entities: - uid: 5252 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 1.5,-178.5 parent: 2 @@ -66196,9 +66557,13 @@ entities: - 13211 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5275 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -1.5,-174.5 parent: 2 @@ -66207,6 +66572,9 @@ entities: - 13213 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 5277 components: - type: Transform @@ -66267,6 +66635,7 @@ entities: - uid: 7476 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 16.5,-256.5 parent: 2 @@ -66275,6 +66644,9 @@ entities: - 15292 - type: AtmosPipeColor color: '#FF1212FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 7563 components: - type: Transform @@ -66285,6 +66657,7 @@ entities: - uid: 7776 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 18.5,-249.5 parent: 2 @@ -66293,6 +66666,9 @@ entities: - 15292 - type: AtmosPipeColor color: '#FF1212FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 7823 components: - type: Transform @@ -66326,6 +66702,7 @@ entities: - uid: 8089 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 8.5,-256.5 parent: 2 @@ -66334,6 +66711,9 @@ entities: - 15280 - type: AtmosPipeColor color: '#FF1212FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 8091 components: - type: Transform @@ -66385,12 +66765,16 @@ entities: - uid: 11912 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -5.5,-361.5 parent: 2 - type: DeviceNetwork deviceLists: - 13421 + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12134 components: - type: Transform @@ -66459,6 +66843,7 @@ entities: - uid: 12340 components: - type: Transform + anchored: False pos: 1.5,-274.5 parent: 2 - type: DeviceNetwork @@ -66466,9 +66851,13 @@ entities: - 13317 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12355 components: - type: Transform + anchored: False pos: -0.5,-286.5 parent: 2 - type: DeviceNetwork @@ -66476,6 +66865,9 @@ entities: - 13333 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12375 components: - type: Transform @@ -66531,6 +66923,7 @@ entities: - uid: 12530 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 0.5,-319.5 parent: 2 @@ -66539,6 +66932,9 @@ entities: - 13370 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12564 components: - type: Transform @@ -66578,6 +66974,7 @@ entities: - uid: 12704 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 0.5,-298.5 parent: 2 @@ -66586,6 +66983,9 @@ entities: - 13358 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12721 components: - type: Transform @@ -66624,14 +67024,19 @@ entities: - uid: 12812 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: 0.5,-346.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12813 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: -4.5,-344.5 parent: 2 @@ -66640,9 +67045,13 @@ entities: - 13402 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12896 components: - type: Transform + anchored: False pos: 1.5,-329.5 parent: 2 - type: DeviceNetwork @@ -66651,6 +67060,9 @@ entities: - 11906 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 12914 components: - type: Transform @@ -66693,6 +67105,7 @@ entities: - uid: 13040 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: -6.5,-363.5 parent: 2 @@ -66701,9 +67114,13 @@ entities: - 13421 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13041 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 7.5,-363.5 parent: 2 @@ -66712,9 +67129,13 @@ entities: - 13421 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13053 components: - type: Transform + anchored: False pos: 0.5,-365.5 parent: 2 - type: DeviceNetwork @@ -66722,14 +67143,21 @@ entities: - 13429 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13055 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: 0.5,-367.5 parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13067 components: - type: Transform @@ -66755,6 +67183,7 @@ entities: - uid: 13081 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 3.5,-361.5 parent: 2 @@ -66763,9 +67192,13 @@ entities: - 13421 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13082 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -2.5,-361.5 parent: 2 @@ -66774,6 +67207,9 @@ entities: - 13421 - type: AtmosPipeColor color: '#FF0000FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 13088 components: - type: Transform @@ -66830,6 +67266,7 @@ entities: - uid: 15283 components: - type: Transform + anchored: False rot: 3.141592653589793 rad pos: -0.5,-257.5 parent: 2 @@ -66838,14 +67275,21 @@ entities: - 15282 - type: AtmosPipeColor color: '#FF1212FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 16999 components: - type: Transform + anchored: False rot: 1.5707963267948966 rad pos: -5.5,-248.5 parent: 2 - type: AtmosPipeColor color: '#FF1212FF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 17001 components: - type: Transform @@ -74248,7 +74692,7 @@ entities: pos: 8.5,-176.5 parent: 2 - type: Door - secondsUntilStateChange: -134384.86 + secondsUntilStateChange: -134439.94 state: Closing - uid: 11796 components: @@ -80145,12 +80589,6 @@ entities: rot: 3.141592653589793 rad pos: -2.5,-207.5 parent: 2 - - uid: 6882 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -9.5,-300.5 - parent: 2 - uid: 7791 components: - type: Transform @@ -86125,7 +86563,7 @@ entities: - type: Transform pos: 3.2005093,-101.69577 parent: 2 -- proto: soda_dispenser +- proto: SodaDispenser entities: - uid: 1025 components: @@ -90101,11 +90539,6 @@ entities: - type: Transform pos: 1.2603997,-187.48691 parent: 2 - - uid: 6661 - components: - - type: Transform - pos: -9.413958,-300.49924 - parent: 2 - uid: 15265 components: - type: Transform @@ -90167,11 +90600,6 @@ entities: - type: Transform pos: 7.516703,-56.70343 parent: 2 - - uid: 6883 - components: - - type: Transform - pos: -9.6328745,-300.19412 - parent: 2 - uid: 8681 components: - type: Transform From ce5641036ca283ec84421b18fd0c86afacda6734 Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sun, 16 Jun 2024 21:37:26 +0200 Subject: [PATCH 40/82] Update fland (#28347) robotics console --- Resources/Maps/fland.yml | 60 +++++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 29 deletions(-) diff --git a/Resources/Maps/fland.yml b/Resources/Maps/fland.yml index fa9d58f0d2da39..56eb8ec73a949f 100644 --- a/Resources/Maps/fland.yml +++ b/Resources/Maps/fland.yml @@ -19098,13 +19098,13 @@ entities: - type: Transform pos: -16.5,-30.5 parent: 13329 - - type: DeviceLinkSink - links: - - 3748 - type: DeviceLinkSource linkedPorts: 3748: - DoorStatus: Close + - type: DeviceLinkSink + links: + - 3748 - uid: 10108 components: - type: Transform @@ -28701,11 +28701,10 @@ entities: rot: -1.5707963267948966 rad pos: -19.5,57.5 parent: 13329 - - uid: 15487 + - uid: 15462 components: - type: Transform - rot: 3.141592653589793 rad - pos: 49.5,-43.5 + pos: 49.5,-37.5 parent: 13329 - uid: 31586 components: @@ -89645,23 +89644,6 @@ entities: - type: Transform pos: -36.57214,64.58148 parent: 13329 -- proto: chem_master - entities: - - uid: 18338 - components: - - type: Transform - pos: 17.5,36.5 - parent: 13329 - - uid: 18341 - components: - - type: Transform - pos: 20.5,41.5 - parent: 13329 - - uid: 18450 - components: - - type: Transform - pos: 30.5,36.5 - parent: 13329 - proto: ChemDispenser entities: - uid: 18340 @@ -89686,6 +89668,23 @@ entities: - type: Transform pos: 25.5,40.5 parent: 13329 +- proto: ChemMaster + entities: + - uid: 18338 + components: + - type: Transform + pos: 17.5,36.5 + parent: 13329 + - uid: 18341 + components: + - type: Transform + pos: 20.5,41.5 + parent: 13329 + - uid: 18450 + components: + - type: Transform + pos: 30.5,36.5 + parent: 13329 - proto: ChessBoard entities: - uid: 1101 @@ -96355,11 +96354,6 @@ entities: rot: -1.5707963267948966 rad pos: 39.5,-22.5 parent: 13329 - - uid: 15462 - components: - - type: Transform - pos: 49.5,-37.5 - parent: 13329 - uid: 15485 components: - type: Transform @@ -96393,6 +96387,14 @@ entities: - type: Transform pos: 77.5,57.5 parent: 13329 +- proto: ComputerRoboticsControl + entities: + - uid: 15487 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 49.5,-43.5 + parent: 13329 - proto: ComputerSalvageExpedition entities: - uid: 13473 @@ -184695,7 +184697,7 @@ entities: - type: Transform pos: 81.47995,53.57306 parent: 13329 -- proto: soda_dispenser +- proto: SodaDispenser entities: - uid: 1175 components: From 31d155dfe06bb437aea6f79106ae2c724a0a42a3 Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Sun, 16 Jun 2024 21:37:37 +0200 Subject: [PATCH 41/82] Update box (#28348) * Update box robotics console * Morgue airlock * update --- Resources/Maps/box.yml | 137 +++++++++++++++++++++-------------------- 1 file changed, 71 insertions(+), 66 deletions(-) diff --git a/Resources/Maps/box.yml b/Resources/Maps/box.yml index 968ef2caa5c12b..07a5cd9d35fa6a 100644 --- a/Resources/Maps/box.yml +++ b/Resources/Maps/box.yml @@ -11429,63 +11429,63 @@ entities: rot: -1.5707963267948966 rad pos: -81.5,9.5 parent: 8364 - - type: DeviceLinkSink - links: - - 655 - type: DeviceLinkSource linkedPorts: 655: - DoorStatus: Close + - type: DeviceLinkSink + links: + - 655 - uid: 1110 components: - type: Transform rot: -1.5707963267948966 rad pos: -79.5,-13.5 parent: 8364 - - type: DeviceLinkSink - links: - - 12466 - type: DeviceLinkSource linkedPorts: 12466: - DoorStatus: Close + - type: DeviceLinkSink + links: + - 12466 - uid: 12469 components: - type: Transform pos: -75.5,-17.5 parent: 8364 - - type: DeviceLinkSink - links: - - 12468 - type: DeviceLinkSource linkedPorts: 12468: - DoorStatus: Close + - type: DeviceLinkSink + links: + - 12468 - uid: 12470 components: - type: Transform pos: -68.5,-17.5 parent: 8364 - - type: DeviceLinkSink - links: - - 12467 - type: DeviceLinkSource linkedPorts: 12467: - DoorStatus: Close + - type: DeviceLinkSink + links: + - 12467 - uid: 12486 components: - type: Transform rot: -1.5707963267948966 rad pos: -81.5,-4.5 parent: 8364 - - type: DeviceLinkSink - links: - - 610 - type: DeviceLinkSource linkedPorts: 610: - DoorStatus: Close + - type: DeviceLinkSink + links: + - 610 - proto: AirlockFreezer entities: - uid: 25720 @@ -11541,7 +11541,7 @@ entities: pos: 24.5,16.5 parent: 8364 - type: Door - secondsUntilStateChange: -354.4333 + secondsUntilStateChange: -706.3356 state: Opening - type: DeviceLinkSource lastSignals: @@ -11880,21 +11880,24 @@ entities: rot: 3.141592653589793 rad pos: -66.5,21.5 parent: 8364 - - type: Docking - dockJointId: docking46345 - dockedWith: 21828 - type: Door changeAirtight: False state: Open + - type: Docking + dockJointId: docking46345 + dockedWith: 21828 + - type: DeviceLinkSource + linkedPorts: + 1495: + - DoorStatus: Close + lastSignals: + DoorStatus: False + DockStatus: True - type: Physics canCollide: False - type: DeviceLinkSink links: - 1495 - - type: DeviceLinkSource - linkedPorts: - 1495: - - DoorStatus: Close - uid: 5209 components: - type: Transform @@ -11912,12 +11915,16 @@ entities: - type: Transform pos: -0.5,-0.5 parent: 11906 - - type: Docking - dockJointId: docking46345 - dockedWith: 562 - type: Door changeAirtight: False state: Open + - type: Docking + dockJointId: docking46345 + dockedWith: 562 + - type: DeviceLinkSource + lastSignals: + DoorStatus: False + DockStatus: True - type: Physics canCollide: False - proto: AirlockHeadOfPersonnelGlassLocked @@ -12764,10 +12771,10 @@ entities: - type: Transform pos: 41.5,-21.5 parent: 8364 +- proto: AirlockMedicalMorgueLocked + entities: - uid: 18321 components: - - type: MetaData - name: Morgue - type: Transform pos: 44.5,-15.5 parent: 8364 @@ -64138,23 +64145,6 @@ entities: - type: Transform pos: 14.5,10.5 parent: 8364 -- proto: chem_master - entities: - - uid: 18770 - components: - - type: Transform - pos: 22.5,-20.5 - parent: 8364 - - uid: 18771 - components: - - type: Transform - pos: 22.5,-16.5 - parent: 8364 - - uid: 18775 - components: - - type: Transform - pos: 18.5,-16.5 - parent: 8364 - proto: ChemDispenser entities: - uid: 18610 @@ -64179,6 +64169,23 @@ entities: - type: Transform pos: 18.5,-17.5 parent: 8364 +- proto: ChemMaster + entities: + - uid: 18770 + components: + - type: Transform + pos: 22.5,-20.5 + parent: 8364 + - uid: 18771 + components: + - type: Transform + pos: 22.5,-16.5 + parent: 8364 + - uid: 18775 + components: + - type: Transform + pos: 18.5,-16.5 + parent: 8364 - proto: ChessBoard entities: - uid: 11671 @@ -69520,12 +69527,6 @@ entities: - type: Transform pos: -6.5,-6.5 parent: 8364 - - uid: 6491 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 71.5,-34.5 - parent: 8364 - uid: 19091 components: - type: Transform @@ -69672,6 +69673,12 @@ entities: rot: -1.5707963267948966 rad pos: 37.5,-41.5 parent: 8364 + - uid: 20698 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 46.5,-25.5 + parent: 8364 - proto: ComputerCriminalRecords entities: - uid: 9075 @@ -69774,12 +69781,6 @@ entities: rot: 3.141592653589793 rad pos: 28.5,-21.5 parent: 8364 - - uid: 26738 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 46.5,-25.5 - parent: 8364 - proto: ComputerPowerMonitoring entities: - uid: 595 @@ -69873,6 +69874,14 @@ entities: rot: 1.5707963267948966 rad pos: 69.5,-20.5 parent: 8364 +- proto: ComputerRoboticsControl + entities: + - uid: 6491 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 71.5,-34.5 + parent: 8364 - proto: ComputerSalvageExpedition entities: - uid: 24680 @@ -96651,14 +96660,6 @@ entities: parent: 8364 - type: AtmosPipeColor color: '#FF1212FF' - - uid: 23915 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 76.5,-6.5 - parent: 8364 - - type: AtmosPipeColor - color: '#FF1212FF' - uid: 23916 components: - type: Transform @@ -105733,11 +105734,15 @@ entities: - uid: 25784 components: - type: Transform + anchored: False rot: -1.5707963267948966 rad pos: 14.5,31.5 parent: 8364 - type: AtmosPipeColor color: '#0335FCFF' + - type: Physics + canCollide: True + bodyType: Dynamic - uid: 25785 components: - type: Transform @@ -141475,7 +141480,7 @@ entities: - type: Transform pos: 10.464365,-22.554323 parent: 8364 -- proto: soda_dispenser +- proto: SodaDispenser entities: - uid: 7256 components: From 5e50bd83d6e5ed98c57b6a0fa5d280b32b7e7219 Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Sun, 16 Jun 2024 15:37:43 -0400 Subject: [PATCH 42/82] Missing meteor presets (#29044) * add meteors into missing game presets * changes for real * implement code * this too --- .../Tests/GameRules/FailAndStartPresetTest.cs | 2 ++ .../GameTicking/Rules/GameRuleSystem.cs | 17 ++++++++++++----- .../GameTicking/Rules/SecretRuleSystem.cs | 2 +- .../GameTicking/Components/GameRuleComponent.cs | 7 +++++++ Resources/Prototypes/GameRules/meteorswarms.yml | 1 + Resources/Prototypes/game_presets.yml | 3 +++ 6 files changed, 26 insertions(+), 6 deletions(-) diff --git a/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs b/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs index 09a27c1baea826..f660eccf30ad91 100644 --- a/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs +++ b/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs @@ -140,6 +140,8 @@ private void OnRoundStartAttempt(RoundStartAttemptEvent args) while (query.MoveNext(out _, out _, out var gameRule)) { var minPlayers = gameRule.MinPlayers; + if (!gameRule.CancelPresetOnTooFewPlayers) + continue; if (args.Players.Length >= minPlayers) continue; diff --git a/Content.Server/GameTicking/Rules/GameRuleSystem.cs b/Content.Server/GameTicking/Rules/GameRuleSystem.cs index 730748ce6b9ec6..cb5b117549520b 100644 --- a/Content.Server/GameTicking/Rules/GameRuleSystem.cs +++ b/Content.Server/GameTicking/Rules/GameRuleSystem.cs @@ -41,11 +41,18 @@ private void OnStartAttempt(RoundStartAttemptEvent args) if (args.Players.Length >= minPlayers) continue; - ChatManager.SendAdminAnnouncement(Loc.GetString("preset-not-enough-ready-players", - ("readyPlayersCount", args.Players.Length), - ("minimumPlayers", minPlayers), - ("presetName", ToPrettyString(uid)))); - args.Cancel(); + if (gameRule.CancelPresetOnTooFewPlayers) + { + ChatManager.SendAdminAnnouncement(Loc.GetString("preset-not-enough-ready-players", + ("readyPlayersCount", args.Players.Length), + ("minimumPlayers", minPlayers), + ("presetName", ToPrettyString(uid)))); + args.Cancel(); + } + else + { + ForceEndSelf(uid, gameRule); + } } } diff --git a/Content.Server/GameTicking/Rules/SecretRuleSystem.cs b/Content.Server/GameTicking/Rules/SecretRuleSystem.cs index 320f9d197aac65..8608f250d486af 100644 --- a/Content.Server/GameTicking/Rules/SecretRuleSystem.cs +++ b/Content.Server/GameTicking/Rules/SecretRuleSystem.cs @@ -164,7 +164,7 @@ private bool CanPick([NotNullWhen(true)] GamePresetPrototype? selected, int play return false; } - if (ruleComp.MinPlayers > players) + if (ruleComp.MinPlayers > players && ruleComp.CancelPresetOnTooFewPlayers) return false; } diff --git a/Content.Shared/GameTicking/Components/GameRuleComponent.cs b/Content.Shared/GameTicking/Components/GameRuleComponent.cs index 4e93c2b0038202..87a5822d4747de 100644 --- a/Content.Shared/GameTicking/Components/GameRuleComponent.cs +++ b/Content.Shared/GameTicking/Components/GameRuleComponent.cs @@ -23,6 +23,13 @@ public sealed partial class GameRuleComponent : Component [DataField] public int MinPlayers; + /// + /// If true, this rule not having enough players will cancel the preset selection. + /// If false, it will simply not run silently. + /// + [DataField] + public bool CancelPresetOnTooFewPlayers = true; + /// /// A delay for when the rule the is started and when the starting logic actually runs. /// diff --git a/Resources/Prototypes/GameRules/meteorswarms.yml b/Resources/Prototypes/GameRules/meteorswarms.yml index 70dd5265b04495..b85032f0564c52 100644 --- a/Resources/Prototypes/GameRules/meteorswarms.yml +++ b/Resources/Prototypes/GameRules/meteorswarms.yml @@ -4,6 +4,7 @@ components: - type: GameRule minPlayers: 25 + cancelPresetOnTooFewPlayers: false - type: MeteorScheduler - type: weightedRandomEntity diff --git a/Resources/Prototypes/game_presets.yml b/Resources/Prototypes/game_presets.yml index 8876468bbdb5d1..39523a1a378058 100644 --- a/Resources/Prototypes/game_presets.yml +++ b/Resources/Prototypes/game_presets.yml @@ -7,6 +7,7 @@ description: survival-description rules: - RampingStationEventScheduler + - GameRuleMeteorScheduler - BasicRoundstartVariation - type: gamePreset @@ -20,6 +21,7 @@ - Revolutionary - Zombie - RampingStationEventScheduler + - GameRuleMeteorScheduler - type: gamePreset id: Extended @@ -44,6 +46,7 @@ description: greenshift-description rules: - BasicRoundstartVariation + - GameRuleMeteorScheduler - type: gamePreset id: Secret From ee2769ed9f4d075bb280d4c86c6ccf7c2f2fe741 Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Sun, 16 Jun 2024 19:38:00 +0000 Subject: [PATCH 43/82] atlas update (#28514) * atlas update * unkill previous changes * fix lawyer room --------- Co-authored-by: deltanedas <@deltanedas:kde.org> --- Resources/Maps/atlas.yml | 294 +++++++++++++++++++++++++++------------ 1 file changed, 202 insertions(+), 92 deletions(-) diff --git a/Resources/Maps/atlas.yml b/Resources/Maps/atlas.yml index 2db45c0308f173..18c63121f6c9a2 100644 --- a/Resources/Maps/atlas.yml +++ b/Resources/Maps/atlas.yml @@ -77,7 +77,7 @@ entities: version: 6 1,-1: ind: 1,-1 - tiles: eQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAHQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAHQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAeQAAAAAAdgAAAAAAdgAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAdgAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAdgAAAAAAdgAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAdgAAAAAAdgAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAdgAAAAAAdgAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAA + tiles: eQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAPQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAATQAAAAAAeQAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAHQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAHQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAATQAAAAAAeQAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAOgAAAAAAHQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAeQAAAAAAdgAAAAAAdgAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAdgAAAAAAeQAAAAAAeQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAdgAAAAAAdgAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAdgAAAAAAdgAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAeQAAAAAAdgAAAAAAdgAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAWQAAAAAAeQAAAAAAUAAAAAAAUAAAAAAAUAAAAAAAeQAAAAAAeQAAAAAAHQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAHQAAAAAA version: 6 2,0: ind: 2,0 @@ -2261,10 +2261,10 @@ entities: 0: 57582 7,-4: 0: 4353 - 2: 16384 + 2: 50176 7,-3: - 0: 273 - 2: 16452 + 0: 497 + 2: 16384 7,-2: 0: 40209 2: 12 @@ -2574,7 +2574,8 @@ entities: -12,-1: 0: 65535 -13,-1: - 0: 47288 + 0: 34952 + 4: 12336 -12,0: 0: 65535 -12,-5: @@ -2610,7 +2611,7 @@ entities: -13,-6: 2: 61680 -13,-5: - 0: 61152 + 4: 61152 -11,-6: 2: 49 0: 56320 @@ -2639,8 +2640,8 @@ entities: 0: 305 -13,0: 0: 34952 - 4: 48 - 5: 12288 + 5: 48 + 6: 12288 -12,1: 0: 30576 -13,1: @@ -2703,12 +2704,13 @@ entities: 2: 3140 -14,0: 0: 13107 - 4: 128 - 5: 32768 + 5: 128 + 6: 32768 -14,1: 0: 243 -14,-1: - 0: 46003 + 0: 13107 + 4: 32896 -14,2: 0: 52352 2: 8 @@ -2798,6 +2800,21 @@ entities: - 0 - 0 - 0 + - volume: 2500 + temperature: 293.15 + moles: + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - volume: 2500 temperature: 293.15 moles: @@ -3032,11 +3049,9 @@ entities: devices: - 1989 - 845 - - 7333 - 1231 - 3817 - 3815 - - 929 - 7599 - uid: 7372 components: @@ -3342,6 +3357,11 @@ entities: - type: Transform pos: 16.5,-9.5 parent: 30 + - uid: 8524 + components: + - type: Transform + pos: -43.5,-2.5 + parent: 30 - proto: Airlock entities: - uid: 33 @@ -3657,11 +3677,17 @@ entities: parent: 30 - proto: AirlockExternalGlass entities: - - uid: 5372 + - uid: 1296 components: - type: Transform pos: 7.5,28.5 parent: 30 + - uid: 7393 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 29.5,-10.5 + parent: 30 - uid: 7775 components: - type: Transform @@ -3757,11 +3783,6 @@ entities: parent: 30 - proto: AirlockExternalGlassShuttleArrivals entities: - - uid: 1296 - components: - - type: Transform - pos: 7.5,30.5 - parent: 30 - uid: 7628 components: - type: Transform @@ -3796,6 +3817,20 @@ entities: - type: Transform pos: 21.5,-24.5 parent: 30 +- proto: AirlockExternalGlassShuttleEscape + entities: + - uid: 2908 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 7.5,30.5 + parent: 30 + - uid: 6972 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 31.5,-10.5 + parent: 30 - proto: AirlockExternalGlassShuttleLocked entities: - uid: 1328 @@ -4743,12 +4778,14 @@ entities: - uid: 8507 components: - type: Transform - pos: 22.5,34.5 + rot: 1.5707963267948966 rad + pos: 31.5,-10.5 parent: 30 - uid: 8508 components: - type: Transform - pos: 15.5,34.5 + rot: 3.141592653589793 rad + pos: 7.5,30.5 parent: 30 - proto: AtmosFixBlockerMarker entities: @@ -16863,6 +16900,11 @@ entities: - type: Transform pos: -55.5,-7.5 parent: 30 + - uid: 8527 + components: + - type: Transform + pos: -44.5,-3.5 + parent: 30 - proto: Carpet entities: - uid: 160 @@ -20989,6 +21031,11 @@ entities: - type: Transform pos: 7.5,29.5 parent: 30 + - uid: 8522 + components: + - type: Transform + pos: 30.5,-10.5 + parent: 30 - proto: DefaultStationBeaconEVAStorage entities: - uid: 7600 @@ -23922,22 +23969,6 @@ entities: parent: 6004 - type: Physics canCollide: False -- proto: EncryptionKeyEngineering - entities: - - uid: 7113 - components: - - type: Transform - parent: 6972 - - type: Physics - canCollide: False -- proto: EncryptionKeyScience - entities: - - uid: 7393 - components: - - type: Transform - parent: 7379 - - type: Physics - canCollide: False - proto: EncryptionKeySecurity entities: - uid: 6530 @@ -24659,6 +24690,13 @@ entities: parent: 30 - type: Fixtures fixtures: {} + - uid: 8523 + components: + - type: Transform + pos: -15.5,6.5 + parent: 30 + - type: Fixtures + fixtures: {} - proto: FloorTileItemCarpetClown entities: - uid: 4155 @@ -25974,6 +26012,13 @@ entities: parent: 30 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 8670 + components: + - type: Transform + pos: 2.5,9.5 + parent: 30 + - type: AtmosPipeColor + color: '#990000FF' - proto: GasPipeFourway entities: - uid: 391 @@ -33465,6 +33510,13 @@ entities: parent: 30 - type: AtmosPipeColor color: '#990000FF' + - uid: 8671 + components: + - type: Transform + pos: 2.5,8.5 + parent: 30 + - type: AtmosPipeColor + color: '#990000FF' - proto: GasPipeTJunction entities: - uid: 388 @@ -34663,6 +34715,14 @@ entities: parent: 30 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 7333 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 1.5,9.5 + parent: 30 + - type: AtmosPipeColor + color: '#990000FF' - uid: 7336 components: - type: Transform @@ -35598,6 +35658,13 @@ entities: parent: 30 - type: AtmosPipeColor color: '#0055CCFF' + - uid: 8669 + components: + - type: Transform + pos: 2.5,6.5 + parent: 30 + - type: AtmosPipeColor + color: '#0055CCFF' - proto: GasVentScrubber entities: - uid: 373 @@ -35703,10 +35770,10 @@ entities: - uid: 929 components: - type: Transform - pos: 2.5,6.5 + pos: 1.5,10.5 parent: 30 - type: AtmosPipeColor - color: '#0055CCFF' + color: '#990000FF' - uid: 1099 components: - type: Transform @@ -36150,14 +36217,6 @@ entities: parent: 30 - type: AtmosPipeColor color: '#990000FF' - - uid: 7333 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 1.5,9.5 - parent: 30 - - type: AtmosPipeColor - color: '#990000FF' - uid: 7349 components: - type: Transform @@ -36270,6 +36329,14 @@ entities: parent: 30 - type: AtmosPipeColor color: '#990000FF' + - uid: 8668 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 2.5,7.5 + parent: 30 + - type: AtmosPipeColor + color: '#990000FF' - proto: GasVolumePump entities: - uid: 7730 @@ -38288,6 +38355,18 @@ entities: - type: Transform pos: -53.5,6.5 parent: 30 + - uid: 8515 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 30.5,-9.5 + parent: 30 + - uid: 8516 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 30.5,-11.5 + parent: 30 - uid: 8538 components: - type: Transform @@ -39670,6 +39749,18 @@ entities: - type: Transform pos: -51.5,-6.5 parent: 30 + - uid: 8525 + components: + - type: Transform + pos: -43.5,-3.5 + parent: 30 +- proto: NitrousOxideCanister + entities: + - uid: 8650 + components: + - type: Transform + pos: -43.5,-4.5 + parent: 30 - proto: NoticeBoard entities: - uid: 7632 @@ -39747,6 +39838,11 @@ entities: - type: Transform pos: -35.5,-21.5 parent: 30 + - uid: 8526 + components: + - type: Transform + pos: -44.5,-2.5 + parent: 30 - proto: PaintingCafeTerraceAtNight entities: - uid: 4137 @@ -40004,6 +40100,11 @@ entities: - type: Transform pos: -51.5,-9.5 parent: 30 + - uid: 8651 + components: + - type: Transform + pos: -44.5,-4.5 + parent: 30 - proto: PlasmaTankFilled entities: - uid: 6099 @@ -42070,6 +42171,12 @@ entities: parent: 30 - type: ApcPowerReceiver powerLoad: 0 + - uid: 5372 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -4.5,-16.5 + parent: 30 - uid: 5409 components: - type: Transform @@ -44320,6 +44427,18 @@ entities: - type: Transform pos: -53.5,6.5 parent: 30 + - uid: 8519 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 30.5,-11.5 + parent: 30 + - uid: 8521 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 30.5,-9.5 + parent: 30 - uid: 8542 components: - type: Transform @@ -47003,6 +47122,16 @@ entities: - type: Transform pos: -52.5,-11.5 parent: 30 + - uid: 8662 + components: + - type: Transform + pos: -43.5,-5.5 + parent: 30 + - uid: 8663 + components: + - type: Transform + pos: -44.5,-5.5 + parent: 30 - proto: SubstationBasic entities: - uid: 1695 @@ -48686,46 +48815,6 @@ entities: showEnts: False occludes: True ents: [] - - uid: 6972 - components: - - type: Transform - pos: -48.5,7.5 - parent: 30 - - type: ContainerContainer - containers: - key_slots: !type:Container - showEnts: False - occludes: True - ents: - - 7113 - machine_board: !type:Container - showEnts: False - occludes: True - ents: [] - machine_parts: !type:Container - showEnts: False - occludes: True - ents: [] - - uid: 7379 - components: - - type: Transform - pos: -48.5,8.5 - parent: 30 - - type: ContainerContainer - containers: - key_slots: !type:Container - showEnts: False - occludes: True - ents: - - 7393 - machine_board: !type:Container - showEnts: False - occludes: True - ents: [] - machine_parts: !type:Container - showEnts: False - occludes: True - ents: [] - proto: TelecomServerFilledCargo entities: - uid: 7438 @@ -48733,6 +48822,13 @@ entities: - type: Transform pos: -48.5,6.5 parent: 30 +- proto: TelecomServerFilledEngineering + entities: + - uid: 7113 + components: + - type: Transform + pos: -48.5,7.5 + parent: 30 - proto: TelecomServerFilledMedical entities: - uid: 7915 @@ -48740,6 +48836,13 @@ entities: - type: Transform pos: -47.5,6.5 parent: 30 +- proto: TelecomServerFilledScience + entities: + - uid: 7379 + components: + - type: Transform + pos: -48.5,8.5 + parent: 30 - proto: ToiletDirtyWater entities: - uid: 7674 @@ -50854,11 +50957,6 @@ entities: - type: Transform pos: 29.5,-12.5 parent: 30 - - uid: 2908 - components: - - type: Transform - pos: 29.5,-10.5 - parent: 30 - uid: 2910 components: - type: Transform @@ -52899,6 +52997,18 @@ entities: rot: -1.5707963267948966 rad pos: 6.5,19.5 parent: 30 + - uid: 8517 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 31.5,-11.5 + parent: 30 + - uid: 8518 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 31.5,-9.5 + parent: 30 - uid: 8603 components: - type: Transform From 89a9f07c3abe77e3d8964a7aa35e6844e55db2ae Mon Sep 17 00:00:00 2001 From: Tayrtahn Date: Sun, 16 Jun 2024 15:38:53 -0400 Subject: [PATCH 44/82] Add a system for modifying entity names without causing conflicts (#27863) --- .../TransformableContainerComponent.cs | 8 - .../TransformableContainerSystem.cs | 27 ++-- Content.Server/Cluwne/CluwneSystem.cs | 23 ++- Content.Server/Fax/FaxSystem.cs | 8 +- Content.Server/Glue/GlueSystem.cs | 24 +-- Content.Server/Labels/Label/LabelSystem.cs | 26 +--- Content.Server/Lube/LubedSystem.cs | 16 +- .../EntitySystems/AnimalHusbandrySystem.cs | 25 ++- .../Zombies/ZombieSystem.Transform.cs | 4 +- Content.Server/Zombies/ZombieSystem.cs | 5 +- Content.Shared/Glue/GluedComponent.cs | 5 - .../Inventory/InventorySystem.Relay.cs | 2 + .../Labels/Components/LabelComponent.cs | 7 - .../Labels/EntitySystems/SharedLabelSystem.cs | 8 + Content.Shared/Lube/LubedComponent.cs | 6 - .../Components/ModifyWearerNameComponent.cs | 25 +++ .../Components/NameModifierComponent.cs | 20 +++ .../EntitySystems/ModifyWearerNameSystem.cs | 34 +++++ .../EntitySystems/NameModifierSystem.cs | 143 ++++++++++++++++++ .../AnimalHusbandry/InfantComponent.cs | 6 - Content.Shared/Zombies/SharedZombieSystem.cs | 7 + Content.Shared/Zombies/ZombieComponent.cs | 6 - .../transformable-container-component.ftl | 2 +- Resources/Locale/en-US/cluwne/cluwne.ftl | 2 +- Resources/Locale/en-US/glue/glue.ftl | 2 +- .../Locale/en-US/label/label-component.ftl | 1 + Resources/Locale/en-US/lube/lube.ftl | 2 +- .../nutrition/components/animal-husbandry.ftl | 2 +- Resources/Locale/en-US/zombies/zombie.ftl | 2 +- .../Objects/Specific/chemical-containers.yml | 1 - 30 files changed, 326 insertions(+), 123 deletions(-) create mode 100644 Content.Shared/NameModifier/Components/ModifyWearerNameComponent.cs create mode 100644 Content.Shared/NameModifier/Components/NameModifierComponent.cs create mode 100644 Content.Shared/NameModifier/EntitySystems/ModifyWearerNameSystem.cs create mode 100644 Content.Shared/NameModifier/EntitySystems/NameModifierSystem.cs create mode 100644 Resources/Locale/en-US/label/label-component.ftl diff --git a/Content.Server/Chemistry/Components/TransformableContainerComponent.cs b/Content.Server/Chemistry/Components/TransformableContainerComponent.cs index 5ea9a244878ff2..db6c9c5397659d 100644 --- a/Content.Server/Chemistry/Components/TransformableContainerComponent.cs +++ b/Content.Server/Chemistry/Components/TransformableContainerComponent.cs @@ -14,14 +14,6 @@ namespace Content.Server.Chemistry.Components; [RegisterComponent, Access(typeof(TransformableContainerSystem))] public sealed partial class TransformableContainerComponent : Component { - /// - /// This is the initial metadata name for the container. - /// It will revert to this when emptied. - /// It defaults to the name of the parent entity unless overwritten. - /// - [DataField("initialName")] - public string? InitialName; - /// /// This is the initial metadata description for the container. /// It will revert to this when emptied. diff --git a/Content.Server/Chemistry/EntitySystems/TransformableContainerSystem.cs b/Content.Server/Chemistry/EntitySystems/TransformableContainerSystem.cs index c375d97b8c3f7e..32bd912b2205af 100644 --- a/Content.Server/Chemistry/EntitySystems/TransformableContainerSystem.cs +++ b/Content.Server/Chemistry/EntitySystems/TransformableContainerSystem.cs @@ -2,6 +2,7 @@ using Content.Server.Chemistry.Containers.EntitySystems; using Content.Shared.Chemistry.EntitySystems; using Content.Shared.Chemistry.Reagent; +using Content.Shared.NameModifier.EntitySystems; using Robust.Shared.Prototypes; namespace Content.Server.Chemistry.EntitySystems; @@ -11,6 +12,7 @@ public sealed class TransformableContainerSystem : EntitySystem [Dependency] private readonly IPrototypeManager _prototypeManager = default!; [Dependency] private readonly SolutionContainerSystem _solutionsSystem = default!; [Dependency] private readonly MetaDataSystem _metadataSystem = default!; + [Dependency] private readonly NameModifierSystem _nameMod = default!; public override void Initialize() { @@ -18,15 +20,12 @@ public override void Initialize() SubscribeLocalEvent(OnMapInit); SubscribeLocalEvent(OnSolutionChange); + SubscribeLocalEvent(OnRefreshNameModifiers); } - private void OnMapInit(Entity entity, ref MapInitEvent args) + private void OnMapInit(Entity entity, ref MapInitEvent args) { var meta = MetaData(entity.Owner); - if (string.IsNullOrEmpty(entity.Comp.InitialName)) - { - entity.Comp.InitialName = meta.EntityName; - } if (string.IsNullOrEmpty(entity.Comp.InitialDescription)) { entity.Comp.InitialDescription = meta.EntityDescription; @@ -58,12 +57,20 @@ private void OnSolutionChange(Entity entity, re && _prototypeManager.TryIndex(reagentId.Value.Prototype, out ReagentPrototype? proto)) { var metadata = MetaData(entity.Owner); - var val = Loc.GetString("transformable-container-component-glass", ("name", proto.LocalizedName)); - _metadataSystem.SetEntityName(entity.Owner, val, metadata); _metadataSystem.SetEntityDescription(entity.Owner, proto.LocalizedDescription, metadata); entity.Comp.CurrentReagent = proto; entity.Comp.Transformed = true; } + + _nameMod.RefreshNameModifiers(entity.Owner); + } + + private void OnRefreshNameModifiers(Entity entity, ref RefreshNameModifiersEvent args) + { + if (entity.Comp.CurrentReagent is { } currentReagent) + { + args.AddModifier("transformable-container-component-glass", priority: -1, ("reagent", currentReagent.LocalizedName)); + } } private void CancelTransformation(Entity entity) @@ -73,10 +80,8 @@ private void CancelTransformation(Entity entity var metadata = MetaData(entity); - if (!string.IsNullOrEmpty(entity.Comp.InitialName)) - { - _metadataSystem.SetEntityName(entity.Owner, entity.Comp.InitialName, metadata); - } + _nameMod.RefreshNameModifiers(entity.Owner); + if (!string.IsNullOrEmpty(entity.Comp.InitialDescription)) { _metadataSystem.SetEntityDescription(entity.Owner, entity.Comp.InitialDescription, metadata); diff --git a/Content.Server/Cluwne/CluwneSystem.cs b/Content.Server/Cluwne/CluwneSystem.cs index c170886a803a04..18d82659debe29 100644 --- a/Content.Server/Cluwne/CluwneSystem.cs +++ b/Content.Server/Cluwne/CluwneSystem.cs @@ -14,8 +14,8 @@ using Content.Server.Speech.EntitySystems; using Content.Shared.Cluwne; using Content.Shared.Interaction.Components; -using Robust.Shared.Audio; using Robust.Shared.Audio.Systems; +using Content.Shared.NameModifier.EntitySystems; namespace Content.Server.Cluwne; @@ -30,6 +30,7 @@ public sealed class CluwneSystem : EntitySystem [Dependency] private readonly ChatSystem _chat = default!; [Dependency] private readonly AutoEmoteSystem _autoEmote = default!; [Dependency] private readonly MetaDataSystem _metaData = default!; + [Dependency] private readonly NameModifierSystem _nameMod = default!; public override void Initialize() { @@ -39,6 +40,7 @@ public override void Initialize() SubscribeLocalEvent(OnMobState); SubscribeLocalEvent(OnEmote, before: new[] { typeof(VocalSystem), typeof(BodyEmotesSystem) }); + SubscribeLocalEvent(OnRefreshNameModifiers); } /// @@ -47,19 +49,19 @@ public override void Initialize() private void OnMobState(EntityUid uid, CluwneComponent component, MobStateChangedEvent args) { if (args.NewMobState == MobState.Dead) - { + { RemComp(uid); RemComp(uid); RemComp(uid); var damageSpec = new DamageSpecifier(_prototypeManager.Index("Genetic"), 300); _damageableSystem.TryChangeDamage(uid, damageSpec); - } + } } public EmoteSoundsPrototype? EmoteSounds; /// - /// OnStartup gives the cluwne outfit, ensures clumsy, gives name prefix and makes sure emote sounds are laugh. + /// OnStartup gives the cluwne outfit, ensures clumsy, and makes sure emote sounds are laugh. /// private void OnComponentStartup(EntityUid uid, CluwneComponent component, ComponentStartup args) { @@ -67,9 +69,6 @@ private void OnComponentStartup(EntityUid uid, CluwneComponent component, Compon return; _prototypeManager.TryIndex(component.EmoteSoundsId, out EmoteSounds); - var meta = MetaData(uid); - var name = meta.EntityName; - EnsureComp(uid); _autoEmote.AddEmote(uid, "CluwneGiggle"); EnsureComp(uid); @@ -77,7 +76,7 @@ private void OnComponentStartup(EntityUid uid, CluwneComponent component, Compon _popupSystem.PopupEntity(Loc.GetString("cluwne-transform", ("target", uid)), uid, PopupType.LargeCaution); _audio.PlayPvs(component.SpawnSound, uid); - _metaData.SetEntityName(uid, Loc.GetString("cluwne-name-prefix", ("target", name)), meta); + _nameMod.RefreshNameModifiers(uid); SetOutfitCommand.SetOutfit(uid, "CluwneGear", EntityManager); } @@ -104,4 +103,12 @@ private void OnEmote(EntityUid uid, CluwneComponent component, ref EmoteEvent ar _chat.TrySendInGameICMessage(uid, "spasms", InGameICChatType.Emote, ChatTransmitRange.Normal); } } + + /// + /// Applies "Cluwnified" prefix + /// + private void OnRefreshNameModifiers(Entity entity, ref RefreshNameModifiersEvent args) + { + args.AddModifier("cluwne-name-prefix"); + } } diff --git a/Content.Server/Fax/FaxSystem.cs b/Content.Server/Fax/FaxSystem.cs index 16d2d391f65a43..82acb3c60c36ea 100644 --- a/Content.Server/Fax/FaxSystem.cs +++ b/Content.Server/Fax/FaxSystem.cs @@ -29,6 +29,7 @@ using Robust.Shared.Containers; using Robust.Shared.Player; using Robust.Shared.Prototypes; +using Content.Shared.NameModifier.Components; namespace Content.Server.Fax; @@ -464,10 +465,11 @@ public void Copy(EntityUid uid, FaxMachineComponent? component, FaxCopyMessage a return; TryComp(sendEntity, out var labelComponent); + TryComp(sendEntity, out var nameMod); // TODO: See comment in 'Send()' about not being able to copy whole entities var printout = new FaxPrintout(paper.Content, - labelComponent?.OriginalName ?? metadata.EntityName, + nameMod?.BaseName ?? metadata.EntityName, labelComponent?.CurrentLabel, metadata.EntityPrototype?.ID ?? DefaultPaperPrototypeId, paper.StampState, @@ -510,12 +512,14 @@ public void Send(EntityUid uid, FaxMachineComponent? component, FaxSendMessage a !TryComp(sendEntity, out var paper)) return; + TryComp(sendEntity, out var nameMod); + TryComp(sendEntity, out var labelComponent); var payload = new NetworkPayload() { { DeviceNetworkConstants.Command, FaxConstants.FaxPrintCommand }, - { FaxConstants.FaxPaperNameData, labelComponent?.OriginalName ?? metadata.EntityName }, + { FaxConstants.FaxPaperNameData, nameMod?.BaseName ?? metadata.EntityName }, { FaxConstants.FaxPaperLabelData, labelComponent?.CurrentLabel }, { FaxConstants.FaxPaperContentData, paper.Content }, }; diff --git a/Content.Server/Glue/GlueSystem.cs b/Content.Server/Glue/GlueSystem.cs index ff53ef91cac6cc..79249f5bd965f2 100644 --- a/Content.Server/Glue/GlueSystem.cs +++ b/Content.Server/Glue/GlueSystem.cs @@ -6,6 +6,7 @@ using Content.Shared.Interaction; using Content.Shared.Interaction.Components; using Content.Shared.Item; +using Content.Shared.NameModifier.EntitySystems; using Content.Shared.Nutrition.EntitySystems; using Content.Shared.Popups; using Content.Shared.Verbs; @@ -20,9 +21,9 @@ public sealed class GlueSystem : SharedGlueSystem [Dependency] private readonly SharedPopupSystem _popup = default!; [Dependency] private readonly SolutionContainerSystem _solutionContainer = default!; [Dependency] private readonly IGameTiming _timing = default!; - [Dependency] private readonly MetaDataSystem _metaData = default!; [Dependency] private readonly IAdminLogManager _adminLogger = default!; [Dependency] private readonly OpenableSystem _openable = default!; + [Dependency] private readonly NameModifierSystem _nameMod = default!; public override void Initialize() { @@ -32,6 +33,7 @@ public override void Initialize() SubscribeLocalEvent(OnGluedInit); SubscribeLocalEvent>(OnUtilityVerb); SubscribeLocalEvent(OnHandPickUp); + SubscribeLocalEvent(OnRefreshNameModifiers); } // When glue bottle is used on item it will apply the glued and unremoveable components. @@ -95,27 +97,22 @@ public override void Update(float frameTime) { base.Update(frameTime); - var query = EntityQueryEnumerator(); - while (query.MoveNext(out var uid, out var glue, out var _, out var meta)) + var query = EntityQueryEnumerator(); + while (query.MoveNext(out var uid, out var glue, out var _)) { if (_timing.CurTime < glue.Until) continue; - // Instead of string matching, just reconstruct the expected name and compare - if (meta.EntityName == Loc.GetString("glued-name-prefix", ("target", glue.BeforeGluedEntityName))) - _metaData.SetEntityName(uid, glue.BeforeGluedEntityName); - RemComp(uid); RemComp(uid); + + _nameMod.RefreshNameModifiers(uid); } } private void OnGluedInit(Entity entity, ref ComponentInit args) { - var meta = MetaData(entity); - var name = meta.EntityName; - entity.Comp.BeforeGluedEntityName = meta.EntityName; - _metaData.SetEntityName(entity.Owner, Loc.GetString("glued-name-prefix", ("target", name))); + _nameMod.RefreshNameModifiers(entity.Owner); } private void OnHandPickUp(Entity entity, ref GotEquippedHandEvent args) @@ -124,4 +121,9 @@ private void OnHandPickUp(Entity entity, ref GotEquippedHandEven comp.DeleteOnDrop = false; entity.Comp.Until = _timing.CurTime + entity.Comp.Duration; } + + private void OnRefreshNameModifiers(Entity entity, ref RefreshNameModifiersEvent args) + { + args.AddModifier("glued-name-prefix"); + } } diff --git a/Content.Server/Labels/Label/LabelSystem.cs b/Content.Server/Labels/Label/LabelSystem.cs index aee2abe7ab9f7d..17d18918fea239 100644 --- a/Content.Server/Labels/Label/LabelSystem.cs +++ b/Content.Server/Labels/Label/LabelSystem.cs @@ -5,6 +5,7 @@ using Content.Shared.Labels; using Content.Shared.Labels.Components; using Content.Shared.Labels.EntitySystems; +using Content.Shared.NameModifier.EntitySystems; using JetBrains.Annotations; using Robust.Shared.Containers; @@ -18,7 +19,7 @@ public sealed class LabelSystem : SharedLabelSystem { [Dependency] private readonly ItemSlotsSystem _itemSlotsSystem = default!; [Dependency] private readonly SharedAppearanceSystem _appearance = default!; - [Dependency] private readonly MetaDataSystem _metaData = default!; + [Dependency] private readonly NameModifierSystem _nameMod = default!; public const string ContainerName = "paper_label"; @@ -41,6 +42,8 @@ private void OnLabelCompMapInit(EntityUid uid, LabelComponent component, MapInit component.CurrentLabel = Loc.GetString(component.CurrentLabel); Dirty(uid, component); } + + _nameMod.RefreshNameModifiers(uid); } /// @@ -52,30 +55,11 @@ private void OnLabelCompMapInit(EntityUid uid, LabelComponent component, MapInit /// metadata component for resolve public override void Label(EntityUid uid, string? text, MetaDataComponent? metadata = null, LabelComponent? label = null) { - if (!Resolve(uid, ref metadata)) - return; if (!Resolve(uid, ref label, false)) label = EnsureComp(uid); - if (string.IsNullOrEmpty(text)) - { - if (label.OriginalName is null) - return; - - // Remove label - _metaData.SetEntityName(uid, label.OriginalName, metadata); - label.CurrentLabel = null; - label.OriginalName = null; - - Dirty(uid, label); - - return; - } - - // Update label - label.OriginalName ??= metadata.EntityName; label.CurrentLabel = text; - _metaData.SetEntityName(uid, $"{label.OriginalName} ({text})", metadata); + _nameMod.RefreshNameModifiers(uid); Dirty(uid, label); } diff --git a/Content.Server/Lube/LubedSystem.cs b/Content.Server/Lube/LubedSystem.cs index f786c5f91af27e..c2d15c8a284063 100644 --- a/Content.Server/Lube/LubedSystem.cs +++ b/Content.Server/Lube/LubedSystem.cs @@ -1,5 +1,6 @@ using Content.Shared.IdentityManagement; using Content.Shared.Lube; +using Content.Shared.NameModifier.EntitySystems; using Content.Shared.Popups; using Content.Shared.Throwing; using Robust.Shared.Containers; @@ -9,11 +10,11 @@ namespace Content.Server.Lube; public sealed class LubedSystem : EntitySystem { - [Dependency] private readonly MetaDataSystem _metaData = default!; [Dependency] private readonly ThrowingSystem _throwing = default!; [Dependency] private readonly IRobustRandom _random = default!; [Dependency] private readonly SharedTransformSystem _transform = default!; [Dependency] private readonly SharedPopupSystem _popup = default!; + [Dependency] private readonly NameModifierSystem _nameMod = default!; public override void Initialize() { @@ -21,14 +22,12 @@ public override void Initialize() SubscribeLocalEvent(OnInit); SubscribeLocalEvent(OnHandPickUp); + SubscribeLocalEvent(OnRefreshNameModifiers); } private void OnInit(EntityUid uid, LubedComponent component, ComponentInit args) { - var meta = MetaData(uid); - var name = meta.EntityName; - component.BeforeLubedEntityName = meta.EntityName; - _metaData.SetEntityName(uid, Loc.GetString("lubed-name-prefix", ("target", name))); + _nameMod.RefreshNameModifiers(uid); } private void OnHandPickUp(EntityUid uid, LubedComponent component, ContainerGettingInsertedAttemptEvent args) @@ -36,7 +35,7 @@ private void OnHandPickUp(EntityUid uid, LubedComponent component, ContainerGett if (component.SlipsLeft <= 0) { RemComp(uid); - _metaData.SetEntityName(uid, component.BeforeLubedEntityName); + _nameMod.RefreshNameModifiers(uid); return; } component.SlipsLeft--; @@ -47,4 +46,9 @@ private void OnHandPickUp(EntityUid uid, LubedComponent component, ContainerGett _throwing.TryThrow(uid, _random.NextVector2(), strength: component.SlipStrength); _popup.PopupEntity(Loc.GetString("lube-slip", ("target", Identity.Entity(uid, EntityManager))), user, user, PopupType.MediumCaution); } + + private void OnRefreshNameModifiers(Entity entity, ref RefreshNameModifiersEvent args) + { + args.AddModifier("lubed-name-prefix"); + } } diff --git a/Content.Server/Nutrition/EntitySystems/AnimalHusbandrySystem.cs b/Content.Server/Nutrition/EntitySystems/AnimalHusbandrySystem.cs index e224c7c4792796..e5f590a3626c6d 100644 --- a/Content.Server/Nutrition/EntitySystems/AnimalHusbandrySystem.cs +++ b/Content.Server/Nutrition/EntitySystems/AnimalHusbandrySystem.cs @@ -5,13 +5,12 @@ using Content.Shared.Interaction.Components; using Content.Shared.Mind.Components; using Content.Shared.Mobs.Systems; +using Content.Shared.NameModifier.EntitySystems; using Content.Shared.Nutrition.AnimalHusbandry; using Content.Shared.Nutrition.Components; using Content.Shared.Nutrition.EntitySystems; using Content.Shared.Storage; using Content.Shared.Whitelist; -using Robust.Server.GameObjects; -using Robust.Shared.Audio; using Robust.Shared.Audio.Systems; using Robust.Shared.Player; using Robust.Shared.Random; @@ -29,12 +28,12 @@ public sealed class AnimalHusbandrySystem : EntitySystem [Dependency] private readonly IAdminLogManager _adminLog = default!; [Dependency] private readonly IGameTiming _timing = default!; [Dependency] private readonly IRobustRandom _random = default!; - [Dependency] private readonly MetaDataSystem _metaData = default!; [Dependency] private readonly MobStateSystem _mobState = default!; [Dependency] private readonly PopupSystem _popup = default!; [Dependency] private readonly SharedAudioSystem _audio = default!; [Dependency] private readonly SharedTransformSystem _transform = default!; [Dependency] private readonly EntityWhitelistSystem _whitelistSystem = default!; + [Dependency] private readonly NameModifierSystem _nameMod = default!; private readonly HashSet _failedAttempts = new(); private readonly HashSet _birthQueue = new(); @@ -43,8 +42,7 @@ public sealed class AnimalHusbandrySystem : EntitySystem public override void Initialize() { SubscribeLocalEvent(OnMindAdded); - SubscribeLocalEvent(OnInfantStartup); - SubscribeLocalEvent(OnInfantShutdown); + SubscribeLocalEvent(OnRefreshNameModifiers); } // we express EZ-pass terminate the pregnancy if a player takes the role @@ -54,16 +52,11 @@ private void OnMindAdded(EntityUid uid, ReproductiveComponent component, MindAdd component.GestationEndTime = null; } - private void OnInfantStartup(EntityUid uid, InfantComponent component, ComponentStartup args) + private void OnRefreshNameModifiers(Entity entity, ref RefreshNameModifiersEvent args) { - var meta = MetaData(uid); - component.OriginalName = meta.EntityName; - _metaData.SetEntityName(uid, Loc.GetString("infant-name-prefix", ("name", meta.EntityName)), meta); - } - - private void OnInfantShutdown(EntityUid uid, InfantComponent component, ComponentShutdown args) - { - _metaData.SetEntityName(uid, component.OriginalName); + // This check may seem redundant, but it makes sure that the prefix is removed before the component is removed + if (_timing.CurTime < entity.Comp.InfantEndTime) + args.AddModifier("infant-name-prefix"); } /// @@ -202,6 +195,8 @@ public void Birth(EntityUid uid, ReproductiveComponent? component = null) { var infant = AddComp(offspring); infant.InfantEndTime = _timing.CurTime + infant.InfantDuration; + // Make sure the name prefix is applied + _nameMod.RefreshNameModifiers(offspring); } _adminLog.Add(LogType.Action, $"{ToPrettyString(uid)} gave birth to {ToPrettyString(offspring)}."); } @@ -249,6 +244,8 @@ public override void Update(float frameTime) if (_timing.CurTime < infant.InfantEndTime) continue; RemCompDeferred(uid, infant); + // Make sure the name prefix gets removed + _nameMod.RefreshNameModifiers(uid); } } } diff --git a/Content.Server/Zombies/ZombieSystem.Transform.cs b/Content.Server/Zombies/ZombieSystem.Transform.cs index 0a745d5fc7da4a..a8952009e66eac 100644 --- a/Content.Server/Zombies/ZombieSystem.Transform.cs +++ b/Content.Server/Zombies/ZombieSystem.Transform.cs @@ -222,9 +222,7 @@ public void ZombifyEntity(EntityUid target, MobStateComponent? mobState = null) _faction.AddFaction(target, "Zombie"); //gives it the funny "Zombie ___" name. - var meta = MetaData(target); - zombiecomp.BeforeZombifiedEntityName = meta.EntityName; - _metaData.SetEntityName(target, Loc.GetString("zombie-name-prefix", ("target", meta.EntityName)), meta); + _nameMod.RefreshNameModifiers(target); _identity.QueueIdentityUpdate(target); diff --git a/Content.Server/Zombies/ZombieSystem.cs b/Content.Server/Zombies/ZombieSystem.cs index 552fd2781c0929..371c6f1222aeaa 100644 --- a/Content.Server/Zombies/ZombieSystem.cs +++ b/Content.Server/Zombies/ZombieSystem.cs @@ -14,6 +14,7 @@ using Content.Shared.Mobs; using Content.Shared.Mobs.Components; using Content.Shared.Mobs.Systems; +using Content.Shared.NameModifier.EntitySystems; using Content.Shared.Popups; using Content.Shared.Weapons.Melee.Events; using Content.Shared.Zombies; @@ -34,9 +35,9 @@ public sealed partial class ZombieSystem : SharedZombieSystem [Dependency] private readonly ActionsSystem _actions = default!; [Dependency] private readonly AutoEmoteSystem _autoEmote = default!; [Dependency] private readonly EmoteOnDamageSystem _emoteOnDamage = default!; - [Dependency] private readonly MetaDataSystem _metaData = default!; [Dependency] private readonly MobStateSystem _mobState = default!; [Dependency] private readonly SharedPopupSystem _popup = default!; + [Dependency] private readonly NameModifierSystem _nameMod = default!; public const SlotFlags ProtectiveSlots = SlotFlags.FEET | @@ -281,7 +282,7 @@ public bool UnZombify(EntityUid source, EntityUid target, ZombieComponent? zombi _humanoidAppearance.SetSkinColor(target, zombiecomp.BeforeZombifiedSkinColor, false); _bloodstream.ChangeBloodReagent(target, zombiecomp.BeforeZombifiedBloodReagent); - _metaData.SetEntityName(target, zombiecomp.BeforeZombifiedEntityName); + _nameMod.RefreshNameModifiers(target); return true; } diff --git a/Content.Shared/Glue/GluedComponent.cs b/Content.Shared/Glue/GluedComponent.cs index fd7a52fdb139dc..4b46f0aa5b0ef4 100644 --- a/Content.Shared/Glue/GluedComponent.cs +++ b/Content.Shared/Glue/GluedComponent.cs @@ -6,11 +6,6 @@ namespace Content.Shared.Glue; [Access(typeof(SharedGlueSystem))] public sealed partial class GluedComponent : Component { - /// - /// Reverts name to before prefix event (essentially removes prefix). - /// - [DataField("beforeGluedEntityName"), ViewVariables(VVAccess.ReadOnly)] - public string BeforeGluedEntityName = string.Empty; [DataField("until", customTypeSerializer: typeof(TimeOffsetSerializer)), ViewVariables(VVAccess.ReadWrite)] public TimeSpan Until; diff --git a/Content.Shared/Inventory/InventorySystem.Relay.cs b/Content.Shared/Inventory/InventorySystem.Relay.cs index ea368884e0506a..bca9eb6cfa23c1 100644 --- a/Content.Shared/Inventory/InventorySystem.Relay.cs +++ b/Content.Shared/Inventory/InventorySystem.Relay.cs @@ -7,6 +7,7 @@ using Content.Shared.IdentityManagement.Components; using Content.Shared.Inventory.Events; using Content.Shared.Movement.Systems; +using Content.Shared.NameModifier.EntitySystems; using Content.Shared.Overlays; using Content.Shared.Radio; using Content.Shared.Slippery; @@ -28,6 +29,7 @@ public void InitializeRelay() SubscribeLocalEvent(RelayInventoryEvent); SubscribeLocalEvent(RelayInventoryEvent); SubscribeLocalEvent(RelayInventoryEvent); + SubscribeLocalEvent(RelayInventoryEvent); // by-ref events SubscribeLocalEvent(RefRelayInventoryEvent); diff --git a/Content.Shared/Labels/Components/LabelComponent.cs b/Content.Shared/Labels/Components/LabelComponent.cs index c0dccd348154e1..d57023c8ab1528 100644 --- a/Content.Shared/Labels/Components/LabelComponent.cs +++ b/Content.Shared/Labels/Components/LabelComponent.cs @@ -14,11 +14,4 @@ public sealed partial class LabelComponent : Component /// [DataField, AutoNetworkedField] public string? CurrentLabel { get; set; } - - /// - /// The original name of the entity - /// Used for reverting the modified entity name when the label is removed - /// - [DataField, AutoNetworkedField] - public string? OriginalName { get; set; } } diff --git a/Content.Shared/Labels/EntitySystems/SharedLabelSystem.cs b/Content.Shared/Labels/EntitySystems/SharedLabelSystem.cs index 1189bb46d043ba..f1998e524d9096 100644 --- a/Content.Shared/Labels/EntitySystems/SharedLabelSystem.cs +++ b/Content.Shared/Labels/EntitySystems/SharedLabelSystem.cs @@ -1,5 +1,6 @@ using Content.Shared.Examine; using Content.Shared.Labels.Components; +using Content.Shared.NameModifier.EntitySystems; using Robust.Shared.Utility; namespace Content.Shared.Labels.EntitySystems; @@ -11,6 +12,7 @@ public override void Initialize() base.Initialize(); SubscribeLocalEvent(OnExamine); + SubscribeLocalEvent(OnRefreshNameModifiers); } public virtual void Label(EntityUid uid, string? text, MetaDataComponent? metadata = null, LabelComponent? label = null){} @@ -27,4 +29,10 @@ private void OnExamine(EntityUid uid, LabelComponent? label, ExaminedEvent args) message.AddText(Loc.GetString("hand-labeler-has-label", ("label", label.CurrentLabel))); args.PushMessage(message); } + + private void OnRefreshNameModifiers(Entity entity, ref RefreshNameModifiersEvent args) + { + if (!string.IsNullOrEmpty(entity.Comp.CurrentLabel)) + args.AddModifier("comp-label-format", extraArgs: ("label", entity.Comp.CurrentLabel)); + } } diff --git a/Content.Shared/Lube/LubedComponent.cs b/Content.Shared/Lube/LubedComponent.cs index fe1946ddb15424..9d032a077ecd8d 100644 --- a/Content.Shared/Lube/LubedComponent.cs +++ b/Content.Shared/Lube/LubedComponent.cs @@ -3,12 +3,6 @@ namespace Content.Shared.Lube; [RegisterComponent] public sealed partial class LubedComponent : Component { - /// - /// Reverts name to before prefix event (essentially removes prefix). - /// - [DataField("beforeLubedEntityName")] - public string BeforeLubedEntityName = string.Empty; - [DataField("slipsLeft"), ViewVariables(VVAccess.ReadWrite)] public int SlipsLeft; diff --git a/Content.Shared/NameModifier/Components/ModifyWearerNameComponent.cs b/Content.Shared/NameModifier/Components/ModifyWearerNameComponent.cs new file mode 100644 index 00000000000000..781ed3daae15ea --- /dev/null +++ b/Content.Shared/NameModifier/Components/ModifyWearerNameComponent.cs @@ -0,0 +1,25 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared.NameModifier.Components; + +/// +/// Adds a modifier to the wearer's name when this item is equipped, +/// and removes it when it is unequipped. +/// +[RegisterComponent, NetworkedComponent] +[AutoGenerateComponentState] +public sealed partial class ModifyWearerNameComponent : Component +{ + /// + /// The localization ID of the text to be used as the modifier. + /// The base name will be passed in as $baseName + /// + [DataField, AutoNetworkedField] + public LocId LocId = string.Empty; + + /// + /// Priority of the modifier. See for more information. + /// + [DataField, AutoNetworkedField] + public int Priority; +} diff --git a/Content.Shared/NameModifier/Components/NameModifierComponent.cs b/Content.Shared/NameModifier/Components/NameModifierComponent.cs new file mode 100644 index 00000000000000..3a9dd9712b6807 --- /dev/null +++ b/Content.Shared/NameModifier/Components/NameModifierComponent.cs @@ -0,0 +1,20 @@ +using Content.Shared.NameModifier.EntitySystems; +using Robust.Shared.GameStates; + +namespace Content.Shared.NameModifier.Components; + +/// +/// Used to manage modifiers on an entity's name and handle renaming in a way +/// that survives being renamed by multiple systems. +/// +[RegisterComponent] +[NetworkedComponent, AutoGenerateComponentState] +[Access(typeof(NameModifierSystem))] +public sealed partial class NameModifierComponent : Component +{ + /// + /// The entity's name without any modifiers applied. + /// + [DataField, AutoNetworkedField] + public string BaseName = string.Empty; +} diff --git a/Content.Shared/NameModifier/EntitySystems/ModifyWearerNameSystem.cs b/Content.Shared/NameModifier/EntitySystems/ModifyWearerNameSystem.cs new file mode 100644 index 00000000000000..e728e6cdb51665 --- /dev/null +++ b/Content.Shared/NameModifier/EntitySystems/ModifyWearerNameSystem.cs @@ -0,0 +1,34 @@ +using Content.Shared.Clothing; +using Content.Shared.Inventory; +using Content.Shared.NameModifier.Components; + +namespace Content.Shared.NameModifier.EntitySystems; + +public sealed partial class ModifyWearerNameSystem : EntitySystem +{ + [Dependency] private readonly NameModifierSystem _nameMod = default!; + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent>(OnRefreshNameModifiers); + SubscribeLocalEvent(OnGotEquipped); + SubscribeLocalEvent(OnGotUnequipped); + } + + private void OnGotEquipped(Entity entity, ref ClothingGotEquippedEvent args) + { + _nameMod.RefreshNameModifiers(args.Wearer); + } + + private void OnGotUnequipped(Entity entity, ref ClothingGotUnequippedEvent args) + { + _nameMod.RefreshNameModifiers(args.Wearer); + } + + private void OnRefreshNameModifiers(Entity entity, ref InventoryRelayedEvent args) + { + args.Args.AddModifier(entity.Comp.LocId, entity.Comp.Priority); + } +} diff --git a/Content.Shared/NameModifier/EntitySystems/NameModifierSystem.cs b/Content.Shared/NameModifier/EntitySystems/NameModifierSystem.cs new file mode 100644 index 00000000000000..4dffb51805c168 --- /dev/null +++ b/Content.Shared/NameModifier/EntitySystems/NameModifierSystem.cs @@ -0,0 +1,143 @@ +using System.Linq; +using Content.Shared.Inventory; +using Content.Shared.NameModifier.Components; + +namespace Content.Shared.NameModifier.EntitySystems; + +/// +public sealed partial class NameModifierSystem : EntitySystem +{ + [Dependency] private readonly MetaDataSystem _metaData = default!; + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnEntityRenamed); + } + + private void OnEntityRenamed(Entity entity, ref EntityRenamedEvent args) + { + SetBaseName((entity, entity.Comp), args.NewName); + RefreshNameModifiers((entity, entity.Comp)); + } + + private void SetBaseName(Entity entity, string name) + { + if (name == entity.Comp.BaseName) + return; + + // Set the base name to the new name + entity.Comp.BaseName = name; + Dirty(entity); + } + + /// + /// Raises a to gather modifiers and + /// updates the entity's name to its base name with modifiers applied. + /// This will add a if any modifiers are added. + /// + /// + /// Call this to update the entity's name when adding or removing a modifier. + /// + public void RefreshNameModifiers(Entity entity) + { + var meta = MetaData(entity); + var baseName = meta.EntityName; + if (Resolve(entity, ref entity.Comp, logMissing: false)) + baseName = entity.Comp.BaseName; + + // Raise an event to get any modifiers + // If the entity already has the component, use its BaseName, otherwise use the entity's name from metadata + var modifierEvent = new RefreshNameModifiersEvent(baseName); + RaiseLocalEvent(entity, ref modifierEvent); + + // Nothing added a modifier, so we can just use the base name + if (modifierEvent.ModifierCount == 0) + { + // If the entity doesn't have the component, we're done + if (entity.Comp == null) + return; + + // Restore the base name + _metaData.SetEntityName(entity, entity.Comp.BaseName, meta, raiseEvents: false); + // The component isn't doing anything anymore, so remove it + RemComp(entity); + return; + } + // We have at least one modifier, so we need to apply it to the entity. + + // Get the final name with modifiers applied + var modifiedName = modifierEvent.GetModifiedName(); + + // Add the component if needed, and initialize it with the base name + if (!EnsureComp(entity, out var comp)) + SetBaseName((entity, comp), meta.EntityName); + + // Set the entity's name with modifiers applied + _metaData.SetEntityName(entity, modifiedName, meta, raiseEvents: false); + } +} + +/// +/// Raised on an entity when is called. +/// Subscribe to this event and use its methods to add modifiers to the entity's name. +/// +[ByRefEvent] +public sealed class RefreshNameModifiersEvent : IInventoryRelayEvent +{ + /// + /// The entity's name without any modifiers applied. + /// If you want to base a modifier on the entity's name, use + /// this so you don't include other modifiers. + /// + public readonly string BaseName; + + private readonly List<(LocId LocId, int Priority, (string, object)[] ExtraArgs)> _modifiers = []; + + /// + public SlotFlags TargetSlots => ~SlotFlags.POCKET; + + /// + /// How many modifiers have been added to this event. + /// + public int ModifierCount => _modifiers.Count; + + public RefreshNameModifiersEvent(string baseName) + { + BaseName = baseName; + } + + /// + /// Adds a modifier to the entity's name. + /// The original name will be passed to Fluent as $baseName along with any . + /// Modifiers with a higher will be applied later. + /// + public void AddModifier(LocId locId, int priority = 0, params (string, object)[] extraArgs) + { + _modifiers.Add((locId, priority, extraArgs)); + } + + /// + /// Returns the final name with all modifiers applied. + /// + public string GetModifiedName() + { + // Start out with the entity's name name + var name = BaseName; + + // Iterate through all the modifiers in priority order + foreach (var modifier in _modifiers.OrderBy(n => n.Priority)) + { + // Grab any extra args needed by the Loc string + var args = modifier.ExtraArgs; + // Add the current version of the entity name as an arg + Array.Resize(ref args, args.Length + 1); + args[^1] = ("baseName", name); + // Resolve the Loc string and use the result as the base in the next iteration. + name = Loc.GetString(modifier.LocId, args); + } + + return name; + } +} diff --git a/Content.Shared/Nutrition/AnimalHusbandry/InfantComponent.cs b/Content.Shared/Nutrition/AnimalHusbandry/InfantComponent.cs index 2708c823d2c83a..06c533e6460f3a 100644 --- a/Content.Shared/Nutrition/AnimalHusbandry/InfantComponent.cs +++ b/Content.Shared/Nutrition/AnimalHusbandry/InfantComponent.cs @@ -35,10 +35,4 @@ public sealed partial class InfantComponent : Component [DataField("infantEndTime", customTypeSerializer: typeof(TimeOffsetSerializer))] [AutoPausedField] public TimeSpan InfantEndTime; - - /// - /// The entity's name before the "baby" prefix is added. - /// - [DataField("originalName")] - public string OriginalName = string.Empty; } diff --git a/Content.Shared/Zombies/SharedZombieSystem.cs b/Content.Shared/Zombies/SharedZombieSystem.cs index 6d9103639f6cdf..0388450a8c41cc 100644 --- a/Content.Shared/Zombies/SharedZombieSystem.cs +++ b/Content.Shared/Zombies/SharedZombieSystem.cs @@ -1,4 +1,5 @@ using Content.Shared.Movement.Systems; +using Content.Shared.NameModifier.EntitySystems; namespace Content.Shared.Zombies; @@ -10,6 +11,7 @@ public override void Initialize() base.Initialize(); SubscribeLocalEvent(OnRefreshSpeed); + SubscribeLocalEvent(OnRefreshNameModifiers); } private void OnRefreshSpeed(EntityUid uid, ZombieComponent component, RefreshMovementSpeedModifiersEvent args) @@ -17,4 +19,9 @@ private void OnRefreshSpeed(EntityUid uid, ZombieComponent component, RefreshMov var mod = component.ZombieMovementSpeedDebuff; args.ModifySpeed(mod, mod); } + + private void OnRefreshNameModifiers(Entity entity, ref RefreshNameModifiersEvent args) + { + args.AddModifier("zombie-name-prefix"); + } } diff --git a/Content.Shared/Zombies/ZombieComponent.cs b/Content.Shared/Zombies/ZombieComponent.cs index 2cd0cdb96d7761..f510d65d6dcd4b 100644 --- a/Content.Shared/Zombies/ZombieComponent.cs +++ b/Content.Shared/Zombies/ZombieComponent.cs @@ -62,12 +62,6 @@ public sealed partial class ZombieComponent : Component [DataField("zombieRoleId", customTypeSerializer: typeof(PrototypeIdSerializer))] public string ZombieRoleId = "Zombie"; - /// - /// The EntityName of the humanoid to restore in case of cloning - /// - [DataField("beforeZombifiedEntityName"), ViewVariables(VVAccess.ReadOnly)] - public string BeforeZombifiedEntityName = string.Empty; - /// /// The CustomBaseLayers of the humanoid to restore in case of cloning /// diff --git a/Resources/Locale/en-US/chemistry/components/transformable-container-component.ftl b/Resources/Locale/en-US/chemistry/components/transformable-container-component.ftl index 21f096273d1b6a..ce43bd714adb0d 100644 --- a/Resources/Locale/en-US/chemistry/components/transformable-container-component.ftl +++ b/Resources/Locale/en-US/chemistry/components/transformable-container-component.ftl @@ -1 +1 @@ -transformable-container-component-glass = {$name} glass +transformable-container-component-glass = {$reagent} glass diff --git a/Resources/Locale/en-US/cluwne/cluwne.ftl b/Resources/Locale/en-US/cluwne/cluwne.ftl index 206df8657dd376..0ffd3f32dfb2f6 100644 --- a/Resources/Locale/en-US/cluwne/cluwne.ftl +++ b/Resources/Locale/en-US/cluwne/cluwne.ftl @@ -1,2 +1,2 @@ cluwne-transform = {CAPITALIZE(THE($target))} turned into a cluwne! -cluwne-name-prefix = Cluwnified {$target} +cluwne-name-prefix = cluwnified {$baseName} diff --git a/Resources/Locale/en-US/glue/glue.ftl b/Resources/Locale/en-US/glue/glue.ftl index 1a711d51c21d5d..158ebc9ed85b7e 100644 --- a/Resources/Locale/en-US/glue/glue.ftl +++ b/Resources/Locale/en-US/glue/glue.ftl @@ -1,5 +1,5 @@ glue-success = {THE($target)} has been covered in glue! -glued-name-prefix = Glued {$target} +glued-name-prefix = glued {$baseName} glue-failure = Can't cover {THE($target)} in glue! glue-verb-text = Apply Glue glue-verb-message = Glue an object diff --git a/Resources/Locale/en-US/label/label-component.ftl b/Resources/Locale/en-US/label/label-component.ftl new file mode 100644 index 00000000000000..ff3a250c7b83ae --- /dev/null +++ b/Resources/Locale/en-US/label/label-component.ftl @@ -0,0 +1 @@ +comp-label-format = {$baseName} ({$label}) diff --git a/Resources/Locale/en-US/lube/lube.ftl b/Resources/Locale/en-US/lube/lube.ftl index 92dd2802ec77a8..1b5b66e069f15c 100644 --- a/Resources/Locale/en-US/lube/lube.ftl +++ b/Resources/Locale/en-US/lube/lube.ftl @@ -1,5 +1,5 @@ lube-success = {THE($target)} has been covered in lube! -lubed-name-prefix = Lubed {$target} +lubed-name-prefix = lubed {$baseName} lube-failure = Can't cover {THE($target)} in lube! lube-slip = {THE($target)} slips out of your hands! lube-verb-text = Apply Lube diff --git a/Resources/Locale/en-US/nutrition/components/animal-husbandry.ftl b/Resources/Locale/en-US/nutrition/components/animal-husbandry.ftl index 6ca108b653a352..cf7bf2d03acbea 100644 --- a/Resources/Locale/en-US/nutrition/components/animal-husbandry.ftl +++ b/Resources/Locale/en-US/nutrition/components/animal-husbandry.ftl @@ -1,3 +1,3 @@ -infant-name-prefix = baby {$name} +infant-name-prefix = baby {$baseName} reproductive-birth-popup = {CAPITALIZE(THE($parent))} gave birth! reproductive-laid-egg-popup = {CAPITALIZE(THE($parent))} lays an egg! diff --git a/Resources/Locale/en-US/zombies/zombie.ftl b/Resources/Locale/en-US/zombies/zombie.ftl index a391a95b0dae6f..d45943e825de3b 100644 --- a/Resources/Locale/en-US/zombies/zombie.ftl +++ b/Resources/Locale/en-US/zombies/zombie.ftl @@ -2,7 +2,7 @@ zombie-transform = {CAPITALIZE(THE($target))} turned into a zombie! zombie-infection-greeting = You have become a zombie. Your goal is to seek out the living and to try to infect them. Work together with the other zombies to overtake the station. zombie-generic = zombie -zombie-name-prefix = Zombified {$target} +zombie-name-prefix = zombified {$baseName} zombie-role-desc = A malevolent creature of the dead. zombie-role-rules = You are an antagonist. Search out the living and bite them in order to infect them and turn them into zombies. Work together with the other zombies to overtake the station. diff --git a/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml b/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml index 4bd71f898db17f..68d96fcd3dede8 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml @@ -79,7 +79,6 @@ - !type:DoActsBehavior acts: [ "Destruction" ] - type: Label - originalName: jug - type: Tag tags: - ChemDispensable From 14823453309b66a3c8e1a911dd283cd37c19ad51 Mon Sep 17 00:00:00 2001 From: Futuristic-OK <141568243+Futuristic-OK@users.noreply.github.com> Date: Mon, 17 Jun 2024 05:24:29 +0600 Subject: [PATCH 45/82] Delete RandomSentience event (#28982) --- Resources/Prototypes/GameRules/events.yml | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/Resources/Prototypes/GameRules/events.yml b/Resources/Prototypes/GameRules/events.yml index 853853fb22b1ef..a443ff50277862 100644 --- a/Resources/Prototypes/GameRules/events.yml +++ b/Resources/Prototypes/GameRules/events.yml @@ -277,19 +277,7 @@ duration: 60 maxDuration: 120 - type: PowerGridCheckRule - -- type: entity - id: RandomSentience - parent: BaseGameRule - components: - - type: StationEvent - weight: 6 - duration: 1 - maxOccurrences: 1 # this event has diminishing returns on interesting-ness, so we cap it - startAudio: - path: /Audio/Announcements/attention.ogg - - type: RandomSentienceRule - + - type: entity parent: BaseGameRule id: SolarFlare From 8a199a882b9b2c03ace4b55ced9776f1a3709fbc Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 16 Jun 2024 23:25:39 +0000 Subject: [PATCH 46/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index b3d8fff8131c88..5b94f8f47ce313 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Flareguy - changes: - - message: Removed SCAF armor. - type: Remove - id: 6261 - time: '2024-03-31T02:01:28.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26566 - author: lzk228 changes: - message: Syndicate duffelbag storage increased from 8x5 to 9x5. @@ -3859,3 +3852,10 @@ id: 6760 time: '2024-06-16T11:57:57.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/25155 +- author: Futuristic + changes: + - message: RandomSentience event was removed + type: Remove + id: 6761 + time: '2024-06-16T23:24:29.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/28982 From 388d372ee8eac2e2af39cfed142ea90fb69fa212 Mon Sep 17 00:00:00 2001 From: Partmedia Date: Sun, 16 Jun 2024 17:13:32 -0800 Subject: [PATCH 47/82] Fix incorrect use of atmos dt (#29112) --- Content.Server/Power/Generation/Teg/TegSystem.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Content.Server/Power/Generation/Teg/TegSystem.cs b/Content.Server/Power/Generation/Teg/TegSystem.cs index bc1bff052ce419..02412ca5fb54b5 100644 --- a/Content.Server/Power/Generation/Teg/TegSystem.cs +++ b/Content.Server/Power/Generation/Teg/TegSystem.cs @@ -179,7 +179,7 @@ private void GeneratorUpdate(EntityUid uid, TegGeneratorComponent component, ref component.LastGeneration = electricalEnergy; // Turn energy (at atmos tick rate) into wattage. - var power = electricalEnergy * _atmosphere.AtmosTickRate; + var power = electricalEnergy / args.dt; // Add ramp factor. This magics slight power into existence, but allows us to ramp up. supplier.MaxSupply = power * component.RampFactor; From 72665eb6e002fdc4d944cd74fcad4d0ad999d065 Mon Sep 17 00:00:00 2001 From: PJBot Date: Mon, 17 Jun 2024 01:14:39 +0000 Subject: [PATCH 48/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 5b94f8f47ce313..294d52eba125d1 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: lzk228 - changes: - - message: Syndicate duffelbag storage increased from 8x5 to 9x5. - type: Tweak - id: 6262 - time: '2024-03-31T02:21:31.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26565 - author: Velcroboy changes: - message: Changed plastic flaps to be completely constructable/deconstructable @@ -3859,3 +3852,10 @@ id: 6761 time: '2024-06-16T23:24:29.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/28982 +- author: notafet + changes: + - message: Adjust TEG power generation levels. + type: Tweak + id: 6762 + time: '2024-06-17T01:13:33.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29112 From f7aca6b15f029caf0b5d23b92a4ad9b41737db1e Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Mon, 17 Jun 2024 03:03:01 +0000 Subject: [PATCH 49/82] nuke actions from map files (#28589) --- Resources/Maps/Shuttles/emergency_meta.yml | 200 --------------------- Resources/Maps/atlas.yml | 22 --- Resources/Maps/bagel.yml | 22 --- Resources/Maps/cluster.yml | 42 ----- Resources/Maps/marathon.yml | 22 --- Resources/Maps/oasis.yml | 162 ----------------- Resources/Maps/saltern.yml | 22 --- 7 files changed, 492 deletions(-) diff --git a/Resources/Maps/Shuttles/emergency_meta.yml b/Resources/Maps/Shuttles/emergency_meta.yml index a85c607195e0fa..84b6ff02e668b3 100644 --- a/Resources/Maps/Shuttles/emergency_meta.yml +++ b/Resources/Maps/Shuttles/emergency_meta.yml @@ -465,85 +465,6 @@ entities: - type: RadiationGridResistance - type: GravityShake shakeTimes: 10 -- proto: ActionToggleLight - entities: - - uid: 4 - components: - - type: Transform - parent: 3 - - type: InstantAction - container: 3 - - uid: 5 - components: - - type: Transform - parent: 3 - - type: InstantAction - container: 3 - - uid: 12 - components: - - type: Transform - parent: 11 - - type: InstantAction - container: 11 - - uid: 13 - components: - - type: Transform - parent: 11 - - type: InstantAction - container: 11 - - uid: 22 - components: - - type: Transform - parent: 21 - - type: InstantAction - container: 21 - - uid: 23 - components: - - type: Transform - parent: 21 - - type: InstantAction - container: 21 - - uid: 32 - components: - - type: Transform - parent: 31 - - type: InstantAction - container: 31 - - uid: 33 - components: - - type: Transform - parent: 31 - - type: InstantAction - container: 31 - - uid: 42 - components: - - type: Transform - parent: 41 - - type: InstantAction - container: 41 - - uid: 43 - components: - - type: Transform - parent: 41 - - type: InstantAction - container: 41 -- proto: ActionToggleSuitPiece - entities: - - uid: 51 - components: - - type: Transform - parent: 50 - - type: InstantAction - container: 50 - entIcon: 52 -- proto: ActionVendingThrow - entities: - - uid: 54 - components: - - type: Transform - parent: 53 - - type: InstantAction - container: 53 - proto: AirCanister entities: - uid: 55 @@ -2604,27 +2525,8 @@ entities: components: - type: Transform parent: 2 - - type: HandheldLight - selfToggleActionEntity: 5 - toggleActionEntity: 4 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: 6 - actions: !type:Container - showEnts: False - occludes: True - ents: - - 4 - - 5 - type: Physics canCollide: False - - type: ActionsContainer - - type: Actions - actions: - - 5 - type: InsideEntityStorage - proto: ClothingMaskBreath entities: @@ -2755,23 +2657,8 @@ entities: - type: Transform pos: 11.467667,-10.363369 parent: 1 - - type: ToggleableClothing - clothingUid: 52 - actionEntity: 51 - - type: ContainerContainer - containers: - toggleable-clothing: !type:ContainerSlot - showEnts: False - occludes: True - ent: 52 - actions: !type:Container - showEnts: False - occludes: True - ents: - - 51 - type: Physics canCollide: False - - type: ActionsContainer - proto: ClothingOuterSuitFire entities: - uid: 8 @@ -3291,102 +3178,26 @@ entities: components: - type: Transform parent: 10 - - type: HandheldLight - selfToggleActionEntity: 13 - toggleActionEntity: 12 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: 14 - actions: !type:Container - showEnts: False - occludes: True - ents: - - 12 - - 13 - type: Physics canCollide: False - - type: ActionsContainer - - type: Actions - actions: - - 13 - uid: 21 components: - type: Transform parent: 20 - - type: HandheldLight - selfToggleActionEntity: 23 - toggleActionEntity: 22 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: 24 - actions: !type:Container - showEnts: False - occludes: True - ents: - - 22 - - 23 - type: Physics canCollide: False - - type: ActionsContainer - - type: Actions - actions: - - 23 - uid: 31 components: - type: Transform parent: 30 - - type: HandheldLight - selfToggleActionEntity: 33 - toggleActionEntity: 32 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: 34 - actions: !type:Container - showEnts: False - occludes: True - ents: - - 32 - - 33 - type: Physics canCollide: False - - type: ActionsContainer - - type: Actions - actions: - - 33 - uid: 41 components: - type: Transform parent: 40 - - type: HandheldLight - selfToggleActionEntity: 43 - toggleActionEntity: 42 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: 44 - actions: !type:Container - showEnts: False - occludes: True - ents: - - 42 - - 43 - type: Physics canCollide: False - - type: ActionsContainer - - type: Actions - actions: - - 43 - proto: FoodBoxDonut entities: - uid: 583 @@ -7517,17 +7328,6 @@ entities: - type: Transform pos: 16.5,-0.5 parent: 1 - - type: VendingMachine - actionEntity: 54 - - type: Actions - actions: - - 54 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 54 - proto: VendingMachineWallMedical entities: - uid: 926 diff --git a/Resources/Maps/atlas.yml b/Resources/Maps/atlas.yml index 18c63121f6c9a2..d220057d5e92e8 100644 --- a/Resources/Maps/atlas.yml +++ b/Resources/Maps/atlas.yml @@ -2855,14 +2855,6 @@ entities: - type: GasTileOverlay - type: RadiationGridResistance - type: NavMap -- proto: ActionToggleLight - entities: - - uid: 7876 - components: - - type: Transform - parent: 7875 - - type: InstantAction - container: 7875 - proto: AirAlarm entities: - uid: 1942 @@ -39104,22 +39096,8 @@ entities: - type: Transform pos: -43.645462,-17.224262 parent: 30 - - type: HandheldLight - toggleActionEntity: 7876 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 7876 - type: Physics canCollide: True - - type: ActionsContainer - proto: LemonSeeds entities: - uid: 8448 diff --git a/Resources/Maps/bagel.yml b/Resources/Maps/bagel.yml index 3dfb5c154a1927..51a2b8ba6c2bc3 100644 --- a/Resources/Maps/bagel.yml +++ b/Resources/Maps/bagel.yml @@ -9395,14 +9395,6 @@ entities: - type: Transform pos: 31.477634,-79.4623 parent: 60 -- proto: ActionToggleLight - entities: - - uid: 3189 - components: - - type: Transform - parent: 19193 - - type: InstantAction - container: 19193 - proto: AirAlarm entities: - uid: 249 @@ -70806,20 +70798,6 @@ entities: - type: Transform pos: 20.983997,21.51571 parent: 60 - - type: HandheldLight - toggleActionEntity: 3189 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 3189 - - type: ActionsContainer - uid: 21240 components: - type: Transform diff --git a/Resources/Maps/cluster.yml b/Resources/Maps/cluster.yml index 78fdcc4fd1c041..655c0ff53d237b 100644 --- a/Resources/Maps/cluster.yml +++ b/Resources/Maps/cluster.yml @@ -4499,20 +4499,6 @@ entities: - type: Transform pos: 3.5402613,7.6028175 parent: 1 -- proto: ActionToggleLight - entities: - - uid: 9312 - components: - - type: Transform - parent: 12532 - - type: InstantAction - container: 12532 - - uid: 9313 - components: - - type: Transform - parent: 12533 - - type: InstantAction - container: 12533 - proto: AirAlarm entities: - uid: 8049 @@ -35985,39 +35971,11 @@ entities: - type: Transform pos: 16.59333,23.726284 parent: 1 - - type: HandheldLight - toggleActionEntity: 9312 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 9312 - - type: ActionsContainer - uid: 12533 components: - type: Transform pos: 16.59333,23.476284 parent: 1 - - type: HandheldLight - toggleActionEntity: 9313 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 9313 - - type: ActionsContainer - proto: Floodlight entities: - uid: 7307 diff --git a/Resources/Maps/marathon.yml b/Resources/Maps/marathon.yml index caa60e91490baa..f7a2a6056467ae 100644 --- a/Resources/Maps/marathon.yml +++ b/Resources/Maps/marathon.yml @@ -7773,14 +7773,6 @@ entities: - type: Transform pos: -19.30925,-35.362278 parent: 30 -- proto: ActionToggleLight - entities: - - uid: 3117 - components: - - type: Transform - parent: 5704 - - type: InstantAction - container: 5704 - proto: AirAlarm entities: - uid: 6224 @@ -98436,22 +98428,8 @@ entities: - type: Transform pos: 2.4391665,31.963726 parent: 30 - - type: HandheldLight - toggleActionEntity: 3117 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 3117 - type: Physics canCollide: True - - type: ActionsContainer - uid: 7472 components: - type: Transform diff --git a/Resources/Maps/oasis.yml b/Resources/Maps/oasis.yml index 9fd4c24c89fecd..34c01f3a3fb4b4 100644 --- a/Resources/Maps/oasis.yml +++ b/Resources/Maps/oasis.yml @@ -9688,70 +9688,6 @@ entities: - type: Transform pos: 19.476593,-4.469906 parent: 21002 -- proto: ActionToggleInternals - entities: - - uid: 23831 - components: - - type: Transform - parent: 23830 - - type: InstantAction - container: 23830 - - uid: 23833 - components: - - type: Transform - parent: 23832 - - type: InstantAction - container: 23832 - - uid: 23835 - components: - - type: Transform - parent: 23834 - - type: InstantAction - container: 23834 - - uid: 23837 - components: - - type: Transform - parent: 23836 - - type: InstantAction - container: 23836 - - uid: 23839 - components: - - type: Transform - parent: 23838 - - type: InstantAction - container: 23838 - - uid: 28282 - components: - - type: Transform - parent: 28281 - - type: InstantAction - container: 28281 - - uid: 28284 - components: - - type: Transform - parent: 28283 - - type: InstantAction - container: 28283 -- proto: ActionToggleLight - entities: - - uid: 2263 - components: - - type: Transform - parent: 2262 - - type: InstantAction - container: 2262 - - uid: 6624 - components: - - type: Transform - parent: 6623 - - type: InstantAction - container: 6623 - - uid: 23803 - components: - - type: Transform - parent: 23802 - - type: InstantAction - container: 23802 - proto: AirAlarm entities: - uid: 5583 @@ -74652,20 +74588,6 @@ entities: - type: Transform pos: -1.6524403,40.692146 parent: 2 - - type: HandheldLight - toggleActionEntity: 23803 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 23803 - - type: ActionsContainer - proto: ClothingHeadHelmetRiot entities: - uid: 4267 @@ -86086,14 +86008,6 @@ entities: - type: Transform pos: -26.335854,15.494169 parent: 2 - - type: GasTank - toggleActionEntity: 23839 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 23839 - proto: DoubleEmergencyOxygenTankFilled entities: - uid: 23832 @@ -86101,14 +86015,6 @@ entities: - type: Transform pos: -26.606686,15.712919 parent: 2 - - type: GasTank - toggleActionEntity: 23833 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 23833 - proto: Dresser entities: - uid: 22340 @@ -87717,14 +87623,6 @@ entities: - type: Transform pos: -26.28377,14.921253 parent: 2 - - type: GasTank - toggleActionEntity: 23837 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 23837 - uid: 28423 components: - type: Transform @@ -87747,40 +87645,16 @@ entities: - type: Transform pos: -26.481686,14.431669 parent: 2 - - type: GasTank - toggleActionEntity: 23835 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 23835 - uid: 28281 components: - type: Transform pos: 43.584152,5.432804 parent: 21002 - - type: GasTank - toggleActionEntity: 28282 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 28282 - uid: 28283 components: - type: Transform pos: 64.58009,6.520523 parent: 21002 - - type: GasTank - toggleActionEntity: 28284 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 28284 - uid: 28286 components: - type: Transform @@ -87989,14 +87863,6 @@ entities: - type: Transform pos: -26.606686,14.921253 parent: 2 - - type: GasTank - toggleActionEntity: 23831 - - type: ActionsContainer - - type: ContainerContainer - containers: - actions: !type:Container - ents: - - 23831 - proto: ExtinguisherCabinetFilled entities: - uid: 5804 @@ -134748,22 +134614,8 @@ entities: - type: Transform pos: -31.387814,-44.28387 parent: 2 - - type: HandheldLight - toggleActionEntity: 2263 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 2263 - type: Physics canCollide: True - - type: ActionsContainer - proto: LampGold entities: - uid: 1597 @@ -134788,22 +134640,8 @@ entities: - type: Transform pos: 3.4081588,44.633736 parent: 2 - - type: HandheldLight - toggleActionEntity: 6624 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 6624 - type: Physics canCollide: True - - type: ActionsContainer - uid: 7981 components: - type: Transform diff --git a/Resources/Maps/saltern.yml b/Resources/Maps/saltern.yml index c9d3218c45fbc3..048b0a2e5ce4b8 100644 --- a/Resources/Maps/saltern.yml +++ b/Resources/Maps/saltern.yml @@ -3401,14 +3401,6 @@ entities: - type: Transform pos: -11.470391,11.486723 parent: 31 -- proto: ActionToggleLight - entities: - - uid: 7544 - components: - - type: Transform - parent: 9761 - - type: InstantAction - container: 9761 - proto: AirAlarm entities: - uid: 5107 @@ -48902,20 +48894,6 @@ entities: - type: Transform pos: -16.721703,-38.96948 parent: 31 - - type: HandheldLight - toggleActionEntity: 7544 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 7544 - - type: ActionsContainer - proto: LargeBeaker entities: - uid: 5074 From 390f8d19d1505364389e1f595a54df2cfa43a96e Mon Sep 17 00:00:00 2001 From: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Date: Sun, 16 Jun 2024 22:21:29 -0500 Subject: [PATCH 50/82] Makes Eyepatches Flippable (#26277) --- .../Clothing/ClientClothingSystem.cs | 8 ++-- .../FlippableClothingVisualizerSystem.cs | 48 +++++++++++++++++++ .../FlippableClothingVisualsComponent.cs | 16 +++++++ Content.Client/Sprite/RandomSpriteSystem.cs | 3 -- .../Clothing/Components/ClothingComponent.cs | 8 +++- .../Clothing/EntitySystems/ClothingSystem.cs | 6 --- .../EntitySystems/FoldableClothingSystem.cs | 40 ++++++++-------- .../Clothing/Eyes/base_clothingeyes.yml | 39 +++++++++++++++ .../Prototypes/Entities/Clothing/Eyes/hud.yml | 32 +++++++++---- .../Entities/Clothing/Eyes/misc.yml | 31 +++++++----- 10 files changed, 175 insertions(+), 56 deletions(-) create mode 100644 Content.Client/Clothing/FlippableClothingVisualizerSystem.cs create mode 100644 Content.Client/Clothing/FlippableClothingVisualsComponent.cs diff --git a/Content.Client/Clothing/ClientClothingSystem.cs b/Content.Client/Clothing/ClientClothingSystem.cs index dd69521f483819..1c0d831226db73 100644 --- a/Content.Client/Clothing/ClientClothingSystem.cs +++ b/Content.Client/Clothing/ClientClothingSystem.cs @@ -1,5 +1,6 @@ using System.Diagnostics.CodeAnalysis; using System.Linq; +using System.Numerics; using Content.Client.Inventory; using Content.Shared.Clothing; using Content.Shared.Clothing.Components; @@ -113,6 +114,7 @@ private void OnGetVisuals(EntityUid uid, ClothingComponent item, GetEquipmentVis i++; } + item.MappedLayer = key; args.Layers.Add((key, layer)); } } @@ -153,13 +155,9 @@ private bool TryGetDefaultVisuals(EntityUid uid, ClothingComponent clothing, str // species specific if (speciesId != null && rsi.TryGetState($"{state}-{speciesId}", out _)) - { state = $"{state}-{speciesId}"; - } else if (!rsi.TryGetState(state, out _)) - { return false; - } var layer = new PrototypeLayerData(); layer.RsiPath = rsi.Path.ToString(); @@ -287,6 +285,8 @@ private void RenderEquipment(EntityUid equipee, EntityUid equipment, string slot if (layerData.Color != null) sprite.LayerSetColor(key, layerData.Color.Value); + if (layerData.Scale != null) + sprite.LayerSetScale(key, layerData.Scale.Value); } else index = sprite.LayerMapReserveBlank(key); diff --git a/Content.Client/Clothing/FlippableClothingVisualizerSystem.cs b/Content.Client/Clothing/FlippableClothingVisualizerSystem.cs new file mode 100644 index 00000000000000..2c3afb0324fd89 --- /dev/null +++ b/Content.Client/Clothing/FlippableClothingVisualizerSystem.cs @@ -0,0 +1,48 @@ +using Content.Shared.Clothing; +using Content.Shared.Clothing.Components; +using Content.Shared.Clothing.EntitySystems; +using Content.Shared.Foldable; +using Content.Shared.Item; +using Robust.Client.GameObjects; + +namespace Content.Client.Clothing; + +public sealed class FlippableClothingVisualizerSystem : VisualizerSystem +{ + [Dependency] private readonly SharedItemSystem _itemSys = default!; + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnGetVisuals, after: [typeof(ClothingSystem)]); + SubscribeLocalEvent(OnFolded); + } + + private void OnFolded(Entity ent, ref FoldedEvent args) + { + _itemSys.VisualsChanged(ent); + } + + private void OnGetVisuals(Entity ent, ref GetEquipmentVisualsEvent args) + { + if (!TryComp(ent, out SpriteComponent? sprite) || + !TryComp(ent, out ClothingComponent? clothing)) + return; + + if (clothing.MappedLayer == null || + !AppearanceSystem.TryGetData(ent, FoldableSystem.FoldedVisuals.State, out var folding) || + !sprite.LayerMapTryGet(folding ? ent.Comp.FoldingLayer : ent.Comp.UnfoldingLayer, out var idx)) + return; + + // add each layer to the visuals + var spriteLayer = sprite[idx]; + foreach (var layer in args.Layers) + { + if (layer.Item1 != clothing.MappedLayer) + continue; + + layer.Item2.Scale = spriteLayer.Scale; + } + } +} diff --git a/Content.Client/Clothing/FlippableClothingVisualsComponent.cs b/Content.Client/Clothing/FlippableClothingVisualsComponent.cs new file mode 100644 index 00000000000000..33d622b8b52f20 --- /dev/null +++ b/Content.Client/Clothing/FlippableClothingVisualsComponent.cs @@ -0,0 +1,16 @@ +namespace Content.Client.Clothing; + +/// +/// Communicates folded layers data (currently only Scale to handle flipping) +/// to the wearer clothing sprite layer +/// +[RegisterComponent] +[Access(typeof(FlippableClothingVisualizerSystem))] +public sealed partial class FlippableClothingVisualsComponent : Component +{ + [DataField] + public string FoldingLayer = "foldedLayer"; + + [DataField] + public string UnfoldingLayer = "unfoldedLayer"; +} diff --git a/Content.Client/Sprite/RandomSpriteSystem.cs b/Content.Client/Sprite/RandomSpriteSystem.cs index b9be2a44b42d5a..c4aa43a65bc4bc 100644 --- a/Content.Client/Sprite/RandomSpriteSystem.cs +++ b/Content.Client/Sprite/RandomSpriteSystem.cs @@ -43,9 +43,6 @@ private void UpdateClothingComponentAppearance(EntityUid uid, RandomSpriteCompon if (!Resolve(uid, ref clothing, false)) return; - if (clothing.ClothingVisuals == null) - return; - foreach (var slotPair in clothing.ClothingVisuals) { foreach (var keyColorPair in component.Selected) diff --git a/Content.Shared/Clothing/Components/ClothingComponent.cs b/Content.Shared/Clothing/Components/ClothingComponent.cs index 6d7226e767daf7..846a78b8680c34 100644 --- a/Content.Shared/Clothing/Components/ClothingComponent.cs +++ b/Content.Shared/Clothing/Components/ClothingComponent.cs @@ -16,9 +16,14 @@ namespace Content.Shared.Clothing.Components; public sealed partial class ClothingComponent : Component { [DataField("clothingVisuals")] - [Access(typeof(ClothingSystem), typeof(InventorySystem), Other = AccessPermissions.ReadExecute)] // TODO remove execute permissions. public Dictionary> ClothingVisuals = new(); + /// + /// The name of the layer in the user that this piece of clothing will map to + /// + [DataField] + public string? MappedLayer; + [ViewVariables(VVAccess.ReadWrite)] [DataField("quickEquip")] public bool QuickEquip = true; @@ -121,4 +126,3 @@ public ClothingUnequipDoAfterEvent(string slot) public override DoAfterEvent Clone() => this; } - diff --git a/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs index 1e2825a49a5b26..bdcb2c8204267e 100644 --- a/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs +++ b/Content.Shared/Clothing/EntitySystems/ClothingSystem.cs @@ -241,9 +241,6 @@ public void CopyVisuals(EntityUid uid, ClothingComponent otherClothing, Clothing public void SetLayerColor(ClothingComponent clothing, string slot, string mapKey, Color? color) { - if (clothing.ClothingVisuals == null) - return; - foreach (var layer in clothing.ClothingVisuals[slot]) { if (layer.MapKeys == null) @@ -257,9 +254,6 @@ public void SetLayerColor(ClothingComponent clothing, string slot, string mapKey } public void SetLayerState(ClothingComponent clothing, string slot, string mapKey, string state) { - if (clothing.ClothingVisuals == null) - return; - foreach (var layer in clothing.ClothingVisuals[slot]) { if (layer.MapKeys == null) diff --git a/Content.Shared/Clothing/EntitySystems/FoldableClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/FoldableClothingSystem.cs index 27ea1680188731..be55588ddd57e8 100644 --- a/Content.Shared/Clothing/EntitySystems/FoldableClothingSystem.cs +++ b/Content.Shared/Clothing/EntitySystems/FoldableClothingSystem.cs @@ -33,32 +33,32 @@ private void OnFoldAttempt(Entity ent, ref FoldAttemp private void OnFolded(Entity ent, ref FoldedEvent args) { - if (TryComp(ent.Owner, out var clothingComp) && - TryComp(ent.Owner, out var itemComp)) + if (!TryComp(ent.Owner, out var clothingComp) || + !TryComp(ent.Owner, out var itemComp)) + return; + + if (args.IsFolded) { - if (args.IsFolded) - { - if (ent.Comp.FoldedSlots.HasValue) - _clothingSystem.SetSlots(ent.Owner, ent.Comp.FoldedSlots.Value, clothingComp); + if (ent.Comp.FoldedSlots.HasValue) + _clothingSystem.SetSlots(ent.Owner, ent.Comp.FoldedSlots.Value, clothingComp); - if (ent.Comp.FoldedEquippedPrefix != null) - _clothingSystem.SetEquippedPrefix(ent.Owner, ent.Comp.FoldedEquippedPrefix, clothingComp); + if (ent.Comp.FoldedEquippedPrefix != null) + _clothingSystem.SetEquippedPrefix(ent.Owner, ent.Comp.FoldedEquippedPrefix, clothingComp); - if (ent.Comp.FoldedHeldPrefix != null) - _itemSystem.SetHeldPrefix(ent.Owner, ent.Comp.FoldedHeldPrefix, false, itemComp); - } - else - { - if (ent.Comp.UnfoldedSlots.HasValue) - _clothingSystem.SetSlots(ent.Owner, ent.Comp.UnfoldedSlots.Value, clothingComp); + if (ent.Comp.FoldedHeldPrefix != null) + _itemSystem.SetHeldPrefix(ent.Owner, ent.Comp.FoldedHeldPrefix, false, itemComp); + } + else + { + if (ent.Comp.UnfoldedSlots.HasValue) + _clothingSystem.SetSlots(ent.Owner, ent.Comp.UnfoldedSlots.Value, clothingComp); - if (ent.Comp.FoldedEquippedPrefix != null) - _clothingSystem.SetEquippedPrefix(ent.Owner, null, clothingComp); + if (ent.Comp.FoldedEquippedPrefix != null) + _clothingSystem.SetEquippedPrefix(ent.Owner, null, clothingComp); - if (ent.Comp.FoldedHeldPrefix != null) - _itemSystem.SetHeldPrefix(ent.Owner, null, false, itemComp); + if (ent.Comp.FoldedHeldPrefix != null) + _itemSystem.SetHeldPrefix(ent.Owner, null, false, itemComp); - } } } } diff --git a/Resources/Prototypes/Entities/Clothing/Eyes/base_clothingeyes.yml b/Resources/Prototypes/Entities/Clothing/Eyes/base_clothingeyes.yml index 10f265a4a2c66e..b31f821629dd27 100644 --- a/Resources/Prototypes/Entities/Clothing/Eyes/base_clothingeyes.yml +++ b/Resources/Prototypes/Entities/Clothing/Eyes/base_clothingeyes.yml @@ -10,3 +10,42 @@ - type: Item size: Small storedRotation: -90 + +- type: entity + parent: [ClothingEyesBase, BaseFoldable] + id: ClothingHeadEyeBaseFlippable + abstract: true + components: + - type: Appearance + - type: FlippableClothingVisuals + - type: Foldable + canFoldInsideContainer: true + unfoldVerbText: fold-flip-verb + foldVerbText: fold-flip-verb + - type: FoldableClothing + - type: Sprite + layers: + - map: [ "unfoldedLayer" ] + state: icon + - map: ["foldedLayer"] + state: icon + visible: false + scale: -1,1 + +- type: entity + parent: ClothingHeadEyeBaseFlippable + id: ClothingHeadEyeBaseFlipped + suffix: flipped + abstract: true + components: + - type: Foldable + folded: true + - type: Sprite + layers: + - map: [ "unfoldedLayer" ] + state: icon + visible: false + - map: ["foldedLayer"] + state: icon + visible: true + scale: -1,1 diff --git a/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml b/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml index c74a60e8fc450a..0c7fc5b2a1fca4 100644 --- a/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml +++ b/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml @@ -220,7 +220,7 @@ suffix: Syndicate - type: entity - parent: ClothingEyesHudMedical + parent: [ClothingEyesHudMedical, ClothingHeadEyeBaseFlippable] id: ClothingEyesEyepatchHudMedical name: medical hud eyepatch description: A heads-up display that scans the humanoids in view and provides accurate data about their health status. For true patriots. @@ -231,7 +231,12 @@ sprite: Clothing/Eyes/Hud/medpatch.rsi - type: entity - parent: ClothingEyesHudSecurity + parent: [ClothingEyesEyepatchHudMedical, ClothingHeadEyeBaseFlipped] + id: ClothingEyesEyepatchHudMedicalFlipped + name: medical hud eyepatch + +- type: entity + parent: [ClothingEyesHudSecurity, ClothingHeadEyeBaseFlippable] id: ClothingEyesEyepatchHudSecurity name: security hud eyepatch description: A heads-up display that scans the humanoids in view and provides accurate data about their ID status and security records. For true patriots. @@ -242,7 +247,12 @@ sprite: Clothing/Eyes/Hud/secpatch.rsi - type: entity - parent: ClothingEyesHudBeer + parent: [ClothingEyesEyepatchHudSecurity, ClothingHeadEyeBaseFlipped] + id: ClothingEyesEyepatchHudSecurityFlipped + name: security hud eyepatch + +- type: entity + parent: [ClothingEyesHudBeer, ClothingHeadEyeBaseFlippable] id: ClothingEyesEyepatchHudBeer name: beer hud eyepatch description: A pair of sunHud outfitted with apparatus to scan reagents, as well as providing an innate understanding of liquid viscosity while in motion. For true patriots. @@ -253,7 +263,12 @@ sprite: Clothing/Eyes/Hud/beerpatch.rsi - type: entity - parent: ClothingEyesBase + parent: [ClothingEyesEyepatchHudBeer, ClothingHeadEyeBaseFlipped] + id: ClothingEyesEyepatchHudBeerFlipped + name: beer hud eyepatch + +- type: entity + parent: [ClothingEyesHudDiagnostic, ClothingHeadEyeBaseFlippable] id: ClothingEyesEyepatchHudDiag name: diagnostic hud eyepatch description: A heads-up display capable of analyzing the integrity and status of robotics and exosuits. Made out of see-borg-ium. @@ -262,7 +277,8 @@ sprite: Clothing/Eyes/Hud/diagpatch.rsi - type: Clothing sprite: Clothing/Eyes/Hud/diagpatch.rsi - - type: ShowHealthBars - damageContainers: - - Inorganic - - Silicon + +- type: entity + parent: [ClothingEyesEyepatchHudDiag, ClothingHeadEyeBaseFlipped] + id: ClothingEyesEyepatchHudDiagFlipped + name: diagnostic hud eyepatch diff --git a/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml b/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml index 06ff3471727f55..075ccae1c49d80 100644 --- a/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml +++ b/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml @@ -1,16 +1,3 @@ -- type: entity - parent: ClothingEyesBase - id: ClothingEyesEyepatch - name: eyepatch - description: Yarr. - components: - - type: Sprite - sprite: Clothing/Eyes/Misc/eyepatch.rsi - - type: Clothing - sprite: Clothing/Eyes/Misc/eyepatch.rsi - - type: EyeProtection - protectionTime: 5 - - type: entity parent: ClothingEyesBase id: ClothingEyesBlindfold @@ -26,3 +13,21 @@ graph: Blindfold node: blindfold - type: FlashImmunity + +- type: entity + parent: ClothingHeadEyeBaseFlippable + id: ClothingEyesEyepatch + name: eyepatch + description: Yarr. + components: + - type: Sprite + sprite: Clothing/Eyes/Misc/eyepatch.rsi + - type: Clothing + sprite: Clothing/Eyes/Misc/eyepatch.rsi + - type: EyeProtection + protectionTime: 5 + +- type: entity + parent: [ClothingEyesEyepatch, ClothingHeadEyeBaseFlipped] + id: ClothingEyesEyepatchFlipped + suffix: flipped From 7ff557d1ef2f42049d0a96166e1103d5916d42c3 Mon Sep 17 00:00:00 2001 From: PJBot Date: Mon, 17 Jun 2024 03:22:36 +0000 Subject: [PATCH 51/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 294d52eba125d1..60f90652376edd 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Velcroboy - changes: - - message: Changed plastic flaps to be completely constructable/deconstructable - type: Tweak - id: 6263 - time: '2024-03-31T02:24:39.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26341 - author: Flareguy changes: - message: Security glasses have been moved from research to roundstart gear. All @@ -3859,3 +3852,10 @@ id: 6762 time: '2024-06-17T01:13:33.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29112 +- author: Cojoke-dot, AJCM-git + changes: + - message: You can now flip your eyepatches to the other eye! Yarrrrr! + type: Add + id: 6763 + time: '2024-06-17T03:21:29.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/26277 From c332677971f23afbebe9505c2621f8a5d714f1a0 Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Mon, 17 Jun 2024 03:30:10 +0000 Subject: [PATCH 52/82] remove robotics console emag checking, make it a bit fairer (#27876) --- .../Robotics/UI/RoboticsConsoleWindow.xaml.cs | 2 +- .../Components/AutomatedTimerComponent.cs | 2 +- .../EntitySystems/TriggerSystem.OnUse.cs | 25 +-------- .../Explosion/EntitySystems/TriggerSystem.cs | 12 ++++ .../Silicons/Borgs/BorgSystem.Transponder.cs | 56 ++++++++++++++----- Content.Server/Silicons/Borgs/BorgSystem.cs | 2 +- .../Components/RoboticsConsoleComponent.cs | 2 +- Content.Shared/Robotics/RoboticsConsoleUi.cs | 10 +++- .../Components/BorgTransponderComponent.cs | 39 ++++++++++++- Resources/Locale/en-US/borg/borg.ftl | 2 + .../research/components/robotics-console.ftl | 2 +- .../Mobs/Cyborgs/base_borg_chassis.yml | 11 ++++ 12 files changed, 123 insertions(+), 42 deletions(-) diff --git a/Content.Client/Robotics/UI/RoboticsConsoleWindow.xaml.cs b/Content.Client/Robotics/UI/RoboticsConsoleWindow.xaml.cs index 367114f2aa6c5e..fc7b234bccc143 100644 --- a/Content.Client/Robotics/UI/RoboticsConsoleWindow.xaml.cs +++ b/Content.Client/Robotics/UI/RoboticsConsoleWindow.xaml.cs @@ -134,7 +134,7 @@ private void PopulateData() BorgInfo.SetMessage(text); // how the turntables - DisableButton.Disabled = !data.HasBrain; + DisableButton.Disabled = !(data.HasBrain && data.CanDisable); DestroyButton.Disabled = _timing.CurTime < _console.Comp1.NextDestroy; } diff --git a/Content.Server/Explosion/Components/AutomatedTimerComponent.cs b/Content.Server/Explosion/Components/AutomatedTimerComponent.cs index 7019c08d43d7b2..c01aeb91e55dce 100644 --- a/Content.Server/Explosion/Components/AutomatedTimerComponent.cs +++ b/Content.Server/Explosion/Components/AutomatedTimerComponent.cs @@ -1,7 +1,7 @@ namespace Content.Server.Explosion.Components; /// -/// Disallows starting the timer by hand, must be stuck or triggered by a system. +/// Disallows starting the timer by hand, must be stuck or triggered by a system using StartTimer. /// [RegisterComponent] public sealed partial class AutomatedTimerComponent : Component diff --git a/Content.Server/Explosion/EntitySystems/TriggerSystem.OnUse.cs b/Content.Server/Explosion/EntitySystems/TriggerSystem.OnUse.cs index 8725dd1ae738ed..dcd11062bb78df 100644 --- a/Content.Server/Explosion/EntitySystems/TriggerSystem.OnUse.cs +++ b/Content.Server/Explosion/EntitySystems/TriggerSystem.OnUse.cs @@ -26,13 +26,7 @@ private void OnStuck(EntityUid uid, OnUseTimerTriggerComponent component, Entity if (!component.StartOnStick) return; - HandleTimerTrigger( - uid, - args.User, - component.Delay, - component.BeepInterval, - component.InitialBeepDelay, - component.BeepSound); + StartTimer((uid, component), args.User); } private void OnExamined(EntityUid uid, OnUseTimerTriggerComponent component, ExaminedEvent args) @@ -54,14 +48,7 @@ private void OnGetAltVerbs(EntityUid uid, OnUseTimerTriggerComponent component, args.Verbs.Add(new AlternativeVerb() { Text = Loc.GetString("verb-start-detonation"), - Act = () => HandleTimerTrigger( - uid, - args.User, - component.Delay, - component.BeepInterval, - component.InitialBeepDelay, - component.BeepSound - ), + Act = () => StartTimer((uid, component), args.User), Priority = 2 }); } @@ -174,13 +161,7 @@ private void OnTimerUse(EntityUid uid, OnUseTimerTriggerComponent component, Use if (component.DoPopup) _popupSystem.PopupEntity(Loc.GetString("trigger-activated", ("device", uid)), args.User, args.User); - HandleTimerTrigger( - uid, - args.User, - component.Delay, - component.BeepInterval, - component.InitialBeepDelay, - component.BeepSound); + StartTimer((uid, component), args.User); args.Handled = true; } diff --git a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs index e03b8aff54460d..92e065bf4ce698 100644 --- a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs +++ b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs @@ -265,6 +265,18 @@ public void TryDelay(EntityUid uid, float amount, ActiveTimerTriggerComponent? c comp.TimeRemaining += amount; } + /// + /// Start the timer for triggering the device. + /// + public void StartTimer(Entity ent, EntityUid? user) + { + if (!Resolve(ent, ref ent.Comp, false)) + return; + + var comp = ent.Comp; + HandleTimerTrigger(ent, user, comp.Delay, comp.BeepInterval, comp.InitialBeepDelay, comp.BeepSound); + } + public void HandleTimerTrigger(EntityUid uid, EntityUid? user, float delay, float beepInterval, float? initialBeepDelay, SoundSpecifier? beepSound) { if (delay <= 0) diff --git a/Content.Server/Silicons/Borgs/BorgSystem.Transponder.cs b/Content.Server/Silicons/Borgs/BorgSystem.Transponder.cs index 1c10cbe667ef19..781f847be35ea2 100644 --- a/Content.Server/Silicons/Borgs/BorgSystem.Transponder.cs +++ b/Content.Server/Silicons/Borgs/BorgSystem.Transponder.cs @@ -1,5 +1,6 @@ using Content.Shared.DeviceNetwork; using Content.Shared.Emag.Components; +using Content.Shared.Movement.Components; using Content.Shared.Popups; using Content.Shared.Robotics; using Content.Shared.Silicons.Borgs.Components; @@ -26,6 +27,9 @@ public override void Update(float frameTime) var query = EntityQueryEnumerator(); while (query.MoveNext(out var uid, out var comp, out var chassis, out var device, out var meta)) { + if (comp.NextDisable is {} nextDisable && now >= nextDisable) + DoDisable((uid, comp, chassis, meta)); + if (now < comp.NextBroadcast) continue; @@ -33,13 +37,16 @@ public override void Update(float frameTime) if (_powerCell.TryGetBatteryFromSlot(uid, out var battery)) charge = battery.CurrentCharge / battery.MaxCharge; + var hasBrain = chassis.BrainEntity != null && !comp.FakeDisabled; + var canDisable = comp.NextDisable == null && !comp.FakeDisabling; var data = new CyborgControlData( comp.Sprite, comp.Name, meta.EntityName, charge, chassis.ModuleCount, - chassis.BrainEntity != null); + hasBrain, + canDisable); var payload = new NetworkPayload() { @@ -52,6 +59,24 @@ public override void Update(float frameTime) } } + private void DoDisable(Entity ent) + { + ent.Comp1.NextDisable = null; + if (ent.Comp1.FakeDisabling) + { + ent.Comp1.FakeDisabled = true; + ent.Comp1.FakeDisabling = false; + return; + } + + if (ent.Comp2.BrainEntity is not {} brain) + return; + + var message = Loc.GetString(ent.Comp1.DisabledPopup, ("name", Name(ent, ent.Comp3))); + Popup.PopupEntity(message, ent); + _container.Remove(brain, ent.Comp2.BrainContainer); + } + private void OnPacketReceived(Entity ent, ref DeviceNetworkPacketEvent args) { var payload = args.Data; @@ -61,28 +86,28 @@ private void OnPacketReceived(Entity ent, ref DeviceNe if (command == RoboticsConsoleConstants.NET_DISABLE_COMMAND) Disable(ent); else if (command == RoboticsConsoleConstants.NET_DESTROY_COMMAND) - Destroy(ent.Owner); + Destroy(ent); } private void Disable(Entity ent) { - if (!Resolve(ent, ref ent.Comp2) || ent.Comp2.BrainEntity is not {} brain) + if (!Resolve(ent, ref ent.Comp2) || ent.Comp2.BrainEntity == null || ent.Comp1.NextDisable != null) return; - // this won't exactly be stealthy but if you are malf its better than actually disabling you + // update ui immediately + ent.Comp1.NextBroadcast = _timing.CurTime; + + // pretend the borg is being disabled forever now if (CheckEmagged(ent, "disabled")) - return; + ent.Comp1.FakeDisabling = true; + else + Popup.PopupEntity(Loc.GetString(ent.Comp1.DisablingPopup), ent); - var message = Loc.GetString(ent.Comp1.DisabledPopup, ("name", Name(ent))); - Popup.PopupEntity(message, ent); - _container.Remove(brain, ent.Comp2.BrainContainer); + ent.Comp1.NextDisable = _timing.CurTime + ent.Comp1.DisableDelay; } - private void Destroy(Entity ent) + private void Destroy(Entity ent) { - if (!Resolve(ent, ref ent.Comp)) - return; - // this is stealthy until someone realises you havent exploded if (CheckEmagged(ent, "destroyed")) { @@ -91,7 +116,12 @@ private void Destroy(Entity ent) return; } - _explosion.TriggerExplosive(ent, ent.Comp, delete: false); + var message = Loc.GetString(ent.Comp.DestroyingPopup, ("name", Name(ent))); + Popup.PopupEntity(message, ent); + _trigger.StartTimer(ent.Owner, user: null); + + // prevent a shitter borg running into people + RemComp(ent); } private bool CheckEmagged(EntityUid uid, string name) diff --git a/Content.Server/Silicons/Borgs/BorgSystem.cs b/Content.Server/Silicons/Borgs/BorgSystem.cs index 1ab7f5387f31eb..c97ca9cbc0db39 100644 --- a/Content.Server/Silicons/Borgs/BorgSystem.cs +++ b/Content.Server/Silicons/Borgs/BorgSystem.cs @@ -43,8 +43,8 @@ public sealed partial class BorgSystem : SharedBorgSystem [Dependency] private readonly ActionsSystem _actions = default!; [Dependency] private readonly AlertsSystem _alerts = default!; [Dependency] private readonly DeviceNetworkSystem _deviceNetwork = default!; - [Dependency] private readonly ExplosionSystem _explosion = default!; [Dependency] private readonly SharedAppearanceSystem _appearance = default!; + [Dependency] private readonly TriggerSystem _trigger = default!; [Dependency] private readonly HandsSystem _hands = default!; [Dependency] private readonly MetaDataSystem _metaData = default!; [Dependency] private readonly SharedMindSystem _mind = default!; diff --git a/Content.Shared/Robotics/Components/RoboticsConsoleComponent.cs b/Content.Shared/Robotics/Components/RoboticsConsoleComponent.cs index 4329e437a29077..9e4b51866f3adf 100644 --- a/Content.Shared/Robotics/Components/RoboticsConsoleComponent.cs +++ b/Content.Shared/Robotics/Components/RoboticsConsoleComponent.cs @@ -36,7 +36,7 @@ public sealed partial class RoboticsConsoleComponent : Component /// Radio message sent when destroying a borg. /// [DataField] - public LocId DestroyMessage = "robotics-console-cyborg-destroyed"; + public LocId DestroyMessage = "robotics-console-cyborg-destroying"; /// /// Cooldown on destroying borgs to prevent complete abuse. diff --git a/Content.Shared/Robotics/RoboticsConsoleUi.cs b/Content.Shared/Robotics/RoboticsConsoleUi.cs index 1be89beff0beeb..996c65cb0e68ff 100644 --- a/Content.Shared/Robotics/RoboticsConsoleUi.cs +++ b/Content.Shared/Robotics/RoboticsConsoleUi.cs @@ -97,6 +97,13 @@ public record struct CyborgControlData [DataField] public bool HasBrain; + /// + /// Whether the borg can currently be disabled if the brain is installed, + /// if on cooldown then can't queue up multiple disables. + /// + [DataField] + public bool CanDisable; + /// /// When this cyborg's data will be deleted. /// Set by the console when receiving the packet. @@ -104,7 +111,7 @@ public record struct CyborgControlData [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] public TimeSpan Timeout = TimeSpan.Zero; - public CyborgControlData(SpriteSpecifier? chassisSprite, string chassisName, string name, float charge, int moduleCount, bool hasBrain) + public CyborgControlData(SpriteSpecifier? chassisSprite, string chassisName, string name, float charge, int moduleCount, bool hasBrain, bool canDisable) { ChassisSprite = chassisSprite; ChassisName = chassisName; @@ -112,6 +119,7 @@ public CyborgControlData(SpriteSpecifier? chassisSprite, string chassisName, str Charge = charge; ModuleCount = moduleCount; HasBrain = hasBrain; + CanDisable = canDisable; } } diff --git a/Content.Shared/Silicons/Borgs/Components/BorgTransponderComponent.cs b/Content.Shared/Silicons/Borgs/Components/BorgTransponderComponent.cs index 8c15e20d5d0740..577056bb46d33c 100644 --- a/Content.Shared/Silicons/Borgs/Components/BorgTransponderComponent.cs +++ b/Content.Shared/Silicons/Borgs/Components/BorgTransponderComponent.cs @@ -23,12 +23,25 @@ public sealed partial class BorgTransponderComponent : Component public string Name = string.Empty; /// - /// Popup shown to everyone when a borg is disabled. + /// Popup shown to everyone after a borg is disabled. /// Gets passed a string "name". /// [DataField] public LocId DisabledPopup = "borg-transponder-disabled-popup"; + /// + /// Popup shown to the borg when it is being disabled. + /// + [DataField] + public LocId DisablingPopup = "borg-transponder-disabling-popup"; + + /// + /// Popup shown to everyone when a borg is being destroyed. + /// Gets passed a string "name". + /// + [DataField] + public LocId DestroyingPopup = "borg-transponder-destroying-popup"; + /// /// How long to wait between each broadcast. /// @@ -40,4 +53,28 @@ public sealed partial class BorgTransponderComponent : Component /// [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] public TimeSpan NextBroadcast = TimeSpan.Zero; + + /// + /// When to next disable the borg. + /// + [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] + public TimeSpan? NextDisable; + + /// + /// How long to wait to disable the borg after RD has ordered it. + /// + [DataField] + public TimeSpan DisableDelay = TimeSpan.FromSeconds(5); + + /// + /// Pretend that the borg cannot be disabled due to being on delay. + /// + [DataField] + public bool FakeDisabling; + + /// + /// Pretend that the borg has no brain inserted. + /// + [DataField] + public bool FakeDisabled; } diff --git a/Resources/Locale/en-US/borg/borg.ftl b/Resources/Locale/en-US/borg/borg.ftl index 72667f318e353c..6c495510b05aee 100644 --- a/Resources/Locale/en-US/borg/borg.ftl +++ b/Resources/Locale/en-US/borg/borg.ftl @@ -21,5 +21,7 @@ borg-ui-module-counter = {$actual}/{$max} # Transponder borg-transponder-disabled-popup = A brain shoots out the top of {$name}! +borg-transponder-disabling-popup = Your transponder begins to lock you out of the chassis! +borg-transponder-destroying-popup = The self destruct of {$name} starts beeping! borg-transponder-emagged-disabled-popup = Your transponder's lights go out! borg-transponder-emagged-destroyed-popup = Your transponder's fuse blows! diff --git a/Resources/Locale/en-US/research/components/robotics-console.ftl b/Resources/Locale/en-US/research/components/robotics-console.ftl index 978fa9a43c078c..a4c82bd03229ac 100644 --- a/Resources/Locale/en-US/research/components/robotics-console.ftl +++ b/Resources/Locale/en-US/research/components/robotics-console.ftl @@ -16,4 +16,4 @@ robotics-console-locked-message = Controls locked, swipe ID. robotics-console-disable = Disable robotics-console-destroy = Destroy -robotics-console-cyborg-destroyed = The cyborg {$name} has been remotely destroyed. +robotics-console-cyborg-destroying = {$name} is being remotely detonated! diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml index baea453cb88e88..6ff9a9ec909d46 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml @@ -227,9 +227,20 @@ deviceNetId: Wireless receiveFrequencyId: CyborgControl transmitFrequencyId: RoboticsConsole + - type: OnUseTimerTrigger + delay: 10 + examinable: false + beepSound: + path: /Audio/Effects/Cargo/buzz_two.ogg + params: + volume: -4 + # prevent any funnies if someone makes a cyborg item... + - type: AutomatedTimer + - type: ExplodeOnTrigger # explosion does most of its damage in the center and less at the edges - type: Explosive explosionType: Minibomb + deleteAfterExplosion: false # let damage threshold gib the borg totalIntensity: 30 intensitySlope: 20 maxIntensity: 20 From ffcaf61ffae4332c8ace9fbea090fa71f0c282ed Mon Sep 17 00:00:00 2001 From: PJBot Date: Mon, 17 Jun 2024 03:31:16 +0000 Subject: [PATCH 53/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 60f90652376edd..96921c96c5ab07 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,14 +1,4 @@ Entries: -- author: Flareguy - changes: - - message: Security glasses have been moved from research to roundstart gear. All - officers now start with them instead of sunglasses by default. - type: Tweak - - message: You can now craft security glasses. - type: Add - id: 6264 - time: '2024-03-31T03:00:45.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26487 - author: brainfood1183 changes: - message: Toilets can now be connected to the disposal system. @@ -3859,3 +3849,12 @@ id: 6763 time: '2024-06-17T03:21:29.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/26277 +- author: deltanedas + changes: + - message: Borgs now have a 10 second beeping timer that paralyzes them when being + exploded with the robotics console and a 5 second delay when being disabled + with it. + type: Tweak + id: 6764 + time: '2024-06-17T03:30:10.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/27876 From 4aa74c5e1dfa7adeda93e86053d93ef1b0fc2e45 Mon Sep 17 00:00:00 2001 From: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Date: Mon, 17 Jun 2024 01:20:47 -0400 Subject: [PATCH 54/82] improve meteor spawning (#29057) --- Content.Server/StationEvents/Events/MeteorSwarmSystem.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs b/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs index 6a67930c4d2468..3f51834e3a6819 100644 --- a/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs +++ b/Content.Server/StationEvents/Events/MeteorSwarmSystem.cs @@ -66,7 +66,14 @@ protected override void ActiveTick(EntityUid uid, MeteorSwarmComponent component : new Random(uid.Id).NextAngle(); var offset = angle.RotateVec(new Vector2((maximumDistance - minimumDistance) * RobustRandom.NextFloat() + minimumDistance, 0)); - var subOffset = RobustRandom.NextAngle().RotateVec(new Vector2( (playableArea.TopRight - playableArea.Center).Length() / 2 * RobustRandom.NextFloat(), 0)); + + // the line at which spawns occur is perpendicular to the offset. + // This means the meteors are less likely to bunch up and hit the same thing. + var subOffsetAngle = RobustRandom.Prob(0.5f) + ? angle + Math.PI / 2 + : angle - Math.PI / 2; + var subOffset = subOffsetAngle.RotateVec(new Vector2( (playableArea.TopRight - playableArea.Center).Length() / 3 * RobustRandom.NextFloat(), 0)); + var spawnPosition = new MapCoordinates(center + offset + subOffset, mapId); var meteor = Spawn(spawnProto, spawnPosition); var physics = Comp(meteor); From b02e838926ff63199efa35ccc356c445a52700a3 Mon Sep 17 00:00:00 2001 From: PJBot Date: Mon, 17 Jun 2024 05:21:53 +0000 Subject: [PATCH 55/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 96921c96c5ab07..ccf5a20aa01f50 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: brainfood1183 - changes: - - message: Toilets can now be connected to the disposal system. - type: Add - id: 6265 - time: '2024-03-31T03:21:18.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/22133 - author: DrMelon changes: - message: Syndicate Uplinks now have a searchbar to help those dirty, rotten antagonists @@ -3858,3 +3851,11 @@ id: 6764 time: '2024-06-17T03:30:10.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/27876 +- author: EmoGarbage404 + changes: + - message: Changed meteor swarm spawning to be less clumped up and favor hitting + multiple areas more. + type: Tweak + id: 6765 + time: '2024-06-17T05:20:47.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29057 From 5038012b67c9689018e5bf362036ed8e0e4d5bbb Mon Sep 17 00:00:00 2001 From: Ubaser <134914314+UbaserB@users.noreply.github.com> Date: Mon, 17 Jun 2024 20:53:47 +1000 Subject: [PATCH 56/82] Add new lizard horns, Demonic (#29022) add --- Resources/Locale/en-US/markings/reptilian.ftl | 3 +++ .../Mobs/Customization/Markings/reptilian.yml | 9 +++++++++ .../reptilian_parts.rsi/horns_demonic.png | Bin 0 -> 1375 bytes .../Customization/reptilian_parts.rsi/meta.json | 6 +++++- 4 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 Resources/Textures/Mobs/Customization/reptilian_parts.rsi/horns_demonic.png diff --git a/Resources/Locale/en-US/markings/reptilian.ftl b/Resources/Locale/en-US/markings/reptilian.ftl index 470af07361d0d5..d66d3cb9e649c9 100644 --- a/Resources/Locale/en-US/markings/reptilian.ftl +++ b/Resources/Locale/en-US/markings/reptilian.ftl @@ -93,6 +93,9 @@ marking-LizardHornsMyrsore = Lizard Horns (Myrsore) marking-LizardHornsBighorn-horns_bighorn = Lizard Horns (Bighorn) marking-LizardHornsBighorn = Lizard Horns (Bighorn) +marking-LizardHornsDemonic-horns_demonic = Lizard Horns (Demonic) +marking-LizardHornsDemonic = Lizard Horns (Demonic) + marking-LizardHornsKoboldEars-horns_kobold_ears = Lizard Ears (Kobold) marking-LizardHornsKoboldEars = Lizard Ears (Kobold) diff --git a/Resources/Prototypes/Entities/Mobs/Customization/Markings/reptilian.yml b/Resources/Prototypes/Entities/Mobs/Customization/Markings/reptilian.yml index 5a52e09bf2d3d7..19768f8dc236b6 100644 --- a/Resources/Prototypes/Entities/Mobs/Customization/Markings/reptilian.yml +++ b/Resources/Prototypes/Entities/Mobs/Customization/Markings/reptilian.yml @@ -294,6 +294,15 @@ - sprite: Mobs/Customization/reptilian_parts.rsi state: horns_bighorn +- type: marking + id: LizardHornsDemonic + bodyPart: HeadTop + markingCategory: HeadTop + speciesRestriction: [Reptilian] + sprites: + - sprite: Mobs/Customization/reptilian_parts.rsi + state: horns_demonic + - type: marking id: LizardHornsKoboldEars bodyPart: HeadTop diff --git a/Resources/Textures/Mobs/Customization/reptilian_parts.rsi/horns_demonic.png b/Resources/Textures/Mobs/Customization/reptilian_parts.rsi/horns_demonic.png new file mode 100644 index 0000000000000000000000000000000000000000..63181ea08fa414e51f0c93d5fa9287eef0e8d6fa GIT binary patch literal 1375 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|_);T0(|mmy zw18|5AO?X;!IOa`XMsm#F$06fED&ZCw^H21z`)#=84^(v;p=0SoS&h?X&sHg;q@=(~U%$M(T(8_%FTW^V-_X+1Qs2Nx-^fT8s6w~6 zGOr}DLN~8i8Da>`9GBGM~RsBTId_|A5Z7NlCUU$t=l91qU45Kj08_%qc+?1*r!G zK~5$pWUX=%^U`gVDs)p)(-KQ_N|fyK^K?@SOEU`!Qd4xD9G$%bfY?SKq65_=h$yNB zHu_lHVgm{RtH_|#;{2RaP#oA9nVHyt!v#eY5gQO45mjZ9hZ$hJdfFNIi5O}0nE%1o-U3d6^w6ZISMr^@VG7&4_v?S-hZiG z0s0S{#N4f7Z*T~DTi33WaQb22zoThU$B$j>HedR*c*hiJA?sWJHTEqpygmER@|_6` zxwmf>%D9^8-81REq56o;$zb)q?6s>_HF2$eeJd*}aK+voLH0YC+Y%#ecTK)w{QCLy z)SKM%=bc`)f9{IX<=UZ}j_SW`XwNhIo0MI@@rSs*ovX-up}Z#qWEWGb0XiUz>flJ1bkXp>kgM#>KC* zrY=6A^8R3TmyiASI}($>D7G9sYhH2ThZ;Mk%}DNPJTJV1`S;Sw(&|=$y`aL))78&q Iol`;+03r0p$N&HU literal 0 HcmV?d00001 diff --git a/Resources/Textures/Mobs/Customization/reptilian_parts.rsi/meta.json b/Resources/Textures/Mobs/Customization/reptilian_parts.rsi/meta.json index 3770a771d8ea1f..bb12e3bf037897 100644 --- a/Resources/Textures/Mobs/Customization/reptilian_parts.rsi/meta.json +++ b/Resources/Textures/Mobs/Customization/reptilian_parts.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "https://github.com/Skyrat-SS13/Skyrat-tg/tree/40e3cdbb15b8bc0d5ef2fb46133adf805bda5297, while Argali, Ayrshire, Myrsore and Bighorn are drawn by Ubaser, and Kobold Ears are drawn by Pigeonpeas. Body_underbelly made by Nairod(github) for SS14. Large drawn by Ubaser. Wagging tail by SonicDC. Splotch modified from Sharp by KittenColony(github). Frills neckfull come from: https://github.com/Bubberstation/Bubberstation/commit/8bc6b83404803466a560b694bf22ef3c0ac266a2", + "copyright": "https://github.com/Skyrat-SS13/Skyrat-tg/tree/40e3cdbb15b8bc0d5ef2fb46133adf805bda5297, while Argali, Ayrshire, Myrsore, Bighorn and Demonic are drawn by Ubaser, and Kobold Ears are drawn by Pigeonpeas. Body_underbelly made by Nairod(github) for SS14. Large drawn by Ubaser. Wagging tail by SonicDC. Splotch modified from Sharp by KittenColony(github). Frills neckfull come from: https://github.com/Bubberstation/Bubberstation/commit/8bc6b83404803466a560b694bf22ef3c0ac266a2", "size": { "x": 32, "y": 32 @@ -581,6 +581,10 @@ "name": "horns_bighorn", "directions": 4 }, + { + "name": "horns_demonic", + "directions": 4 + }, { "name": "horns_kobold_ears", "directions": 4 From efbcce21bd1f7f891b962ad1530398cfab09bfbd Mon Sep 17 00:00:00 2001 From: PJBot Date: Mon, 17 Jun 2024 10:54:53 +0000 Subject: [PATCH 57/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index ccf5a20aa01f50..65c7dd73de6dd9 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: DrMelon - changes: - - message: Syndicate Uplinks now have a searchbar to help those dirty, rotten antagonists - find appropriate equipment more easily! - type: Tweak - id: 6266 - time: '2024-03-31T04:09:15.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/24287 - author: chromiumboy changes: - message: Additional construction options have been added to the Rapid Construction @@ -3859,3 +3851,10 @@ id: 6765 time: '2024-06-17T05:20:47.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29057 +- author: Ubaser + changes: + - message: Added new reptilian horns, "Demonic". + type: Add + id: 6766 + time: '2024-06-17T10:53:47.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29022 From e5a85e2a1359968ab71c4bcd79bfc834a8b3cb5a Mon Sep 17 00:00:00 2001 From: Tayrtahn Date: Mon, 17 Jun 2024 14:03:55 -0400 Subject: [PATCH 58/82] Make wearing an Ushanka also apply accent to your name (#29111) --- .../AccentWearerNameClothingComponent.cs | 10 +++++ .../AccentWearerNameClothingSystem.cs | 39 +++++++++++++++++++ .../speech/accent-wearer-name-clothing.ftl | 1 + .../Entities/Clothing/Head/hats.yml | 2 + 4 files changed, 52 insertions(+) create mode 100644 Content.Server/Speech/Components/AccentWearerNameClothingComponent.cs create mode 100644 Content.Server/Speech/EntitySystems/AccentWearerNameClothingSystem.cs create mode 100644 Resources/Locale/en-US/speech/accent-wearer-name-clothing.ftl diff --git a/Content.Server/Speech/Components/AccentWearerNameClothingComponent.cs b/Content.Server/Speech/Components/AccentWearerNameClothingComponent.cs new file mode 100644 index 00000000000000..288eaa8dcbe4d5 --- /dev/null +++ b/Content.Server/Speech/Components/AccentWearerNameClothingComponent.cs @@ -0,0 +1,10 @@ +using Content.Server.Speech.EntitySystems; + +namespace Content.Server.Speech.Components; + +/// +/// Applies any accent components on this item to the name of the wearer while worn. +/// +[RegisterComponent] +[Access(typeof(AccentWearerNameClothingSystem))] +public sealed partial class AccentWearerNameClothingComponent : Component; diff --git a/Content.Server/Speech/EntitySystems/AccentWearerNameClothingSystem.cs b/Content.Server/Speech/EntitySystems/AccentWearerNameClothingSystem.cs new file mode 100644 index 00000000000000..fc381c599853f2 --- /dev/null +++ b/Content.Server/Speech/EntitySystems/AccentWearerNameClothingSystem.cs @@ -0,0 +1,39 @@ +using Content.Server.Speech.Components; +using Content.Shared.Clothing; +using Content.Shared.Inventory; +using Content.Shared.NameModifier.EntitySystems; + +namespace Content.Server.Speech.EntitySystems; + +/// +public sealed class AccentWearerNameClothingSystem : EntitySystem +{ + [Dependency] private readonly NameModifierSystem _nameMod = default!; + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnGotEquipped); + SubscribeLocalEvent(OnGotUnequipped); + SubscribeLocalEvent>(OnRefreshNameModifiers); + } + + private void OnGotEquipped(Entity ent, ref ClothingGotEquippedEvent args) + { + _nameMod.RefreshNameModifiers(args.Wearer); + } + + private void OnGotUnequipped(Entity ent, ref ClothingGotUnequippedEvent args) + { + _nameMod.RefreshNameModifiers(args.Wearer); + } + + private void OnRefreshNameModifiers(Entity ent, ref InventoryRelayedEvent args) + { + var ev = new AccentGetEvent(ent, args.Args.BaseName); + RaiseLocalEvent(ent, ev); + // Use a negative priority since we're going to bulldoze any earlier changes + args.Args.AddModifier("comp-accent-wearer-name-clothing-format", -1, ("accentedName", ev.Message)); + } +} diff --git a/Resources/Locale/en-US/speech/accent-wearer-name-clothing.ftl b/Resources/Locale/en-US/speech/accent-wearer-name-clothing.ftl new file mode 100644 index 00000000000000..49b0fb31aac5f4 --- /dev/null +++ b/Resources/Locale/en-US/speech/accent-wearer-name-clothing.ftl @@ -0,0 +1 @@ +comp-accent-wearer-name-clothing-format = {$accentedName} diff --git a/Resources/Prototypes/Entities/Clothing/Head/hats.yml b/Resources/Prototypes/Entities/Clothing/Head/hats.yml index 2d2b2a353ef39a..8cdabb4e1459a6 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/hats.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/hats.yml @@ -489,6 +489,8 @@ - type: Appearance - type: AddAccentClothing accent: RussianAccent + - type: RussianAccent + - type: AccentWearerNameClothing - type: Foldable canFoldInsideContainer: true - type: FoldableClothing From 9b5219a226ebd57281eb733e71c13d737dfd2f36 Mon Sep 17 00:00:00 2001 From: Tayrtahn Date: Mon, 17 Jun 2024 19:09:19 -0400 Subject: [PATCH 59/82] Fix double label on chem jugs (#29137) --- .../Objects/Specific/chemical-containers.yml | 72 ++++++++++++------- 1 file changed, 48 insertions(+), 24 deletions(-) diff --git a/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml b/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml index 68d96fcd3dede8..d318c606adfc2d 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/chemical-containers.yml @@ -85,7 +85,8 @@ - type: entity parent: Jug - name: jug (carbon) + name: jug + suffix: carbon id: JugCarbon noSpawn: true components: @@ -100,7 +101,8 @@ - type: entity parent: Jug - name: jug (iodine) + name: jug + suffix: iodine id: JugIodine noSpawn: true components: @@ -115,7 +117,8 @@ - type: entity parent: Jug - name: jug (fluorine) + name: jug + suffix: fluorine id: JugFluorine noSpawn: true components: @@ -130,7 +133,8 @@ - type: entity parent: Jug - name: jug (chlorine) + name: jug + suffix: chlorine id: JugChlorine noSpawn: true components: @@ -145,7 +149,8 @@ - type: entity parent: Jug - name: jug (aluminium) + name: jug + suffix: aluminium id: JugAluminium noSpawn: true components: @@ -160,7 +165,8 @@ - type: entity parent: Jug - name: jug (phosphorus) + name: jug + suffix: phosphorus id: JugPhosphorus noSpawn: true components: @@ -175,7 +181,8 @@ - type: entity parent: Jug - name: jug (sulfur) + name: jug + suffix: sulfur id: JugSulfur noSpawn: true components: @@ -190,7 +197,8 @@ - type: entity parent: Jug - name: jug (silicon) + name: jug + suffix: silicon id: JugSilicon noSpawn: true components: @@ -205,7 +213,8 @@ - type: entity parent: Jug - name: jug (hydrogen) + name: jug + suffix: hydrogen id: JugHydrogen noSpawn: true components: @@ -220,7 +229,8 @@ - type: entity parent: Jug - name: jug (lithium) + name: jug + suffix: lithium id: JugLithium noSpawn: true components: @@ -235,7 +245,8 @@ - type: entity parent: Jug - name: jug (sodium) + name: jug + suffix: sodium id: JugSodium noSpawn: true components: @@ -250,7 +261,8 @@ - type: entity parent: Jug - name: jug (potassium) + name: jug + suffix: potassium id: JugPotassium noSpawn: true components: @@ -265,7 +277,8 @@ - type: entity parent: Jug - name: jug (radium) + name: jug + suffix: radium id: JugRadium noSpawn: true components: @@ -280,7 +293,8 @@ - type: entity parent: Jug - name: jug (iron) + name: jug + suffix: iron id: JugIron noSpawn: true components: @@ -295,7 +309,8 @@ - type: entity parent: Jug - name: jug (copper) + name: jug + suffix: copper id: JugCopper noSpawn: true components: @@ -310,7 +325,8 @@ - type: entity parent: Jug - name: jug (gold) + name: jug + suffix: gold id: JugGold noSpawn: true components: @@ -325,7 +341,8 @@ - type: entity parent: Jug - name: jug (mercury) + name: jug + suffix: mercury id: JugMercury noSpawn: true components: @@ -340,7 +357,8 @@ - type: entity parent: Jug - name: jug (silver) + name: jug + suffix: silver id: JugSilver noSpawn: true components: @@ -355,7 +373,8 @@ - type: entity parent: Jug - name: jug (ethanol) + name: jug + suffix: ethanol id: JugEthanol noSpawn: true components: @@ -370,7 +389,8 @@ - type: entity parent: Jug - name: jug (sugar) + name: jug + suffix: sugar id: JugSugar noSpawn: true components: @@ -385,7 +405,8 @@ - type: entity parent: Jug - name: jug (nitrogen) + name: jug + suffix: nitrogen id: JugNitrogen noSpawn: true components: @@ -400,7 +421,8 @@ - type: entity parent: Jug - name: jug (oxygen) + name: jug + suffix: oxygen id: JugOxygen noSpawn: true components: @@ -415,7 +437,8 @@ - type: entity parent: Jug - name: jug (Plant-B-Gone) + name: jug + suffix: Plant-B-Gone id: JugPlantBGone noSpawn: true components: @@ -430,7 +453,8 @@ - type: entity parent: Jug - name: jug (welding fuel) + name: jug + suffix: welding fuel id: JugWeldingFuel noSpawn: true components: From e04492e02d6533b9fd8848d6fe91f042c6409671 Mon Sep 17 00:00:00 2001 From: PJBot Date: Mon, 17 Jun 2024 23:10:25 +0000 Subject: [PATCH 60/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 65c7dd73de6dd9..cd3f48e51c7cb8 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,15 +1,4 @@ Entries: -- author: chromiumboy - changes: - - message: Additional construction options have been added to the Rapid Construction - Device (RCD), along with a radial style UI for fast navigation - type: Add - - message: The number of charges and the length of time required to build a structure - with the RCD now vary depending on the complexity of the constructed fixture - type: Tweak - id: 6267 - time: '2024-03-31T04:29:47.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/22799 - author: UBlueberry changes: - message: Nanotransen is now recruitin' personnel that speak with a Southern drawl. @@ -3858,3 +3847,10 @@ id: 6766 time: '2024-06-17T10:53:47.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29022 +- author: Tayrtahn + changes: + - message: Chemical jugs no longer spawn with two labels. + type: Fix + id: 6767 + time: '2024-06-17T23:09:19.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29137 From 0cf56b9bbd03b80ebd461df32758bb33255575b0 Mon Sep 17 00:00:00 2001 From: Tayrtahn Date: Mon, 17 Jun 2024 19:11:17 -0400 Subject: [PATCH 61/82] Fix DresserFilled storagefill rarely causing an error (#29135) Add ClothingUniformJumpskirtColorPink to an OrGroup --- Resources/Prototypes/Entities/Structures/Furniture/dresser.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml b/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml index b79c0e62131786..1309060bac1487 100644 --- a/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml +++ b/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml @@ -73,6 +73,7 @@ orGroup: dressermainloot - id: ClothingUniformJumpskirtColorPink prob: 0.05 + orGroup: dresserthirdloot - id: ClothingUniformJumpsuitLoungewear prob: 0.05 orGroup: dressermainloot From 82c4db67bc17afd41967582d2cdc8eafee082053 Mon Sep 17 00:00:00 2001 From: "Mr. 27" <45323883+Dutch-VanDerLinde@users.noreply.github.com> Date: Mon, 17 Jun 2024 23:56:37 -0400 Subject: [PATCH 62/82] Fix female reptilians not having gasp sounds (#29143) inital --- Resources/Prototypes/Voice/speech_emote_sounds.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Resources/Prototypes/Voice/speech_emote_sounds.yml b/Resources/Prototypes/Voice/speech_emote_sounds.yml index 0bc922985a6530..8e1f50df395018 100644 --- a/Resources/Prototypes/Voice/speech_emote_sounds.yml +++ b/Resources/Prototypes/Voice/speech_emote_sounds.yml @@ -118,6 +118,10 @@ collection: FemaleCry Weh: collection: Weh + Gasp: + collection: FemaleGasp + DefaultDeathgasp: + collection: FemaleDeathGasp - type: emoteSounds id: MaleSlime From a1e66cfbb40229a9b90edbc2b5ca3a3076cf0b9b Mon Sep 17 00:00:00 2001 From: Ed <96445749+TheShuEd@users.noreply.github.com> Date: Tue, 18 Jun 2024 13:27:34 +0300 Subject: [PATCH 63/82] clean up weather systems (#28792) * clean up weather systems * Update WeatherComponent.cs * Update SharedWeatherSystem.cs * some fix * Update SharedWeatherSystem.cs * Update WeatherComponent.cs * Update WeatherComponent.cs * revert autoPause * Update SharedWeatherSystem.cs --- .../Overlays/StencilOverlay.Weather.cs | 2 +- Content.Client/Weather/WeatherSystem.cs | 11 ++----- Content.Server/Weather/WeatherSystem.cs | 8 ++--- Content.Shared/Weather/SharedWeatherSystem.cs | 31 +++++++++---------- Content.Shared/Weather/WeatherComponent.cs | 13 ++++---- 5 files changed, 28 insertions(+), 37 deletions(-) diff --git a/Content.Client/Overlays/StencilOverlay.Weather.cs b/Content.Client/Overlays/StencilOverlay.Weather.cs index 29ed157a791213..bc514548036384 100644 --- a/Content.Client/Overlays/StencilOverlay.Weather.cs +++ b/Content.Client/Overlays/StencilOverlay.Weather.cs @@ -38,7 +38,7 @@ private void DrawWeather(in OverlayDrawArgs args, WeatherPrototype weatherProto, foreach (var tile in grid.Comp.GetTilesIntersecting(worldAABB)) { // Ignored tiles for stencil - if (_weather.CanWeatherAffect(grid, tile)) + if (_weather.CanWeatherAffect(grid.Owner, grid, tile)) { continue; } diff --git a/Content.Client/Weather/WeatherSystem.cs b/Content.Client/Weather/WeatherSystem.cs index b35483bba487d0..a0e8a44f40be63 100644 --- a/Content.Client/Weather/WeatherSystem.cs +++ b/Content.Client/Weather/WeatherSystem.cs @@ -2,16 +2,11 @@ using Content.Shared.Weather; using Robust.Client.Audio; using Robust.Client.GameObjects; -using Robust.Client.Graphics; using Robust.Client.Player; -using Robust.Shared.Audio; using Robust.Shared.Audio.Systems; using Robust.Shared.GameStates; using Robust.Shared.Map; using Robust.Shared.Map.Components; -using Robust.Shared.Physics; -using Robust.Shared.Physics.Components; -using Robust.Shared.Physics.Systems; using Robust.Shared.Player; using AudioComponent = Robust.Shared.Audio.Components.AudioComponent; @@ -62,7 +57,7 @@ protected override void Run(EntityUid uid, WeatherData weather, WeatherPrototype if (TryComp(entXform.GridUid, out var grid)) { var gridId = entXform.GridUid.Value; - // Floodfill to the nearest tile and use that for audio. + // FloodFill to the nearest tile and use that for audio. var seed = _mapSystem.GetTileRef(gridId, grid, entXform.Coordinates); var frontier = new Queue(); frontier.Enqueue(seed); @@ -75,7 +70,7 @@ protected override void Run(EntityUid uid, WeatherData weather, WeatherPrototype if (!visited.Add(node.GridIndices)) continue; - if (!CanWeatherAffect(grid, node)) + if (!CanWeatherAffect(entXform.GridUid.Value, grid, node)) { // Add neighbors // TODO: Ideally we pick some deterministically random direction and use that @@ -107,7 +102,7 @@ protected override void Run(EntityUid uid, WeatherData weather, WeatherPrototype if (nearestNode != null) { var entPos = _transform.GetMapCoordinates(entXform); - var nodePosition = nearestNode.Value.ToMap(EntityManager, _transform).Position; + var nodePosition = _transform.ToMapCoordinates(nearestNode.Value).Position; var delta = nodePosition - entPos.Position; var distance = delta.Length(); occlusion = _audio.GetOcclusion(entPos, delta, distance); diff --git a/Content.Server/Weather/WeatherSystem.cs b/Content.Server/Weather/WeatherSystem.cs index bacdce2b347c57..c3af49944d99c5 100644 --- a/Content.Server/Weather/WeatherSystem.cs +++ b/Content.Server/Weather/WeatherSystem.cs @@ -1,17 +1,16 @@ -using System.Linq; using Content.Server.Administration; using Content.Shared.Administration; using Content.Shared.Weather; using Robust.Shared.Console; using Robust.Shared.GameStates; using Robust.Shared.Map; -using Robust.Shared.Map.Components; namespace Content.Server.Weather; public sealed class WeatherSystem : SharedWeatherSystem { [Dependency] private readonly IConsoleHost _console = default!; + [Dependency] private readonly SharedMapSystem _mapSystem = default!; public override void Initialize() { @@ -30,7 +29,7 @@ private void OnWeatherGetState(EntityUid uid, WeatherComponent component, ref Co } [AdminCommand(AdminFlags.Fun)] - private void WeatherTwo(IConsoleShell shell, string argstr, string[] args) + private void WeatherTwo(IConsoleShell shell, string argStr, string[] args) { if (args.Length < 2) { @@ -60,7 +59,8 @@ private void WeatherTwo(IConsoleShell shell, string argstr, string[] args) var maxTime = TimeSpan.MaxValue; // If it's already running then just fade out with how much time we're into the weather. - if (TryComp(MapManager.GetMapEntityId(mapId), out var weatherComp) && + if (_mapSystem.TryGetMap(mapId, out var mapUid) && + TryComp(mapUid, out var weatherComp) && weatherComp.Weather.TryGetValue(args[1], out var existing)) { maxTime = curTime - existing.StartTime; diff --git a/Content.Shared/Weather/SharedWeatherSystem.cs b/Content.Shared/Weather/SharedWeatherSystem.cs index 19671bd77b0f2a..61419021247fad 100644 --- a/Content.Shared/Weather/SharedWeatherSystem.cs +++ b/Content.Shared/Weather/SharedWeatherSystem.cs @@ -1,9 +1,7 @@ using Content.Shared.Maps; -using Robust.Shared.Audio; using Robust.Shared.Audio.Systems; using Robust.Shared.Map; using Robust.Shared.Map.Components; -using Robust.Shared.Physics.Components; using Robust.Shared.Prototypes; using Robust.Shared.Serialization; using Robust.Shared.Timing; @@ -18,15 +16,14 @@ public abstract class SharedWeatherSystem : EntitySystem [Dependency] private readonly ITileDefinitionManager _tileDefManager = default!; [Dependency] private readonly MetaDataSystem _metadata = default!; [Dependency] private readonly SharedAudioSystem _audio = default!; + [Dependency] private readonly SharedMapSystem _mapSystem = default!; private EntityQuery _blockQuery; - private EntityQuery _physicsQuery; public override void Initialize() { base.Initialize(); _blockQuery = GetEntityQuery(); - _physicsQuery = GetEntityQuery(); SubscribeLocalEvent(OnWeatherUnpaused); } @@ -41,9 +38,7 @@ private void OnWeatherUnpaused(EntityUid uid, WeatherComponent component, ref En } } - public bool CanWeatherAffect( - MapGridComponent grid, - TileRef tileRef) + public bool CanWeatherAffect(EntityUid uid, MapGridComponent grid, TileRef tileRef) { if (tileRef.Tile.IsEmpty) return true; @@ -53,9 +48,9 @@ public bool CanWeatherAffect( if (!tileDef.Weather) return false; - var anchoredEnts = grid.GetAnchoredEntitiesEnumerator(tileRef.GridIndices); + var anchoredEntities = _mapSystem.GetAnchoredEntitiesEnumerator(uid, grid, tileRef.GridIndices); - while (anchoredEnts.MoveNext(out var ent)) + while (anchoredEntities.MoveNext(out var ent)) { if (_blockQuery.HasComponent(ent.Value)) return false; @@ -154,20 +149,22 @@ public override void Update(float frameTime) /// public void SetWeather(MapId mapId, WeatherPrototype? proto, TimeSpan? endTime) { - var mapUid = MapManager.GetMapEntityId(mapId); - var weatherComp = EnsureComp(mapUid); + if (!_mapSystem.TryGetMap(mapId, out var mapUid)) + return; + + var weatherComp = EnsureComp(mapUid.Value); foreach (var (eProto, weather) in weatherComp.Weather) { // Reset cooldown if it's an existing one. - if (eProto == proto?.ID) + if (proto == null || eProto == proto.ID) { weather.EndTime = endTime; if (weather.State == WeatherState.Ending) weather.State = WeatherState.Running; - Dirty(mapUid, weatherComp); + Dirty(mapUid.Value, weatherComp); continue; } @@ -177,12 +174,12 @@ public void SetWeather(MapId mapId, WeatherPrototype? proto, TimeSpan? endTime) if (weather.EndTime == null || weather.EndTime > end) { weather.EndTime = end; - Dirty(mapUid, weatherComp); + Dirty(mapUid.Value, weatherComp); } } if (proto != null) - StartWeather(mapUid, weatherComp, proto, endTime); + StartWeather(mapUid.Value, weatherComp, proto, endTime); } /// @@ -229,9 +226,9 @@ protected virtual bool SetState(EntityUid uid, WeatherState state, WeatherCompon [Serializable, NetSerializable] protected sealed class WeatherComponentState : ComponentState { - public Dictionary Weather; + public Dictionary, WeatherData> Weather; - public WeatherComponentState(Dictionary weather) + public WeatherComponentState(Dictionary, WeatherData> weather) { Weather = weather; } diff --git a/Content.Shared/Weather/WeatherComponent.cs b/Content.Shared/Weather/WeatherComponent.cs index df73109ac4949d..eaf901fb4245c9 100644 --- a/Content.Shared/Weather/WeatherComponent.cs +++ b/Content.Shared/Weather/WeatherComponent.cs @@ -1,8 +1,7 @@ -using Robust.Shared.Audio; using Robust.Shared.GameStates; +using Robust.Shared.Prototypes; using Robust.Shared.Serialization; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary; namespace Content.Shared.Weather; @@ -12,8 +11,8 @@ public sealed partial class WeatherComponent : Component /// /// Currently running weathers /// - [ViewVariables, DataField("weather", customTypeSerializer:typeof(PrototypeIdDictionarySerializer))] - public Dictionary Weather = new(); + [DataField] + public Dictionary, WeatherData> Weather = new(); public static readonly TimeSpan StartupTime = TimeSpan.FromSeconds(15); public static readonly TimeSpan ShutdownTime = TimeSpan.FromSeconds(15); @@ -29,19 +28,19 @@ public sealed partial class WeatherData /// /// When the weather started if relevant. /// - [ViewVariables, DataField("startTime", customTypeSerializer: typeof(TimeOffsetSerializer))] + [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] //TODO: Remove Custom serializer public TimeSpan StartTime = TimeSpan.Zero; /// /// When the applied weather will end. /// - [ViewVariables(VVAccess.ReadWrite), DataField("endTime", customTypeSerializer: typeof(TimeOffsetSerializer))] + [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] //TODO: Remove Custom serializer public TimeSpan? EndTime; [ViewVariables] public TimeSpan Duration => EndTime == null ? TimeSpan.MaxValue : EndTime.Value - StartTime; - [DataField("state")] + [DataField] public WeatherState State = WeatherState.Invalid; } From e5ef2a358c9ee7bee5eb9173a34bda3344917dfd Mon Sep 17 00:00:00 2001 From: Tayrtahn Date: Tue, 18 Jun 2024 06:59:37 -0400 Subject: [PATCH 64/82] Implement vital chef's hat functionality (#25950) * Implement crucial chef's hat functionality * Unified stopping code and added events. * Added documentation to events * Rerun tests * Made review changes, and fixed potential desync bug. * Update whitelist --- .../Systems/PilotedByClothingSystem.cs | 19 ++ .../Components/PilotedByClothingComponent.cs | 12 ++ .../Components/PilotedClothingComponent.cs | 38 ++++ .../EntitySystems/PilotedClothingSystem.cs | 169 ++++++++++++++++++ .../Entities/Clothing/Head/hats.yml | 4 + .../Prototypes/Entities/Mobs/NPCs/animals.yml | 2 + Resources/Prototypes/tags.yml | 4 + 7 files changed, 248 insertions(+) create mode 100644 Content.Client/Clothing/Systems/PilotedByClothingSystem.cs create mode 100644 Content.Shared/Clothing/Components/PilotedByClothingComponent.cs create mode 100644 Content.Shared/Clothing/Components/PilotedClothingComponent.cs create mode 100644 Content.Shared/Clothing/EntitySystems/PilotedClothingSystem.cs diff --git a/Content.Client/Clothing/Systems/PilotedByClothingSystem.cs b/Content.Client/Clothing/Systems/PilotedByClothingSystem.cs new file mode 100644 index 00000000000000..c04cf0a60bacc9 --- /dev/null +++ b/Content.Client/Clothing/Systems/PilotedByClothingSystem.cs @@ -0,0 +1,19 @@ +using Content.Shared.Clothing.Components; +using Robust.Client.Physics; + +namespace Content.Client.Clothing.Systems; + +public sealed partial class PilotedByClothingSystem : EntitySystem +{ + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnUpdatePredicted); + } + + private void OnUpdatePredicted(Entity entity, ref UpdateIsPredictedEvent args) + { + args.BlockPrediction = true; + } +} diff --git a/Content.Shared/Clothing/Components/PilotedByClothingComponent.cs b/Content.Shared/Clothing/Components/PilotedByClothingComponent.cs new file mode 100644 index 00000000000000..cd4d0d62030538 --- /dev/null +++ b/Content.Shared/Clothing/Components/PilotedByClothingComponent.cs @@ -0,0 +1,12 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared.Clothing.Components; + +/// +/// Disables client-side physics prediction for this entity. +/// Without this, movement with is very rubberbandy. +/// +[RegisterComponent, NetworkedComponent] +public sealed partial class PilotedByClothingComponent : Component +{ +} diff --git a/Content.Shared/Clothing/Components/PilotedClothingComponent.cs b/Content.Shared/Clothing/Components/PilotedClothingComponent.cs new file mode 100644 index 00000000000000..a349e4e485ee13 --- /dev/null +++ b/Content.Shared/Clothing/Components/PilotedClothingComponent.cs @@ -0,0 +1,38 @@ +using Content.Shared.Whitelist; +using Robust.Shared.GameStates; + +namespace Content.Shared.Clothing.Components; + +/// +/// Allows an entity stored in this clothing item to pass inputs to the entity wearing it. +/// +[RegisterComponent, NetworkedComponent, AutoGenerateComponentState] +public sealed partial class PilotedClothingComponent : Component +{ + /// + /// Whitelist for entities that are allowed to act as pilots when inside this entity. + /// + [DataField] + public EntityWhitelist? PilotWhitelist; + + /// + /// Should movement input be relayed from the pilot to the target? + /// + [DataField] + public bool RelayMovement = true; + + + /// + /// Reference to the entity contained in the clothing and acting as pilot. + /// + [DataField, AutoNetworkedField] + public EntityUid? Pilot; + + /// + /// Reference to the entity wearing this clothing who will be controlled by the pilot. + /// + [DataField, AutoNetworkedField] + public EntityUid? Wearer; + + public bool IsActive => Pilot != null && Wearer != null; +} diff --git a/Content.Shared/Clothing/EntitySystems/PilotedClothingSystem.cs b/Content.Shared/Clothing/EntitySystems/PilotedClothingSystem.cs new file mode 100644 index 00000000000000..49df7aee9430f8 --- /dev/null +++ b/Content.Shared/Clothing/EntitySystems/PilotedClothingSystem.cs @@ -0,0 +1,169 @@ +using Content.Shared.Clothing.Components; +using Content.Shared.Inventory.Events; +using Content.Shared.Movement.Components; +using Content.Shared.Movement.Systems; +using Content.Shared.Storage; +using Content.Shared.Whitelist; +using Robust.Shared.Containers; +using Robust.Shared.Timing; + +namespace Content.Shared.Clothing.EntitySystems; + +public sealed partial class PilotedClothingSystem : EntitySystem +{ + [Dependency] private readonly IGameTiming _timing = default!; + [Dependency] private readonly SharedMoverController _moverController = default!; + [Dependency] private readonly EntityWhitelistSystem _whitelist = default!; + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnEntInserted); + SubscribeLocalEvent(OnEntRemoved); + SubscribeLocalEvent(OnEquipped); + SubscribeLocalEvent(OnUnequipped); + } + + private void OnEntInserted(Entity entity, ref EntInsertedIntoContainerMessage args) + { + // Make sure the entity was actually inserted into storage and not a different container. + if (!TryComp(entity, out StorageComponent? storage) || args.Container != storage.Container) + return; + + // Check potential pilot against whitelist, if one exists. + if (_whitelist.IsWhitelistFail(entity.Comp.PilotWhitelist, args.Entity)) + return; + + entity.Comp.Pilot = args.Entity; + Dirty(entity); + + // Attempt to setup control link, if Pilot and Wearer are both present. + StartPiloting(entity); + } + + private void OnEntRemoved(Entity entity, ref EntRemovedFromContainerMessage args) + { + // Make sure the removed entity is actually the pilot. + if (args.Entity != entity.Comp.Pilot) + return; + + StopPiloting(entity); + entity.Comp.Pilot = null; + Dirty(entity); + } + + private void OnEquipped(Entity entity, ref GotEquippedEvent args) + { + if (!TryComp(entity, out ClothingComponent? clothing)) + return; + + // Make sure the clothing item was equipped to the right slot, and not just held in a hand. + var isCorrectSlot = (clothing.Slots & args.SlotFlags) != Inventory.SlotFlags.NONE; + if (!isCorrectSlot) + return; + + entity.Comp.Wearer = args.Equipee; + Dirty(entity); + + // Attempt to setup control link, if Pilot and Wearer are both present. + StartPiloting(entity); + } + + private void OnUnequipped(Entity entity, ref GotUnequippedEvent args) + { + StopPiloting(entity); + + entity.Comp.Wearer = null; + Dirty(entity); + } + + /// + /// Attempts to establish movement/interaction relay connection(s) from Pilot to Wearer. + /// If either is missing, fails and returns false. + /// + private bool StartPiloting(Entity entity) + { + // Make sure we have both a Pilot and a Wearer + if (entity.Comp.Pilot == null || entity.Comp.Wearer == null) + return false; + + if (!_timing.IsFirstTimePredicted) + return false; + + var pilotEnt = entity.Comp.Pilot.Value; + var wearerEnt = entity.Comp.Wearer.Value; + + // Add component to block prediction of wearer + EnsureComp(wearerEnt); + + if (entity.Comp.RelayMovement) + { + // Establish movement input relay. + _moverController.SetRelay(pilotEnt, wearerEnt); + } + + var pilotEv = new StartedPilotingClothingEvent(entity, wearerEnt); + RaiseLocalEvent(pilotEnt, ref pilotEv); + + var wearerEv = new StartingBeingPilotedByClothing(entity, pilotEnt); + RaiseLocalEvent(wearerEnt, ref wearerEv); + + return true; + } + + /// + /// Removes components from the Pilot and Wearer to stop the control relay. + /// Returns false if a connection does not already exist. + /// + private bool StopPiloting(Entity entity) + { + if (entity.Comp.Pilot == null || entity.Comp.Wearer == null) + return false; + + // Clean up components on the Pilot + var pilotEnt = entity.Comp.Pilot.Value; + RemCompDeferred(pilotEnt); + + // Clean up components on the Wearer + var wearerEnt = entity.Comp.Wearer.Value; + RemCompDeferred(wearerEnt); + RemCompDeferred(wearerEnt); + + // Raise an event on the Pilot + var pilotEv = new StoppedPilotingClothingEvent(entity, wearerEnt); + RaiseLocalEvent(pilotEnt, ref pilotEv); + + // Raise an event on the Wearer + var wearerEv = new StoppedBeingPilotedByClothing(entity, pilotEnt); + RaiseLocalEvent(wearerEnt, ref wearerEv); + + return true; + } +} + +/// +/// Raised on the Pilot when they gain control of the Wearer. +/// +[ByRefEvent] +public record struct StartedPilotingClothingEvent(EntityUid Clothing, EntityUid Wearer); + +/// +/// Raised on the Pilot when they lose control of the Wearer, +/// due to the Pilot exiting the clothing or the clothing being unequipped by the Wearer. +/// +[ByRefEvent] +public record struct StoppedPilotingClothingEvent(EntityUid Clothing, EntityUid Wearer); + +/// +/// Raised on the Wearer when the Pilot gains control of them. +/// +[ByRefEvent] +public record struct StartingBeingPilotedByClothing(EntityUid Clothing, EntityUid Pilot); + +/// +/// Raised on the Wearer when the Pilot loses control of them +/// due to the Pilot exiting the clothing or the clothing being unequipped by the Wearer. +/// +[ByRefEvent] +public record struct StoppedBeingPilotedByClothing(EntityUid Clothing, EntityUid Pilot); diff --git a/Resources/Prototypes/Entities/Clothing/Head/hats.yml b/Resources/Prototypes/Entities/Clothing/Head/hats.yml index 8cdabb4e1459a6..ca3ba080b76088 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/hats.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/hats.yml @@ -250,6 +250,10 @@ - type: ContainerContainer containers: storagebase: !type:Container + - type: PilotedClothing + pilotWhitelist: + tags: + - ChefPilot - type: Tag tags: - ClothMade diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml index 9143589dcf26fc..93d24be5af8f5f 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml @@ -1624,6 +1624,7 @@ tags: - Trash - VimPilot + - ChefPilot - Mouse - Meat - type: Respirator @@ -3176,6 +3177,7 @@ - type: Tag tags: - VimPilot + - ChefPilot - Trash - Hamster - Meat diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index 0857f601e2c42a..dee16b7414b5e0 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -364,6 +364,10 @@ - type: Tag id: Chicken +# Allowed to control someone wearing a Chef's hat if inside their hat. +- type: Tag + id: ChefPilot + - type: Tag id: ChemDispensable # container that can go into the chem dispenser From af7e59965418588e2ad43925e3205005d7447bc5 Mon Sep 17 00:00:00 2001 From: PJBot Date: Tue, 18 Jun 2024 11:00:45 +0000 Subject: [PATCH 65/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index cd3f48e51c7cb8..511d725222ee76 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: UBlueberry - changes: - - message: Nanotransen is now recruitin' personnel that speak with a Southern drawl. - type: Add - id: 6268 - time: '2024-03-31T04:39:40.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26543 - author: Tayrtahn changes: - message: You can no longer drink out of or put liquids into buckets worn on your @@ -3854,3 +3847,10 @@ id: 6767 time: '2024-06-17T23:09:19.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29137 +- author: Tayrtahn + changes: + - message: Mice and hamsters inside chef's hats can now steer the hat's wearer. + type: Add + id: 6768 + time: '2024-06-18T10:59:37.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/25950 From bd0631c45bac27de8aff0b0a8700ac4291267066 Mon Sep 17 00:00:00 2001 From: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com> Date: Tue, 18 Jun 2024 05:00:29 -0700 Subject: [PATCH 66/82] Add cvar to disable round end pvs overrides (#29151) --- Content.Server/GameTicking/GameTicker.RoundFlow.cs | 3 ++- Content.Shared/CCVar/CCVars.cs | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Content.Server/GameTicking/GameTicker.RoundFlow.cs b/Content.Server/GameTicking/GameTicker.RoundFlow.cs index 98fcc6441045da..eed120dc4e8a5d 100644 --- a/Content.Server/GameTicking/GameTicker.RoundFlow.cs +++ b/Content.Server/GameTicking/GameTicker.RoundFlow.cs @@ -358,6 +358,7 @@ public void ShowRoundEndScoreboard(string text = "") var listOfPlayerInfo = new List(); // Grab the great big book of all the Minds, we'll need them for this. var allMinds = EntityQueryEnumerator(); + var pvsOverride = _configurationManager.GetCVar(CCVars.RoundEndPVSOverrides); while (allMinds.MoveNext(out var mindId, out var mind)) { // TODO don't list redundant observer roles? @@ -388,7 +389,7 @@ public void ShowRoundEndScoreboard(string text = "") else if (mind.CurrentEntity != null && TryName(mind.CurrentEntity.Value, out var icName)) playerIcName = icName; - if (TryGetEntity(mind.OriginalOwnedEntity, out var entity)) + if (TryGetEntity(mind.OriginalOwnedEntity, out var entity) && pvsOverride) { _pvsOverride.AddGlobalOverride(GetNetEntity(entity.Value), recursive: true); } diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index 7cc1b341a97533..26410db8464e04 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -432,6 +432,14 @@ public static readonly CVarDef public static readonly CVarDef RoundEndSoundCollection = CVarDef.Create("game.round_end_sound_collection", "RoundEnd", CVar.SERVERONLY); + /// + /// Whether or not to add every player as a global override to PVS at round end. + /// This will allow all players to see their clothing in the round screen player list screen, + /// but may cause lag during round end with very high player counts. + /// + public static readonly CVarDef RoundEndPVSOverrides = + CVarDef.Create("game.round_end_pvs_overrides", true, CVar.SERVERONLY); + /* * Discord */ From 47653f359d729a7e2cb37031504b96c97c730bc5 Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:07:35 +1000 Subject: [PATCH 67/82] Update submodule to 226.1.0 (#29159) --- RobustToolbox | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RobustToolbox b/RobustToolbox index a3a8912f4280ef..bf8054b181392e 160000 --- a/RobustToolbox +++ b/RobustToolbox @@ -1 +1 @@ -Subproject commit a3a8912f4280efe701958fcd00079fffcfc4efee +Subproject commit bf8054b181392ec9a7eb9f4fea94f66837ed4a71 From 65821c96f49186238726ad69231a35b0ea508f62 Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Tue, 18 Jun 2024 22:11:36 +1000 Subject: [PATCH 68/82] Fix conveyor mispredicts (#28157) * Fix conveyor mispredicts Instead of tracking active conveyors we instead track the conveyed entities. This also handles things like stacking conveyors more gracely. * Fix ActiveConveyor * Fix lerping --- .../Physics/Controllers/ConveyorController.cs | 2 - .../Conveyor/ActiveConveyorComponent.cs | 12 -- Content.Shared/Conveyor/ConveyedComponent.cs | 13 ++ Content.Shared/Conveyor/ConveyorComponent.cs | 3 - .../Controllers/SharedConveyorController.cs | 168 +++++++++++------- Resources/Maps/origin.yml | 1 - .../Entities/Structures/conveyor.yml | 8 +- 7 files changed, 117 insertions(+), 90 deletions(-) delete mode 100644 Content.Shared/Conveyor/ActiveConveyorComponent.cs create mode 100644 Content.Shared/Conveyor/ConveyedComponent.cs diff --git a/Content.Server/Physics/Controllers/ConveyorController.cs b/Content.Server/Physics/Controllers/ConveyorController.cs index b3508025cb94f3..db4307f6de5888 100644 --- a/Content.Server/Physics/Controllers/ConveyorController.cs +++ b/Content.Server/Physics/Controllers/ConveyorController.cs @@ -55,8 +55,6 @@ private void OnConveyorShutdown(EntityUid uid, ConveyorComponent component, Comp if (MetaData(uid).EntityLifeStage >= EntityLifeStage.Terminating) return; - RemComp(uid); - if (!TryComp(uid, out var physics)) return; diff --git a/Content.Shared/Conveyor/ActiveConveyorComponent.cs b/Content.Shared/Conveyor/ActiveConveyorComponent.cs deleted file mode 100644 index 1c94be97642ea5..00000000000000 --- a/Content.Shared/Conveyor/ActiveConveyorComponent.cs +++ /dev/null @@ -1,12 +0,0 @@ -using Robust.Shared.GameStates; - -namespace Content.Shared.Conveyor; - -/// -/// Used to track which conveyors are relevant in case there's a lot of them. -/// -[RegisterComponent] -public sealed partial class ActiveConveyorComponent : Component -{ - -} diff --git a/Content.Shared/Conveyor/ConveyedComponent.cs b/Content.Shared/Conveyor/ConveyedComponent.cs new file mode 100644 index 00000000000000..25189d2182a591 --- /dev/null +++ b/Content.Shared/Conveyor/ConveyedComponent.cs @@ -0,0 +1,13 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared.Conveyor; + +/// +/// Indicates this entity is currently being conveyed. +/// +[RegisterComponent, NetworkedComponent, AutoGenerateComponentState] +public sealed partial class ConveyedComponent : Component +{ + [ViewVariables, AutoNetworkedField] + public List Colliding = new(); +} diff --git a/Content.Shared/Conveyor/ConveyorComponent.cs b/Content.Shared/Conveyor/ConveyorComponent.cs index 6c95d68c9824c8..797fefa5855733 100644 --- a/Content.Shared/Conveyor/ConveyorComponent.cs +++ b/Content.Shared/Conveyor/ConveyorComponent.cs @@ -39,9 +39,6 @@ public sealed partial class ConveyorComponent : Component [DataField] public ProtoId OffPort = "Off"; - - [ViewVariables] - public readonly HashSet Intersecting = new(); } [Serializable, NetSerializable] diff --git a/Content.Shared/Physics/Controllers/SharedConveyorController.cs b/Content.Shared/Physics/Controllers/SharedConveyorController.cs index e3b22d84319e8e..abcd2bc4a2112e 100644 --- a/Content.Shared/Physics/Controllers/SharedConveyorController.cs +++ b/Content.Shared/Physics/Controllers/SharedConveyorController.cs @@ -1,7 +1,9 @@ using System.Numerics; using Content.Shared.Conveyor; using Content.Shared.Gravity; +using Content.Shared.Magic; using Content.Shared.Movement.Systems; +using Robust.Shared.Collections; using Robust.Shared.Map; using Robust.Shared.Map.Components; using Robust.Shared.Physics; @@ -9,6 +11,7 @@ using Robust.Shared.Physics.Controllers; using Robust.Shared.Physics.Events; using Robust.Shared.Physics.Systems; +using Robust.Shared.Utility; namespace Content.Shared.Physics.Controllers; @@ -16,15 +19,23 @@ public abstract class SharedConveyorController : VirtualController { [Dependency] protected readonly IMapManager MapManager = default!; [Dependency] protected readonly EntityLookupSystem Lookup = default!; + [Dependency] private readonly SharedMapSystem _maps = default!; [Dependency] protected readonly SharedPhysicsSystem Physics = default!; [Dependency] private readonly SharedGravitySystem _gravity = default!; protected const string ConveyorFixture = "conveyor"; - private static readonly Vector2 _expansion = new Vector2(0.1f, 0.1f); + private EntityQuery _gridQuery; + private EntityQuery _xformQuery; + + private ValueList _ents = new(); + private HashSet> _conveyors = new(); public override void Initialize() { + _gridQuery = GetEntityQuery(); + _xformQuery = GetEntityQuery(); + UpdatesAfter.Add(typeof(SharedMoverController)); SubscribeLocalEvent(OnConveyorStartCollide); @@ -37,74 +48,125 @@ private void OnConveyorStartCollide(EntityUid uid, ConveyorComponent component, { var otherUid = args.OtherEntity; - if (args.OtherBody.BodyType == BodyType.Static || component.State == ConveyorState.Off) + if (!args.OtherFixture.Hard || args.OtherBody.BodyType == BodyType.Static || component.State == ConveyorState.Off) + return; + + var conveyed = EnsureComp(otherUid); + + if (conveyed.Colliding.Contains(uid)) return; - component.Intersecting.Add(otherUid); - EnsureComp(uid); + conveyed.Colliding.Add(uid); + Dirty(otherUid, conveyed); } - private void OnConveyorEndCollide(EntityUid uid, ConveyorComponent component, ref EndCollideEvent args) + private void OnConveyorEndCollide(Entity ent, ref EndCollideEvent args) { - component.Intersecting.Remove(args.OtherEntity); + if (!TryComp(args.OtherEntity, out ConveyedComponent? conveyed)) + return; - if (component.Intersecting.Count == 0) - RemComp(uid); + if (!conveyed.Colliding.Remove(ent.Owner)) + return; + + Dirty(args.OtherEntity, conveyed); } public override void UpdateBeforeSolve(bool prediction, float frameTime) { base.UpdateBeforeSolve(prediction, frameTime); - var conveyed = new HashSet(); - // Don't use it directly in EntityQuery because we may be able to save getcomponents. - var xformQuery = GetEntityQuery(); - var bodyQuery = GetEntityQuery(); - var query = EntityQueryEnumerator(); + var query = EntityQueryEnumerator(); + _ents.Clear(); - while (query.MoveNext(out var uid, out var _, out var comp)) + while (query.MoveNext(out var uid, out var comp, out var xform, out var physics)) { - Convey(uid, comp, xformQuery, bodyQuery, conveyed, frameTime, prediction); + if (TryConvey((uid, comp, physics, xform), prediction, frameTime)) + continue; + + _ents.Add(uid); + } + + foreach (var ent in _ents) + { + RemComp(ent); } } - private void Convey(EntityUid uid, ConveyorComponent comp, EntityQuery xformQuery, EntityQuery bodyQuery, HashSet conveyed, float frameTime, bool prediction) + private bool TryConvey(Entity entity, bool prediction, float frameTime) { - // Use an event for conveyors to know what needs to run - if (!CanRun(comp)) - return; + var physics = entity.Comp2; + var xform = entity.Comp3; + var contacting = entity.Comp1.Colliding.Count > 0; - var speed = comp.Speed; + if (!contacting) + return false; - if (speed <= 0f || !xformQuery.TryGetComponent(uid, out var xform) || xform.GridUid == null) - return; + // Client moment + if (!physics.Predict && prediction) + return true; + + if (physics.BodyType == BodyType.Static) + return false; + + if (!_gridQuery.TryComp(xform.GridUid, out var grid)) + return true; + + var gridTile = _maps.TileIndicesFor(xform.GridUid.Value, grid, xform.Coordinates); + _conveyors.Clear(); - var conveyorPos = xform.LocalPosition; - var conveyorRot = xform.LocalRotation; + // Check for any conveyors on the attached tile. + Lookup.GetLocalEntitiesIntersecting(xform.GridUid.Value, gridTile, _conveyors); + DebugTools.Assert(_conveyors.Count <= 1); - conveyorRot += comp.Angle; + // No more conveyors. + if (_conveyors.Count == 0) + return true; + + if (physics.BodyStatus == BodyStatus.InAir || + _gravity.IsWeightless(entity, physics, xform)) + { + return true; + } + + Entity bestConveyor = default; + var bestSpeed = 0f; + + foreach (var conveyor in _conveyors) + { + if (conveyor.Comp.Speed > bestSpeed && CanRun(conveyor)) + { + bestSpeed = conveyor.Comp.Speed; + bestConveyor = conveyor; + } + } + + if (bestSpeed == 0f || bestConveyor == default) + return true; + + var comp = bestConveyor.Comp!; + var conveyorXform = _xformQuery.GetComponent(bestConveyor.Owner); + var conveyorPos = conveyorXform.LocalPosition; + var conveyorRot = conveyorXform.LocalRotation; + + conveyorRot += bestConveyor.Comp!.Angle; if (comp.State == ConveyorState.Reverse) conveyorRot += MathF.PI; var direction = conveyorRot.ToWorldVec(); - foreach (var (entity, transform, body) in GetEntitiesToMove(comp, xform, xformQuery, bodyQuery)) - { - if (!conveyed.Add(entity) || prediction && !body.Predict) - continue; + var localPos = xform.LocalPosition; + var itemRelative = conveyorPos - localPos; - var localPos = transform.LocalPosition; - var itemRelative = conveyorPos - localPos; + localPos += Convey(direction, bestSpeed, frameTime, itemRelative); - localPos += Convey(direction, speed, frameTime, itemRelative); - transform.LocalPosition = localPos; + TransformSystem.SetLocalPosition(entity, localPos, xform); - // Force it awake for collisionwake reasons. - Physics.SetAwake((entity, body), true); - Physics.SetSleepTime(body, 0f); - } - Dirty(uid, comp); + // Force it awake for collisionwake reasons. + Physics.SetAwake((entity, physics), true); + Physics.SetSleepTime(physics, 0f); + + return true; } private static Vector2 Convey(Vector2 direction, float speed, float frameTime, Vector2 itemRelative) @@ -140,36 +202,6 @@ private static Vector2 Convey(Vector2 direction, float speed, float frameTime, V } } - private IEnumerable<(EntityUid, TransformComponent, PhysicsComponent)> GetEntitiesToMove( - ConveyorComponent comp, - TransformComponent xform, - EntityQuery xformQuery, - EntityQuery bodyQuery) - { - // Check if the thing's centre overlaps the grid tile. - var grid = Comp(xform.GridUid!.Value); - var tile = grid.GetTileRef(xform.Coordinates); - var conveyorBounds = Lookup.GetLocalBounds(tile, grid.TileSize); - - foreach (var entity in comp.Intersecting) - { - if (!xformQuery.TryGetComponent(entity, out var entityXform) || entityXform.ParentUid != xform.GridUid!.Value) - continue; - - if (!bodyQuery.TryGetComponent(entity, out var physics) || physics.BodyType == BodyType.Static || physics.BodyStatus == BodyStatus.InAir || _gravity.IsWeightless(entity, physics, entityXform)) - continue; - - // Yes there's still going to be the occasional rounding issue where it stops getting conveyed - // When you fix the corner issue that will fix this anyway. - var gridAABB = new Box2(entityXform.LocalPosition - _expansion, entityXform.LocalPosition + _expansion); - - if (!conveyorBounds.Intersects(gridAABB)) - continue; - - yield return (entity, entityXform, physics); - } - } - public bool CanRun(ConveyorComponent component) { return component.State != ConveyorState.Off && component.Powered; diff --git a/Resources/Maps/origin.yml b/Resources/Maps/origin.yml index dcd961e34ea649..376719da61ce5c 100644 --- a/Resources/Maps/origin.yml +++ b/Resources/Maps/origin.yml @@ -81416,7 +81416,6 @@ entities: - type: DeviceLinkSink links: - 26152 - - type: ActiveConveyor - uid: 12943 components: - type: Transform diff --git a/Resources/Prototypes/Entities/Structures/conveyor.yml b/Resources/Prototypes/Entities/Structures/conveyor.yml index 4dc879b0f6a38a..d82370ba0d6cfd 100644 --- a/Resources/Prototypes/Entities/Structures/conveyor.yml +++ b/Resources/Prototypes/Entities/Structures/conveyor.yml @@ -24,10 +24,10 @@ conveyor: shape: !type:PolygonShape vertices: - - -0.55,-0.55 - - 0.55,-0.55 - - 0.55,0.55 - - -0.55,0.55 + - -0.49,-0.49 + - 0.49,-0.49 + - 0.49,0.49 + - -0.49,0.49 layer: - Impassable - MidImpassable From 92159edba3053f331cbe991ec32719221443bfc6 Mon Sep 17 00:00:00 2001 From: PJBot Date: Tue, 18 Jun 2024 12:12:43 +0000 Subject: [PATCH 69/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 511d725222ee76..023f6ba0df4bae 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: Tayrtahn - changes: - - message: You can no longer drink out of or put liquids into buckets worn on your - head. - type: Fix - id: 6269 - time: '2024-03-31T04:40:22.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/24412 - author: DrTeaspoon changes: - message: Hypopen no longer shows chemical contents when examined, when not held @@ -3854,3 +3846,10 @@ id: 6768 time: '2024-06-18T10:59:37.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/25950 +- author: metalgearsloth + changes: + - message: Fix conveyors mispredicting movement. + type: Fix + id: 6769 + time: '2024-06-18T12:11:37.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/28157 From b0b76a113319f73297f3736f3e4d958d2a073abf Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Tue, 18 Jun 2024 23:27:34 +1000 Subject: [PATCH 70/82] Replace StationRandomTransform (#29149) * Revert "Rotate and Offset station CCVar nuke (#26175)" This reverts commit 44b20f60ff178813ebbc5b449229b0bbba81f649. # Conflicts: # Content.Server/Station/Systems/StationSystem.cs # Resources/Prototypes/Maps/europa.yml * Fix * Review --- .../GameTicking/GameTicker.RoundFlow.cs | 6 +++ Content.Server/Maps/GameMapPrototype.cs | 11 ++++- .../StationRandomTransformComponent.cs | 16 ------- .../Station/Systems/StationSystem.cs | 47 ++----------------- .../Prototypes/Entities/Stations/base.yml | 6 --- .../Entities/Stations/nanotrasen.yml | 1 - Resources/Prototypes/Maps/europa.yml | 5 +- Resources/Prototypes/Maps/train.yml | 4 +- 8 files changed, 23 insertions(+), 73 deletions(-) delete mode 100644 Content.Server/Station/Components/StationRandomTransformComponent.cs diff --git a/Content.Server/GameTicking/GameTicker.RoundFlow.cs b/Content.Server/GameTicking/GameTicker.RoundFlow.cs index eed120dc4e8a5d..d67b8d96e356dd 100644 --- a/Content.Server/GameTicking/GameTicker.RoundFlow.cs +++ b/Content.Server/GameTicking/GameTicker.RoundFlow.cs @@ -160,6 +160,12 @@ public IReadOnlyList LoadGameMap(GameMapPrototype map, MapId targetMa // whereas the command can also be used on an existing map. var loadOpts = loadOptions ?? new MapLoadOptions(); + if (map.MaxRandomOffset != 0f) + loadOpts.Offset = _robustRandom.NextVector2(map.MaxRandomOffset); + + if (map.RandomRotation) + loadOpts.Rotation = _robustRandom.NextAngle(); + var ev = new PreGameMapLoad(targetMapId, map, loadOpts); RaiseLocalEvent(ev); diff --git a/Content.Server/Maps/GameMapPrototype.cs b/Content.Server/Maps/GameMapPrototype.cs index bd15194495ecd4..5942a9930eb06f 100644 --- a/Content.Server/Maps/GameMapPrototype.cs +++ b/Content.Server/Maps/GameMapPrototype.cs @@ -3,6 +3,7 @@ using Robust.Shared.Prototypes; using Robust.Shared.Utility; using System.Diagnostics; +using System.Numerics; namespace Content.Server.Maps; @@ -21,16 +22,22 @@ public sealed partial class GameMapPrototype : IPrototype [IdDataField] public string ID { get; private set; } = default!; + [DataField] + public float MaxRandomOffset = 1000f; + + [DataField] + public bool RandomRotation = true; + /// /// Name of the map to use in generic messages, like the map vote. /// - [DataField("mapName", required: true)] + [DataField(required: true)] public string MapName { get; private set; } = default!; /// /// Relative directory path to the given map, i.e. `/Maps/saltern.yml` /// - [DataField("mapPath", required: true)] + [DataField(required: true)] public ResPath MapPath { get; private set; } = default!; [DataField("stations", required: true)] diff --git a/Content.Server/Station/Components/StationRandomTransformComponent.cs b/Content.Server/Station/Components/StationRandomTransformComponent.cs deleted file mode 100644 index ea0fc5f2696b11..00000000000000 --- a/Content.Server/Station/Components/StationRandomTransformComponent.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Content.Server.Station.Systems; - -namespace Content.Server.Station.Components; - -/// -/// Stores station parameters that can be randomized by the roundstart -/// -[RegisterComponent, Access(typeof(StationSystem))] -public sealed partial class StationRandomTransformComponent : Component -{ - [DataField] - public float? MaxStationOffset = 100.0f; - - [DataField] - public bool EnableStationRotation = true; -} diff --git a/Content.Server/Station/Systems/StationSystem.cs b/Content.Server/Station/Systems/StationSystem.cs index 88e419ae39af0c..84e44b6469cdcd 100644 --- a/Content.Server/Station/Systems/StationSystem.cs +++ b/Content.Server/Station/Systems/StationSystem.cs @@ -1,10 +1,9 @@ using System.Linq; -using System.Numerics; using Content.Server.Chat.Systems; using Content.Server.GameTicking; using Content.Server.Station.Components; using Content.Server.Station.Events; -using Content.Shared.Fax; +using Content.Shared.CCVar; using Content.Shared.Station; using JetBrains.Annotations; using Robust.Server.GameObjects; @@ -28,10 +27,12 @@ namespace Content.Server.Station.Systems; [PublicAPI] public sealed class StationSystem : EntitySystem { + [Dependency] private readonly IConfigurationManager _cfgManager = default!; [Dependency] private readonly ILogManager _logManager = default!; [Dependency] private readonly IPlayerManager _player = default!; [Dependency] private readonly IRobustRandom _random = default!; [Dependency] private readonly ChatSystem _chatSystem = default!; + [Dependency] private readonly GameTicker _ticker = default!; [Dependency] private readonly SharedTransformSystem _transform = default!; [Dependency] private readonly MetaDataSystem _metaData = default!; [Dependency] private readonly MapSystem _map = default!; @@ -282,51 +283,11 @@ public EntityUid InitializeNewStation(StationConfig stationConfig, IEnumerable(station); name ??= MetaData(station).EntityName; - var entry = gridIds ?? Array.Empty(); - - foreach (var grid in entry) + foreach (var grid in gridIds ?? Array.Empty()) { AddGridToStation(station, grid, null, data, name); } - if (TryComp(station, out var random)) - { - Angle? rotation = null; - Vector2? offset = null; - - if (random.MaxStationOffset != null) - offset = _random.NextVector2(-random.MaxStationOffset.Value, random.MaxStationOffset.Value); - - if (random.EnableStationRotation) - rotation = _random.NextAngle(); - - foreach (var grid in entry) - { - //planetary maps give an error when trying to change from position or rotation. - //This is still the case, but it will be irrelevant after the https://github.com/space-wizards/space-station-14/pull/26510 - if (rotation != null && offset != null) - { - var pos = _transform.GetWorldPosition(grid); - _transform.SetWorldPositionRotation(grid, pos + offset.Value, rotation.Value); - continue; - } - if (rotation != null) - { - _transform.SetWorldRotation(grid, rotation.Value); - continue; - } - if (offset != null) - { - var pos = _transform.GetWorldPosition(grid); - _transform.SetWorldPosition(grid, pos + offset.Value); - continue; - } - } - } - - if (LifeStage(station) < EntityLifeStage.MapInitialized) - throw new Exception($"Station must be man-initialized"); - var ev = new StationPostInitEvent((station, data)); RaiseLocalEvent(station, ref ev, true); diff --git a/Resources/Prototypes/Entities/Stations/base.yml b/Resources/Prototypes/Entities/Stations/base.yml index 6a1abdfbe3dc8b..8a0d6c40030403 100644 --- a/Resources/Prototypes/Entities/Stations/base.yml +++ b/Resources/Prototypes/Entities/Stations/base.yml @@ -4,12 +4,6 @@ components: - type: StationData -- type: entity - id: BaseRandomStation - abstract: true - components: - - type: StationRandomTransform - - type: entity id: BaseStationCargo abstract: true diff --git a/Resources/Prototypes/Entities/Stations/nanotrasen.yml b/Resources/Prototypes/Entities/Stations/nanotrasen.yml index 7e650d536f224e..ab885b03e53727 100644 --- a/Resources/Prototypes/Entities/Stations/nanotrasen.yml +++ b/Resources/Prototypes/Entities/Stations/nanotrasen.yml @@ -25,7 +25,6 @@ - BaseStationSiliconLawCrewsimov - BaseStationAllEventsEligible - BaseStationNanotrasen - - BaseRandomStation noSpawn: true components: - type: Transform diff --git a/Resources/Prototypes/Maps/europa.yml b/Resources/Prototypes/Maps/europa.yml index 412e1b46569fad..7197165ce1fe67 100644 --- a/Resources/Prototypes/Maps/europa.yml +++ b/Resources/Prototypes/Maps/europa.yml @@ -2,6 +2,8 @@ id: Europa mapName: 'Europa' mapPath: /Maps/europa.yml + maxRandomOffset: 0 + randomRotation: false minPlayers: 0 maxPlayers: 40 stations: @@ -10,9 +12,6 @@ components: - type: StationBiome biome: Snow - - type: StationRandomTransform - enableStationRotation: false - maxStationOffset: null - type: StationNameSetup mapNameTemplate: '{0} Europa {1}' nameGenerator: diff --git a/Resources/Prototypes/Maps/train.yml b/Resources/Prototypes/Maps/train.yml index 7f24fcdd677188..a93c4558885cc1 100644 --- a/Resources/Prototypes/Maps/train.yml +++ b/Resources/Prototypes/Maps/train.yml @@ -2,14 +2,14 @@ id: Train mapName: 'Train' mapPath: /Maps/train.yml + maxRandomOffset: 0 + randomRotation: false minPlayers: 10 maxPlayers: 50 stations: Train: stationProto: StandardNanotrasenStation components: - - type: StationRandomTransform - enableStationRotation: false - type: StationNameSetup mapNameTemplate: 'Train "Sentipode" {0}-{1}' nameGenerator: From e49a0eb3b64c63aed6c42101e30bacabf90c5b54 Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Tue, 18 Jun 2024 16:02:05 +0200 Subject: [PATCH 71/82] Add warning cones to engivend (#29085) Add cones to engivend --- .../Prototypes/Catalog/VendingMachines/Inventories/engivend.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/engivend.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/engivend.yml index c91eb1ef2ed2ef..9757b14e58e037 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/engivend.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/engivend.yml @@ -8,3 +8,4 @@ PowerCellMedium: 5 ClothingHandsGlovesColorYellow: 6 BoxInflatable: 2 + ClothingHeadHatCone: 4 From cffa35692ae84c7928d2c34881f9c9b3191aefbb Mon Sep 17 00:00:00 2001 From: PJBot Date: Tue, 18 Jun 2024 14:03:12 +0000 Subject: [PATCH 72/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 023f6ba0df4bae..cc85491196cdb8 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: DrTeaspoon - changes: - - message: Hypopen no longer shows chemical contents when examined, when not held - by the examinee. - type: Fix - id: 6270 - time: '2024-03-31T04:59:36.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26453 - author: lzk228 changes: - message: Hairflower was removed. @@ -3853,3 +3845,10 @@ id: 6769 time: '2024-06-18T12:11:37.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/28157 +- author: lzk228 + changes: + - message: Warning cones added to the Engivend. + type: Add + id: 6770 + time: '2024-06-18T14:02:05.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29085 From d60829f1ce07661aa3725ca2c23080b566275a4e Mon Sep 17 00:00:00 2001 From: Errant <35878406+Errant-4@users.noreply.github.com> Date: Tue, 18 Jun 2024 16:10:18 +0200 Subject: [PATCH 73/82] arachnid inventory layout fix (#29165) arachnid inventory layout fixC --- .../InventoryTemplates/arachnid_inventory_template.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Resources/Prototypes/InventoryTemplates/arachnid_inventory_template.yml b/Resources/Prototypes/InventoryTemplates/arachnid_inventory_template.yml index a9c7352ed8236e..e3ac371ebde343 100644 --- a/Resources/Prototypes/InventoryTemplates/arachnid_inventory_template.yml +++ b/Resources/Prototypes/InventoryTemplates/arachnid_inventory_template.yml @@ -70,7 +70,7 @@ slotGroup: SecondHotbar stripTime: 6 uiWindowPos: 3,1 - strippingWindowPos: 2,3 + strippingWindowPos: 1,5 displayName: Belt - name: back slotTexture: back @@ -79,7 +79,7 @@ slotGroup: SecondHotbar stripTime: 6 uiWindowPos: 3,0 - strippingWindowPos: 0,3 + strippingWindowPos: 0,5 displayName: Back - name: pocket4 @@ -89,7 +89,7 @@ slotGroup: MainHotbar stripTime: 3 uiWindowPos: 2,4 - strippingWindowPos: 1,5 + strippingWindowPos: 2,3 displayName: Pocket 4 - name: pocket3 slotTexture: web @@ -98,7 +98,7 @@ slotGroup: MainHotbar stripTime: 3 uiWindowPos: 0,4 - strippingWindowPos: 0,5 + strippingWindowPos: 0,3 displayName: Pocket 3 - name: outerClothing slotTexture: suit From db30b5e0408aaab17bcd4d724f629d220a36ba9b Mon Sep 17 00:00:00 2001 From: PJBot Date: Tue, 18 Jun 2024 14:11:25 +0000 Subject: [PATCH 74/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index cc85491196cdb8..6777355711fa29 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,14 +1,4 @@ Entries: -- author: lzk228 - changes: - - message: Hairflower was removed. - type: Remove - - message: Now you can wear poppy (and other flowers) on your head instead of crafting - hairflower with it. - type: Tweak - id: 6271 - time: '2024-03-31T05:33:23.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/25475 - author: EmoGarbage404 changes: - message: Borgs, Emitters, and APEs can no longer have their panels opened while @@ -3852,3 +3842,11 @@ id: 6770 time: '2024-06-18T14:02:05.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29085 +- author: Errant + changes: + - message: The strip interface layout of arachnids is now consistent with other + species. + type: Tweak + id: 6771 + time: '2024-06-18T14:10:18.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29165 From ee2c115e5b6cd0e0e8126bd81166c0fcb23a7b9e Mon Sep 17 00:00:00 2001 From: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> Date: Wed, 19 Jun 2024 02:30:41 +1200 Subject: [PATCH 75/82] Turn interaction related attempt events into structs (#29168) * Turn InteractionAttemptEvent into a struct event * readonly * GettingInteractedWithAttemptEvent * ConsciousAttemptEvent --- Content.Client/Interaction/DragDropSystem.cs | 2 +- .../ReplaySpectatorSystem.Blockers.cs | 7 +++- .../ActionBlocker/ActionBlockerSystem.cs | 6 ++-- .../Administration/SharedAdminFrozenSystem.cs | 8 ++++- Content.Shared/Bed/Sleep/SleepingSystem.cs | 2 +- Content.Shared/Cuffs/SharedCuffableSystem.cs | 8 ++++- Content.Shared/Ghost/SharedGhostSystem.cs | 8 ++++- .../Events/InteractionAttemptEvent.cs | 34 ++++++++----------- .../SharedInteractionSystem.Blocking.cs | 8 ++++- .../Systems/MobStateSystem.Subscribers.cs | 13 ++++++- .../Puppet/SharedVentriloquistPuppetSystem.cs | 10 ++++-- Content.Shared/Stunnable/SharedStunSystem.cs | 7 ++-- .../SubFloor/SharedSubFloorHideSystem.cs | 4 +-- 13 files changed, 80 insertions(+), 37 deletions(-) diff --git a/Content.Client/Interaction/DragDropSystem.cs b/Content.Client/Interaction/DragDropSystem.cs index 8baa4d15fe4b22..d249766bbccaf4 100644 --- a/Content.Client/Interaction/DragDropSystem.cs +++ b/Content.Client/Interaction/DragDropSystem.cs @@ -495,7 +495,7 @@ private void RemoveHighlights() // CanInteract() doesn't support checking a second "target" entity. // Doing so manually: var ev = new GettingInteractedWithAttemptEvent(user, dragged); - RaiseLocalEvent(dragged, ev, true); + RaiseLocalEvent(dragged, ref ev); if (ev.Cancelled) return false; diff --git a/Content.Client/Replay/Spectator/ReplaySpectatorSystem.Blockers.cs b/Content.Client/Replay/Spectator/ReplaySpectatorSystem.Blockers.cs index 2fa862f3df7f19..99d85350b5e205 100644 --- a/Content.Client/Replay/Spectator/ReplaySpectatorSystem.Blockers.cs +++ b/Content.Client/Replay/Spectator/ReplaySpectatorSystem.Blockers.cs @@ -17,7 +17,7 @@ private void InitializeBlockers() SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); - SubscribeLocalEvent(OnAttempt); + SubscribeLocalEvent(OnInteractAttempt); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); @@ -27,6 +27,11 @@ private void InitializeBlockers() SubscribeLocalEvent(OnPullAttempt); } + private void OnInteractAttempt(Entity ent, ref InteractionAttemptEvent args) + { + args.Cancelled = true; + } + private void OnAttempt(EntityUid uid, ReplaySpectatorComponent component, CancellableEntityEventArgs args) { args.Cancel(); diff --git a/Content.Shared/ActionBlocker/ActionBlockerSystem.cs b/Content.Shared/ActionBlocker/ActionBlockerSystem.cs index f1c77fda43b243..005c7dc78ec75e 100644 --- a/Content.Shared/ActionBlocker/ActionBlockerSystem.cs +++ b/Content.Shared/ActionBlocker/ActionBlockerSystem.cs @@ -70,7 +70,7 @@ public bool CanInteract(EntityUid user, EntityUid? target) return false; var ev = new InteractionAttemptEvent(user, target); - RaiseLocalEvent(user, ev); + RaiseLocalEvent(user, ref ev); if (ev.Cancelled) return false; @@ -79,7 +79,7 @@ public bool CanInteract(EntityUid user, EntityUid? target) return true; var targetEv = new GettingInteractedWithAttemptEvent(user, target); - RaiseLocalEvent(target.Value, targetEv); + RaiseLocalEvent(target.Value, ref targetEv); return !targetEv.Cancelled; } @@ -110,7 +110,7 @@ public bool CanUseHeldEntity(EntityUid user, EntityUid used) public bool CanConsciouslyPerformAction(EntityUid user) { var ev = new ConsciousAttemptEvent(user); - RaiseLocalEvent(user, ev); + RaiseLocalEvent(user, ref ev); return !ev.Cancelled; } diff --git a/Content.Shared/Administration/SharedAdminFrozenSystem.cs b/Content.Shared/Administration/SharedAdminFrozenSystem.cs index 2fa22e00052a15..259df2bdf2ac14 100644 --- a/Content.Shared/Administration/SharedAdminFrozenSystem.cs +++ b/Content.Shared/Administration/SharedAdminFrozenSystem.cs @@ -11,6 +11,7 @@ namespace Content.Shared.Administration; +// TODO deduplicate with BlockMovementComponent public abstract class SharedAdminFrozenSystem : EntitySystem { [Dependency] private readonly ActionBlockerSystem _blocker = default!; @@ -23,7 +24,7 @@ public override void Initialize() SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); - SubscribeLocalEvent(OnAttempt); + SubscribeLocalEvent(OnInteractAttempt); SubscribeLocalEvent(OnStartup); SubscribeLocalEvent(UpdateCanMove); SubscribeLocalEvent(OnUpdateCanMove); @@ -34,6 +35,11 @@ public override void Initialize() SubscribeLocalEvent(OnSpeakAttempt); } + private void OnInteractAttempt(Entity ent, ref InteractionAttemptEvent args) + { + args.Cancelled = true; + } + private void OnSpeakAttempt(EntityUid uid, AdminFrozenComponent component, SpeakAttemptEvent args) { if (!component.Muted) diff --git a/Content.Shared/Bed/Sleep/SleepingSystem.cs b/Content.Shared/Bed/Sleep/SleepingSystem.cs index aac3e7bb18ccab..6008e301cfeef9 100644 --- a/Content.Shared/Bed/Sleep/SleepingSystem.cs +++ b/Content.Shared/Bed/Sleep/SleepingSystem.cs @@ -153,7 +153,7 @@ private void OnSlip(Entity ent, ref SlipAttemptEvent args) private void OnConsciousAttempt(Entity ent, ref ConsciousAttemptEvent args) { - args.Cancel(); + args.Cancelled = true; } private void OnExamined(Entity ent, ref ExaminedEvent args) diff --git a/Content.Shared/Cuffs/SharedCuffableSystem.cs b/Content.Shared/Cuffs/SharedCuffableSystem.cs index 0e506f938e65af..be169deb0e5be7 100644 --- a/Content.Shared/Cuffs/SharedCuffableSystem.cs +++ b/Content.Shared/Cuffs/SharedCuffableSystem.cs @@ -79,7 +79,7 @@ public override void Initialize() SubscribeLocalEvent(CheckAct); SubscribeLocalEvent(CheckAct); SubscribeLocalEvent(CheckAct); - SubscribeLocalEvent(CheckAct); + SubscribeLocalEvent(CheckInteract); SubscribeLocalEvent(OnCuffAfterInteract); SubscribeLocalEvent(OnCuffMeleeHit); @@ -87,6 +87,12 @@ public override void Initialize() SubscribeLocalEvent(OnCuffVirtualItemDeleted); } + private void CheckInteract(Entity ent, ref InteractionAttemptEvent args) + { + if (!ent.Comp.CanStillInteract) + args.Cancelled = true; + } + private void OnUncuffAttempt(ref UncuffAttemptEvent args) { if (args.Cancelled) diff --git a/Content.Shared/Ghost/SharedGhostSystem.cs b/Content.Shared/Ghost/SharedGhostSystem.cs index ad8b86f7ddab0b..6e62bee1310175 100644 --- a/Content.Shared/Ghost/SharedGhostSystem.cs +++ b/Content.Shared/Ghost/SharedGhostSystem.cs @@ -19,12 +19,18 @@ public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnAttempt); - SubscribeLocalEvent(OnAttempt); + SubscribeLocalEvent(OnAttemptInteract); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); } + private void OnAttemptInteract(Entity ent, ref InteractionAttemptEvent args) + { + if (!ent.Comp.CanGhostInteract) + args.Cancelled = true; + } + private void OnAttempt(EntityUid uid, GhostComponent component, CancellableEntityEventArgs args) { if (!component.CanGhostInteract) diff --git a/Content.Shared/Interaction/Events/InteractionAttemptEvent.cs b/Content.Shared/Interaction/Events/InteractionAttemptEvent.cs index 0024811c369e53..a04c0536354f0d 100644 --- a/Content.Shared/Interaction/Events/InteractionAttemptEvent.cs +++ b/Content.Shared/Interaction/Events/InteractionAttemptEvent.cs @@ -3,39 +3,33 @@ /// /// Event raised directed at a user to see if they can perform a generic interaction. /// - public sealed class InteractionAttemptEvent : CancellableEntityEventArgs + [ByRefEvent] + public struct InteractionAttemptEvent(EntityUid uid, EntityUid? target) { - public InteractionAttemptEvent(EntityUid uid, EntityUid? target) - { - Uid = uid; - Target = target; - } - - public EntityUid Uid { get; } - public EntityUid? Target { get; } + public bool Cancelled; + public readonly EntityUid Uid = uid; + public readonly EntityUid? Target = target; } /// /// Raised to determine whether an entity is conscious to perform an action. /// - public sealed class ConsciousAttemptEvent(EntityUid Uid) : CancellableEntityEventArgs + [ByRefEvent] + public struct ConsciousAttemptEvent(EntityUid uid) { - public EntityUid Uid { get; } = Uid; + public bool Cancelled; + public readonly EntityUid Uid = uid; } /// /// Event raised directed at the target entity of an interaction to see if the user is allowed to perform some /// generic interaction. /// - public sealed class GettingInteractedWithAttemptEvent : CancellableEntityEventArgs + [ByRefEvent] + public struct GettingInteractedWithAttemptEvent(EntityUid uid, EntityUid? target) { - public GettingInteractedWithAttemptEvent(EntityUid uid, EntityUid? target) - { - Uid = uid; - Target = target; - } - - public EntityUid Uid { get; } - public EntityUid? Target { get; } + public bool Cancelled; + public readonly EntityUid Uid = uid; + public readonly EntityUid? Target = target; } } diff --git a/Content.Shared/Interaction/SharedInteractionSystem.Blocking.cs b/Content.Shared/Interaction/SharedInteractionSystem.Blocking.cs index 9a84789adfca12..a682bf981597c6 100644 --- a/Content.Shared/Interaction/SharedInteractionSystem.Blocking.cs +++ b/Content.Shared/Interaction/SharedInteractionSystem.Blocking.cs @@ -6,6 +6,7 @@ namespace Content.Shared.Interaction; +// TODO deduplicate with AdminFrozenComponent /// /// Handles , which prevents various /// kinds of movement and interactions when attached to an entity. @@ -16,7 +17,7 @@ public void InitializeBlocking() { SubscribeLocalEvent(OnMoveAttempt); SubscribeLocalEvent(CancelEvent); - SubscribeLocalEvent(CancelEvent); + SubscribeLocalEvent(CancelInteractEvent); SubscribeLocalEvent(CancelEvent); SubscribeLocalEvent(CancelEvent); SubscribeLocalEvent(CancelEvent); @@ -25,6 +26,11 @@ public void InitializeBlocking() SubscribeLocalEvent(OnBlockingShutdown); } + private void CancelInteractEvent(Entity ent, ref InteractionAttemptEvent args) + { + args.Cancelled = true; + } + private void OnMoveAttempt(EntityUid uid, BlockMovementComponent component, UpdateCanMoveEvent args) { if (component.LifeStage > ComponentLifeStage.Running) diff --git a/Content.Shared/Mobs/Systems/MobStateSystem.Subscribers.cs b/Content.Shared/Mobs/Systems/MobStateSystem.Subscribers.cs index 08b351e61e85e7..155cfede01578d 100644 --- a/Content.Shared/Mobs/Systems/MobStateSystem.Subscribers.cs +++ b/Content.Shared/Mobs/Systems/MobStateSystem.Subscribers.cs @@ -31,7 +31,7 @@ private void SubscribeEvents() SubscribeLocalEvent(CheckAct); SubscribeLocalEvent(CheckAct); SubscribeLocalEvent(CheckAct); - SubscribeLocalEvent(CheckAct); + SubscribeLocalEvent(CheckConcious); SubscribeLocalEvent(CheckAct); SubscribeLocalEvent(OnSpeakAttempt); SubscribeLocalEvent(OnEquipAttempt); @@ -48,6 +48,17 @@ private void SubscribeEvents() SubscribeLocalEvent(OnAttemptPacifiedAttack); } + private void CheckConcious(Entity ent, ref ConsciousAttemptEvent args) + { + switch (ent.Comp.CurrentState) + { + case MobState.Dead: + case MobState.Critical: + args.Cancelled = true; + break; + } + } + private void OnStateExitSubscribers(EntityUid target, MobStateComponent component, MobState state) { switch (state) diff --git a/Content.Shared/Puppet/SharedVentriloquistPuppetSystem.cs b/Content.Shared/Puppet/SharedVentriloquistPuppetSystem.cs index 430c2b1b17d675..e3fa21ed3777e0 100644 --- a/Content.Shared/Puppet/SharedVentriloquistPuppetSystem.cs +++ b/Content.Shared/Puppet/SharedVentriloquistPuppetSystem.cs @@ -7,6 +7,7 @@ namespace Content.Shared.Puppet; +// TODO deduplicate with BlockMovementComponent public abstract class SharedVentriloquistPuppetSystem : EntitySystem { [Dependency] private readonly ActionBlockerSystem _blocker = default!; @@ -15,7 +16,7 @@ public override void Initialize() { base.Initialize(); SubscribeLocalEvent(Cancel); - SubscribeLocalEvent(Cancel); + SubscribeLocalEvent(CancelInteract); SubscribeLocalEvent(Cancel); SubscribeLocalEvent(Cancel); SubscribeLocalEvent(Cancel); @@ -24,6 +25,11 @@ public override void Initialize() SubscribeLocalEvent(OnStartup); } + private void CancelInteract(Entity ent, ref InteractionAttemptEvent args) + { + args.Cancelled = true; + } + private void OnStartup(EntityUid uid, VentriloquistPuppetComponent component, ComponentStartup args) { _blocker.UpdateCanMove(uid); @@ -33,4 +39,4 @@ private void Cancel(EntityUid uid, VentriloquistPuppetComponent component, T { args.Cancel(); } -} \ No newline at end of file +} diff --git a/Content.Shared/Stunnable/SharedStunSystem.cs b/Content.Shared/Stunnable/SharedStunSystem.cs index 9190427d321486..092da8fe5ab396 100644 --- a/Content.Shared/Stunnable/SharedStunSystem.cs +++ b/Content.Shared/Stunnable/SharedStunSystem.cs @@ -54,7 +54,7 @@ public override void Initialize() // Attempt event subscriptions. SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnMoveAttempt); - SubscribeLocalEvent(OnAttempt); + SubscribeLocalEvent(OnAttemptInteract); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); SubscribeLocalEvent(OnAttempt); @@ -65,7 +65,10 @@ public override void Initialize() SubscribeLocalEvent(OnMobStateChanged); } - + private void OnAttemptInteract(Entity ent, ref InteractionAttemptEvent args) + { + args.Cancelled = true; + } private void OnMobStateChanged(EntityUid uid, MobStateComponent component, MobStateChangedEvent args) { diff --git a/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs b/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs index ba78ff651f5989..cebc84ecb93e61 100644 --- a/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs +++ b/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs @@ -45,11 +45,11 @@ private void OnAttackAttempt(EntityUid uid, SubFloorHideComponent component, ref args.Cancelled = true; } - private void OnInteractionAttempt(EntityUid uid, SubFloorHideComponent component, GettingInteractedWithAttemptEvent args) + private void OnInteractionAttempt(EntityUid uid, SubFloorHideComponent component, ref GettingInteractedWithAttemptEvent args) { // No interactions with entities hidden under floor tiles. if (component.BlockInteractions && component.IsUnderCover) - args.Cancel(); + args.Cancelled = true; } private void OnSubFloorStarted(EntityUid uid, SubFloorHideComponent component, ComponentStartup _) From 801d405919837760f7034ae5ced51e9577ec0d54 Mon Sep 17 00:00:00 2001 From: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com> Date: Tue, 18 Jun 2024 11:04:15 -0400 Subject: [PATCH 76/82] Add the most anticipated gun in the game. Foam Force. (#29103) * Foam Force * make it available somewhere * add clumsyproof and nuke dev item * reorganize * oopsy files * Strap! * woopsie layering * fix grammar to rerun tests for rogue unrelated test fail. * cleanup * I eepy layer forgetti spaghetti * For real last necessary commit * Oops I broke the law! feexed * Decided to just change it to the same source as the poster source in our repo for consistency. --- .../Prototypes/Catalog/Fills/Crates/cargo.yml | 12 ++++++ .../Weapons/Guns/Ammunition/Magazines/toy.yml | 12 ++++++ .../Guns/Ammunition/Projectiles/toy.yml | 36 +++++++++++++----- .../Objects/Weapons/Guns/Rifles/rifles.yml | 30 +++++++++++++++ .../Objects/Weapons/Throwable/clusterbang.yml | 19 +++++++++ .../Weapons/Grenades/foamdart.rsi/icon.png | Bin 0 -> 494 bytes .../Weapons/Grenades/foamdart.rsi/meta.json | 17 +++++++++ .../Weapons/Grenades/foamdart.rsi/primed.png | Bin 0 -> 377 bytes .../Guns/Rifles/foam_rifle.rsi/bolt-open.png | Bin 0 -> 323 bytes .../foam_rifle.rsi/equipped-BACKPACK.png | Bin 0 -> 775 bytes .../foam_rifle.rsi/equipped-SUITSTORAGE.png | Bin 0 -> 775 bytes .../Guns/Rifles/foam_rifle.rsi/icon.png | Bin 0 -> 312 bytes .../Guns/Rifles/foam_rifle.rsi/meta.json | 25 ++++++++++++ .../foam_rifle_inhand_64x.rsi/inhand-left.png | Bin 0 -> 824 bytes .../inhand-right.png | Bin 0 -> 876 bytes .../foam_rifle_inhand_64x.rsi/meta.json | 27 +++++++++++++ .../wielded-inhand-left.png | Bin 0 -> 726 bytes .../wielded-inhand-right.png | Bin 0 -> 731 bytes .../Weapons/Guns/Shotguns/pump.rsi/meta.json | 2 +- 19 files changed, 170 insertions(+), 10 deletions(-) create mode 100644 Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Magazines/toy.yml create mode 100644 Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/icon.png create mode 100644 Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/primed.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/bolt-open.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-BACKPACK.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-SUITSTORAGE.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/icon.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-right.png diff --git a/Resources/Prototypes/Catalog/Fills/Crates/cargo.yml b/Resources/Prototypes/Catalog/Fills/Crates/cargo.yml index b9d45f0f960ab6..7ef8a8262d60bd 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/cargo.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/cargo.yml @@ -158,6 +158,9 @@ - id: WeaponTurretXeno prob: 0.01 orGroup: Weapons + - id: WeaponRifleFoam + prob: 0.03 + orGroup: Weapons #clothing - id: ClothingUniformJumpsuitFamilyGuy prob: 0.05 @@ -385,3 +388,12 @@ - id: WeakKudzu prob: 0.01 orGroup: NotUseful + - id: MagazineFoamBox + prob: 0.001 + orGroup: NotUseful + - id: BoxDonkSoftBox + prob: 0.008 + orGroup: NotUseful + - id: GrenadeFoamDart + prob: 0.001 + orGroup: NotUseful \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Magazines/toy.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Magazines/toy.yml new file mode 100644 index 00000000000000..babbc2648f71aa --- /dev/null +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Magazines/toy.yml @@ -0,0 +1,12 @@ +- type: entity + parent: MagazineLightRifleBox # It goes in a saw, its funny. + id: MagazineFoamBox + name: ammunition box (foam) + components: + - type: BallisticAmmoProvider + mayTransfer: true + whitelist: + tags: + - BulletFoam + proto: BulletFoam + capacity: 100 \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/toy.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/toy.yml index 34a39c1583eb70..9b6c288e378664 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/toy.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/toy.yml @@ -4,12 +4,30 @@ name: foam dart parent: BaseItem components: - - type: Tag - tags: - - BulletFoam - - Trash - - type: Ammo - - type: Sprite - sprite: Objects/Fun/toys.rsi - layers: - - state: foamdart + - type: Fixtures + fixtures: + fix1: + shape: !type:PolygonShape + vertices: + - -0.05,-0.15 + - -0.05,0.25 + - 0.05,-0.15 + - 0.05,0.25 + density: 20 + mask: + - ItemMask + restitution: 0.3 + friction: 0.2 + - type: Tag + tags: + - BulletFoam + - Trash + - type: Ammo + - type: Sprite + sprite: Objects/Fun/toys.rsi + layers: + - state: foamdart + - type: EmbeddableProjectile + removalTime: .2 + - type: ThrowingAngle + angle: 180 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml index c034ac5749ae2a..9300367cdec3d3 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml @@ -186,3 +186,33 @@ steps: 1 zeroVisible: true - type: Appearance + +- type: entity + name: Foam Force Astro Ace + parent: [BaseWeaponShotgun, BaseGunWieldable] + id: WeaponRifleFoam + description: A premium foam rifle of the highest quality. Its plastic feels rugged, and its mechanisms sturdy. + components: + - type: Sprite + sprite: Objects/Weapons/Guns/Rifles/foam_rifle.rsi + - type: Clothing + sprite: Objects/Weapons/Guns/Rifles/foam_rifle.rsi + - type: Item + sprite: Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi + - type: BallisticAmmoProvider + whitelist: + tags: + - BulletFoam + capacity: 10 + proto: BulletFoam + - type: GunRequiresWield #remove when inaccuracy on spreads is fixed + - type: Gun + fireRate: 2 + selectedMode: SemiAuto + availableModes: + - SemiAuto + soundGunshot: + path: /Audio/Effects/thunk.ogg + soundEmpty: + path: /Audio/Weapons/Guns/Empty/empty.ogg + clumsyProof: true diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml index 36d4c947fcd760..35174ba34d26df 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml @@ -241,3 +241,22 @@ - type: ContainerContainer containers: cluster-payload: !type:Container + +- type: entity + parent: GrenadeShrapnel + id: GrenadeFoamDart + name: foam dart grenade + description: Releases a bothersome spray of foam darts that cause severe welching. + components: + - type: Sprite + sprite: Objects/Weapons/Grenades/foamdart.rsi + layers: + - state: icon + map: ["Base"] + - state: primed + map: ["enum.TriggerVisualLayers.Base"] + - type: ClusterGrenade + fillPrototype: BulletFoam + maxGrenadesCount: 30 + grenadeType: enum.GrenadeType.Throw + velocity: 70 diff --git a/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/icon.png b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b986e22665025ac32e1b356e2ee065be89e10e02 GIT binary patch literal 494 zcmV-P;C~7X28J6qE(l5?a{+`)CnY%8-lWDao9~b$Tmn8E)9Kk$5}6A4 z@b0Y>jNO^xQ!lTOi;$5(6h1OTpa&(tR+EwS?1_do!zivVB!V4Sp_ zl4t{8m;@*|rYypDt?zZAb*+MSszckdywbUO1L^=={5w(;hz&~AVbYBc6<`72v&X*- zp8&$jB7Hw&m<2|=>`iN>wCHbu2ajZ^Il%e`a0x^uDnj@Ti1vfLeq3;F0bc@7yuWI^>m@n| kl7LbbNHe)WE|3fS0@S6TEuG1U_5c6?07*qoM6N<$f{w(`;s5{u literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/meta.json b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/meta.json new file mode 100644 index 00000000000000..ba5198513b6377 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/meta.json @@ -0,0 +1,17 @@ +{ + "version": 1, + "license": "CC-BY-NC-SA-3.0", + "copyright": "Taken from goonstation at https://github.com/goonstation/goonstation/pull/13630", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "primed" + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/primed.png b/Resources/Textures/Objects/Weapons/Grenades/foamdart.rsi/primed.png new file mode 100644 index 0000000000000000000000000000000000000000..0d8b9b7a97b190d00b8bdd138d7630cc406ca724 GIT binary patch literal 377 zcmV-<0fzpGP)Vez{#Ec|3S35dm$s; z9RRXi%?`mP*AWzjz~|Qt6a%sxzzPlek1rS)_$3fxzsU#%k{tlDXq_hmgV=TmALIxS z=#^t&C?>-ZBslA%lyyJgVhL;7P?N z2AX6;WJl=AU51Mxhez=v1_qiIL@-AbLyKZ;a-^C^RypvSg6fwl4xlC&b-<_tMjZeE X&*OEHeFfz000000NkvXXu0mjflfjdZ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/bolt-open.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/bolt-open.png new file mode 100644 index 0000000000000000000000000000000000000000..7a11eab654ed59feab71fa8d4d40d2e697945c7a GIT binary patch literal 323 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFmidiIEF+VPEL?uU7R4&(-deB zbkNPb?LQ9?^eoA++T`@#o|&2X@cpIYnw$O{_Gg*h8ghDVuc$=8p z2IOxL-mZNAPs0WA`%caYr*+=`XR7&eH)+k$cEz%9x767r4gJ^(1;g5==hq#6slI;S zV;c}wwx}@3ni0iTDeLVl)nj0I)MK1h5U!?nk6~p|aC#D^^bZ}w@+o}k@@&l98^(FuP zbL9=o5eqmSl+rMX!@lO%;R8VMU~<`1LI1pjHmhgvGcwJ%+zx60z1|?jz#wtH;N7dN S>T|%rVeoYIb6Mw<&;$TnYlFf7 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-BACKPACK.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle.rsi/equipped-BACKPACK.png new file mode 100644 index 0000000000000000000000000000000000000000..ec34a1b9ea107466407b7cb7164ca1dc253f967f GIT binary patch literal 775 zcmV+i1Ni)jP)LYaOh!Vm>`mhcrz5#_A*M`g8RgR-V_SAc|ks=B?`wpT6SR*5L&m zp<#m?M@{t1E_!Ac%i27GmIN-IYiJxbNB;JL0nx}50HE3KquK7GXLg|}5v(jNv7m_8 zln8oe*V16ub>$Y|+kg*{6Jb1kX&{+Q;`hl3D*OAAA4T)eni8=@fB$6y0FI5nL*qZv zfMF<#!T=x^jrz(2d)xt_sv7_>cHat(JCUyI5&*n+4bhG zc+&V-F8;}TNZD+bxhdYY1PuOJ;sVsTv-_!WVDHD7cmQx)yz2(o+1!Ox>o~hdt#dv- zZi^=ff*=TjAP9mWh$|@O)0ZAI2enS2_W_IQ9QYUIRAp>S&cYU8!(Heye z;0KU?MzlsD1MY=m0Dw#;LYaOh!Vm>`mhcrz5#_A*M`g8RgR-V_SAc|ks=B?`wpT6SR*5L&m zp<#m?M@{t1E_!Ac%i27GmIN-IYiJxbNB;JL0nx}50HE3KquK7GXLg|}5v(jNv7m_8 zln8oe*V16ub>$Y|+kg*{6Jb1kX&{+Q;`hl3D*OAAA4T)eni8=@fB$6y0FI5nL*qZv zfMF<#!T=x^jrz(2d)xt_sv7_>cHat(JCUyI5&*n+4bhG zc+&V-F8;}TNZD+bxhdYY1PuOJ;sVsTv-_!WVDHD7cmQx)yz2(o+1!Ox>o~hdt#dv- zZi^=ff*=TjAP9mWh$|@O)0ZAI2enS2_W_IQ9QYUIRAp>S&cYU8!(Heye z;0KU?MzlsD1MY=m0Dw#;yHn+k4AL!JHL6e)t|>GX%5dLr8PYI_y4qA_K&MQF6nh*UwQ%%+%)q3 zy?^IEo#qY!>#igH@81XfFlfHW=)*H}Tjvgsk}I1GfS`k8WAavkn+a?{FuS9>hrL$v z-|hUg1RIc>G{qj4GT3!b)NNeatbCCtWTVWx2KDoCMt}ZxORc$~vtZiN6AY??bw9qe zHv+*y^|xBe^X?qrDLr%l;-wt0Ke^l(O&J)Zmgl~U57wOp3+M~`?As0!$3D8R z;}taO)jSkulyd&T!tS^yPD^738Hp-m0Id-z-74f=rcm8;U zp8NXYaPQSQ)^~Q;{%881l32IoRI%-!#}QTEP5-{mxSkT%9#o^7E5D;!-uBS>GQo%#qG)e1UNc&yw*ZCQ$IvJmSE;f<%WRG=gSpI6uDz~#9jsZc1a{uoA>%4mS6_6~y zu{Y@Ad@T;IHH`Cw|ApNQSJip(<9Wp5k7s^;kpJ~9_4t&yXJ4OPF7Fq7z$w>O|2<{r zm#n9k-fu1A+EM)}wxUbUSn7OBI^W{gCAKH~w=cWAYL?&XtgEFrw=XObnfdm6Z2sIs z@-nW=gznY7n61+2_xt&^o*c`0|3tpApR0SVwC`tjZ}Mr6gjhx%ec|U~wf{G1$i%75 zQfch^H^ntUOx%C*N1x??KmQhN)KqA8dpuKEItnG2v2hMOW-Fap=G$hyQNr^2A%1g? z+=+9t<#MB+7jQLv&}2BYoPlFLQ-t4-k6X9YPFVZleblL?7bCRXe|)>C_4}6A@0DNt z&qPYsDF@}3t4}^$Brqj}llzyz-l!_UCu?{AN?W3$vGS4sRqNBw_QZTy{#`e1x^8~* zSMk4@%YMI(Jz_2uH!poNbLH|-)7RImf9zj&V6n#K>-x8EtzQ3oYm_-_O6m>iE2$yh zZnB?vVh}$)&^Sn7O35wz_)O)OHic`RnVQekFAKMQbkVkk_2Kc}6SK_ciXWL&^y7L^ zesS>M#H6Fydf5$A4sXxRo~@~{^h1BL_5N%FrX?c#*3RFo*}&88&zNFU^Nn%Zlj~2u gJ=i}3IdmrMvUiBi+Ig#Y))tVkr>mdKI;Vst0EzE-z5oCK literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..570f8be130ba975ad5fb6cd555d53ae03b5d2178 GIT binary patch literal 876 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7xzrU^e!2aSW-r_4e*YZ)Hc3;~(Rj z7^kyv3h^|#u4y^l*m_n>?$OPNjPE?I9&`{)9?{if;Z~^{BV=R*B~- zNjR*&+x?AsinnW3!+)Kx>FwS7zQ4X5a6CKXbYZ0r7v{ffyuUsYrR9kbA^cK#%WeZ|MT?g+Y84vJvrQxXP3w9OrL}jC0IGkmUpMfA3bdJv-~5Q>&GJ@=RO$5ur4a= zvf>o@tfIh}G>=8a;mqU&4fAXE4pw>3+4sx*wL9b~@Jnw&jMlGW<1n4`{CYAP4{iFs zy;G1Z`*8hD=F{Sp%O5{UUa>7|%I4($9HEvtMqn6}?)h?h00Sy!yXxN+F3mL4e*xXyJ!{OJC5ii{piz=XAc-5~4fi?kYwg dhth%F{}|3J$g<))TBZ&X_jL7hS?83{1OOy$h}8f9 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/meta.json new file mode 100644 index 00000000000000..b89b33c08ffe9b --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from at commit https://github.com/tgstation/tgstation/commit/f01de25493e2bd2706ef9b0303cb0d7b5e3e471b sprite created from foam force poster by IProduceWidgets (github)", + "size": { + "x": 64, + "y": 64 + }, + "states": [ + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "wielded-inhand-left", + "directions": 4 + }, + { + "name": "wielded-inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/foam_rifle_inhand_64x.rsi/wielded-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..3526954b4e2d7eea3d1b3eee9d0eca653dc1e9b1 GIT binary patch literal 726 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7xzrV4Cac;uunK>+RkB-qM8<$3Ob7 zacz}SvDCO5l%YA}lJq7K5iZ%1l{=(%eeXYY$#C7l62Tln;~S129OlX}<+dM?JY=ad z>A?2OGv(!GP4WKaTeE*!OkF|E{O7-I?w|hV0kj7TXgI!N)^yF>6B9arOfgGY_4DHs z6T$CJhhI-^t>1lo^7(bw%J&>ulbe)!-SqI0(jBUw6W8z7Z;v+Wo&E0n?cX2Y-K@FO zxGVEyWX+HA<+JmiJkQ?Qqmuv3tp3K1BEK)y`&BE$Kd#sP#`GfgN$v6jr57&V4nJM> z&L;G1{{4MwanpsGPjau9c66V=Z%%Zz)fDc?&6DQz>%0ovYYCNhwjZA#EbZ42 z$WvCFzx}(K|D-t~UV(R0Cr^E{XU-L;lihS;H!Rnt#r7^p zE@d=nI`{V3^*`IP>Y~-f8>iiqjr@IM)3&8ryVr5bbEZ$r7h-+dB6VM|97wKeNX?~u*FB_YQEZk)Mnz&WqDCWVvF}% z-z~{sU%c8gv@F(G+tncFj#kyImrNhl{hDl~v3=GQ6h9Vd1<@+^x)fn7azTA`trtFiCkH^pNUR~ z1mA47tF(R+RkB*;0uz$3LED z^^VGLT@&DCePf}B&doa^cS%RnBw&_<)tv+by+VOot~cN&%X0~q&<4gTi{rO^; z=ccBri;;S%|7x`Eyx#xy_P@$!-UYe){1=s-PhNd#_xZou>V7Lc{`+@--7Px}7O`ZN z72>%|CtJxE=Rbb(?nuF`poir@+(TZioKj&?WjlAqp84mBxO6ycd>bCW+12U#yZ;MY z;@)%7Q!o2|*7@iVx_s%ojS>4MzV$Kt_59!tmD)drn`W-Qx#H`jgeCfSwteegwl9VdFo+?VCti9=Y3XJ-V&(Lsbfz2We`ak}eK+%(^53bRU(cEQxmiE` z%Y8DlPyeJ{zr6ikv8ii69Fg^4l1abryZzhR?G0bPIUdZ4c_*>^$*IgfdDhQ47G=eA z4PS0Ox7Xl^>mdKI;Vst0AXB9zyJUM literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json index 3add3a471b6fa3..3e793381d0fa8e 100644 --- a/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Guns/Shotguns/pump.rsi/meta.json @@ -22,4 +22,4 @@ "directions": 4 } ] -} +} \ No newline at end of file From 3358aef40f2b5525ec15e6ce01533b4e8c2ddfc9 Mon Sep 17 00:00:00 2001 From: PJBot Date: Tue, 18 Jun 2024 15:05:22 +0000 Subject: [PATCH 77/82] Automatic changelog update --- Resources/Changelog/Changelog.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 6777355711fa29..4790f603a07150 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: EmoGarbage404 - changes: - - message: Borgs, Emitters, and APEs can no longer have their panels opened while - locked. APEs and Emitters additionally cannot be unanchored either. - type: Add - id: 6272 - time: '2024-03-31T06:34:17.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/26600 - author: lzk228 changes: - message: Flower crown and wreath were combined. Now you can wear wreath both on @@ -3850,3 +3842,12 @@ id: 6771 time: '2024-06-18T14:10:18.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29165 +- author: IProduceWidgets + changes: + - message: Foam Force rifle to cargo lottery! + type: Add + - message: Foam darts now stick to things they hit! + type: Tweak + id: 6772 + time: '2024-06-18T15:04:15.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29103 From e9f866b8b3163e534fabe7fe49d9485c63059f05 Mon Sep 17 00:00:00 2001 From: MilenVolf Date: Tue, 18 Jun 2024 21:30:32 +0300 Subject: [PATCH 78/82] Update english locale files --- .../prototypes/catalog/fills/items/misc.ftl | 9 ++- .../clothing/eyes/base_clothingeyes.ftl | 5 ++ .../prototypes/entities/clothing/eyes/hud.ftl | 8 +++ .../entities/clothing/eyes/misc.ftl | 7 +- .../entities/clothing/head/hoods.ftl | 2 + .../entities/clothing/outerclothing/suits.ftl | 3 + .../clothing/shoes/base_clothingshoes.ftl | 3 + .../objects/specific/chemical-containers.ftl | 72 ++++++++++++------- .../weapons/guns/ammunition/magazines/toy.ftl | 2 + .../objects/weapons/guns/rifles/rifles.ftl | 2 + .../objects/weapons/throwable/clusterbang.ftl | 2 + .../prototypes/entities/stations/base.ftl | 2 - .../ss14-ru/prototypes/gamerules/events.ftl | 2 - 13 files changed, 88 insertions(+), 31 deletions(-) create mode 100644 Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/catalog/fills/items/misc.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/catalog/fills/items/misc.ftl index e7e3f33a99b074..99dfece95d8a00 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/catalog/fills/items/misc.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/catalog/fills/items/misc.ftl @@ -1,6 +1,13 @@ ent-ClothingShoesBootsCombatFilled = { ent-ClothingShoesBootsCombat } - .suffix = Filled .desc = { ent-ClothingShoesBootsCombat.desc } +ent-ClothingShoesBootsJackFilled = { ent-ClothingShoesBootsJack } + .desc = { ent-ClothingShoesBootsJack.desc } +ent-ClothingShoesBootsWinterSecFilled = { ent-ClothingShoesBootsWinterSec } + .desc = { ent-ClothingShoesBootsWinterSec.desc } +ent-ClothingShoesBootsCowboyBlackFilled = { ent-ClothingShoesBootsCowboyBlack } + .desc = { ent-ClothingShoesBootsCowboyBlack.desc } +ent-ClothingShoesHighheelBootsFilled = { ent-ClothingShoesHighheelBoots } + .desc = { ent-ClothingShoesHighheelBoots.desc } ent-ClothingShoesBootsMercFilled = { ent-ClothingShoesBootsMerc } .suffix = Filled .desc = { ent-ClothingShoesBootsMerc.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl index 35521191276b53..b578a7c5e6e9a3 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl @@ -1,2 +1,7 @@ ent-ClothingEyesBase = { ent-Clothing } .desc = { ent-Clothing.desc } +ent-ClothingHeadEyeBaseFlippable = { ent-ClothingEyesBase } + .desc = { ent-ClothingEyesBase.desc } +ent-ClothingHeadEyeBaseFlipped = { ent-ClothingHeadEyeBaseFlippable } + .suffix = flipped + .desc = { ent-ClothingHeadEyeBaseFlippable.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl index 0dc91a1587aa6d..18eb7e4afd01f2 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl @@ -33,9 +33,17 @@ ent-ClothingEyesGlassesHiddenSecurity = { ent-ClothingEyesGlassesSunglasses } .desc = { ent-ClothingEyesGlassesSunglasses.desc } ent-ClothingEyesEyepatchHudMedical = medical hud eyepatch .desc = A heads-up display that scans the humanoids in view and provides accurate data about their health status. For true patriots. +ent-ClothingEyesEyepatchHudMedicalFlipped = medical hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudMedical.desc } ent-ClothingEyesEyepatchHudSecurity = security hud eyepatch .desc = A heads-up display that scans the humanoids in view and provides accurate data about their ID status and security records. For true patriots. +ent-ClothingEyesEyepatchHudSecurityFlipped = security hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudSecurity.desc } ent-ClothingEyesEyepatchHudBeer = beer hud eyepatch .desc = A pair of sunHud outfitted with apparatus to scan reagents, as well as providing an innate understanding of liquid viscosity while in motion. For true patriots. +ent-ClothingEyesEyepatchHudBeerFlipped = beer hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudBeer.desc } ent-ClothingEyesEyepatchHudDiag = diagnostic hud eyepatch .desc = A heads-up display capable of analyzing the integrity and status of robotics and exosuits. Made out of see-borg-ium. +ent-ClothingEyesEyepatchHudDiagFlipped = diagnostic hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudDiag.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl index 74e51836c24104..d7814fa38670b7 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl @@ -1,4 +1,7 @@ -ent-ClothingEyesEyepatch = eyepatch - .desc = Yarr. ent-ClothingEyesBlindfold = blindfold .desc = The bind leading the blind. +ent-ClothingEyesEyepatch = eyepatch + .desc = Yarr. +ent-ClothingEyesEyepatchFlipped = { ent-ClothingEyesEyepatch } + .suffix = flipped + .desc = { ent-ClothingEyesEyepatch.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/head/hoods.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/head/hoods.ftl index 8cc29c9ff82198..754b5c553fc12e 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/head/hoods.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/head/hoods.ftl @@ -30,6 +30,8 @@ ent-ClothingHeadHatHoodIan = ian hood .desc = A hood to complete the 'Good boy' look. ent-ClothingHeadHatHoodCarp = carp hood .desc = A gnarly hood adorned with plastic space carp teeth. +ent-ClothingHeadHelmetHardsuitCarp = { ent-ClothingHeadHatHoodCarp } + .desc = { ent-ClothingHeadHatHoodCarp.desc } ent-ClothingHeadHatHoodMoth = moth mask .desc = A mask in the form of a moths head is usually made of lightweight materials. It mimics the shape of a moths head with large eyes and long antennae. Such masks are often used in cosplay, or when shooting movies and videos. ent-ClothingHeadHatHoodWinterDefault = default winter coat hood diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl index 12c166add7c1d1..5dcc5b1ddad54f 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl @@ -23,3 +23,6 @@ ent-ClothingOuterSuitIan = ian suit .desc = Who's a good boy? ent-ClothingOuterSuitCarp = carp suit .desc = A special suit that makes you look just like a space carp, if your eyesight is bad. +ent-ClothingOuterHardsuitCarp = { ent-ClothingOuterSuitCarp } + .suffix = Hardsuit, DO NOT MAP + .desc = { ent-ClothingOuterSuitCarp.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl index c9db4ecb32a8db..8debb0cf2f1f5d 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl @@ -4,5 +4,8 @@ ent-ClothingShoesBaseButcherable = { ent-ClothingShoesBase } .desc = { ent-ClothingShoesBase.desc } ent-ClothingShoesMilitaryBase = { ent-ClothingShoesBase } .desc = { ent-ClothingShoesBase.desc } +ent-ClothingShoesBootsSecFilled = { "" } + .suffix = Filled + .desc = { "" } ent-ClothingShoesBaseWinterBoots = { ent-ClothingShoesBaseButcherable } .desc = Fluffy boots to help survive even the coldest of winters. diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl index cfbc2dc52907ca..a0cdd47cee8083 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl @@ -1,50 +1,74 @@ ent-Jug = jug .desc = Used to contain a very large amount of chemicals or solutions. Chugging is extremely ill-advised. -ent-JugCarbon = jug (carbon) +ent-JugCarbon = jug + .suffix = carbon .desc = { ent-Jug.desc } -ent-JugIodine = jug (iodine) +ent-JugIodine = jug + .suffix = iodine .desc = { ent-Jug.desc } -ent-JugFluorine = jug (fluorine) +ent-JugFluorine = jug + .suffix = fluorine .desc = { ent-Jug.desc } -ent-JugChlorine = jug (chlorine) +ent-JugChlorine = jug + .suffix = chlorine .desc = { ent-Jug.desc } -ent-JugAluminium = jug (aluminium) +ent-JugAluminium = jug + .suffix = aluminium .desc = { ent-Jug.desc } -ent-JugPhosphorus = jug (phosphorus) +ent-JugPhosphorus = jug + .suffix = phosphorus .desc = { ent-Jug.desc } -ent-JugSulfur = jug (sulfur) +ent-JugSulfur = jug + .suffix = sulfur .desc = { ent-Jug.desc } -ent-JugSilicon = jug (silicon) +ent-JugSilicon = jug + .suffix = silicon .desc = { ent-Jug.desc } -ent-JugHydrogen = jug (hydrogen) +ent-JugHydrogen = jug + .suffix = hydrogen .desc = { ent-Jug.desc } -ent-JugLithium = jug (lithium) +ent-JugLithium = jug + .suffix = lithium .desc = { ent-Jug.desc } -ent-JugSodium = jug (sodium) +ent-JugSodium = jug + .suffix = sodium .desc = { ent-Jug.desc } -ent-JugPotassium = jug (potassium) +ent-JugPotassium = jug + .suffix = potassium .desc = { ent-Jug.desc } -ent-JugRadium = jug (radium) +ent-JugRadium = jug + .suffix = radium .desc = { ent-Jug.desc } -ent-JugIron = jug (iron) +ent-JugIron = jug + .suffix = iron .desc = { ent-Jug.desc } -ent-JugCopper = jug (copper) +ent-JugCopper = jug + .suffix = copper .desc = { ent-Jug.desc } -ent-JugGold = jug (gold) +ent-JugGold = jug + .suffix = gold .desc = { ent-Jug.desc } -ent-JugMercury = jug (mercury) +ent-JugMercury = jug + .suffix = mercury .desc = { ent-Jug.desc } -ent-JugSilver = jug (silver) +ent-JugSilver = jug + .suffix = silver .desc = { ent-Jug.desc } -ent-JugEthanol = jug (ethanol) +ent-JugEthanol = jug + .suffix = ethanol .desc = { ent-Jug.desc } -ent-JugSugar = jug (sugar) +ent-JugSugar = jug + .suffix = sugar .desc = { ent-Jug.desc } -ent-JugNitrogen = jug (nitrogen) +ent-JugNitrogen = jug + .suffix = nitrogen .desc = { ent-Jug.desc } -ent-JugOxygen = jug (oxygen) +ent-JugOxygen = jug + .suffix = oxygen .desc = { ent-Jug.desc } -ent-JugPlantBGone = jug (Plant-B-Gone) +ent-JugPlantBGone = jug + .suffix = Plant-B-Gone .desc = { ent-Jug.desc } -ent-JugWeldingFuel = jug (welding fuel) +ent-JugWeldingFuel = jug + .suffix = welding fuel .desc = { ent-Jug.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl new file mode 100644 index 00000000000000..c96e8709a751c3 --- /dev/null +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl @@ -0,0 +1,2 @@ +ent-MagazineFoamBox = ammunition box (foam) + .desc = { ent-MagazineLightRifleBox.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl index 9122d95a09cbb2..e000dddbd63d53 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl @@ -6,3 +6,5 @@ ent-WeaponRifleM90GrenadeLauncher = M-90gl .desc = An older bullpup carbine model, with an attached underbarrel grenade launcher. Uses .20 rifle ammo. ent-WeaponRifleLecter = Lecter .desc = A high end military grade assault rifle. Uses .20 rifle ammo. +ent-WeaponRifleFoam = Foam Force Astro Ace + .desc = A premium foam rifle of the highest quality. Its plastic feels rugged, and its mechanisms sturdy. diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl index c636824940e0c2..f9960330e0fbfe 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl @@ -15,3 +15,5 @@ ent-GrenadeShrapnel = shrapnel grenade .desc = Releases a deadly spray of shrapnel that causes severe bleeding. ent-SlipocalypseClusterSoap = slipocalypse clustersoap .desc = Spreads small pieces of syndicate soap over an area upon landing on the floor. +ent-GrenadeFoamDart = foam dart grenade + .desc = Releases a bothersome spray of foam darts that cause severe welching. diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/stations/base.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/stations/base.ftl index e89548db24d68f..9e61de12d78281 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/stations/base.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/stations/base.ftl @@ -1,7 +1,5 @@ ent-BaseStation = { "" } .desc = { "" } -ent-BaseRandomStation = { "" } - .desc = { "" } ent-BaseStationCargo = { "" } .desc = { "" } ent-BaseStationJobsSpawning = { "" } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/events.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/events.ftl index bbe7554de90332..8b268c84e845e9 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/events.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/events.ftl @@ -36,8 +36,6 @@ ent-CockroachMigration = { ent-BaseStationEventShortDelay } .desc = { ent-BaseStationEventShortDelay.desc } ent-PowerGridCheck = { ent-BaseStationEventShortDelay } .desc = { ent-BaseStationEventShortDelay.desc } -ent-RandomSentience = { ent-BaseGameRule } - .desc = { ent-BaseGameRule.desc } ent-SolarFlare = { ent-BaseGameRule } .desc = { ent-BaseGameRule.desc } ent-VentClog = { ent-BaseStationEventLongDelay } From faae8b13f87165a48c5e715a295768b8cbf8805d Mon Sep 17 00:00:00 2001 From: MilenVolf Date: Tue, 18 Jun 2024 21:30:50 +0300 Subject: [PATCH 79/82] Update russian locale files --- Resources/Locale/ru-RU/borg/borg.ftl | 2 ++ .../ru-RU/guidebook/chemistry/conditions.ftl | 1 + .../Locale/ru-RU/label/label-component.ftl | 1 + Resources/Locale/ru-RU/markings/reptilian.ftl | 2 ++ .../ru-RU/preferences/loadout-groups.ftl | 1 + .../Locale/ru-RU/reagents/meta/toxins.ftl | 2 ++ .../research/components/robotics-console.ftl | 2 +- .../speech/accent-wearer-name-clothing.ftl | 1 + .../prototypes/catalog/fills/items/misc.ftl | 8 +++++++ .../clothing/eyes/base_clothingeyes.ftl | 5 ++++ .../prototypes/entities/clothing/eyes/hud.ftl | 8 +++++++ .../entities/clothing/eyes/misc.ftl | 3 +++ .../entities/clothing/head/hoods.ftl | 2 ++ .../entities/clothing/outerclothing/suits.ftl | 3 +++ .../clothing/shoes/base_clothingshoes.ftl | 3 +++ .../objects/specific/chemical-containers.ftl | 24 +++++++++++++++++++ .../weapons/guns/ammunition/magazines/toy.ftl | 2 ++ .../objects/weapons/guns/rifles/rifles.ftl | 2 ++ .../objects/weapons/throwable/clusterbang.ftl | 2 ++ .../prototypes/entities/stations/base.ftl | 2 -- .../ss14-ru/prototypes/gamerules/events.ftl | 2 -- .../Locale/ru-RU/store/uplink-catalog.ftl | 2 ++ 22 files changed, 75 insertions(+), 5 deletions(-) create mode 100644 Resources/Locale/ru-RU/label/label-component.ftl create mode 100644 Resources/Locale/ru-RU/speech/accent-wearer-name-clothing.ftl create mode 100644 Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl diff --git a/Resources/Locale/ru-RU/borg/borg.ftl b/Resources/Locale/ru-RU/borg/borg.ftl index 710d2b46bd1e22..52401b57c557f3 100644 --- a/Resources/Locale/ru-RU/borg/borg.ftl +++ b/Resources/Locale/ru-RU/borg/borg.ftl @@ -15,5 +15,7 @@ borg-ui-modules-label = Модули: borg-ui-module-counter = { $actual }/{ $max } # Transponder borg-transponder-disabled-popup = Мозг вылетает из верхушки { $name }! +borg-transponder-disabling-popup = Your transponder begins to lock you out of the chassis! +borg-transponder-destroying-popup = The self destruct of { $name } starts beeping! borg-transponder-emagged-disabled-popup = Огни вашего транспондера погасли! borg-transponder-emagged-destroyed-popup = Предохранитель вашего транспондера перегорел! diff --git a/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl b/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl index d9de2b05d07a16..53349f4e702cfb 100644 --- a/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl +++ b/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl @@ -26,6 +26,7 @@ reagent-effect-condition-guidebook-reagent-threshold = } } reagent-effect-condition-guidebook-mob-state-condition = состояние существа { $state } +reagent-effect-condition-guidebook-job-condition = the target's job is { $job } reagent-effect-condition-guidebook-solution-temperature = температура раствора { $max -> [2147483648] не менее { NATURALFIXED($min, 2) }К diff --git a/Resources/Locale/ru-RU/label/label-component.ftl b/Resources/Locale/ru-RU/label/label-component.ftl new file mode 100644 index 00000000000000..b5bf09d4d5c7f8 --- /dev/null +++ b/Resources/Locale/ru-RU/label/label-component.ftl @@ -0,0 +1 @@ +comp-label-format = { $baseName } ({ $label }) diff --git a/Resources/Locale/ru-RU/markings/reptilian.ftl b/Resources/Locale/ru-RU/markings/reptilian.ftl index 9f1c08d4153093..baef0430de897b 100644 --- a/Resources/Locale/ru-RU/markings/reptilian.ftl +++ b/Resources/Locale/ru-RU/markings/reptilian.ftl @@ -62,6 +62,8 @@ marking-LizardHornsMyrsore-horns_myrsore = Унатх, рожки (Мирзор marking-LizardHornsMyrsore = Унатх, рожки (Мирзора) marking-LizardHornsBighorn-horns_bighorn = Унатх, рожки (Толсторог) marking-LizardHornsBighorn = Унатх, рожки (Толсторог) +marking-LizardHornsDemonic-horns_demonic = Lizard Horns (Demonic) +marking-LizardHornsDemonic = Lizard Horns (Demonic) marking-LizardHornsKoboldEars-horns_kobold_ears = Унатх, уши (Кобольд) marking-LizardHornsKoboldEars = Унатх, уши (Кобольд) marking-LizardHornsFloppyKoboldEars-horns_floppy_kobold_ears = Унатх, уши (Вислоухий кобольд) diff --git a/Resources/Locale/ru-RU/preferences/loadout-groups.ftl b/Resources/Locale/ru-RU/preferences/loadout-groups.ftl index e5a31444d85663..f7c5315ab631d6 100644 --- a/Resources/Locale/ru-RU/preferences/loadout-groups.ftl +++ b/Resources/Locale/ru-RU/preferences/loadout-groups.ftl @@ -2,6 +2,7 @@ loadout-group-trinkets = Безделушки loadout-group-glasses = Очки loadout-group-backpack = Рюкзак +loadout-group-instruments = Instruments # Command loadout-group-captain-head = Голова капитана loadout-group-captain-jumpsuit = Комбинезон капитана diff --git a/Resources/Locale/ru-RU/reagents/meta/toxins.ftl b/Resources/Locale/ru-RU/reagents/meta/toxins.ftl index b42d553f4defe1..0f70d8be3c7eb1 100644 --- a/Resources/Locale/ru-RU/reagents/meta/toxins.ftl +++ b/Resources/Locale/ru-RU/reagents/meta/toxins.ftl @@ -52,3 +52,5 @@ reagent-name-tazinide = тазинид reagent-desc-tazinide = Очень опасная металлическая смесь, которая может нарушить возможность передвигаться благодаря электризующему воздействию. reagent-name-lipolicide = липолицид reagent-desc-lipolicide = Мощный токсин, разрушающий жировые клетки и способствующий снижению массы тела в сжатые сроки. Смертельно опасен для тех, у кого в организме нет питательных веществ. +reagent-name-mechanotoxin = mechanotoxin +reagent-desc-mechanotoxin = A neurotoxin used as venom by some species of spider. Degrades movement when built up. diff --git a/Resources/Locale/ru-RU/research/components/robotics-console.ftl b/Resources/Locale/ru-RU/research/components/robotics-console.ftl index 4207e5ed3395c3..64e67b3a4240b1 100644 --- a/Resources/Locale/ru-RU/research/components/robotics-console.ftl +++ b/Resources/Locale/ru-RU/research/components/robotics-console.ftl @@ -14,4 +14,4 @@ robotics-console-brain = robotics-console-locked-message = Управление заблокировано, проведите ID-картой. robotics-console-disable = Отключить robotics-console-destroy = Уничтожить -robotics-console-cyborg-destroyed = Киборг { $name } был дистанционно уничтожен. +robotics-console-cyborg-destroying = Киборг { $name } был дистанционно сдетонирован! diff --git a/Resources/Locale/ru-RU/speech/accent-wearer-name-clothing.ftl b/Resources/Locale/ru-RU/speech/accent-wearer-name-clothing.ftl new file mode 100644 index 00000000000000..49995f971f250b --- /dev/null +++ b/Resources/Locale/ru-RU/speech/accent-wearer-name-clothing.ftl @@ -0,0 +1 @@ +comp-accent-wearer-name-clothing-format = { $accentedName } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl index 2dc2a1e9f7efd1..0623c216eec31f 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl @@ -1,6 +1,14 @@ ent-ClothingShoesBootsCombatFilled = { ent-ClothingShoesBootsCombat } .suffix = Заполненный .desc = { ent-ClothingShoesBootsCombat.desc } +ent-ClothingShoesBootsJackFilled = { ent-ClothingShoesBootsJack } + .desc = { ent-ClothingShoesBootsJack.desc } +ent-ClothingShoesBootsWinterSecFilled = { ent-ClothingShoesBootsWinterSec } + .desc = { ent-ClothingShoesBootsWinterSec.desc } +ent-ClothingShoesBootsCowboyBlackFilled = { ent-ClothingShoesBootsCowboyBlack } + .desc = { ent-ClothingShoesBootsCowboyBlack.desc } +ent-ClothingShoesHighheelBootsFilled = { ent-ClothingShoesHighheelBoots } + .desc = { ent-ClothingShoesHighheelBoots.desc } ent-ClothingShoesBootsMercFilled = { ent-ClothingShoesBootsMerc } .suffix = Заполненный .desc = { ent-ClothingShoesBootsMerc.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl index 35521191276b53..b578a7c5e6e9a3 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl @@ -1,2 +1,7 @@ ent-ClothingEyesBase = { ent-Clothing } .desc = { ent-Clothing.desc } +ent-ClothingHeadEyeBaseFlippable = { ent-ClothingEyesBase } + .desc = { ent-ClothingEyesBase.desc } +ent-ClothingHeadEyeBaseFlipped = { ent-ClothingHeadEyeBaseFlippable } + .suffix = flipped + .desc = { ent-ClothingHeadEyeBaseFlippable.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl index 62a9fc89672e2c..1f032aea6efbfe 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl @@ -35,9 +35,17 @@ ent-ClothingEyesGlassesHiddenSecurity = { ent-ClothingEyesGlassesSunglasses } .desc = { ent-ClothingEyesGlassesSunglasses.desc } ent-ClothingEyesEyepatchHudMedical = медицинский моновизор .desc = Окуляр с индикатором на стекле, который сканирует гуманоидов в поле зрения и предоставляет точные данные о состоянии их здоровья. Для настоящих патриотов. +ent-ClothingEyesEyepatchHudMedicalFlipped = medical hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudMedical.desc } ent-ClothingEyesEyepatchHudSecurity = моновизор охраны .desc = Окуляр с индикатором на стекле, который сканирует гуманоидов в поле зрения и предоставляет точные данные об их идентификационном статусе и записях в системе безопасности. Для настоящих патриотов. +ent-ClothingEyesEyepatchHudSecurityFlipped = security hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudSecurity.desc } ent-ClothingEyesEyepatchHudBeer = пивной монокуляр .desc = Пара солнцезащитных очков, оснащенных сканером реагентов, а также дающих понимание вязкости жидкости во время движения. Для настоящих патриотов. +ent-ClothingEyesEyepatchHudBeerFlipped = beer hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudBeer.desc } ent-ClothingEyesEyepatchHudDiag = диагностический моновизор .desc = Окуляр с индикатором на стекле, способный анализировать целостность и состояние роботов и экзокостюмов. Сделан из си-боргия. +ent-ClothingEyesEyepatchHudDiagFlipped = diagnostic hud eyepatch + .desc = { ent-ClothingEyesEyepatchHudDiag.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl index ea84561313d39c..9a939c52234054 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl @@ -2,3 +2,6 @@ ent-ClothingEyesEyepatch = глазная повязка .desc = Яррр. ent-ClothingEyesBlindfold = повязка на глаза .desc = Полоса непроницаемого материала. +ent-ClothingEyesEyepatchFlipped = { ent-ClothingEyesEyepatch } + .suffix = flipped + .desc = { ent-ClothingEyesEyepatch.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/head/hoods.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/head/hoods.ftl index 8fbe8364720ecc..9084b65cd406c5 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/head/hoods.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/head/hoods.ftl @@ -30,6 +30,8 @@ ent-ClothingHeadHatHoodIan = капюшон иана .desc = Капюшон для завершения образа 'Хороший мальчик'. ent-ClothingHeadHatHoodCarp = капюшон карпа .desc = Капюшон, украшенный пластиковыми зубами космического карпа. +ent-ClothingHeadHelmetHardsuitCarp = { ent-ClothingHeadHatHoodCarp } + .desc = { ent-ClothingHeadHatHoodCarp.desc } ent-ClothingHeadHatHoodMoth = маска моли .desc = Маска в виде головы моли обычно изготавливается из легких материалов. Она имитирует форму головы моли с большими глазами и длинными усиками. Такие маски часто используются в косплее или при съемках кино и видео. ent-ClothingHeadHatHoodWinterDefault = стандартный капюшон зимнего пальто diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl index aee41c4da741e5..e63ec4c2270c15 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl @@ -23,3 +23,6 @@ ent-ClothingOuterSuitIan = костюм иана .desc = Кто хороший мальчик? ent-ClothingOuterSuitCarp = костюм карпа .desc = Специальный костюм, который делает вас похожим на космического карпа. +ent-ClothingOuterHardsuitCarp = { ent-ClothingOuterSuitCarp } + .suffix = Hardsuit, DO NOT MAP + .desc = { ent-ClothingOuterSuitCarp.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl index 4c7a98cc388c52..f9959904f2e1ec 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl @@ -4,5 +4,8 @@ ent-ClothingShoesBaseButcherable = { ent-ClothingShoesBase } .desc = { ent-ClothingShoesBase.desc } ent-ClothingShoesMilitaryBase = { ent-ClothingShoesBase } .desc = { ent-ClothingShoesBase.desc } +ent-ClothingShoesBootsSecFilled = { "" } + .suffix = Filled + .desc = { "" } ent-ClothingShoesBaseWinterBoots = { ent-ClothingShoesBaseButcherable } .desc = Меховые сапоги помогут пережить даже самую холодную зиму. diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl index 694d5655683e6e..6072e8a1aa6957 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl @@ -2,49 +2,73 @@ ent-Jug = кувшин .desc = Используется для хранения очень большого количества химических веществ или растворов. Пить залпом крайне не рекомендуется. ent-JugCarbon = кувшин (углерод) .desc = { ent-Jug.desc } + .suffix = carbon ent-JugIodine = кувшин (йод) .desc = { ent-Jug.desc } + .suffix = iodine ent-JugFluorine = кувшин (фтор) .desc = { ent-Jug.desc } + .suffix = fluorine ent-JugChlorine = кувшин (хлор) .desc = { ent-Jug.desc } + .suffix = chlorine ent-JugAluminium = кувшин (алюминий) .desc = { ent-Jug.desc } + .suffix = aluminium ent-JugPhosphorus = кувшин (фосфор) .desc = { ent-Jug.desc } + .suffix = phosphorus ent-JugSulfur = кувшин (сера) .desc = { ent-Jug.desc } + .suffix = sulfur ent-JugSilicon = кувшин (кремний) .desc = { ent-Jug.desc } + .suffix = silicon ent-JugHydrogen = кувшин (водород) .desc = { ent-Jug.desc } + .suffix = hydrogen ent-JugLithium = кувшин (литий) .desc = { ent-Jug.desc } + .suffix = lithium ent-JugSodium = кувшин (натрий) .desc = { ent-Jug.desc } + .suffix = sodium ent-JugPotassium = кувшин (калий) .desc = { ent-Jug.desc } + .suffix = potassium ent-JugRadium = кувшин (радий) .desc = { ent-Jug.desc } + .suffix = radium ent-JugIron = кувшин (железо) .desc = { ent-Jug.desc } + .suffix = iron ent-JugCopper = кувшин (медь) .desc = { ent-Jug.desc } + .suffix = copper ent-JugGold = кувшин (золото) .desc = { ent-Jug.desc } + .suffix = gold ent-JugMercury = кувшин (ртуть) .desc = { ent-Jug.desc } + .suffix = mercury ent-JugSilver = кувшин (серебро) .desc = { ent-Jug.desc } + .suffix = silver ent-JugEthanol = кувшин (этанол) .desc = { ent-Jug.desc } + .suffix = ethanol ent-JugSugar = кувшин (сахар) .desc = { ent-Jug.desc } + .suffix = sugar ent-JugNitrogen = кувшин (азот) .desc = { ent-Jug.desc } + .suffix = nitrogen ent-JugOxygen = кувшин (кислород) .desc = { ent-Jug.desc } + .suffix = oxygen ent-JugPlantBGone = кувшин (Plant-B-Gone) .desc = { ent-Jug.desc } + .suffix = Plant-B-Gone ent-JugWeldingFuel = кувшин (сварочное топливо) .desc = { ent-Jug.desc } + .suffix = welding fuel diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl new file mode 100644 index 00000000000000..c96e8709a751c3 --- /dev/null +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl @@ -0,0 +1,2 @@ +ent-MagazineFoamBox = ammunition box (foam) + .desc = { ent-MagazineLightRifleBox.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl index 9fa3b635583848..e3b2f9d7c9d3c1 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl @@ -9,3 +9,5 @@ ent-WeaponRifleM90GrenadeLauncher = М-90gl ent-WeaponRifleLecter = Лектер .desc = Первоклассная армейская штурмовая винтовка. Использует патроны калибра .20 винтовочный. .suffix = Автомат +ent-WeaponRifleFoam = Foam Force Astro Ace + .desc = A premium foam rifle of the highest quality. Its plastic feels rugged, and its mechanisms sturdy. diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl index f6a0b4e7981637..827c1c79409bd4 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl @@ -15,3 +15,5 @@ ent-GrenadeShrapnel = шрапнелевая граната .desc = Выпускает смертоносную шрапнель, вызывающую сильное кровотечение. ent-SlipocalypseClusterSoap = кластерное мыло Скользкопокалипсис .desc = После приземления разбрасывает вокруг себя маленькие кусочки мыла Синдиката. +ent-GrenadeFoamDart = foam dart grenade + .desc = Releases a bothersome spray of foam darts that cause severe welching. diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/stations/base.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/stations/base.ftl index e89548db24d68f..9e61de12d78281 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/stations/base.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/stations/base.ftl @@ -1,7 +1,5 @@ ent-BaseStation = { "" } .desc = { "" } -ent-BaseRandomStation = { "" } - .desc = { "" } ent-BaseStationCargo = { "" } .desc = { "" } ent-BaseStationJobsSpawning = { "" } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/gamerules/events.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/gamerules/events.ftl index f3c10234c5c2b5..4d5448f74765d4 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/gamerules/events.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/gamerules/events.ftl @@ -36,8 +36,6 @@ ent-CockroachMigration = { ent-BaseStationEventShortDelay } .desc = { ent-BaseStationEventShortDelay.desc } ent-PowerGridCheck = { ent-BaseStationEventShortDelay } .desc = { ent-BaseStationEventShortDelay.desc } -ent-RandomSentience = { ent-BaseGameRule } - .desc = { ent-BaseGameRule.desc } ent-SolarFlare = { ent-BaseGameRule } .desc = { ent-BaseGameRule.desc } ent-VentClog = { ent-BaseStationEventLongDelay } diff --git a/Resources/Locale/ru-RU/store/uplink-catalog.ftl b/Resources/Locale/ru-RU/store/uplink-catalog.ftl index 5f21c497c63986..263e7972894b65 100644 --- a/Resources/Locale/ru-RU/store/uplink-catalog.ftl +++ b/Resources/Locale/ru-RU/store/uplink-catalog.ftl @@ -216,6 +216,8 @@ uplink-hardsuit-syndie-name = Скафандр Синдиката uplink-hardsuit-syndie-desc = Широко известный бронированный кроваво-красный скафандр Синдиката, позволяющий выходить в открытый космос и устойчивый к пулям. uplink-clothing-shoes-boots-mag-syndie-name = Кроваво-красные магнитные сапоги uplink-clothing-shoes-boots-mag-syndie-desc = Пара ботинок, которые предотвращают поскальзывание и позволяют нормально передвигаться в условиях невесомости за счёт небольшого замедления. Кроме этого, они обладают функционалом реактивного ранца и поставляются заправленными, но хватает их ненадолго. +uplink-hardsuit-carp-name = Carp Hardsuit +uplink-hardsuit-carp-desc = Looks like an ordinary carp suit, except fully spaceproof and tricks space carp into thinking you are one of them. uplink-eva-syndie-name = Набор EVA Синдиката uplink-eva-syndie-desc = Простой EVA-скафандр, который не даёт никакой защиты, кроме той, что необходима для выживания в космосе. uplink-hardsuit-syndieelite-name = Элитный скафандр Синдиката From 4d928df0e42e762717c265f4b464a73100b47779 Mon Sep 17 00:00:00 2001 From: MilenVolf Date: Wed, 19 Jun 2024 01:18:01 +0300 Subject: [PATCH 80/82] Localization --- Resources/Locale/ru-RU/borg/borg.ftl | 4 +- .../transformable-container-component.ftl | 2 +- Resources/Locale/ru-RU/cluwne/cluwne.ftl | 9 +- Resources/Locale/ru-RU/glue/glue.ftl | 2 +- .../ru-RU/guidebook/chemistry/conditions.ftl | 2 +- Resources/Locale/ru-RU/lube/lube.ftl | 2 +- Resources/Locale/ru-RU/machine/machine.ftl | 2 +- Resources/Locale/ru-RU/markings/reptilian.ftl | 4 +- .../nutrition/components/animal-husbandry.ftl | 2 +- .../ru-RU/preferences/loadout-groups.ftl | 2 +- .../Locale/ru-RU/reagents/meta/toxins.ftl | 4 +- .../prototypes/catalog/fills/items/misc.ftl | 1 - .../clothing/eyes/base_clothingeyes.ftl | 2 +- .../prototypes/entities/clothing/eyes/hud.ftl | 8 +- .../entities/clothing/eyes/misc.ftl | 6 +- .../entities/clothing/outerclothing/suits.ftl | 2 +- .../clothing/shoes/base_clothingshoes.ftl | 2 +- .../objects/specific/chemical-containers.ftl | 94 +++++++++---------- .../weapons/guns/ammunition/magazines/toy.ftl | 2 +- .../objects/weapons/guns/rifles/rifles.ftl | 4 +- .../objects/weapons/throwable/clusterbang.ftl | 4 +- .../Locale/ru-RU/store/uplink-catalog.ftl | 4 +- Resources/Locale/ru-RU/zombies/zombie.ftl | 7 +- 23 files changed, 90 insertions(+), 81 deletions(-) diff --git a/Resources/Locale/ru-RU/borg/borg.ftl b/Resources/Locale/ru-RU/borg/borg.ftl index 52401b57c557f3..5dbbb3f1ff9883 100644 --- a/Resources/Locale/ru-RU/borg/borg.ftl +++ b/Resources/Locale/ru-RU/borg/borg.ftl @@ -15,7 +15,7 @@ borg-ui-modules-label = Модули: borg-ui-module-counter = { $actual }/{ $max } # Transponder borg-transponder-disabled-popup = Мозг вылетает из верхушки { $name }! -borg-transponder-disabling-popup = Your transponder begins to lock you out of the chassis! -borg-transponder-destroying-popup = The self destruct of { $name } starts beeping! +borg-transponder-disabling-popup = Ваш транспондер начинает блокировать доступ к корпусу! +borg-transponder-destroying-popup = Механизм самоуничтожения { $name } начинает пищать! borg-transponder-emagged-disabled-popup = Огни вашего транспондера погасли! borg-transponder-emagged-destroyed-popup = Предохранитель вашего транспондера перегорел! diff --git a/Resources/Locale/ru-RU/chemistry/components/transformable-container-component.ftl b/Resources/Locale/ru-RU/chemistry/components/transformable-container-component.ftl index de88f9fb97f97b..8c72b95ad039a3 100644 --- a/Resources/Locale/ru-RU/chemistry/components/transformable-container-component.ftl +++ b/Resources/Locale/ru-RU/chemistry/components/transformable-container-component.ftl @@ -1 +1 @@ -transformable-container-component-glass = стакан { $name } +transformable-container-component-glass = стакан { $reagent } diff --git a/Resources/Locale/ru-RU/cluwne/cluwne.ftl b/Resources/Locale/ru-RU/cluwne/cluwne.ftl index 1660c5ec4d5828..ddb8a2d686e6c9 100644 --- a/Resources/Locale/ru-RU/cluwne/cluwne.ftl +++ b/Resources/Locale/ru-RU/cluwne/cluwne.ftl @@ -1,2 +1,7 @@ -cluwne-transform = { CAPITALIZE(THE($target)) } превратился в клувна! -cluwne-name-prefix = Клувнирован { $target } +cluwne-transform = { CAPITALIZE($target) } превратился в клувна! +cluwne-name-prefix = клувнированн{ GENDER($target) -> + [male] ый + [female] ая + [epicene] ое + *[neuter] ые + } { $baseName } diff --git a/Resources/Locale/ru-RU/glue/glue.ftl b/Resources/Locale/ru-RU/glue/glue.ftl index 94b034eeb0362c..0ed38faab2bd98 100644 --- a/Resources/Locale/ru-RU/glue/glue.ftl +++ b/Resources/Locale/ru-RU/glue/glue.ftl @@ -1,5 +1,5 @@ glue-success = { $target } был покрыт клеем. -glued-name-prefix = Приклеен { $target } +glued-name-prefix = приклеенный { $baseName } glue-failure = { $target } уже в клее. glue-verb-text = Нанести клей glue-verb-message = Приклеить предмет diff --git a/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl b/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl index 53349f4e702cfb..9253e35249ae22 100644 --- a/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl +++ b/Resources/Locale/ru-RU/guidebook/chemistry/conditions.ftl @@ -26,7 +26,7 @@ reagent-effect-condition-guidebook-reagent-threshold = } } reagent-effect-condition-guidebook-mob-state-condition = состояние существа { $state } -reagent-effect-condition-guidebook-job-condition = the target's job is { $job } +reagent-effect-condition-guidebook-job-condition = работа цели { $job } reagent-effect-condition-guidebook-solution-temperature = температура раствора { $max -> [2147483648] не менее { NATURALFIXED($min, 2) }К diff --git a/Resources/Locale/ru-RU/lube/lube.ftl b/Resources/Locale/ru-RU/lube/lube.ftl index 56028dae5fb455..15fb861487131d 100644 --- a/Resources/Locale/ru-RU/lube/lube.ftl +++ b/Resources/Locale/ru-RU/lube/lube.ftl @@ -1,5 +1,5 @@ lube-success = { $target } было покрыто смазкой! -lubed-name-prefix = Смазано { $target } +lubed-name-prefix = смазанный { $baseName } lube-failure = Не получается покрыть { $target } смазкой! lube-slip = { $target } выскальзывает из рук! lube-verb-text = Применить смазку diff --git a/Resources/Locale/ru-RU/machine/machine.ftl b/Resources/Locale/ru-RU/machine/machine.ftl index 38a276e543b961..4f8df17a8c78d1 100644 --- a/Resources/Locale/ru-RU/machine/machine.ftl +++ b/Resources/Locale/ru-RU/machine/machine.ftl @@ -1,4 +1,4 @@ -machine-insert-item = { $user } помещает { $item } в { $machine }. +machine-insert-item = { CAPITALIZE($user) } помещает { $item } в { $machine }. machine-upgrade-examinable-verb-text = Улучшения machine-upgrade-examinable-verb-message = Узнайте, какие характеристики устройства были улучшены. machine-upgrade-increased-by-percentage = [color=yellow]{ CAPITALIZE($upgraded) }[/color] увеличено на { $percent }%. diff --git a/Resources/Locale/ru-RU/markings/reptilian.ftl b/Resources/Locale/ru-RU/markings/reptilian.ftl index baef0430de897b..32f160b62d16bc 100644 --- a/Resources/Locale/ru-RU/markings/reptilian.ftl +++ b/Resources/Locale/ru-RU/markings/reptilian.ftl @@ -62,8 +62,8 @@ marking-LizardHornsMyrsore-horns_myrsore = Унатх, рожки (Мирзор marking-LizardHornsMyrsore = Унатх, рожки (Мирзора) marking-LizardHornsBighorn-horns_bighorn = Унатх, рожки (Толсторог) marking-LizardHornsBighorn = Унатх, рожки (Толсторог) -marking-LizardHornsDemonic-horns_demonic = Lizard Horns (Demonic) -marking-LizardHornsDemonic = Lizard Horns (Demonic) +marking-LizardHornsDemonic-horns_demonic = Унатх, рожки (Демонические) +marking-LizardHornsDemonic = Унатх, рожки (Демонические) marking-LizardHornsKoboldEars-horns_kobold_ears = Унатх, уши (Кобольд) marking-LizardHornsKoboldEars = Унатх, уши (Кобольд) marking-LizardHornsFloppyKoboldEars-horns_floppy_kobold_ears = Унатх, уши (Вислоухий кобольд) diff --git a/Resources/Locale/ru-RU/nutrition/components/animal-husbandry.ftl b/Resources/Locale/ru-RU/nutrition/components/animal-husbandry.ftl index fb3eee70d3aeb7..96dd3e03ef5211 100644 --- a/Resources/Locale/ru-RU/nutrition/components/animal-husbandry.ftl +++ b/Resources/Locale/ru-RU/nutrition/components/animal-husbandry.ftl @@ -1,3 +1,3 @@ -infant-name-prefix = ребёнок { $name } +infant-name-prefix = ребёнок { $baseName } reproductive-birth-popup = { CAPITALIZE($parent) } родила! reproductive-laid-egg-popup = { CAPITALIZE($parent) } отложила яйцо! diff --git a/Resources/Locale/ru-RU/preferences/loadout-groups.ftl b/Resources/Locale/ru-RU/preferences/loadout-groups.ftl index f7c5315ab631d6..69ed8fe8f142c6 100644 --- a/Resources/Locale/ru-RU/preferences/loadout-groups.ftl +++ b/Resources/Locale/ru-RU/preferences/loadout-groups.ftl @@ -2,7 +2,7 @@ loadout-group-trinkets = Безделушки loadout-group-glasses = Очки loadout-group-backpack = Рюкзак -loadout-group-instruments = Instruments +loadout-group-instruments = Инструменты # Command loadout-group-captain-head = Голова капитана loadout-group-captain-jumpsuit = Комбинезон капитана diff --git a/Resources/Locale/ru-RU/reagents/meta/toxins.ftl b/Resources/Locale/ru-RU/reagents/meta/toxins.ftl index 0f70d8be3c7eb1..077ba8ffdfc841 100644 --- a/Resources/Locale/ru-RU/reagents/meta/toxins.ftl +++ b/Resources/Locale/ru-RU/reagents/meta/toxins.ftl @@ -52,5 +52,5 @@ reagent-name-tazinide = тазинид reagent-desc-tazinide = Очень опасная металлическая смесь, которая может нарушить возможность передвигаться благодаря электризующему воздействию. reagent-name-lipolicide = липолицид reagent-desc-lipolicide = Мощный токсин, разрушающий жировые клетки и способствующий снижению массы тела в сжатые сроки. Смертельно опасен для тех, у кого в организме нет питательных веществ. -reagent-name-mechanotoxin = mechanotoxin -reagent-desc-mechanotoxin = A neurotoxin used as venom by some species of spider. Degrades movement when built up. +reagent-name-mechanotoxin = механотоксин +reagent-desc-mechanotoxin = Нейротоксин, используемый в качестве яда некоторыми видами пауков. При накоплении замедляет движение. diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl index 0623c216eec31f..f483c138fc5189 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/catalog/fills/items/misc.ftl @@ -1,5 +1,4 @@ ent-ClothingShoesBootsCombatFilled = { ent-ClothingShoesBootsCombat } - .suffix = Заполненный .desc = { ent-ClothingShoesBootsCombat.desc } ent-ClothingShoesBootsJackFilled = { ent-ClothingShoesBootsJack } .desc = { ent-ClothingShoesBootsJack.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl index b578a7c5e6e9a3..8cb2beab041e2d 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/base_clothingeyes.ftl @@ -3,5 +3,5 @@ ent-ClothingEyesBase = { ent-Clothing } ent-ClothingHeadEyeBaseFlippable = { ent-ClothingEyesBase } .desc = { ent-ClothingEyesBase.desc } ent-ClothingHeadEyeBaseFlipped = { ent-ClothingHeadEyeBaseFlippable } - .suffix = flipped + .suffix = Перевёрнутая .desc = { ent-ClothingHeadEyeBaseFlippable.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl index 1f032aea6efbfe..52a17910116dbd 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/hud.ftl @@ -35,17 +35,17 @@ ent-ClothingEyesGlassesHiddenSecurity = { ent-ClothingEyesGlassesSunglasses } .desc = { ent-ClothingEyesGlassesSunglasses.desc } ent-ClothingEyesEyepatchHudMedical = медицинский моновизор .desc = Окуляр с индикатором на стекле, который сканирует гуманоидов в поле зрения и предоставляет точные данные о состоянии их здоровья. Для настоящих патриотов. -ent-ClothingEyesEyepatchHudMedicalFlipped = medical hud eyepatch +ent-ClothingEyesEyepatchHudMedicalFlipped = { ent-ClothingEyesEyepatchHudMedical } .desc = { ent-ClothingEyesEyepatchHudMedical.desc } ent-ClothingEyesEyepatchHudSecurity = моновизор охраны .desc = Окуляр с индикатором на стекле, который сканирует гуманоидов в поле зрения и предоставляет точные данные об их идентификационном статусе и записях в системе безопасности. Для настоящих патриотов. -ent-ClothingEyesEyepatchHudSecurityFlipped = security hud eyepatch +ent-ClothingEyesEyepatchHudSecurityFlipped = { ent-ClothingEyesEyepatchHudSecurity } .desc = { ent-ClothingEyesEyepatchHudSecurity.desc } ent-ClothingEyesEyepatchHudBeer = пивной монокуляр .desc = Пара солнцезащитных очков, оснащенных сканером реагентов, а также дающих понимание вязкости жидкости во время движения. Для настоящих патриотов. -ent-ClothingEyesEyepatchHudBeerFlipped = beer hud eyepatch +ent-ClothingEyesEyepatchHudBeerFlipped = { ent-ClothingEyesEyepatchHudBeer } .desc = { ent-ClothingEyesEyepatchHudBeer.desc } ent-ClothingEyesEyepatchHudDiag = диагностический моновизор .desc = Окуляр с индикатором на стекле, способный анализировать целостность и состояние роботов и экзокостюмов. Сделан из си-боргия. -ent-ClothingEyesEyepatchHudDiagFlipped = diagnostic hud eyepatch +ent-ClothingEyesEyepatchHudDiagFlipped = { ent-ClothingEyesEyepatchHudDiag } .desc = { ent-ClothingEyesEyepatchHudDiag.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl index 9a939c52234054..48a48d0e1d4a8f 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/eyes/misc.ftl @@ -1,7 +1,7 @@ -ent-ClothingEyesEyepatch = глазная повязка - .desc = Яррр. ent-ClothingEyesBlindfold = повязка на глаза .desc = Полоса непроницаемого материала. +ent-ClothingEyesEyepatch = глазная повязка + .desc = Яррр. ent-ClothingEyesEyepatchFlipped = { ent-ClothingEyesEyepatch } - .suffix = flipped + .suffix = Перевёрнутая .desc = { ent-ClothingEyesEyepatch.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl index e63ec4c2270c15..420b95bcaf853e 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/outerclothing/suits.ftl @@ -24,5 +24,5 @@ ent-ClothingOuterSuitIan = костюм иана ent-ClothingOuterSuitCarp = костюм карпа .desc = Специальный костюм, который делает вас похожим на космического карпа. ent-ClothingOuterHardsuitCarp = { ent-ClothingOuterSuitCarp } - .suffix = Hardsuit, DO NOT MAP + .suffix = Скафандр, НЕ МАППИТЬ .desc = { ent-ClothingOuterSuitCarp.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl index f9959904f2e1ec..8dd00dcfd2731c 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/clothing/shoes/base_clothingshoes.ftl @@ -5,7 +5,7 @@ ent-ClothingShoesBaseButcherable = { ent-ClothingShoesBase } ent-ClothingShoesMilitaryBase = { ent-ClothingShoesBase } .desc = { ent-ClothingShoesBase.desc } ent-ClothingShoesBootsSecFilled = { "" } - .suffix = Filled + .suffix = Заполненные .desc = { "" } ent-ClothingShoesBaseWinterBoots = { ent-ClothingShoesBaseButcherable } .desc = Меховые сапоги помогут пережить даже самую холодную зиму. diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl index 6072e8a1aa6957..9f0ade56161e3b 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/specific/chemical-containers.ftl @@ -1,74 +1,74 @@ ent-Jug = кувшин .desc = Используется для хранения очень большого количества химических веществ или растворов. Пить залпом крайне не рекомендуется. -ent-JugCarbon = кувшин (углерод) +ent-JugCarbon = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = carbon -ent-JugIodine = кувшин (йод) + .suffix = углерод +ent-JugIodine = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = iodine -ent-JugFluorine = кувшин (фтор) + .suffix = йод +ent-JugFluorine = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = fluorine -ent-JugChlorine = кувшин (хлор) + .suffix = фтор +ent-JugChlorine = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = chlorine -ent-JugAluminium = кувшин (алюминий) + .suffix = хлор +ent-JugAluminium = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = aluminium -ent-JugPhosphorus = кувшин (фосфор) + .suffix = алюминий +ent-JugPhosphorus = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = phosphorus -ent-JugSulfur = кувшин (сера) + .suffix = фосфор +ent-JugSulfur = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = sulfur -ent-JugSilicon = кувшин (кремний) + .suffix = сера +ent-JugSilicon = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = silicon -ent-JugHydrogen = кувшин (водород) + .suffix = кремний +ent-JugHydrogen = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = hydrogen -ent-JugLithium = кувшин (литий) + .suffix = водород +ent-JugLithium = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = lithium -ent-JugSodium = кувшин (натрий) + .suffix = литий +ent-JugSodium = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = sodium -ent-JugPotassium = кувшин (калий) + .suffix = натрий +ent-JugPotassium = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = potassium -ent-JugRadium = кувшин (радий) + .suffix = калий +ent-JugRadium = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = radium -ent-JugIron = кувшин (железо) + .suffix = радий +ent-JugIron = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = iron -ent-JugCopper = кувшин (медь) + .suffix = железо +ent-JugCopper = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = copper -ent-JugGold = кувшин (золото) + .suffix = медь +ent-JugGold = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = gold -ent-JugMercury = кувшин (ртуть) + .suffix = золото +ent-JugMercury = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = mercury -ent-JugSilver = кувшин (серебро) + .suffix = ртуть +ent-JugSilver = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = silver -ent-JugEthanol = кувшин (этанол) + .suffix = серебро +ent-JugEthanol = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = ethanol -ent-JugSugar = кувшин (сахар) + .suffix = этанол +ent-JugSugar = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = sugar -ent-JugNitrogen = кувшин (азот) + .suffix = сахар +ent-JugNitrogen = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = nitrogen -ent-JugOxygen = кувшин (кислород) + .suffix = азот +ent-JugOxygen = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = oxygen -ent-JugPlantBGone = кувшин (Plant-B-Gone) + .suffix = кислород +ent-JugPlantBGone = { ent-Jug } .desc = { ent-Jug.desc } .suffix = Plant-B-Gone -ent-JugWeldingFuel = кувшин (сварочное топливо) +ent-JugWeldingFuel = { ent-Jug } .desc = { ent-Jug.desc } - .suffix = welding fuel + .suffix = сварочное топливо diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl index c96e8709a751c3..0aeb680e2154b0 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/ammunition/magazines/toy.ftl @@ -1,2 +1,2 @@ -ent-MagazineFoamBox = ammunition box (foam) +ent-MagazineFoamBox = коробка патронов (пена) .desc = { ent-MagazineLightRifleBox.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl index e3b2f9d7c9d3c1..7c4a585e4d7334 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/rifles/rifles.ftl @@ -9,5 +9,5 @@ ent-WeaponRifleM90GrenadeLauncher = М-90gl ent-WeaponRifleLecter = Лектер .desc = Первоклассная армейская штурмовая винтовка. Использует патроны калибра .20 винтовочный. .suffix = Автомат -ent-WeaponRifleFoam = Foam Force Astro Ace - .desc = A premium foam rifle of the highest quality. Its plastic feels rugged, and its mechanisms sturdy. +ent-WeaponRifleFoam = Пенопласовый принудитель Astro Ace + .desc = Поролоновая винтовка премиум-класса высочайшего качества. Ее пластик кажется прочным, а механизмы - надежными. diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl index 827c1c79409bd4..1bcefd3331ca2f 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/throwable/clusterbang.ftl @@ -15,5 +15,5 @@ ent-GrenadeShrapnel = шрапнелевая граната .desc = Выпускает смертоносную шрапнель, вызывающую сильное кровотечение. ent-SlipocalypseClusterSoap = кластерное мыло Скользкопокалипсис .desc = После приземления разбрасывает вокруг себя маленькие кусочки мыла Синдиката. -ent-GrenadeFoamDart = foam dart grenade - .desc = Releases a bothersome spray of foam darts that cause severe welching. +ent-GrenadeFoamDart = граната с поролоновыми дротиками + .desc = Выпускает рой надоедливых поролоновых дротиков, которые приводят к образованию серьёзных засосов. diff --git a/Resources/Locale/ru-RU/store/uplink-catalog.ftl b/Resources/Locale/ru-RU/store/uplink-catalog.ftl index 263e7972894b65..1a2487fcd46b07 100644 --- a/Resources/Locale/ru-RU/store/uplink-catalog.ftl +++ b/Resources/Locale/ru-RU/store/uplink-catalog.ftl @@ -216,8 +216,8 @@ uplink-hardsuit-syndie-name = Скафандр Синдиката uplink-hardsuit-syndie-desc = Широко известный бронированный кроваво-красный скафандр Синдиката, позволяющий выходить в открытый космос и устойчивый к пулям. uplink-clothing-shoes-boots-mag-syndie-name = Кроваво-красные магнитные сапоги uplink-clothing-shoes-boots-mag-syndie-desc = Пара ботинок, которые предотвращают поскальзывание и позволяют нормально передвигаться в условиях невесомости за счёт небольшого замедления. Кроме этого, они обладают функционалом реактивного ранца и поставляются заправленными, но хватает их ненадолго. -uplink-hardsuit-carp-name = Carp Hardsuit -uplink-hardsuit-carp-desc = Looks like an ordinary carp suit, except fully spaceproof and tricks space carp into thinking you are one of them. +uplink-hardsuit-carp-name = Скафандр карпа +uplink-hardsuit-carp-desc = Выглядит как обычный костюм карпа, только полностью космический и обманывает космических карпов, заставляя их думать, что вы один из них. uplink-eva-syndie-name = Набор EVA Синдиката uplink-eva-syndie-desc = Простой EVA-скафандр, который не даёт никакой защиты, кроме той, что необходима для выживания в космосе. uplink-hardsuit-syndieelite-name = Элитный скафандр Синдиката diff --git a/Resources/Locale/ru-RU/zombies/zombie.ftl b/Resources/Locale/ru-RU/zombies/zombie.ftl index fac5452ac8f3e6..7eaf39d4fecfde 100644 --- a/Resources/Locale/ru-RU/zombies/zombie.ftl +++ b/Resources/Locale/ru-RU/zombies/zombie.ftl @@ -1,7 +1,12 @@ zombie-transform = { CAPITALIZE($target) } стал зомби! zombie-infection-greeting = Вы стали зомби. Ваша задача - искать и заражать живых. Работайте сообща со своими воскресшими коллегами, чтобы одолеть оставшихся членов экипажа. zombie-generic = зомби -zombie-name-prefix = зомби { $target } +zombie-name-prefix = зомбированн{ GENDER($target) -> + [male] ый + [female] ая + [epicene] ое + *[neuter] ые + } { $baseName } zombie-role-desc = Зловещий мертвец. zombie-role-rules = Вы - антагонист. Ищите и кусайте живых людей, чтобы заразить их и превратить в зомби. Работайте сообща с другими зомби, чтобы захватить станцию. zombie-permadeath = На этот раз, Вы действительно мертвы. From b4b0f7a7c1efea6aaae48330d2309b9a00ad8394 Mon Sep 17 00:00:00 2001 From: MilenVolf Date: Wed, 19 Jun 2024 01:18:54 +0300 Subject: [PATCH 81/82] Some useful .bat files --- BUILD.bat | 19 +++++++++++++++++++ run-localization.bat | 6 ++++++ 2 files changed, 25 insertions(+) create mode 100644 BUILD.bat create mode 100644 run-localization.bat diff --git a/BUILD.bat b/BUILD.bat new file mode 100644 index 00000000000000..5cf28023b1353c --- /dev/null +++ b/BUILD.bat @@ -0,0 +1,19 @@ +@echo off +chcp 65001 > nul +setlocal +echo Версии сборки: +echo 1 - Debug +echo 2 - Release +:SetBuild +set /p choice="Введите номер требуемой сборки: " +if "%choice%"=="1" ( +echo Сборка Debug версии... +dotnet build -c Debug +)else if "%choice%"=="2" ( +echo Сборка Release версии... +dotnet build -c Release +)else ( +echo Некорректный номер сборки. Пожалуйста, выберите 1 или 2. +goto SetBuild) +endlocal +pause \ No newline at end of file diff --git a/run-localization.bat b/run-localization.bat new file mode 100644 index 00000000000000..a8e2e8e336a995 --- /dev/null +++ b/run-localization.bat @@ -0,0 +1,6 @@ +@echo off +cd Resources/Prototypes +python ../../Tools/ss14_ru/yamlextractor.py +pause +python ../../Tools/ss14_ru/keyfinder.py +pause From 3eb57f0439b6f193ee9a5bbc82056b0f61e20cd1 Mon Sep 17 00:00:00 2001 From: MilenVolf Date: Wed, 19 Jun 2024 01:52:42 +0300 Subject: [PATCH 82/82] Fix locale --- Resources/Locale/ru-RU/cluwne/cluwne.ftl | 7 +------ Resources/Locale/ru-RU/zombies/zombie.ftl | 7 +------ 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/Resources/Locale/ru-RU/cluwne/cluwne.ftl b/Resources/Locale/ru-RU/cluwne/cluwne.ftl index ddb8a2d686e6c9..338264fcca7c0d 100644 --- a/Resources/Locale/ru-RU/cluwne/cluwne.ftl +++ b/Resources/Locale/ru-RU/cluwne/cluwne.ftl @@ -1,7 +1,2 @@ cluwne-transform = { CAPITALIZE($target) } превратился в клувна! -cluwne-name-prefix = клувнированн{ GENDER($target) -> - [male] ый - [female] ая - [epicene] ое - *[neuter] ые - } { $baseName } +cluwne-name-prefix = клувн { $baseName } diff --git a/Resources/Locale/ru-RU/zombies/zombie.ftl b/Resources/Locale/ru-RU/zombies/zombie.ftl index 7eaf39d4fecfde..4c08c01b71a762 100644 --- a/Resources/Locale/ru-RU/zombies/zombie.ftl +++ b/Resources/Locale/ru-RU/zombies/zombie.ftl @@ -1,12 +1,7 @@ zombie-transform = { CAPITALIZE($target) } стал зомби! zombie-infection-greeting = Вы стали зомби. Ваша задача - искать и заражать живых. Работайте сообща со своими воскресшими коллегами, чтобы одолеть оставшихся членов экипажа. zombie-generic = зомби -zombie-name-prefix = зомбированн{ GENDER($target) -> - [male] ый - [female] ая - [epicene] ое - *[neuter] ые - } { $baseName } +zombie-name-prefix = зомби { $baseName } zombie-role-desc = Зловещий мертвец. zombie-role-rules = Вы - антагонист. Ищите и кусайте живых людей, чтобы заразить их и превратить в зомби. Работайте сообща с другими зомби, чтобы захватить станцию. zombie-permadeath = На этот раз, Вы действительно мертвы.