From a3dc0eb75a2d0cdcdedd149384c23422b74e8ea8 Mon Sep 17 00:00:00 2001 From: Boaz1111 <149967078+Boaz1111@users.noreply.github.com> Date: Thu, 31 Oct 2024 11:56:07 +0100 Subject: [PATCH 001/112] Pill Bottles can only store pills now (#33074) * no longer absurd * Update Resources/Prototypes/Entities/Objects/Specific/chemistry.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> --- Resources/Prototypes/Entities/Objects/Specific/chemistry.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml index 3f2ac403ac9..b717255d8f0 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml @@ -586,4 +586,7 @@ areaInsertRadius: 1 storageInsertSound: /Audio/Effects/pill_insert.ogg storageRemoveSound: /Audio/Effects/pill_remove.ogg + whitelist: + tags: + - Pill - type: Dumpable From 826bd1ab45c0e4958785eb9dc653fb7d3527a5b3 Mon Sep 17 00:00:00 2001 From: PJBot Date: Thu, 31 Oct 2024 10:57:15 +0000 Subject: [PATCH 002/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index b9b8422096b..3645a63f1ec 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,13 +1,4 @@ Entries: -- author: themias - changes: - - message: Butter can be sliced, cookie and toast recipes now use butter slices. - type: Tweak - - message: Chefvend butter reduced from 4 to 3. - type: Tweak - id: 7065 - time: '2024-08-08T23:32:42.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30789 - author: EmoGarbage404 changes: - message: You should have significantly less friction when moving in space. @@ -3945,3 +3936,10 @@ id: 7564 time: '2024-10-30T09:15:30.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32720 +- author: Boaz1111 + changes: + - message: Pill bottles can now only store pills. + type: Tweak + id: 7565 + time: '2024-10-31T10:56:07.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33074 From f5e564640077097f719f7d242277f965577c901c Mon Sep 17 00:00:00 2001 From: AJCM-git <60196617+AJCM-git@users.noreply.github.com> Date: Thu, 31 Oct 2024 07:22:13 -0400 Subject: [PATCH 003/112] New workflow to apply the pr approved label (#28358) * New workflow to apply the pr approved label * Maybe fix permissions --- .github/workflows/labeler-approved.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .github/workflows/labeler-approved.yml diff --git a/.github/workflows/labeler-approved.yml b/.github/workflows/labeler-approved.yml new file mode 100644 index 00000000000..f583500c87a --- /dev/null +++ b/.github/workflows/labeler-approved.yml @@ -0,0 +1,17 @@ +name: "Labels: Approved" + +on: + pull_request_review: + types: [submitted] + +jobs: + add_label: + if: github.event.review.state == 'APPROVED' + permissions: + contents: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions-ecosystem/action-add-labels@v1 + with: + labels: "PR: Approved" From 426169837100eaa1e0fccc62dbd7aedc0b0d5dd5 Mon Sep 17 00:00:00 2001 From: Jarmer123 <148848017+Jarmer123@users.noreply.github.com> Date: Thu, 31 Oct 2024 14:26:45 +0100 Subject: [PATCH 004/112] Add a spare bible to PietyVend (#32363) Update chapel.yml --- .../Prototypes/Catalog/VendingMachines/Inventories/chapel.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml index 33a13dab0a0..cb9e06932fd 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml @@ -20,6 +20,7 @@ BoxCandle: 2 BoxCandleSmall: 2 Urn: 5 + Bible: 1 emaggedInventory: ClothingOuterArmorCult: 1 ClothingHeadHelmetCult: 1 From a875bf3c64f0c9021382764714229e852c449be7 Mon Sep 17 00:00:00 2001 From: PJBot Date: Thu, 31 Oct 2024 13:27:53 +0000 Subject: [PATCH 005/112] 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 3645a63f1ec..7c22ba77f91 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: EmoGarbage404 - changes: - - message: You should have significantly less friction when moving in space. - type: Tweak - id: 7066 - time: '2024-08-09T04:52:25.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29383 - author: Plykiya changes: - message: Hardsuits and EVA suits now count as protection for unscrewing lightbulbs. @@ -3943,3 +3936,10 @@ id: 7565 time: '2024-10-31T10:56:07.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33074 +- author: Jarmer123 + changes: + - message: You can now find a spare bible in the PietyVend + type: Add + id: 7566 + time: '2024-10-31T13:26:46.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32363 From 55861b4fcfb525113d4c194fd1eac0486ac9fc1a Mon Sep 17 00:00:00 2001 From: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Date: Thu, 31 Oct 2024 15:12:26 +0100 Subject: [PATCH 006/112] [#28722 fix] Add notification for dependent wearables being dropped (#33078) * add notification for dependent wearables being dropped * fix dropped item popup redundancy - did a check to see if any item was dropped, instead of making a notification for each item being dropped. * change popup to client-only variant * fix redundant messages, add plural locale string * fix conventions, fix locale input to be more intuitive --------- Co-authored-by: Justin --- .../Inventory/InventorySystem.Equip.cs | 45 +++++++++++++++---- .../components/inventory-component.ftl | 6 +++ 2 files changed, 43 insertions(+), 8 deletions(-) diff --git a/Content.Shared/Inventory/InventorySystem.Equip.cs b/Content.Shared/Inventory/InventorySystem.Equip.cs index 1d5d91a9e36..f089dfaf238 100644 --- a/Content.Shared/Inventory/InventorySystem.Equip.cs +++ b/Content.Shared/Inventory/InventorySystem.Equip.cs @@ -47,7 +47,7 @@ private void InitializeEquip() private void OnEntRemoved(EntityUid uid, InventoryComponent component, EntRemovedFromContainerMessage args) { - if(!TryGetSlot(uid, args.Container.ID, out var slotDef, inventory: component)) + if (!TryGetSlot(uid, args.Container.ID, out var slotDef, inventory: component)) return; var unequippedEvent = new DidUnequipEvent(uid, args.Entity, slotDef); @@ -59,8 +59,8 @@ private void OnEntRemoved(EntityUid uid, InventoryComponent component, EntRemove private void OnEntInserted(EntityUid uid, InventoryComponent component, EntInsertedIntoContainerMessage args) { - if(!TryGetSlot(uid, args.Container.ID, out var slotDef, inventory: component)) - return; + if (!TryGetSlot(uid, args.Container.ID, out var slotDef, inventory: component)) + return; var equippedEvent = new DidEquipEvent(uid, args.Entity, slotDef); RaiseLocalEvent(uid, equippedEvent, true); @@ -118,7 +118,7 @@ private void OnUseSlot(UseSlotNetworkMessage ev, EntitySessionEventArgs eventArg RaiseLocalEvent(held.Value, new HandDeselectedEvent(actor)); - TryEquip(actor, actor, held.Value, ev.Slot, predicted: true, inventory: inventory, force: true, checkDoafter:true); + TryEquip(actor, actor, held.Value, ev.Slot, predicted: true, inventory: inventory, force: true, checkDoafter: true); } public bool TryEquip(EntityUid uid, EntityUid itemUid, string slot, bool silent = false, bool force = false, bool predicted = false, @@ -365,6 +365,25 @@ public bool TryUnequip( ClothingComponent? clothing = null, bool reparent = true, bool checkDoafter = false) + { + var itemsDropped = 0; + return TryUnequip(actor, target, slot, out removedItem, ref itemsDropped, + silent, force, predicted, inventory, clothing, reparent, checkDoafter); + } + + private bool TryUnequip( + EntityUid actor, + EntityUid target, + string slot, + [NotNullWhen(true)] out EntityUid? removedItem, + ref int itemsDropped, + bool silent = false, + bool force = false, + bool predicted = false, + InventoryComponent? inventory = null, + ClothingComponent? clothing = null, + bool reparent = true, + bool checkDoafter = false) { removedItem = null; @@ -423,17 +442,27 @@ public bool TryUnequip( return false; } + if (!_containerSystem.Remove(removedItem.Value, slotContainer, force: force, reparent: reparent)) + return false; + + // this is in order to keep track of whether this is the first instance of a recursion call + var firstRun = itemsDropped == 0; + ++itemsDropped; + foreach (var slotDef in inventory.Slots) { if (slotDef != slotDefinition && slotDef.DependsOn == slotDefinition.Name) { //this recursive call might be risky - TryUnequip(actor, target, slotDef.Name, true, true, predicted, inventory, reparent: reparent); + TryUnequip(actor, target, slotDef.Name, out _, ref itemsDropped, true, true, predicted, inventory, reparent: reparent); } } - if (!_containerSystem.Remove(removedItem.Value, slotContainer, force: force, reparent: reparent)) - return false; + // we check if any items were dropped, and make a popup if they were. + // the reason we check for > 1 is because the first item is always the one we are trying to unequip, + // whereas we only want to notify for extra dropped items. + if (!silent && _gameTiming.IsFirstTimePredicted && firstRun && itemsDropped > 1) + _popup.PopupClient(Loc.GetString("inventory-component-dropped-from-unequip", ("items", itemsDropped - 1)), target, target); // TODO: Inventory needs a hot cleanup hoo boy // Check if something else (AKA toggleable) dumped it into a container. @@ -466,7 +495,7 @@ public bool CanUnequip(EntityUid actor, EntityUid target, string slot, [NotNullW if ((containerSlot == null || slotDefinition == null) && !TryGetSlotContainer(target, slot, out containerSlot, out slotDefinition, inventory)) return false; - if (containerSlot.ContainedEntity is not {} itemUid) + if (containerSlot.ContainedEntity is not { } itemUid) return false; if (!_containerSystem.CanRemove(itemUid, containerSlot)) diff --git a/Resources/Locale/en-US/inventory/components/inventory-component.ftl b/Resources/Locale/en-US/inventory/components/inventory-component.ftl index 79943d914ea..1cde6b5943c 100644 --- a/Resources/Locale/en-US/inventory/components/inventory-component.ftl +++ b/Resources/Locale/en-US/inventory/components/inventory-component.ftl @@ -2,3 +2,9 @@ inventory-component-can-equip-cannot = You can't equip this! inventory-component-can-equip-does-not-fit = This doesn't fit! inventory-component-can-unequip-cannot = You can't unequip this! + +inventory-component-dropped-from-unequip = + You dropped {$items -> + [1] an item! + *[other] some items! +} From 872adb5c93fc4272ed668ba8599781e353425316 Mon Sep 17 00:00:00 2001 From: PJBot Date: Thu, 31 Oct 2024 14:13:33 +0000 Subject: [PATCH 007/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 7c22ba77f91..ad3d9382008 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,16 +1,4 @@ Entries: -- author: Plykiya - changes: - - message: Hardsuits and EVA suits now count as protection for unscrewing lightbulbs. - type: Add - - message: More gloves were given the ability to unscrew light bulbs. - type: Add - - message: Behonkers no longer hurt you when melee attacking them or interacting - with them. - type: Remove - id: 7067 - time: '2024-08-09T05:32:41.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30244 - author: Ian321 changes: - message: The warden is now an important job. @@ -3943,3 +3931,11 @@ id: 7566 time: '2024-10-31T13:26:46.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32363 +- author: justinbrick + changes: + - message: Added a pop-up notification when extra items are dropped while unequipping + something. + type: Tweak + id: 7567 + time: '2024-10-31T14:12:26.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33078 From a08da9d31f1f1c63f5124edff5a23d5443659bfc Mon Sep 17 00:00:00 2001 From: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com> Date: Thu, 31 Oct 2024 15:53:38 +0100 Subject: [PATCH 008/112] More pda space (#32601) * Rebalance the max programs that a PDA can hold * Give Caps PDA more programs too. * Make the max programs a static 8 * I forgor sec and med * CaseCase * Empty commit to re-run checks * The final change, I hope. --- .../CartridgeLoaderComponent.cs | 2 +- .../Entities/Objects/Devices/pda.yml | 67 ++++++++++++------- 2 files changed, 44 insertions(+), 25 deletions(-) diff --git a/Content.Shared/CartridgeLoader/CartridgeLoaderComponent.cs b/Content.Shared/CartridgeLoader/CartridgeLoaderComponent.cs index c9cd710c522..f47112c7943 100644 --- a/Content.Shared/CartridgeLoader/CartridgeLoaderComponent.cs +++ b/Content.Shared/CartridgeLoader/CartridgeLoaderComponent.cs @@ -33,7 +33,7 @@ public sealed partial class CartridgeLoaderComponent : Component /// The maximum amount of programs that can be installed on the cartridge loader entity /// [DataField] - public int DiskSpace = 5; + public int DiskSpace = 8; /// /// Controls whether the cartridge loader will play notifications if it supports it at all diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml index dfc1c6fa5be..673b0ba52fa 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml @@ -684,6 +684,13 @@ accentHColor: "#447987" - type: Icon state: pda-hos + - type: CartridgeLoader + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - WantedListCartridge + - LogProbeCartridge - type: entity parent: BaseSecurityPDA @@ -732,6 +739,16 @@ borderColor: "#00842e" - type: Icon state: pda-centcom + - type: CartridgeLoader + uiKey: enum.PdaUiKey.Key + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - MedTekCartridge + - WantedListCartridge + - LogProbeCartridge + - AstroNavCartridge - type: entity parent: CentcomPDA @@ -754,6 +771,8 @@ - NewsReaderCartridge - LogProbeCartridge - WantedListCartridge + - MedTekCartridge + - AstroNavCartridge - type: entity parent: CentcomPDA @@ -845,14 +864,6 @@ uiKey: enum.PdaUiKey.Key preinstalled: - NotekeeperCartridge - cartridgeSlot: - priority: -1 - name: Cartridge - ejectSound: /Audio/Machines/id_swipe.ogg - insertSound: /Audio/Machines/id_insert.ogg - whitelist: - components: - - Cartridge - type: entity parent: BaseSecurityPDA @@ -870,6 +881,16 @@ accentVColor: "#447987" - type: Icon state: pda-ert + - type: CartridgeLoader + uiKey: enum.PdaUiKey.Key + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - MedTekCartridge + - WantedListCartridge + - LogProbeCartridge + - AstroNavCartridge - type: entity parent: ERTLeaderPDA @@ -910,14 +931,6 @@ components: - type: Pda id: ERTMedicIDCard - - type: CartridgeLoader - uiKey: enum.PdaUiKey.Key - preinstalled: - - CrewManifestCartridge - - NotekeeperCartridge - - NewsReaderCartridge - - MedTekCartridge - - WantedListCartridge - type: entity parent: ERTLeaderPDA @@ -1019,6 +1032,13 @@ borderColor: "#774705" - type: Icon state: pda-detective + - type: CartridgeLoader + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - WantedListCartridge + - LogProbeCartridge - type: entity parent: BaseMedicalPDA @@ -1035,6 +1055,13 @@ accentVColor: "#d7d7d0" - type: Icon state: pda-brigmedic + - type: CartridgeLoader + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - WantedListCartridge + - MedTekCartridge - type: entity parent: ClownPDA @@ -1151,11 +1178,3 @@ preinstalled: - NotekeeperCartridge - MedTekCartridge - cartridgeSlot: - priority: -1 - name: Cartridge - ejectSound: /Audio/Machines/id_swipe.ogg - insertSound: /Audio/Machines/id_insert.ogg - whitelist: - components: - - Cartridge From bca8d95191cb09e97fad50f0b35e0f1730c81644 Mon Sep 17 00:00:00 2001 From: PJBot Date: Thu, 31 Oct 2024 14:54:44 +0000 Subject: [PATCH 009/112] Automatic changelog update --- Resources/Changelog/Admin.yml | 8 ++++++++ Resources/Changelog/Changelog.yml | 18 +++++++++++------- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Admin.yml b/Resources/Changelog/Admin.yml index 2c4db6e82b8..4bb373ca1dd 100644 --- a/Resources/Changelog/Admin.yml +++ b/Resources/Changelog/Admin.yml @@ -567,5 +567,13 @@ Entries: id: 70 time: '2024-10-16T22:24:31.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32844 +- author: BramvanZijp + changes: + - message: CC, ERT, Admin, and Deathsquad PDA's now have all departmental programs + pre-installed. + type: Tweak + id: 71 + time: '2024-10-31T14:53:38.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32601 Name: Admin Order: 1 diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index ad3d9382008..c3121dc7d07 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Ian321 - changes: - - message: The warden is now an important job. - type: Tweak - id: 7068 - time: '2024-08-09T05:45:51.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30745 - author: slarticodefast changes: - message: Added tooltips to the agent ID job icons @@ -3939,3 +3932,14 @@ id: 7567 time: '2024-10-31T14:12:26.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33078 +- author: BramvanZijp + changes: + - message: The maximum amount of programs that can be installed on a PDA has been + increased from 5 to 8 + type: Tweak + - message: The Detective and Head of Security now get the logprobe program pre-installed + on their PDA. + type: Tweak + id: 7568 + time: '2024-10-31T14:53:38.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32601 From d446a3e8e90f41c3d0a6413116148edef5274513 Mon Sep 17 00:00:00 2001 From: Vasilis Date: Thu, 31 Oct 2024 16:05:42 +0100 Subject: [PATCH 010/112] Potencially fix approved labeler (#33083) --- .github/workflows/labeler-approved.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/labeler-approved.yml b/.github/workflows/labeler-approved.yml index f583500c87a..e05893ed8f5 100644 --- a/.github/workflows/labeler-approved.yml +++ b/.github/workflows/labeler-approved.yml @@ -7,9 +7,6 @@ on: jobs: add_label: if: github.event.review.state == 'APPROVED' - permissions: - contents: read - pull-requests: write runs-on: ubuntu-latest steps: - uses: actions-ecosystem/action-add-labels@v1 From 1c2a96590bd12608937395329c7370cdfca00537 Mon Sep 17 00:00:00 2001 From: SpaceLizard Date: Thu, 31 Oct 2024 14:07:29 -0400 Subject: [PATCH 011/112] Fixed spelling mistake in water blaster description. (#33087) Fixed minor spelling mistake --- .../Entities/Objects/Weapons/Guns/Basic/watergun.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml index c96a1522d2e..55adfb7ba6c 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Basic/watergun.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity id: WeaponWaterGunBase abstract: true parent: BaseItem @@ -71,7 +71,7 @@ id: WeaponWaterBlaster parent: WeaponWaterGunBase name: water blaster - description: With this bad boy, you'll be the cooleste kid at the summer barbecue. + description: With this bad boy, you'll be the coolest kid at the summer barbecue. components: - type: Gun cameraRecoilScalar: 0 #no recoil From 4626904fa8e5915a4faddd74a4d917d8442bfb99 Mon Sep 17 00:00:00 2001 From: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Date: Thu, 31 Oct 2024 19:46:19 +0100 Subject: [PATCH 012/112] [#20285 fix] Carp Plush and Rehydratables can now be put into mop bucket (#33079) * Make shark plush janitor-bucketable * fix bucketed grey shark texture * Make sprites less shiny and adapt copyright notice * Made shark way way less shiny * Allow carp plush and rehydratables in mop bucket. * Remove old mop bucket shark sprites * Fix post-merge bugs * Fix errors * Move ReactiveContainer stuff to shared That should mean it is now predicted. * Custom eject verb for the mop bucket * Fixes OnSolutionChange, removes pop-up as there already is one. * .ftl is not necessary as the custom pop-up was removed * Review fixes * Update Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs * Update Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs --------- Co-authored-by: Psychpsyo Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> --- .../Components/ReactiveContainerComponent.cs | 21 +++++++ .../EntitySystems/ReactiveContainerSystem.cs | 53 ++++++++++++++++++ .../janitorial/janitorial-slot-component.ftl | 3 +- .../Prototypes/Entities/Objects/Fun/toys.yml | 5 ++ .../Structures/Specific/Janitor/janicart.yml | 19 +++++-- Resources/Prototypes/tags.yml | 3 + .../Objects/Fun/sharkplush.rsi/meta.json | 9 --- .../Janitorial/janitorial.rsi/meta.json | 14 ++++- .../janitorial.rsi/mopbucket_carpplush.png | Bin 0 -> 587 bytes .../janitorial.rsi}/mopbucket_shark_blue.png | Bin .../janitorial.rsi}/mopbucket_shark_grey.png | Bin .../janitorial.rsi}/mopbucket_shark_pink.png | Bin 12 files changed, 112 insertions(+), 15 deletions(-) create mode 100644 Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs create mode 100644 Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs create mode 100644 Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/mopbucket_carpplush.png rename Resources/Textures/Objects/{Fun/sharkplush.rsi => Specific/Janitorial/janitorial.rsi}/mopbucket_shark_blue.png (100%) rename Resources/Textures/Objects/{Fun/sharkplush.rsi => Specific/Janitorial/janitorial.rsi}/mopbucket_shark_grey.png (100%) rename Resources/Textures/Objects/{Fun/sharkplush.rsi => Specific/Janitorial/janitorial.rsi}/mopbucket_shark_pink.png (100%) diff --git a/Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs b/Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs new file mode 100644 index 00000000000..6aefd8f462f --- /dev/null +++ b/Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs @@ -0,0 +1,21 @@ +namespace Content.Shared.Chemistry.Components; + +/// +/// Represents a container that also contains a solution. +/// This means that reactive entities react when inserted into the container. +/// +[RegisterComponent] +public sealed partial class ReactiveContainerComponent : Component +{ + /// + /// The container that holds the solution. + /// + [DataField(required: true)] + public string Container = default!; + + /// + /// The solution in the container. + /// + [DataField(required: true)] + public string Solution = default!; +} diff --git a/Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs b/Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs new file mode 100644 index 00000000000..aa217c60ba3 --- /dev/null +++ b/Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs @@ -0,0 +1,53 @@ +using Content.Shared.Chemistry.Components; +using Content.Shared.Chemistry.Reaction; +using Robust.Shared.Containers; + +namespace Content.Shared.Chemistry.EntitySystems; + +public sealed class ReactiveContainerSystem : EntitySystem +{ + [Dependency] private readonly SharedContainerSystem _containerSystem = default!; + [Dependency] private readonly ReactiveSystem _reactiveSystem = default!; + [Dependency] private readonly SharedSolutionContainerSystem _solutionContainerSystem = default!; + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnInserted); + SubscribeLocalEvent(OnSolutionChange); + } + + private void OnInserted(EntityUid uid, ReactiveContainerComponent comp, EntInsertedIntoContainerMessage args) + { + // Only reactive entities can react with the solution + if (!HasComp(args.Entity)) + return; + + if (!_solutionContainerSystem.TryGetSolution(uid, comp.Solution, out _, out var solution)) + return; + if (solution.Volume == 0) + return; + + _reactiveSystem.DoEntityReaction(args.Entity, solution, ReactionMethod.Touch); + } + + private void OnSolutionChange(EntityUid uid, ReactiveContainerComponent comp, SolutionContainerChangedEvent args) + { + if (!_solutionContainerSystem.TryGetSolution(uid, comp.Solution, out _, out var solution)) + return; + if (solution.Volume == 0) + return; + if (!TryComp(uid, out var manager)) + return; + if (!_containerSystem.TryGetContainer(uid, comp.Container, out var container)) + return; + + foreach (var entity in container.ContainedEntities) + { + if (!HasComp(entity)) + continue; + _reactiveSystem.DoEntityReaction(entity, solution, ReactionMethod.Touch); + } + } +} diff --git a/Resources/Locale/en-US/janitorial/janitorial-slot-component.ftl b/Resources/Locale/en-US/janitorial/janitorial-slot-component.ftl index b7221165871..bc03943a016 100644 --- a/Resources/Locale/en-US/janitorial/janitorial-slot-component.ftl +++ b/Resources/Locale/en-US/janitorial/janitorial-slot-component.ftl @@ -1,5 +1,6 @@ # mop bucket -mop-bucket-slot-component-slot-name-shark = Shark +mop-bucket-slot-component-slot-name-item = Item +mop-bucket-slot-component-eject-verb = Take out # janitorial trolley janitorial-trolley-slot-component-slot-name-plunger = Plunger janitorial-trolley-slot-component-slot-name-sign = Sign diff --git a/Resources/Prototypes/Entities/Objects/Fun/toys.yml b/Resources/Prototypes/Entities/Objects/Fun/toys.yml index c3ef0d03292..d774c4469c9 100644 --- a/Resources/Prototypes/Entities/Objects/Fun/toys.yml +++ b/Resources/Prototypes/Entities/Objects/Fun/toys.yml @@ -599,6 +599,11 @@ path: /Audio/Effects/bite.ogg angle: 0 animation: WeaponArcBite # Rrrr! + - type: Tag + tags: + - Payload + - ClothMade + - PlushieCarp - type: entity parent: PlushieCarp diff --git a/Resources/Prototypes/Entities/Structures/Specific/Janitor/janicart.yml b/Resources/Prototypes/Entities/Structures/Specific/Janitor/janicart.yml index 6ed06addcd4..d74fe8b0f1b 100644 --- a/Resources/Prototypes/Entities/Structures/Specific/Janitor/janicart.yml +++ b/Resources/Prototypes/Entities/Structures/Specific/Janitor/janicart.yml @@ -47,19 +47,30 @@ whitelist: tags: - PlushieSharkGrey - sprite: Objects/Fun/sharkplush.rsi + mopbucket_carpplush: + whitelist: + tags: + - PlushieCarp + sprite: Objects/Specific/Janitorial/janitorial.rsi - type: Transform noRot: true - type: ItemSlots slots: - shark_slot: - name: mop-bucket-slot-component-slot-name-shark + item_slot: + name: mop-bucket-slot-component-slot-name-item + ejectVerbText: mop-bucket-slot-component-eject-verb whitelist: tags: - PlushieSharkBlue - PlushieSharkPink - PlushieSharkGrey + - PlushieCarp + components: + - Rehydratable priority: 3 # Higher than drinking priority + - type: ReactiveContainer + solution: bucket + container: item_slot - type: Drink solution: bucket - type: Appearance @@ -70,7 +81,7 @@ containers: storagebase: !type:Container ents: [] - shark_slot: !type:ContainerSlot {} + item_slot: !type:ContainerSlot {} - type: GuideHelp guides: - Janitorial diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index 8962da5790c..48bce7ddab7 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -1071,6 +1071,9 @@ - type: Tag id: Plunger +- type: Tag + id: PlushieCarp + - type: Tag id: PlushieGhost diff --git a/Resources/Textures/Objects/Fun/sharkplush.rsi/meta.json b/Resources/Textures/Objects/Fun/sharkplush.rsi/meta.json index eca1964c4dd..12144d35596 100644 --- a/Resources/Textures/Objects/Fun/sharkplush.rsi/meta.json +++ b/Resources/Textures/Objects/Fun/sharkplush.rsi/meta.json @@ -39,15 +39,6 @@ { "name": "grey-inhand-right", "directions": 4 - }, - { - "name": "mopbucket_shark_blue" - }, - { - "name": "mopbucket_shark_pink" - }, - { - "name": "mopbucket_shark_grey" } ] } \ No newline at end of file diff --git a/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json b/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json index ae3103e2be2..4f7a1e77722 100644 --- a/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/f8f4aeda930fcd0805ca4cc76d9bc9412a5b3428", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/f8f4aeda930fcd0805ca4cc76d9bc9412a5b3428, mopbucket_shark_* by Psychpsyo, mopbucket_carpplush adapted by Psychpsyo from tgstation carpplush at commit https://github.com/tgstation/tgstation/commit/e1142f20f5e4661cb6845cfcf2dd69f864d67432", "size": { "x": 32, "y": 32 @@ -25,6 +25,18 @@ { "name": "mopbucket_water-3" }, + { + "name": "mopbucket_shark_blue" + }, + { + "name": "mopbucket_shark_pink" + }, + { + "name": "mopbucket_shark_grey" + }, + { + "name": "mopbucket_carpplush" + }, { "name": "inhand-left", "directions": 4 diff --git a/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/mopbucket_carpplush.png b/Resources/Textures/Objects/Specific/Janitorial/janitorial.rsi/mopbucket_carpplush.png new file mode 100644 index 0000000000000000000000000000000000000000..07ef0a77d006ba591efd80af039c800a90660f37 GIT binary patch literal 587 zcmV-R0<`^!P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0pLkQK~z{r?UhYS z+)xyT-+}v>9_k56`q@<+ezenU(WA;D%RXe+Vgs8x`QZ!_O z>T`*wo1Rh3dmCU@aiV6hfSMSjE*xvo9iT#Hf|nM&d8?3_e=@*)#F<)>Rn(~hQ$pb) zC2=xQmnod4fHNoHw=MndZHDe`fQ6^20k8c&Wvwt&*>fk47_LY}+ljt^)0@SY$|+{v z*?K)`#Mr>sEmv*4KfqhJiH4n^mkRtzq^>|p`&~%PFDpcQ3L#ZtEY4i26t6l!5Cqq{ zS#1h37JngI=#nUB%>g)1E&v-?m>%JGEO9(^XoYKW=B7AfWPrtOOyPT?a7Mj88n{|q z_n+DjlPM-r0>5Z~=hDY{V$oa(?DajY1rg#n&YP7{xCK1%`K>m=xODIwwC#~zGhP+w z&06?&n3?f(Z8AFep|9(BVm Date: Thu, 31 Oct 2024 18:47:26 +0000 Subject: [PATCH 013/112] 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 c3121dc7d07..370970d8dd5 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: slarticodefast - changes: - - message: Added tooltips to the agent ID job icons - type: Add - id: 7069 - time: '2024-08-09T06:14:07.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/28575 - author: stalengd changes: - message: Head bandana no longer blocks food eating. @@ -3943,3 +3936,11 @@ id: 7568 time: '2024-10-31T14:53:38.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32601 +- author: Psychpsyo + changes: + - message: Carp plushies can now be placed in mop buckets, along with other rehydratable + things like monkey cubes. + type: Add + id: 7569 + time: '2024-10-31T18:46:19.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33079 From 2282e3c352827d1638cfdda62d1a5b6683679b33 Mon Sep 17 00:00:00 2001 From: Vasilis Date: Thu, 31 Oct 2024 19:51:44 +0100 Subject: [PATCH 014/112] Revert #28358 (#33090) --- .github/workflows/labeler-approved.yml | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 .github/workflows/labeler-approved.yml diff --git a/.github/workflows/labeler-approved.yml b/.github/workflows/labeler-approved.yml deleted file mode 100644 index e05893ed8f5..00000000000 --- a/.github/workflows/labeler-approved.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: "Labels: Approved" - -on: - pull_request_review: - types: [submitted] - -jobs: - add_label: - if: github.event.review.state == 'APPROVED' - runs-on: ubuntu-latest - steps: - - uses: actions-ecosystem/action-add-labels@v1 - with: - labels: "PR: Approved" From 56d62311b1a16c2471b4f5a07a87f70532a3feb8 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Thu, 31 Oct 2024 17:30:58 -0400 Subject: [PATCH 015/112] Fixes tailthump breaking positional audio by making it mono (#33092) --- .../Voice/Reptilian/reptilian_tailthump.ogg | Bin 31956 -> 9215 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Resources/Audio/Voice/Reptilian/reptilian_tailthump.ogg b/Resources/Audio/Voice/Reptilian/reptilian_tailthump.ogg index e4bf25f7b8d1e743e34826b343f33e41e9298e16..fff0a8728a7d7123dc4d9b89f23603f677396a34 100644 GIT binary patch delta 8227 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 Hm4W{O+Q|*_ literal 31956 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 Date: Thu, 31 Oct 2024 21:32:04 +0000 Subject: [PATCH 016/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 370970d8dd5..c8301b98078 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: stalengd - changes: - - message: Head bandana no longer blocks food eating. - type: Fix - id: 7070 - time: '2024-08-09T06:17:51.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/28910 - author: Ubaser changes: - message: Oxygen and nitrogen canisters now have new sprites when worn. @@ -3944,3 +3937,13 @@ id: 7569 time: '2024-10-31T18:46:19.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33079 +- author: Bhijn and Myr + changes: + - message: Tail thumping has been downmixed to mono to fix the sound lacking any + sort of positioning. They're now capable of having a presence in the actual + soundspace, in turn meaning lizards are no longer occupying your headset at + all times of day. + type: Fix + id: 7570 + time: '2024-10-31T21:30:58.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33092 From cf0d6c482e667802b7ecfb3754616103b759b976 Mon Sep 17 00:00:00 2001 From: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com> Date: Thu, 31 Oct 2024 17:21:05 -0700 Subject: [PATCH 017/112] ExaminableDamage now puts its message at the bottom and in color (#32820) * the examineableDamage component now puts its messages at the bottom, and in color * god help us if something is priority -100 :godo: --- Content.Server/Damage/Systems/ExaminableDamageSystem.cs | 2 +- Resources/Locale/en-US/window/window-component.ftl | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Content.Server/Damage/Systems/ExaminableDamageSystem.cs b/Content.Server/Damage/Systems/ExaminableDamageSystem.cs index dd7c4b12e84..c80e19a53d6 100644 --- a/Content.Server/Damage/Systems/ExaminableDamageSystem.cs +++ b/Content.Server/Damage/Systems/ExaminableDamageSystem.cs @@ -39,7 +39,7 @@ private void OnExamine(EntityUid uid, ExaminableDamageComponent component, Exami var level = GetDamageLevel(uid, component); var msg = Loc.GetString(messages[level]); - args.PushMarkup(msg); + args.PushMarkup(msg,-99); } private int GetDamageLevel(EntityUid uid, ExaminableDamageComponent? component = null, diff --git a/Resources/Locale/en-US/window/window-component.ftl b/Resources/Locale/en-US/window/window-component.ftl index 3ecceb8a94e..62e9c46f1be 100644 --- a/Resources/Locale/en-US/window/window-component.ftl +++ b/Resources/Locale/en-US/window/window-component.ftl @@ -2,13 +2,14 @@ # Shown when examining the window. Each entry represents the window's health condition comp-window-damaged-1 = It looks fully intact. -comp-window-damaged-2 = It has a few scratches +comp-window-damaged-2 = It has a few scratches. comp-window-damaged-3 = It has a few small cracks. -comp-window-damaged-4 = It has several big cracks running along its surface. -comp-window-damaged-5 = It has deep cracks across multiple layers. -comp-window-damaged-6 = It's extremely cracked and on the verge of shattering. +comp-window-damaged-4 = [color=yellow]It has several big cracks running along its surface.[/color] +comp-window-damaged-5 = [color=orange]It has deep cracks across multiple layers.[/color] +comp-window-damaged-6 = [color=red]It's extremely cracked and on the verge of shattering.[/color] ### Interaction Messages # Shown when knocking on a window comp-window-knock = *knock knock* + From 835d0b4d4a861c4697c473841c0e00ae7115e4d0 Mon Sep 17 00:00:00 2001 From: Khoa Nguyen Date: Thu, 31 Oct 2024 21:43:11 -0400 Subject: [PATCH 018/112] Fixed trash not being spawned when throwing pies (#33013) * Fixed trash not being spawned when throwing pies * Completely removed trash component flag check prior to the spawn loop --- Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs b/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs index 2ff94760f6b..b107e47c79d 100644 --- a/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs +++ b/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs @@ -51,12 +51,9 @@ protected override void SplattedCreamPie(EntityUid uid, CreamPieComponent creamP { _puddle.TrySpillAt(uid, solution, out _, false); } - if (foodComp.Trash.Count == 0) + foreach (var trash in foodComp.Trash) { - foreach (var trash in foodComp.Trash) - { - EntityManager.SpawnEntity(trash, Transform(uid).Coordinates); - } + EntityManager.SpawnEntity(trash, Transform(uid).Coordinates); } } ActivatePayload(uid); From 59f1287aa3fa7848d815926d64c15c276f79bc56 Mon Sep 17 00:00:00 2001 From: PJBot Date: Fri, 1 Nov 2024 01:44:18 +0000 Subject: [PATCH 019/112] 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 c8301b98078..f5a8a7fb968 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Ubaser - changes: - - message: Oxygen and nitrogen canisters now have new sprites when worn. - type: Add - id: 7071 - time: '2024-08-09T10:32:55.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30809 - author: Plykiya changes: - message: Buckling someone now triggers a short do-after. @@ -3947,3 +3940,10 @@ id: 7570 time: '2024-10-31T21:30:58.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33092 +- author: reesque + changes: + - message: pie not dropping tin on thrown + type: Fix + id: 7571 + time: '2024-11-01T01:43:11.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33013 From b3190b89359ffe6e4e1d58e1c1ef69b8d7f70476 Mon Sep 17 00:00:00 2001 From: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Date: Fri, 1 Nov 2024 02:47:59 +0100 Subject: [PATCH 020/112] Lower in-round votekick requirements (#32953) Initial commit --- Content.Client/Voting/UI/VoteCallMenu.xaml.cs | 2 +- Content.Shared/CCVar/CCVars.cs | 4 ++-- Resources/Locale/en-US/voting/ui/vote-call-menu.ftl | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Content.Client/Voting/UI/VoteCallMenu.xaml.cs b/Content.Client/Voting/UI/VoteCallMenu.xaml.cs index c5746c24d79..c682a937120 100644 --- a/Content.Client/Voting/UI/VoteCallMenu.xaml.cs +++ b/Content.Client/Voting/UI/VoteCallMenu.xaml.cs @@ -62,7 +62,7 @@ public VoteCallMenu() Stylesheet = IoCManager.Resolve().SheetSpace; CloseButton.OnPressed += _ => Close(); - VoteNotTrustedLabel.Text = Loc.GetString("ui-vote-trusted-users-notice", ("timeReq", _cfg.GetCVar(CCVars.VotekickEligibleVoterDeathtime) / 60)); + VoteNotTrustedLabel.Text = Loc.GetString("ui-vote-trusted-users-notice", ("timeReq", _cfg.GetCVar(CCVars.VotekickEligibleVoterDeathtime))); foreach (StandardVoteType voteType in Enum.GetValues()) { diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index 339c0f895fc..f333f6536d4 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -1469,7 +1469,7 @@ public static readonly CVarDef /// Config for when the votekick should be allowed to be called based on number of eligible voters. /// public static readonly CVarDef VotekickEligibleNumberRequirement = - CVarDef.Create("votekick.eligible_number", 10, CVar.SERVERONLY); + CVarDef.Create("votekick.eligible_number", 5, CVar.SERVERONLY); /// /// Whether a votekick initiator must be a ghost or not. @@ -1493,7 +1493,7 @@ public static readonly CVarDef /// Config for how many seconds a player must have been dead to initiate a votekick / be able to vote on a votekick. /// public static readonly CVarDef VotekickEligibleVoterDeathtime = - CVarDef.Create("votekick.voter_deathtime", 180, CVar.REPLICATED | CVar.SERVER); + CVarDef.Create("votekick.voter_deathtime", 30, CVar.REPLICATED | CVar.SERVER); /// /// The required ratio of eligible voters that must agree for a votekick to go through. diff --git a/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl b/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl index 7ac9c344fde..fbae3598ed6 100644 --- a/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl +++ b/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl @@ -26,7 +26,7 @@ ui-vote-type-not-available = This vote type has been disabled # Vote option only available for specific users. ui-vote-trusted-users-notice = This vote option is only available to whitelisted players. - In addition, you must have been a ghost for { $timeReq } minutes. + In addition, you must have been a ghost for { $timeReq } seconds. # Warning to not abuse a specific vote option. ui-vote-abuse-warning = From 06da4fcc6020c41d8dcac6612724bf5309518501 Mon Sep 17 00:00:00 2001 From: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Date: Fri, 1 Nov 2024 02:52:55 +0100 Subject: [PATCH 021/112] Allow votekicks to be initiated in the lobby (#32528) Initial commit --- Content.Client/Voting/UI/VoteCallMenu.xaml.cs | 12 +++++ Content.Client/Voting/VotingSystem.cs | 5 -- .../Managers/VoteManager.DefaultVotes.cs | 15 ++++-- Content.Server/Voting/VotingSystem.cs | 47 ++++++++++++------- Content.Shared/CCVar/CCVars.cs | 6 +++ 5 files changed, 58 insertions(+), 27 deletions(-) diff --git a/Content.Client/Voting/UI/VoteCallMenu.xaml.cs b/Content.Client/Voting/UI/VoteCallMenu.xaml.cs index c682a937120..b9dd11f7a78 100644 --- a/Content.Client/Voting/UI/VoteCallMenu.xaml.cs +++ b/Content.Client/Voting/UI/VoteCallMenu.xaml.cs @@ -1,5 +1,6 @@ using System.Linq; using System.Numerics; +using Content.Client.Gameplay; using Content.Client.Stylesheets; using Content.Shared.Administration; using Content.Shared.CCVar; @@ -8,6 +9,7 @@ using JetBrains.Annotations; using Robust.Client.AutoGenerated; using Robust.Client.Console; +using Robust.Client.State; using Robust.Client.UserInterface.Controls; using Robust.Client.UserInterface.CustomControls; using Robust.Client.UserInterface.XAML; @@ -28,6 +30,7 @@ public sealed partial class VoteCallMenu : BaseWindow [Dependency] private readonly IEntityManager _entityManager = default!; [Dependency] private readonly IEntityNetworkManager _entNetManager = default!; [Dependency] private readonly IConfigurationManager _cfg = default!; + [Dependency] private readonly IStateManager _state = default!; private VotingSystem _votingSystem; @@ -70,6 +73,7 @@ public VoteCallMenu() VoteTypeButton.AddItem(Loc.GetString(option.Name), (int)voteType); } + _state.OnStateChanged += OnStateChanged; VoteTypeButton.OnItemSelected += VoteTypeSelected; CreateButton.OnPressed += CreatePressed; FollowButton.OnPressed += FollowSelected; @@ -101,6 +105,14 @@ protected override void FrameUpdate(FrameEventArgs args) UpdateVoteTimeout(); } + private void OnStateChanged(StateChangedEventArgs obj) + { + if (obj.NewState is not GameplayState) + return; + + Close(); + } + private void CanCallVoteChanged(bool obj) { if (!obj) diff --git a/Content.Client/Voting/VotingSystem.cs b/Content.Client/Voting/VotingSystem.cs index d2049174605..dd74e1ccb18 100644 --- a/Content.Client/Voting/VotingSystem.cs +++ b/Content.Client/Voting/VotingSystem.cs @@ -19,11 +19,6 @@ public override void Initialize() private void OnVotePlayerListResponseEvent(VotePlayerListResponseEvent msg) { - if (!_ghostSystem.IsGhost) - { - return; - } - VotePlayerListResponse?.Invoke(msg); } diff --git a/Content.Server/Voting/Managers/VoteManager.DefaultVotes.cs b/Content.Server/Voting/Managers/VoteManager.DefaultVotes.cs index 736ff48817e..fb99b3cfad8 100644 --- a/Content.Server/Voting/Managers/VoteManager.DefaultVotes.cs +++ b/Content.Server/Voting/Managers/VoteManager.DefaultVotes.cs @@ -32,6 +32,7 @@ public sealed partial class VoteManager private VotingSystem? _votingSystem; private RoleSystem? _roleSystem; + private GameTicker? _gameTicker; private static readonly Dictionary> _voteTypesToEnableCVars = new() { @@ -70,8 +71,8 @@ public void CreateStandardVote(ICommonSession? initiator, StandardVoteType voteT default: throw new ArgumentOutOfRangeException(nameof(voteType), voteType, null); } - var ticker = _entityManager.EntitySysManager.GetEntitySystem(); - ticker.UpdateInfoText(); + _gameTicker = _entityManager.EntitySysManager.GetEntitySystem(); + _gameTicker.UpdateInfoText(); if (timeoutVote) TimeoutStandardVote(voteType); } @@ -346,8 +347,14 @@ private async void CreateVotekickVote(ICommonSession? initiator, string[]? args) return; } + + + var voterEligibility = _cfg.GetCVar(CCVars.VotekickVoterGhostRequirement) ? VoterEligibility.GhostMinimumPlaytime : VoterEligibility.MinimumPlaytime; + if (_cfg.GetCVar(CCVars.VotekickIgnoreGhostReqInLobby) && _gameTicker!.RunLevel == GameRunLevel.PreRoundLobby) + voterEligibility = VoterEligibility.MinimumPlaytime; + var eligibleVoterNumberRequirement = _cfg.GetCVar(CCVars.VotekickEligibleNumberRequirement); - var eligibleVoterNumber = _cfg.GetCVar(CCVars.VotekickVoterGhostRequirement) ? CalculateEligibleVoterNumber(VoterEligibility.GhostMinimumPlaytime) : CalculateEligibleVoterNumber(VoterEligibility.MinimumPlaytime); + var eligibleVoterNumber = CalculateEligibleVoterNumber(voterEligibility); string target = args[0]; string reason = args[1]; @@ -441,7 +448,7 @@ private async void CreateVotekickVote(ICommonSession? initiator, string[]? args) }, Duration = TimeSpan.FromSeconds(_cfg.GetCVar(CCVars.VotekickTimer)), InitiatorTimeout = TimeSpan.FromMinutes(_cfg.GetCVar(CCVars.VotekickTimeout)), - VoterEligibility = _cfg.GetCVar(CCVars.VotekickVoterGhostRequirement) ? VoterEligibility.GhostMinimumPlaytime : VoterEligibility.MinimumPlaytime, + VoterEligibility = voterEligibility, DisplayVotes = false, TargetEntity = targetNetEntity }; diff --git a/Content.Server/Voting/VotingSystem.cs b/Content.Server/Voting/VotingSystem.cs index 25475c2157a..3d3aeb48598 100644 --- a/Content.Server/Voting/VotingSystem.cs +++ b/Content.Server/Voting/VotingSystem.cs @@ -1,5 +1,6 @@ using Content.Server.Administration.Managers; using Content.Server.Database; +using Content.Server.GameTicking; using Content.Server.Ghost; using Content.Server.Roles.Jobs; using Content.Shared.CCVar; @@ -24,6 +25,7 @@ public sealed class VotingSystem : EntitySystem [Dependency] private readonly IGameTiming _gameTiming = default!; [Dependency] private readonly IConfigurationManager _cfg = default!; [Dependency] private readonly JobSystem _jobs = default!; + [Dependency] private readonly GameTicker _gameTicker = default!; public override void Initialize() { @@ -34,8 +36,7 @@ public override void Initialize() private async void OnVotePlayerListRequestEvent(VotePlayerListRequestEvent msg, EntitySessionEventArgs args) { - if (args.SenderSession.AttachedEntity is not { Valid: true } entity - || !await CheckVotekickInitEligibility(args.SenderSession)) + if (!await CheckVotekickInitEligibility(args.SenderSession)) { var deniedResponse = new VotePlayerListResponseEvent(new (NetUserId, NetEntity, string)[0], true); RaiseNetworkEvent(deniedResponse, args.SenderSession.Channel); @@ -46,17 +47,23 @@ private async void OnVotePlayerListRequestEvent(VotePlayerListRequestEvent msg, foreach (var player in _playerManager.Sessions) { - if (player.AttachedEntity is not { Valid: true } attached) - continue; - - if (attached == entity) continue; + if (args.SenderSession == player) continue; if (_adminManager.IsAdmin(player, false)) continue; - var playerName = GetPlayerVoteListName(attached); - var netEntity = GetNetEntity(attached); - - players.Add((player.UserId, netEntity, playerName)); + if (player.AttachedEntity is not { Valid: true } attached) + { + var playerName = player.Name; + var netEntity = NetEntity.Invalid; + players.Add((player.UserId, netEntity, playerName)); + } + else + { + var playerName = GetPlayerVoteListName(attached); + var netEntity = GetNetEntity(attached); + + players.Add((player.UserId, netEntity, playerName)); + } } var response = new VotePlayerListResponseEvent(players.ToArray(), false); @@ -86,15 +93,19 @@ public async Task CheckVotekickInitEligibility(ICommonSession? initiator) if (initiator.AttachedEntity != null && _adminManager.IsAdmin(initiator.AttachedEntity.Value, false)) return true; - if (_cfg.GetCVar(CCVars.VotekickInitiatorGhostRequirement)) + // If cvar enabled, skip the ghost requirement in the preround lobby + if (!_cfg.GetCVar(CCVars.VotekickIgnoreGhostReqInLobby) || (_cfg.GetCVar(CCVars.VotekickIgnoreGhostReqInLobby) && _gameTicker.RunLevel != GameRunLevel.PreRoundLobby)) { - // Must be ghost - if (!TryComp(initiator.AttachedEntity, out GhostComponent? ghostComp)) - return false; - - // Must have been dead for x seconds - if ((int)_gameTiming.RealTime.Subtract(ghostComp.TimeOfDeath).TotalSeconds < _cfg.GetCVar(CCVars.VotekickEligibleVoterDeathtime)) - return false; + if (_cfg.GetCVar(CCVars.VotekickInitiatorGhostRequirement)) + { + // Must be ghost + if (!TryComp(initiator.AttachedEntity, out GhostComponent? ghostComp)) + return false; + + // Must have been dead for x seconds + if ((int)_gameTiming.RealTime.Subtract(ghostComp.TimeOfDeath).TotalSeconds < _cfg.GetCVar(CCVars.VotekickEligibleVoterDeathtime)) + return false; + } } // Must be whitelisted diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index f333f6536d4..d1dc9d9ade1 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -1537,6 +1537,12 @@ public static readonly CVarDef public static readonly CVarDef VotekickBanDuration = CVarDef.Create("votekick.ban_duration", 180, CVar.SERVERONLY); + /// + /// Whether the ghost requirement settings for votekicks should be ignored for the lobby. + /// + public static readonly CVarDef VotekickIgnoreGhostReqInLobby = + CVarDef.Create("votekick.ignore_ghost_req_in_lobby", true, CVar.SERVERONLY); + /* * BAN */ From 973aeb1aaa596e0237bed80a701607c5ccdafcf0 Mon Sep 17 00:00:00 2001 From: PJBot Date: Fri, 1 Nov 2024 01:54:01 +0000 Subject: [PATCH 022/112] 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 f5a8a7fb968..fc04aaad0e0 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Plykiya - changes: - - message: Buckling someone now triggers a short do-after. - type: Tweak - id: 7072 - time: '2024-08-09T15:43:02.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29621 - author: Ubaser changes: - message: Normal crowbars cannot be placed in pockets, but can now fit in belts. @@ -3947,3 +3940,10 @@ id: 7571 time: '2024-11-01T01:43:11.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33013 +- author: SlamBamActionman + changes: + - message: Votekicks can now be initiated during the pregame lobby. + type: Fix + id: 7572 + time: '2024-11-01T01:52:55.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32528 From d708a150e16b79312bc156ab35b38f37887b828a Mon Sep 17 00:00:00 2001 From: PopGamer46 Date: Fri, 1 Nov 2024 03:04:08 +0100 Subject: [PATCH 023/112] Fixes bolt lights of previously unpowered bolted doors (#33063) fix --- Content.Server/Doors/Systems/DoorSystem.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Content.Server/Doors/Systems/DoorSystem.cs b/Content.Server/Doors/Systems/DoorSystem.cs index 292f8ec8e97..754818619ac 100644 --- a/Content.Server/Doors/Systems/DoorSystem.cs +++ b/Content.Server/Doors/Systems/DoorSystem.cs @@ -46,8 +46,8 @@ private void OnBoltPowerChanged(Entity ent, ref PowerChangedE SetBoltsDown(ent, true); } - UpdateBoltLightStatus(ent); ent.Comp.Powered = args.Powered; Dirty(ent, ent.Comp); + UpdateBoltLightStatus(ent); } } From 25b3898b287bcfbb3cc44ef62a4e8a3de3c0d1dd Mon Sep 17 00:00:00 2001 From: PJBot Date: Fri, 1 Nov 2024 02:05:15 +0000 Subject: [PATCH 024/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index fc04aaad0e0..47744c0432f 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,14 +1,4 @@ Entries: -- author: Ubaser - changes: - - message: Normal crowbars cannot be placed in pockets, but can now fit in belts. - type: Tweak - - message: Depending on where you obtained the crowbars, they will now have different - colours. - type: Tweak - id: 7073 - time: '2024-08-09T19:29:00.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/28988 - author: lzk228 changes: - message: Hotplate works again. @@ -3947,3 +3937,10 @@ id: 7572 time: '2024-11-01T01:52:55.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32528 +- author: PopGamer46 + changes: + - message: Fixed bolt lights of recently unpowered bolted doors + type: Fix + id: 7573 + time: '2024-11-01T02:04:09.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33063 From 6ce80d914d34807683fcf0118a2c86024ade7eef Mon Sep 17 00:00:00 2001 From: RumiTiger <154005209+RumiTiger@users.noreply.github.com> Date: Fri, 1 Nov 2024 05:06:46 +0300 Subject: [PATCH 025/112] Muffins (#29318) * Update meta.json * Add files via upload * Update misc.yml * Update meal_recipes.yml * Update meta.json * Add files via upload * Update plate.yml * Update food_baked_single.yml * Update dinnerware.yml * Update cooking.yml * Update misc.yml * Add files via upload * Delete Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-cherry.png * Add files via upload * Update meta.json * Update misc.yml * Update meal_recipes.yml * Update meta.json * Fix meta.json * Fix meta.json again * Update misc.yml * Update misc.yml * Update misc.yml * Update misc.yml * Update meta.json * Update meta.json * Update misc.yml * Update meal_recipes.yml * Update Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Update dinnerware.yml * Delete cherry * Add files via upload * Delete banana * Add banana * Delete chocolate * Add chocolate * lathe recipe fix --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> --- .../Inventories/dinnerware.yml | 1 + .../Random/Food_Drinks/food_baked_single.yml | 2 + .../Objects/Consumable/Food/Baked/misc.yml | 97 ++++++++++++++++-- .../Consumable/Food/Containers/plate.yml | 24 +++++ .../Entities/Structures/Machines/lathe.yml | 1 + .../Recipes/Cooking/meal_recipes.yml | 61 +++++++++++ .../Prototypes/Recipes/Lathes/cooking.yml | 7 ++ .../Consumable/Food/Baked/misc.rsi/meta.json | 9 +- .../Food/Baked/misc.rsi/muffin-banana.png | Bin 0 -> 373 bytes .../Food/Baked/misc.rsi/muffin-berry.png | Bin 611 -> 3389 bytes .../Food/Baked/misc.rsi/muffin-cherry.png | Bin 285 -> 299 bytes .../Food/Baked/misc.rsi/muffin-chocolate.png | Bin 0 -> 425 bytes .../Consumable/Food/plates.rsi/meta.json | 5 +- .../Consumable/Food/plates.rsi/muffin-tin.png | Bin 0 -> 3023 bytes 14 files changed, 198 insertions(+), 9 deletions(-) create mode 100644 Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-banana.png create mode 100644 Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-chocolate.png create mode 100644 Resources/Textures/Objects/Consumable/Food/plates.rsi/muffin-tin.png diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml index d7108ab9955..046607f21aa 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml @@ -11,6 +11,7 @@ FoodPlate: 10 FoodPlateSmall: 10 FoodPlateTin: 5 + FoodPlateMuffinTin: 5 FoodKebabSkewer: 5 DrinkGlass: 5 Beaker: 5 diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/food_baked_single.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/food_baked_single.yml index 68d9394ea16..fa285676395 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/food_baked_single.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/food_baked_single.yml @@ -46,6 +46,8 @@ - FoodBakedMuffinBerry - FoodBakedMuffinCherry - FoodBakedMuffinBluecherry + - FoodBakedMuffinChocolate + - FoodBakedMuffinBanana - FoodBakedBunHoney - FoodBakedBunHotX - FoodBakedBunMeat diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml index 8b455fe872c..b4be6a8dfd1 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml @@ -19,44 +19,84 @@ - type: Item size: Tiny -# Muffins/Buns +# Muffins - type: entity name: muffin - parent: FoodBakedBase + parent: FoodInjectableBase id: FoodBakedMuffin description: A delicious and spongy little cake. components: + - type: Food + trash: + - FoodPlateMuffinTin - type: Sprite + sprite: Objects/Consumable/Food/Baked/misc.rsi state: muffin + - type: SolutionContainerManager + solutions: + food: + maxVol: 10 + reagents: + - ReagentId: Nutriment + Quantity: 6 + - ReagentId: Vitamin + Quantity: 2 + - type: FlavorProfile + flavors: + - sweet + - type: Item + size: Tiny - type: entity name: berry muffin - parent: FoodBakedBase + parent: FoodBakedMuffin id: FoodBakedMuffinBerry description: A delicious and spongy little cake, with berries. components: - type: Sprite state: muffin-berry + - type: SolutionContainerManager + solutions: + food: + maxVol: 12 + reagents: + - ReagentId: Nutriment + Quantity: 6 + - ReagentId: Vitamin + Quantity: 2 + - ReagentId: JuiceBerry + Quantity: 2 - type: Tag tags: - Fruit - type: entity name: cherry muffin - parent: FoodBakedBase + parent: FoodBakedMuffin id: FoodBakedMuffinCherry description: A sweet muffin with cherry bits. components: - type: Sprite state: muffin-cherry + - type: SolutionContainerManager + solutions: + food: + maxVol: 12 + reagents: + - ReagentId: Nutriment + Quantity: 6 + - ReagentId: Vitamin + Quantity: 2 + - ReagentId: JuiceCherry + Quantity: 2 - type: Tag tags: - Fruit - type: entity name: bluecherry muffin - parent: FoodBakedBase + parent: FoodBakedMuffin id: FoodBakedMuffinBluecherry description: Blue cherries inside a delicious muffin. components: @@ -66,6 +106,51 @@ tags: - Fruit +- type: entity + name: chocolate muffin + parent: FoodBakedMuffin + id: FoodBakedMuffinChocolate + description: A delicious and spongy chocolate muffin. + components: + - type: Sprite + state: muffin-chocolate + - type: SolutionContainerManager + solutions: + food: + maxVol: 12 + reagents: + - ReagentId: Nutriment + Quantity: 6 + - ReagentId: Vitamin + Quantity: 2 + - ReagentId: CocoaPowder + Quantity: 2 + +- type: entity + name: banana muffin + parent: FoodBakedMuffin + id: FoodBakedMuffinBanana + description: A delicious and spongy banana muffin. + components: + - type: Sprite + state: muffin-banana + - type: SolutionContainerManager + solutions: + food: + maxVol: 12 + reagents: + - ReagentId: Nutriment + Quantity: 6 + - ReagentId: Vitamin + Quantity: 2 + - ReagentId: JuiceBanana + Quantity: 2 + - type: Tag + tags: + - Fruit + +# Buns + - type: entity name: honey bun #TODO honey parent: FoodBakedBase @@ -685,4 +770,4 @@ - type: DamageOtherOnHit damage: types: - Blunt: 0 # so the damage stats icon doesn't immediately give away the syndie ones \ No newline at end of file + Blunt: 0 # so the damage stats icon doesn't immediately give away the syndie ones diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/plate.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/plate.yml index 63c47df67e7..2e2f2979bc7 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/plate.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/plate.yml @@ -178,3 +178,27 @@ materialComposition: Steel: 60 - type: SpaceGarbage + +# Muffin Tin + +- type: entity + name: muffin tin + parent: BaseItem + id: FoodPlateMuffinTin + description: A cheap foil tin for muffins. + components: + - type: Sprite + sprite: Objects/Consumable/Food/plates.rsi + state: muffin-tin + - type: Item + size: Small + shape: + - 0,0,1,0 + storedOffset: 0,-3 + - type: Tag + tags: + - Trash + - type: PhysicalComposition + materialComposition: + Steel: 30 + - type: SpaceGarbage diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index a8e4d0f43e0..b27f2cc1b98 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml @@ -163,6 +163,7 @@ - FoodPlateSmallPlastic - FoodBowlBig - FoodPlateTin + - FoodPlateMuffinTin - FoodKebabSkewer - SprayBottle - MopItem diff --git a/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml b/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml index fa2b6573915..173cf9e9dbd 100644 --- a/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml +++ b/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml @@ -1779,6 +1779,67 @@ FoodOrange: 1 FoodAmbrosiaVulgaris: 1 +# Muffins + +- type: microwaveMealRecipe + id: RecipeMuffin + name: muffin recipe + result: FoodBakedMuffin + time: 15 + solids: + FoodPlateMuffinTin: 1 + FoodDoughSlice: 1 + reagents: + Sugar: 10 + +- type: microwaveMealRecipe + id: RecipeMuffinChocolate + name: chocolate muffin recipe + result: FoodBakedMuffinChocolate + time: 15 + solids: + FoodPlateMuffinTin: 1 + FoodDoughSlice: 1 + FoodSnackChocolateBar: 1 + reagents: + Sugar: 10 + +- type: microwaveMealRecipe + id: RecipeMuffinBerry + name: berry muffin recipe + result: FoodBakedMuffinBerry + time: 15 + solids: + FoodPlateMuffinTin: 1 + FoodDoughSlice: 1 + FoodBerries: 1 + reagents: + Sugar: 10 + +- type: microwaveMealRecipe + id: RecipeMuffinBanana + name: banana muffin recipe + result: FoodBakedMuffinBanana + time: 15 + solids: + FoodPlateMuffinTin: 1 + FoodDoughSlice: 1 + FoodBanana: 1 + reagents: + Sugar: 10 + +- type: microwaveMealRecipe + id: RecipeMuffinCherry + name: cherry muffin recipe + result: FoodBakedMuffinCherry + time: 15 + solids: + FoodPlateMuffinTin: 1 + FoodDoughSlice: 1 + FoodCherry: 3 + reagents: + Sugar: 10 + # NOT ACTUAL FOOD - type: microwaveMealRecipe diff --git a/Resources/Prototypes/Recipes/Lathes/cooking.yml b/Resources/Prototypes/Recipes/Lathes/cooking.yml index 577d8299dab..c28a9370158 100644 --- a/Resources/Prototypes/Recipes/Lathes/cooking.yml +++ b/Resources/Prototypes/Recipes/Lathes/cooking.yml @@ -98,6 +98,13 @@ materials: Steel: 100 +- type: latheRecipe + id: FoodPlateMuffinTin + result: FoodPlateMuffinTin + completetime: 0.4 + materials: + Steel: 50 + - type: latheRecipe id: FoodKebabSkewer result: FoodKebabSkewer diff --git a/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/meta.json b/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/meta.json index c6c435a5c9f..ea2e3dc6eae 100644 --- a/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/meta.json +++ b/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation and modified by Swept at https://github.com/tgstation/tgstation/commit/40d75cc340c63582fb66ce15bf75a36115f6bdaa. Chevrechaud created by Github user deathride58, croissant taken from tgstation at commit https://github.com/tgstation/tgstation/commit/7ffd61b6fa6a6183daa8900f9a490f46f7a81955", + "copyright": "Taken from tgstation and modified by Swept at https://github.com/tgstation/tgstation/commit/40d75cc340c63582fb66ce15bf75a36115f6bdaa. Chevrechaud created by Github user deathride58, croissant taken from tgstation at commit https://github.com/tgstation/tgstation/commit/7ffd61b6fa6a6183daa8900f9a490f46f7a81955. Muffin-chocolate, muffin-banana and muffin-cherry sprites modified from the original muffin sprite by RumiTiger", "size": { "x": 32, "y": 32 @@ -162,7 +162,12 @@ }, { "name": "croissant" + }, + { + "name": "muffin-chocolate" + }, + { + "name": "muffin-banana" } ] } - diff --git a/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-banana.png b/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-banana.png new file mode 100644 index 0000000000000000000000000000000000000000..51ab05eea1ed98117c1a6c92d1f188e163af63cd GIT binary patch literal 373 zcmV-*0gC>KP)Px$FG)l}R9J=Wl&@06Fc6177(`7gIgxW9;0dt2055PS&hii^c?cYX!D4uTvuA3H z0M`hRiD+FAX?nS#%xnt`f_yWb{MpU!FWV%LNF);for5Whni7ZceFI=&b~P>5s73A# z*AHxDFwhz>8fMFJF%PAVO^Ks`{>%66SpkKDavh2MDFIE1%TzRB2AsM%HHXaz5#kE; zNkVcP&4I6q-F2lLNt`kRsDY%Bu(q>V1KJ`+B;Z}calEZgKpVyujM=qj=ofuQKvfBx zEa+OEI3T_<;b6_9N`#Gu9owz~%R6~oQ3U|BhQ$gV?!Wd~tl;TU8qqWA(RjJ_RX90= z*XPeI!0GibJwyO?4cqQKocqKohs&F3u@Z?y;?Ma26SH9r T#ZNbK00000NkvXXu0mjfI!B%? literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-berry.png b/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-berry.png index 9e0165e8121f4ef42b231cfa6169f6b531d76893..161da9acb430d928b6ef97426bd06b288562ea4f 100644 GIT binary patch delta 3387 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 R5pVzi002ovPDHLkV1h)-a*F@} delta 587 zcmV-R0<`_T8sh|zBYy%aNklQ`QPz0GcAPjp9#>7DbXR`3S3N;*qpt1CB0`oc8l&%4Tajj8D}8*tpVSAW@+` z;76E(Vntzetc|F@lZaw1t$`DLZwOT*Oe9+veHCK1=zrt%Awd*@FzXa6UT#mc@xxH4 zv@RzcEIT&f_{)q8#iUtLd6|y#y`Ui_9PFKBU9iN=oXW&Zl#puB(Ng35&7@;pM;8Fd zW;GJKBjj><)+hp_s#2Zvk}@?Uu->1ie_x2#X$B!2;OQb$4nuFf3k0002xNklE9XC4n8J3lmf)0-V)&0Vi-yS9u&kk6z|)AVny4JeAD{5y-7O$Br^Zj3!d<_g+W z4IC`v*4R)XOW#2I)&Of~Ju$wE6E};10=lhd!W75@M0i)A8Go6(et56W6f2(~DX)E~ zJ%|1ch^^-qAPHR&trcVYhpO_CfTts5jF6iP-d{!@*2eO=??ArdIUuiB1)#rO2HYlM zGT`o;&=Ax#uBHk*;4xqUj^AoT02NT0apKt0tcMcSzjNqnU~djifm38IMNyQW^8(~K WH~&GnHNF4<00{s|MNUMnLSTYjcX%}b delta 257 zcmV+c0sj800-XYoB!A>dL_t(|oMT`Z1*2dTjDk@x3I-T3lA~#NyV-wqG1tmdWSK>h zCYZ(g&L$Xg7x$ha%OON7-ra8YADhM4972jCm`Jt!V$K5JiJ(ox_ljsnD zfoE@jFh~h=z%7M|kqgKwJQkMdVWe_WeLf0C!6+C7g9ZQqWqwXX&J1V_00000NkvXX Hu0mjfYaVJ* diff --git a/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-chocolate.png b/Resources/Textures/Objects/Consumable/Food/Baked/misc.rsi/muffin-chocolate.png new file mode 100644 index 0000000000000000000000000000000000000000..7ca1a22cb0651c2a615a77172ea78ea4f54c2b67 GIT binary patch literal 425 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 Rw=)0$002ovPDHLkV1idoz03dr literal 0 HcmV?d00001 From b1a8eee52fe34afcbf866d093a1465615ac9e24e Mon Sep 17 00:00:00 2001 From: PJBot Date: Fri, 1 Nov 2024 02:07:53 +0000 Subject: [PATCH 026/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 47744c0432f..93619da0016 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: lzk228 - changes: - - message: Hotplate works again. - type: Fix - id: 7074 - time: '2024-08-10T01:10:39.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30830 - author: EmoGarbage404 changes: - message: Maintenance closets have more variety in what they can contain. @@ -3944,3 +3937,15 @@ id: 7573 time: '2024-11-01T02:04:09.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33063 +- author: RumiTiger + changes: + - message: A chocolate and banana muffin has been added to the game. The berry and + cherry muffins have also been resprited! + type: Add + - message: Now you can make a regular, chocolate, banana, and berry muffin! + type: Tweak + - message: Muffin tins have been added to the game. They are needed for making muffins! + type: Add + id: 7574 + time: '2024-11-01T02:06:46.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/29318 From e17d152838a4c34625c52ca51b8a343be5f22b36 Mon Sep 17 00:00:00 2001 From: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Date: Fri, 1 Nov 2024 03:32:28 +0100 Subject: [PATCH 027/112] Borgs can no longer see mindshield + AI can no longer toggle off seeing job icons (#33069) * :( * Removed the sprite + updated RSI --- Resources/Prototypes/Actions/station_ai.yml | 19 ++---------------- .../Mobs/Cyborgs/base_borg_chassis.yml | 1 - .../Entities/Mobs/Player/admin_ghost.yml | 6 +++--- .../Entities/Mobs/Player/silicon.yml | 2 +- .../Actions/actions_ai.rsi/job_view.png | Bin 508 -> 0 bytes .../Actions/actions_ai.rsi/meta.json | 3 --- 6 files changed, 6 insertions(+), 25 deletions(-) delete mode 100644 Resources/Textures/Interface/Actions/actions_ai.rsi/job_view.png diff --git a/Resources/Prototypes/Actions/station_ai.yml b/Resources/Prototypes/Actions/station_ai.yml index 58513d7db16..dc706038100 100644 --- a/Resources/Prototypes/Actions/station_ai.yml +++ b/Resources/Prototypes/Actions/station_ai.yml @@ -5,35 +5,20 @@ description: Sends your eye back to the core. components: - type: InstantAction - priority: -10 + priority: -9 itemIconStyle: BigAction icon: sprite: Interface/Actions/actions_ai.rsi state: ai_core event: !type:JumpToCoreEvent -- type: entity - id: ActionShowJobIcons - name: Show job icons - description: Shows job icons for crew members. - components: - - type: InstantAction - priority: -5 - itemIconStyle: BigAction - icon: - sprite: Interface/Actions/actions_ai.rsi - state: job_view - event: !type:ActionComponentChangeEvent - components: - - type: ShowJobIcons - - type: entity id: ActionSurvCameraLights name: Toggle camera lights description: Enable surveillance camera lights near wherever you're viewing. components: - type: InstantAction - priority: -6 + priority: -5 itemIconStyle: BigAction icon: sprite: Interface/Actions/actions_ai.rsi diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml index c65db8fe19f..0db92ac941d 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml @@ -285,7 +285,6 @@ - type: AccessReader access: [["Command"], ["Research"]] - type: ShowJobIcons - - type: ShowMindShieldIcons - type: entity id: BaseBorgChassisSyndicate diff --git a/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml b/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml index 1c3862e99a3..0a40e64fd77 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml @@ -127,7 +127,7 @@ icon: { sprite: Interface/Actions/actions_ai.rsi, state: mass_scanner } iconOn: Interface/Actions/actions_ai.rsi/mass_scanner.png keywords: [ "AI", "console", "interface" ] - priority: -7 + priority: -6 event: !type:ToggleIntrinsicUIEvent { key: enum.RadarConsoleUiKey.Key } - type: entity @@ -151,7 +151,7 @@ icon: { sprite: Interface/Actions/actions_ai.rsi, state: crew_monitor } iconOn: Interface/Actions/actions_ai.rsi/crew_monitor.png keywords: [ "AI", "console", "interface" ] - priority: -9 + priority: -8 event: !type:ToggleIntrinsicUIEvent { key: enum.CrewMonitoringUIKey.Key } - type: entity @@ -163,5 +163,5 @@ icon: { sprite: Interface/Actions/actions_ai.rsi, state: station_records } iconOn: Interface/Actions/actions_ai.rsi/station_records.png keywords: [ "AI", "console", "interface" ] - priority: -8 + priority: -7 event: !type:ToggleIntrinsicUIEvent { key: enum.GeneralStationRecordConsoleKey.Key } diff --git a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml index 7391e5709f3..be2b5a44f95 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml @@ -33,7 +33,6 @@ - type: ActionGrant actions: - ActionJumpToCore - - ActionShowJobIcons - ActionSurvCameraLights - ActionAIViewLaws - type: UserInterface @@ -72,6 +71,7 @@ color: "#2ed2fd" - type: Speech speechVerb: Robotic + - type: ShowJobIcons - type: entity id: AiHeldIntellicard diff --git a/Resources/Textures/Interface/Actions/actions_ai.rsi/job_view.png b/Resources/Textures/Interface/Actions/actions_ai.rsi/job_view.png deleted file mode 100644 index b407c4755e13c72eaefa36aeab453a72b1903d0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 508 zcmVNCu5t(CbZ2X@dmYzL(7H%(`0ka$^NmI*#_MkX| z1z;x^a>NNEGbT#`aS z$sJYh-cD3L8?b~s^B2KC^98#*K_wwcAs_~=E|pv%^tV^2YF^C{l1SDz+Oj9RMnPfI Date: Fri, 1 Nov 2024 02:33:34 +0000 Subject: [PATCH 028/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 93619da0016..a55c40f374d 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: EmoGarbage404 - changes: - - message: Maintenance closets have more variety in what they can contain. - type: Tweak - id: 7075 - time: '2024-08-10T02:12:40.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30579 - author: Ko4erga changes: - message: Changed chemistry airlock color. @@ -3949,3 +3942,12 @@ id: 7574 time: '2024-11-01T02:06:46.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/29318 +- author: ScarKy0 + changes: + - message: AI can no longer toggle seeing jobs off. + type: Tweak + - message: Borgs can no longer see mindshield status. + type: Fix + id: 7575 + time: '2024-11-01T02:32:28.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33069 From c9cd778133852af316db97da107214be33ec7a5d Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Fri, 1 Nov 2024 02:34:27 +0000 Subject: [PATCH 029/112] add IsMemberOfAny to faction system (#32975) * add IsMemberOfAny to faction system * pro --------- Co-authored-by: deltanedas <@deltanedas:kde.org> --- Content.Shared/NPC/Systems/NpcFactionSystem.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Content.Shared/NPC/Systems/NpcFactionSystem.cs b/Content.Shared/NPC/Systems/NpcFactionSystem.cs index 98f14afe2a6..0d684de80b9 100644 --- a/Content.Shared/NPC/Systems/NpcFactionSystem.cs +++ b/Content.Shared/NPC/Systems/NpcFactionSystem.cs @@ -81,6 +81,24 @@ public bool IsMember(Entity ent, string faction) return ent.Comp.Factions.Contains(faction); } + /// + /// Returns whether an entity is a member of any listed faction. + /// If the list is empty this returns false. + /// + public bool IsMemberOfAny(Entity ent, IEnumerable> factions) + { + if (!Resolve(ent, ref ent.Comp, false)) + return false; + + foreach (var faction in factions) + { + if (ent.Comp.Factions.Contains(faction)) + return true; + } + + return false; + } + /// /// Adds this entity to the particular faction. /// From d7a1753c7dcd2606f9345c072456781736b3061f Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Fri, 1 Nov 2024 14:18:06 +1100 Subject: [PATCH 030/112] Add CanLoad for biomes (#33050) CPUJob to come later. --- Content.Server/Parallax/BiomeSystem.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Content.Server/Parallax/BiomeSystem.cs b/Content.Server/Parallax/BiomeSystem.cs index 22b531eb7cb..109aa0f6e47 100644 --- a/Content.Server/Parallax/BiomeSystem.cs +++ b/Content.Server/Parallax/BiomeSystem.cs @@ -10,6 +10,7 @@ using Content.Server.Shuttles.Systems; using Content.Shared.Atmos; using Content.Shared.Decals; +using Content.Shared.Ghost; using Content.Shared.Gravity; using Content.Shared.Parallax.Biomes; using Content.Shared.Parallax.Biomes.Layers; @@ -51,6 +52,7 @@ public sealed partial class BiomeSystem : SharedBiomeSystem private EntityQuery _biomeQuery; private EntityQuery _fixturesQuery; + private EntityQuery _ghostQuery; private EntityQuery _xformQuery; private readonly HashSet _handledEntities = new(); @@ -81,6 +83,7 @@ public override void Initialize() Log.Level = LogLevel.Debug; _biomeQuery = GetEntityQuery(); _fixturesQuery = GetEntityQuery(); + _ghostQuery = GetEntityQuery(); _xformQuery = GetEntityQuery(); SubscribeLocalEvent(OnBiomeMapInit); SubscribeLocalEvent(OnFTLStarted); @@ -315,6 +318,11 @@ public void Preload(EntityUid uid, BiomeComponent component, Box2 area) } } + private bool CanLoad(EntityUid uid) + { + return !_ghostQuery.HasComp(uid); + } + public override void Update(float frameTime) { base.Update(frameTime); @@ -332,7 +340,8 @@ public override void Update(float frameTime) if (_xformQuery.TryGetComponent(pSession.AttachedEntity, out var xform) && _handledEntities.Add(pSession.AttachedEntity.Value) && _biomeQuery.TryGetComponent(xform.MapUid, out var biome) && - biome.Enabled) + biome.Enabled && + CanLoad(pSession.AttachedEntity.Value)) { var worldPos = _transform.GetWorldPosition(xform); AddChunksInRange(biome, worldPos); @@ -349,7 +358,8 @@ public override void Update(float frameTime) if (!_handledEntities.Add(viewer) || !_xformQuery.TryGetComponent(viewer, out xform) || !_biomeQuery.TryGetComponent(xform.MapUid, out biome) || - !biome.Enabled) + !biome.Enabled || + !CanLoad(viewer)) { continue; } From b8a98de784029d173c97e43ea27cd3570c8c5f6f Mon Sep 17 00:00:00 2001 From: Minemoder5000 Date: Fri, 1 Nov 2024 00:22:38 -0600 Subject: [PATCH 031/112] Remove CargoPallet component from the cargo pallet (#33022) * Change cargo shuttle pallets to catwalks. * Remove CargoPallet component from the cargo pallet. * Undo cargo shuttle changes. --- .../Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml b/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml index e95e663a795..518e63edeae 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml @@ -20,8 +20,6 @@ density: 15 mask: - MachineMask - - type: CargoPallet - palletType: All - type: StaticPrice price: 100 - type: Sprite From 844a92026f462cbae7cf433ddfc32e7b6911df2c Mon Sep 17 00:00:00 2001 From: PJBot Date: Fri, 1 Nov 2024 06:23:45 +0000 Subject: [PATCH 032/112] 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 a55c40f374d..7bcfcc7e0ae 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Ko4erga - changes: - - message: Changed chemistry airlock color. - type: Tweak - id: 7076 - time: '2024-08-10T03:23:47.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30666 - author: Blackern5000 changes: - message: Bent pipes now deal 8 thrown damage instead of 3. @@ -3951,3 +3944,10 @@ id: 7575 time: '2024-11-01T02:32:28.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33069 +- author: Minemoder5000 + changes: + - message: The cargo shuttle's cargo pallets can no longer sell or buy. + type: Fix + id: 7576 + time: '2024-11-01T06:22:39.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33022 From 3382743086304d4dcddc1598caa3895adbaea685 Mon Sep 17 00:00:00 2001 From: UBlueberry <161545003+UBlueberry@users.noreply.github.com> Date: Fri, 1 Nov 2024 20:42:20 -0400 Subject: [PATCH 033/112] Minor antagonist guidebook changes (#32824) * took a two month nap. accidentally pushed too many buttons. let's try this again. added thieves to antagonists.xml * even after that nap, i don't feel well-rested at all. * please don't kill me for using webedit * capitalization, typo * Apply suggestions from code review (more period moving) Thanks Evan, very cool Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * guess you could say im not pro-proper noun * typo * Update Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml * ok Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> --- .../Guidebook/Antagonist/Antagonists.xml | 7 ++-- .../Guidebook/Antagonist/MinorAntagonists.xml | 32 +++++++++---------- .../Antagonist/Nuclear Operatives.xml | 16 +++++----- .../Guidebook/Antagonist/Revolutionaries.xml | 16 +++++----- .../Guidebook/Antagonist/SpaceNinja.xml | 18 +++++------ .../Guidebook/Antagonist/Thieves.xml | 5 ++- 6 files changed, 48 insertions(+), 46 deletions(-) diff --git a/Resources/ServerInfo/Guidebook/Antagonist/Antagonists.xml b/Resources/ServerInfo/Guidebook/Antagonist/Antagonists.xml index 2592c107622..7f47f1e490b 100644 --- a/Resources/ServerInfo/Guidebook/Antagonist/Antagonists.xml +++ b/Resources/ServerInfo/Guidebook/Antagonist/Antagonists.xml @@ -7,13 +7,12 @@ These bad actors are more often than not employed or backed by the [color=#ff0000]Syndicate[/color], a rival organization to Nanotrasen that wants nothing more than to see it burn. ## Various Antagonists - Antagonist roles come with their own special sets of abilities, tools and risks to the station. - Antagonists can take many forms, like: - [textlink="Nuclear operatives" link="Nuclear Operatives"], with the goal of infiltrating and destroying the station. - [textlink="Traitors" link="Traitors"] amongst the crew who must assassinate, steal and decieve. - - [textlink="Space Ninjas" link="SpaceNinja"], masters of espionage and sabotage with special gear. - [textlink="Revolutionaries" link="Revolutionaries"] who are intent on taking control of the station from the inside. - [textlink="Zombies" link="Zombies"] that crave the flesh of every crew member and creature on board. - - [textlink="Several non-humanoid creatures" link="MinorAntagonists"] that usually just try to kill anything that moves. + - [textlink="Space Ninjas" link="SpaceNinja"], masters of espionage and sabotage with special gear. + - [textlink="Thieves" link="Thieves"] driven by kleptomania, determined to get their fix using their special gloves. + - [textlink="Various non-humanoid creatures" link="MinorAntagonists"] that generally attack anything that moves. diff --git a/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml b/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml index 6704ed28e0b..97574c40215 100644 --- a/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml +++ b/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml @@ -9,12 +9,12 @@ - Revenants are ethereal beings made of ectoplasm that haunt the crew and steal [color=cyan]life essence[/color] from them. + Revenants are ethereal beings made of ectoplasm that haunt the crew and steal [color=#8f63e6]life essence[/color] from them. - Your essence is your very own [bold]life force[/bold]. Taking damage reduces your essence. - Essence is also spent to use [bold]abilities[/bold]. - - To gain essence you first [bold]inspect[/bold] various souls for their worth. More worthy souls grant more essence. Then you must [bold]siphon[/bold] it either when the victim is crit, dead or asleep. + - To gain essence you first [bold]inspect[/bold] various souls for their worth. More worthy souls grant more essence. Then you must [bold]siphon[/bold] it either when the victim is crit, dead or asleep. All of this is done with [color=yellow][bold][keybind="Use"][/bold][/color]. - [bold]Stolen essence[/bold] is used to purchase new abilities to incapacitate the crew easier. - - You are [bold]vulnerable[/bold] to attacks when you siphon a soul or use an ability. You can tell when you are vulnerable when you have a [italic]"Corporeal"[/italic] status effect. + - You are [bold]vulnerable[/bold] to attacks when you siphon a soul or use an ability. You can tell when you are vulnerable when you have a [color=#8f63e6][italic]Corporeal[/italic][/color] status effect. # Rat King @@ -26,12 +26,12 @@ - Rat Kings are abnormally large rodents capable of [color=cyan]raising huge rat armies[/color] by eating equally huge amounts of food. - - You have several abilities that come at the cost of your [bold]hunger[/bold]. - - One ability is summoning [color=cyan]Rat Servants[/color] who you can [bold]command[/bold] to stay in place, follow you, attack a target of your choice or attack indiscriminately. - - You can conjure a cloud of [color=#77b58e]ammonia[/color], which is mildly poisonous to humans but heals rats. - - You can also [italic]"Rummage"[/italic] through any disposal unit by using the context menu. Use this to find [bold]scraps of food[/bold] to grow your army. - - Besides your abilities, you are [bold]stronger[/bold] than most other animals. You and your servants are capable of speech and you're both small enough to fit under airlocks and tables. + Rat kings are abnormally large rodents capable of [color=yellow]raising huge rat armies[/color] by eating equally huge amounts of food. + - You have several abilities that come at the cost of your [bold]hunger.[/bold] + - One such ability is [color=yellow][italic]Raise Army[/italic][/color], which summons a [bold]Rat Servant[/bold]. You can [bold]command[/bold] your servants to stay in place, follow you, attack a target of your choice or attack indiscriminately. + - You can conjure a cloud of [color=#77b58e]ammonia[/color] using [color=purple][italic]Rat King's Domain[/italic][/color]. This purple gas is mildly poisonous to humans but heals rats. + - [color=#9daa98][italic]Rummage[/italic][/color] through a disposal unit by using the context menu. Use this to find [bold]scraps of food[/bold] to grow your army. + - Besides your abilities, [bold]you are stronger than most other animals.[/bold] You and your servants are capable of speech and you're both small enough to fit under airlocks and tables. - [bold]Your underlings are still very fragile![/bold] Beware of spacings, explosions and the buisness end of a melee weapon. # Space Dragon @@ -44,11 +44,11 @@ - Space Dragons is are giant extradimensional fish that [color=cyan]create rifts and eat crew.[/color] - - Dragons have powerful jaws to [bold]devour[/bold] infrastructure such as doors, windows, and walls. - - Your [color=orange]dragon's breath[/color] is a flaming projectile which travels a straight flight path, exploding multiple times and igniting things along the way. Be careful, your carps are not immune to this! - - You have the ability to summon [bold]carp rifts[/bold] that periodically spawn [bold]space carp[/bold]. There can be 3 rifts active at any given time. - - Rifts charge up energy over a period of 5 minutes and are [bold]vulnerable[/bold] during this time. After 5 minutes, it becomes invulnerable and will continue summoning carp as long as the dragon lives. + Space dragons are giant extradimensional fish that can [color=red]eat crew[/color] and create [color=#4b7fcc]carp rifts.[/color] + - Dragons have powerful jaws that allow them to [color=red][italic]Devour[/italic][/color] infrastructure such as doors, windows, and walls. + - They can also heal themselves by using [color=red][italic]Devour[/italic][/color] on crew members that have gone unconscious or have died. + - Your [color=orange][italic]Dragon's Breath[/italic][/color] is a [bold]flaming projectile[/bold] which travels a straight flight path, exploding multiple times and igniting things along the way. Try not to hit your carps with this! + - You have the ability to [color=#4b7fcc][italic]Summon a Carp Rift[/italic][/color]. Rifts periodically spawn [bold]space carp[/bold] and charge up energy over a period of 5 minutes, [bold]which is when it's vulnerable.[/bold] After 5 minutes, it becomes invulnerable and will continue summoning carp as long as the dragon lives. - You'll suffer a [bold]temporary debilitating feedback effect[/bold] if one of your rifts are destroyed before it's done charging. - If a period of five minutes passes since your spawn or since the last time a rift was charging, [bold]you'll disappear.[/bold] - Dragons who have the maximum of 3 fully charged rifts will [bold]never disappear[/bold], but they are still mortal. @@ -61,6 +61,6 @@ Slimes and spiders have no remarkable features, but will [color=cyan]infest the station[/color] from time to time regardless. Both will give chase and attack anything they see. - - Slimes may deal extra [bold]cellular or posion damage[/bold], based upon their color. Water hurts them just as it would hurt a slime person. - - Spiders can lay [bold]webs[/bold], which non-spiders have a hard time moving through. They can easily be destroyed with a blade. + - Slimes may [bold]deal extra cellular or poison damage[/bold], based upon their color. Water hurts them just as it would hurt a slime person. + - Spiders have a venomous bite and can [bold]create webs[/bold] that are hard to move though. Webs are easily destroyed with a blade. They can also pry open airlocks. diff --git a/Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml b/Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml index ee586633742..11149bab66d 100644 --- a/Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml +++ b/Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml @@ -1,6 +1,6 @@ # Nuclear Operatives - + [color=#999999][italic]"OPERATIVES STANDBY. YOUR OBJECTIVES ARE SIMPLE.[/italic][/color] @@ -38,13 +38,13 @@ ## Preparation - Each member in your squad has been given an [color=cyan]uplink[/color] to purchase everything you will need for the mission, similar to [textlink="Traitors." link="Traitors"] + Each member in your squad has been given an [color=cyan]uplink[/color] to purchase everything you will need for the mission, similar to [textlink="traitors." link="Traitors"] - You can purchase the same kinds of gear Traitors can, but you have higher quality gear available to you and more telecrystals to spend. + You can purchase the same kinds of gear traitors can, but you have higher quality gear available to you and more telecrystals to spend. @@ -71,8 +71,8 @@ ## Getting to the Station You've got the plan, you've got the gear. Now, execute. - Grab a [bold]jetpack[/bold] from your armory and go with your other operatives to the [color=cyan]Syndicate Shuttle[/color]. - Among other things you may need, you'll find an [bold]IFF Console[/bold] on the shuttle. It allows you to hide from other ships and mass scanners when [italic]"Show IFF"[/italic] and [italic]"Show Vessel"[/italic] are toggled off. + Grab a [bold]jetpack[/bold] from your armory and go with your other operatives to your [color=cyan]shuttle[/color]. + Among other things you may need, you'll find an [bold]IFF Computer[/bold] on the shuttle. It allows you to hide from other ships and mass scanners when [italic]Show IFF[/italic] and [italic]Show Vessel[/italic] are toggled off. When everyone is ready, FTL to the station and fly to it with a jetpack. Don't forget the code, your pinpointers and the nuke if you're taking it. @@ -82,12 +82,12 @@ ## The Nuke & Arming Procedure - You have a paper with the [color=cyan]nuclear authentication codes[/color] on your shuttle. [bold]Check to see if the nuke ID matches the one on your shuttle.[/bold] If it doesn't, you'll have to use explosive in the station's vault. + You have a paper with the [color=cyan]nuclear authentication codes[/color] on your shuttle. [bold]Check to see if the nuke ID matches the one on your shuttle.[/bold] If it doesn't, you'll be arming the station's nuke instead. - Obtain the [bold]nuclear authentication disk[/bold] and insert it into the nuke. - Type in the [bold]nuclear authentication code[/bold] and press "[bold]E[/bold]" on the keypad to Enter. - - To begin [bold]self-destruct process[/bold], press "[color=red]ARM[/color]". After 300 seconds, the nuke will explode. - - [bold]Defend the nuke[/bold], even if it's at the cost of your lives! The mission requirements do not include your return. + - [bold]To begin the self-destruct sequence, press [color=#EB2D3A]ARM[/color][/bold]. After 300 seconds, the nuke will explode. + - [bold]Defend the nuke[/bold], even if it's at the cost of your lives! The mission requirements do not include your return. - It takes 30 seconds for someone to [bold]disarm[/bold] the nuke. Re-arming it is possible, but the chance of mission success drops if you let it happen. - Should the nuke be re-armed, the timer will start from where it left off. diff --git a/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml b/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml index 4a1887a392b..9bc0b28068b 100644 --- a/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml +++ b/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml @@ -1,6 +1,6 @@ # Revolutionaries - + [color=#999999][italic]"Viva la revolución!!"[/italic][/color] @@ -13,20 +13,20 @@ ## Objectives You must cuff, kill, or exile all of the [textlink="Command staff" link="Command"] on station in no particular order. - Your objective is not to destroy the station, but [italic]take it over[/italic], so try to minimize damage where possible. + Your objective is [bold]not to destroy the station[/bold], but [italic]to take it over[/italic], so try to minimize damage where possible. [bold]The revolution will fail[/bold] if all of the [bold][color=#5e9cff]Head Revolutionaries[/color][/bold] die, and all [color=red]Revolutionaries[/color] will de-convert if this happens. ## Headrevs & Conversion [bold][color=#5e9cff]Head Revolutionaries[/color][/bold] are chosen at the start of the shift and begin with a [color=cyan]flash[/color] and a pair of [color=cyan]sunglasses[/color]. - + - + You can convert crew members to your side by taking any [bold]flash[/bold] and attacking someone with it using [color=#ff0000]harm mode[/color]. - However, you can't convert your target if they're wearing [color=cyan]flash protection[/color] such as [bold]sunglasses[/bold] or a [bold]welding mask[/bold]. + However, [bold]you can't convert your target if they're wearing [color=cyan]flash protection[/color][/bold] such as sunglasses or a welding mask. @@ -34,10 +34,10 @@ - Another hurdle in your way are pesky [color=cyan]mindshield implanters[/color]. These will: + Another obstacle in your way are those pesky [color=cyan]mindshield implanters[/color]. These will: - Prevent the implanted person from being converted into a [color=red]Revolutionary[/color] - De-convert Revolutionaries, and will make them no longer loyal to your cause - - Visibly be destroyed upon being implanted into a [bold][color=#5e9cff]Head Revolutionary[/color][/bold], giving away your cover + - [bold]Visibly be destroyed upon being implanted into a [color=#5e9cff]Head Revolutionary[/color][/bold], giving you away - NOT protect against flash disorientation Assume all of [color=#cb0000]Security[/color] and [color=#1b67a5]Command[/color] are implanted with mindshields already. @@ -47,7 +47,7 @@ ## Revolutionary - A [bold][color=red]Revolutionary[/color][/bold] is a crew member that has been converted by a [bold][color=#5e9cff]Head Revolutionary[/color][/bold]. + A [color=red]Revolutionary[/color] is a crew member that has been converted by a [bold][color=#5e9cff]Head Revolutionary[/color][/bold]. [bold][color=red]Revolutionaries[/color] can't convert people themselves,[/bold] but they're more than capable of doing dirty work and carrying out orders. diff --git a/Resources/ServerInfo/Guidebook/Antagonist/SpaceNinja.xml b/Resources/ServerInfo/Guidebook/Antagonist/SpaceNinja.xml index 9998d4b38a0..c001b979377 100644 --- a/Resources/ServerInfo/Guidebook/Antagonist/SpaceNinja.xml +++ b/Resources/ServerInfo/Guidebook/Antagonist/SpaceNinja.xml @@ -7,7 +7,7 @@ You are an elite mercenary that [color=#66FF00]The Spider Clan[/color] has sent to wreak all kinds of havoc on the station. You are equipped to keep it silent-but-deadly. - Whether you decide to mercilessly pick off the station's crew one by one or stay out of trouble, your discipline has taught you that [italic]your objectives must be at least attempted[/italic]. For honor! + Whether you get bloody or stay out of trouble, your discipline has taught you that [italic]your objectives must be at least attempted[/italic]. For honor! ## Standard Equipment You begin implanted with a [color=cyan]death acidifier[/color], so if you are captured or KIA all your precious equipment is kept out of enemy hands. @@ -19,7 +19,7 @@ - ## Ninja Suit & Boots + ## Your Suit @@ -27,12 +27,12 @@ - Your single most important item is [color=#66FF00]your suit[/color], without it none of your abilities would work. + Your single most important item is [color=cyan]your suit[/color], without it none of your abilities would work. Your suit requires power to function, which is supplied by its [bold]internal battery[/bold]. It can be replaced, and [italic]high capacity batteries[/italic] mean a [italic]highly effective ninja[/italic]. - [bold]You can recharge your internal battery directly[/bold] by using [color=#66FF00]your gloves[/color]. You can see the current charge by examining the suit or checking the nifty battery alert on your screen. + [bold]You can recharge your internal battery directly[/bold] by using [color=cyan]your gloves[/color]. You can see the current charge by examining the suit or checking the nifty battery alert on your screen. - Your outfit also includes [color=#66FF00]special boots[/color] that keep you agile, upright and grounded without using energy. You've also got flash protection thanks to your [color=#66FF00]visor[/color]. + Your outfit also includes [color=cyan]special boots[/color] that keep you agile, upright and grounded without using energy. You've also got flash protection thanks to your [color=cyan]visor[/color]. ## Ninja Gloves @@ -58,9 +58,9 @@ [bold]You have sworn yourself to the sword and refuse to use firearms.[/bold] Luckily, you've got a pretty cool sword. - Your [color=#66FF00]energy katana[/color] hurts plenty and can be [bold]recalled at will[/bold] at the cost of suit power. The farther away it is from you, the more energy required to recall it. + Your [color=cyan]energy katana[/color] hurts plenty and can be [bold]recalled at will[/bold] at the cost of suit power. The farther away it is from you, the more energy required to recall it. - While in hand you may also [color=#66FF00]teleport[/color] to anywhere that you can see, [bold]including through windows[/bold]. The charges required to do this regenerate slowly, so keep a charge or two spare in case you need a quick getaway. + While in hand you may also [color=cyan]teleport[/color] to anywhere that you can see, [bold]including through windows[/bold]. The charges required to do this regenerate slowly, so keep a charge or two spare in case you need a quick getaway. ## Spider Clan Charge @@ -68,9 +68,9 @@ - [color=#66FF00]A modified C-4 explosive[/color], which can be found in your pocket. Creates a large explosion but [bold]must be armed in your target area[/bold] as it is one of your [color=#66FF00]objectives[/color]. + This is a [color=cyan]modified C-4 explosive[/color] which can be found in your pocket. Creates a large explosion but [bold]must be armed in your target area[/bold] as it is one of your objectives. - It can't be activated manually, so simply plant it on a wall or a particularly ugly piece of furniture. Can't be unstuck once planted. + It can't be activated manually, so simply plant it on a wall or some furniture that does not spark joy. Choose wisely, it can't be unstuck once planted. ## Objectives diff --git a/Resources/ServerInfo/Guidebook/Antagonist/Thieves.xml b/Resources/ServerInfo/Guidebook/Antagonist/Thieves.xml index 7ed5aa98392..4c11fc0d991 100644 --- a/Resources/ServerInfo/Guidebook/Antagonist/Thieves.xml +++ b/Resources/ServerInfo/Guidebook/Antagonist/Thieves.xml @@ -11,7 +11,7 @@ Thieves are petty yet crafty [color=green]criminals[/color] who can't keep their hands to themselves. You were forcefully given a [bold]pacifism implant[/bold] after your last arrest, but you won't let that stop you from trying to add to your collection. ## Art of the Steal - Unlike other antagonists, [italic]staying out of trouble is almost a requirement for you[/italic] because of your implant. + Unlike other antagonists, [bold]staying out of trouble is almost a requirement for you[/bold] because of your implant. You can only run if [color=#cb0000]Security[/color] picks a fight with you, and because you work alone you don't have any friends to pull you out of danger. But against all odds, you'll sucessfully swipe what you want using determination, sleight of hand, a few tools and your [color=cyan]thieving gloves.[/color] @@ -39,6 +39,9 @@ Your [color=cyan]toolbox[/color] contains... well, whatever you remembered to pack. [bold]You can select two pre-made kits[/bold] to help you complete grander heists. Approve your choices in a safe place, as the toolbox will dissolve and the gear will drop at your feet. + + + From 146ae8a6a6f5d80cedbf76373bb1887e6f5d9218 Mon Sep 17 00:00:00 2001 From: Preston Smith <92108534+thetolbean@users.noreply.github.com> Date: Fri, 1 Nov 2024 19:44:15 -0500 Subject: [PATCH 034/112] Give Nukies a Hand Labeler (#33053) * Add hand-labeler to nukie planet * Rearrange nukie chem table --- Resources/Maps/Nonstations/nukieplanet.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Resources/Maps/Nonstations/nukieplanet.yml b/Resources/Maps/Nonstations/nukieplanet.yml index 665657f7dda..6c0a209deca 100644 --- a/Resources/Maps/Nonstations/nukieplanet.yml +++ b/Resources/Maps/Nonstations/nukieplanet.yml @@ -6576,7 +6576,7 @@ entities: - uid: 2031 components: - type: Transform - pos: 3.6114278,-10.732791 + pos: 4.0109396,-12.223828 parent: 104 - uid: 2095 components: @@ -10993,6 +10993,13 @@ entities: - type: Transform pos: 11.5,-6.5 parent: 104 +- proto: HandLabeler + entities: + - uid: 1826 + components: + - type: Transform + pos: 3.4542694,-10.616036 + parent: 104 - proto: KitchenKnife entities: - uid: 1061 From 26194e2f416b9496d7ae25a4302bedfab22e9574 Mon Sep 17 00:00:00 2001 From: Brandon Li <48413902+aspiringLich@users.noreply.github.com> Date: Fri, 1 Nov 2024 21:33:26 -0400 Subject: [PATCH 035/112] Fix `ItemSlotSystem` popup Logic (#28856) * move popup call out of `CanInsert` into `OnInteractUsing` * im stupid and `reason` is completely unnecessary Signed-off-by: Brandon Li * return early when `itemSlots.Slots.Count == 0` * tweak logic for triggering popups * change popup logic again * Consolidate whitelist check * Get any popup message not just last failed slot * Apply suggestions from code review Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com> * yoink Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com> --------- Signed-off-by: Brandon Li Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com> Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com> --- .../Containers/ItemSlot/ItemSlotsSystem.cs | 153 +++++++++++++----- 1 file changed, 117 insertions(+), 36 deletions(-) diff --git a/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs b/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs index f25273f4039..479690847c3 100644 --- a/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs +++ b/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs @@ -60,6 +60,7 @@ public override void Initialize() } #region ComponentManagement + /// /// Spawn in starting items for any item slots that should have one. /// @@ -70,7 +71,8 @@ private void OnMapInit(EntityUid uid, ItemSlotsComponent itemSlots, MapInitEvent if (slot.HasItem || string.IsNullOrEmpty(slot.StartingItem)) continue; - var item = EntityManager.SpawnEntity(slot.StartingItem, EntityManager.GetComponent(uid).Coordinates); + var item = Spawn(slot.StartingItem, Transform(uid).Coordinates); + if (slot.ContainerSlot != null) _containers.Insert(item, slot.ContainerSlot); } @@ -99,7 +101,8 @@ public void AddItemSlot(EntityUid uid, string id, ItemSlot slot, ItemSlotsCompon if (itemSlots.Slots.TryGetValue(id, out var existing)) { if (existing.Local) - Log.Error($"Duplicate item slot key. Entity: {EntityManager.GetComponent(uid).EntityName} ({uid}), key: {id}"); + Log.Error( + $"Duplicate item slot key. Entity: {EntityManager.GetComponent(uid).EntityName} ({uid}), key: {id}"); else // server state takes priority slot.CopyFrom(existing); @@ -134,7 +137,10 @@ public void RemoveItemSlot(EntityUid uid, ItemSlot slot, ItemSlotsComponent? ite Dirty(uid, itemSlots); } - public bool TryGetSlot(EntityUid uid, string slotId, [NotNullWhen(true)] out ItemSlot? itemSlot, ItemSlotsComponent? component = null) + public bool TryGetSlot(EntityUid uid, + string slotId, + [NotNullWhen(true)] out ItemSlot? itemSlot, + ItemSlotsComponent? component = null) { itemSlot = null; @@ -143,9 +149,11 @@ public bool TryGetSlot(EntityUid uid, string slotId, [NotNullWhen(true)] out Ite return component.Slots.TryGetValue(slotId, out itemSlot); } + #endregion #region Interactions + /// /// Attempt to take an item from a slot, if any are set to EjectOnInteract. /// @@ -201,20 +209,50 @@ private void OnInteractUsing(EntityUid uid, ItemSlotsComponent itemSlots, Intera if (!EntityManager.TryGetComponent(args.User, out HandsComponent? hands)) return; + if (itemSlots.Slots.Count == 0) + return; + + // If any slot can be inserted into don't show popup. + // If any whitelist passes, but slot is locked, then show locked. + // If whitelist fails all, show whitelist fail. + + // valid, insertable slots (if any) var slots = new List(); + + string? whitelistFailPopup = null; + string? lockedFailPopup = null; foreach (var slot in itemSlots.Slots.Values) { if (!slot.InsertOnInteract) continue; - if (!CanInsert(uid, args.Used, args.User, slot, swap: slot.Swap, popup: args.User)) - continue; + if (CanInsert(uid, args.Used, args.User, slot, slot.Swap)) + { + slots.Add(slot); + } + else + { + var allowed = CanInsertWhitelist(args.Used, slot); + if (lockedFailPopup == null && slot.LockedFailPopup != null && allowed && slot.Locked) + lockedFailPopup = slot.LockedFailPopup; - slots.Add(slot); + if (whitelistFailPopup == null && slot.WhitelistFailPopup != null) + whitelistFailPopup = slot.WhitelistFailPopup; + } } if (slots.Count == 0) + { + // it's a bit weird that the popupMessage is stored with the item slots themselves, but in practice + // the popup messages will just all be the same, so it's probably fine. + // + // doing a check to make sure that they're all the same or something is probably frivolous + if (lockedFailPopup != null) + _popupSystem.PopupClient(Loc.GetString(lockedFailPopup), uid, args.User); + else if (whitelistFailPopup != null) + _popupSystem.PopupClient(Loc.GetString(whitelistFailPopup), uid, args.User); return; + } // Drop the held item onto the floor. Return if the user cannot drop. if (!_handsSystem.TryDrop(args.User, args.Used, handsComp: hands)) @@ -236,23 +274,31 @@ private void OnInteractUsing(EntityUid uid, ItemSlotsComponent itemSlots, Intera return; } } + #endregion #region Insert + /// /// Insert an item into a slot. This does not perform checks, so make sure to also use or just use instead. /// /// If true, will exclude the user when playing sound. Does nothing client-side. /// Useful for predicted interactions - private void Insert(EntityUid uid, ItemSlot slot, EntityUid item, EntityUid? user, bool excludeUserAudio = false) + private void Insert(EntityUid uid, + ItemSlot slot, + EntityUid item, + EntityUid? user, + bool excludeUserAudio = false) { bool? inserted = slot.ContainerSlot != null ? _containers.Insert(item, slot.ContainerSlot) : null; // ContainerSlot automatically raises a directed EntInsertedIntoContainerMessage // Logging if (inserted != null && inserted.Value && user != null) - _adminLogger.Add(LogType.Action, LogImpact.Low, $"{ToPrettyString(user.Value)} inserted {ToPrettyString(item)} into {slot.ContainerSlot?.ID + " slot of "}{ToPrettyString(uid)}"); + _adminLogger.Add(LogType.Action, + LogImpact.Low, + $"{ToPrettyString(user.Value)} inserted {ToPrettyString(item)} into {slot.ContainerSlot?.ID + " slot of "}{ToPrettyString(uid)}"); _audioSystem.PlayPredicted(slot.InsertSound, uid, excludeUserAudio ? user : null); } @@ -261,46 +307,53 @@ private void Insert(EntityUid uid, ItemSlot slot, EntityUid item, EntityUid? use /// Check whether a given item can be inserted into a slot. Unless otherwise specified, this will return /// false if the slot is already filled. /// - /// - /// If a popup entity is given, and if the item slot is set to generate a popup message when it fails to - /// pass the whitelist or due to slot being locked, then this will generate an appropriate popup. - /// - public bool CanInsert(EntityUid uid, EntityUid usedUid, EntityUid? user, ItemSlot slot, bool swap = false, EntityUid? popup = null) + public bool CanInsert(EntityUid uid, + EntityUid usedUid, + EntityUid? user, + ItemSlot slot, + bool swap = false) { if (slot.ContainerSlot == null) return false; - if (_whitelistSystem.IsWhitelistFail(slot.Whitelist, usedUid) || _whitelistSystem.IsBlacklistPass(slot.Blacklist, usedUid)) - { - if (popup.HasValue && slot.WhitelistFailPopup.HasValue) - _popupSystem.PopupClient(Loc.GetString(slot.WhitelistFailPopup), uid, popup.Value); + if (slot.HasItem && (!swap || swap && !CanEject(uid, user, slot))) return false; - } - if (slot.Locked) - { - if (popup.HasValue && slot.LockedFailPopup.HasValue) - _popupSystem.PopupClient(Loc.GetString(slot.LockedFailPopup), uid, popup.Value); + if (!CanInsertWhitelist(usedUid, slot)) return false; - } - if (slot.HasItem && (!swap || (swap && !CanEject(uid, user, slot)))) + if (slot.Locked) return false; var ev = new ItemSlotInsertAttemptEvent(uid, usedUid, user, slot); RaiseLocalEvent(uid, ref ev); RaiseLocalEvent(usedUid, ref ev); if (ev.Cancelled) + { return false; + } return _containers.CanInsert(usedUid, slot.ContainerSlot, assumeEmpty: swap); } + private bool CanInsertWhitelist(EntityUid usedUid, ItemSlot slot) + { + if (_whitelistSystem.IsWhitelistFail(slot.Whitelist, usedUid) + || _whitelistSystem.IsBlacklistPass(slot.Blacklist, usedUid)) + return false; + return true; + } + /// /// Tries to insert item into a specific slot. /// /// False if failed to insert item - public bool TryInsert(EntityUid uid, string id, EntityUid item, EntityUid? user, ItemSlotsComponent? itemSlots = null, bool excludeUserAudio = false) + public bool TryInsert(EntityUid uid, + string id, + EntityUid item, + EntityUid? user, + ItemSlotsComponent? itemSlots = null, + bool excludeUserAudio = false) { if (!Resolve(uid, ref itemSlots)) return false; @@ -315,7 +368,11 @@ public bool TryInsert(EntityUid uid, string id, EntityUid item, EntityUid? user, /// Tries to insert item into a specific slot. /// /// False if failed to insert item - public bool TryInsert(EntityUid uid, ItemSlot slot, EntityUid item, EntityUid? user, bool excludeUserAudio = false) + public bool TryInsert(EntityUid uid, + ItemSlot slot, + EntityUid item, + EntityUid? user, + bool excludeUserAudio = false) { if (!CanInsert(uid, item, user, slot)) return false; @@ -329,7 +386,11 @@ public bool TryInsert(EntityUid uid, ItemSlot slot, EntityUid item, EntityUid? u /// Does not check action blockers. /// /// False if failed to insert item - public bool TryInsertFromHand(EntityUid uid, ItemSlot slot, EntityUid user, HandsComponent? hands = null, bool excludeUserAudio = false) + public bool TryInsertFromHand(EntityUid uid, + ItemSlot slot, + EntityUid user, + HandsComponent? hands = null, + bool excludeUserAudio = false) { if (!Resolve(user, ref hands, false)) return false; @@ -443,6 +504,7 @@ private static int SortEmpty(ItemSlot a, ItemSlot b) return 1; } + #endregion #region Eject @@ -462,7 +524,7 @@ public bool CanEject(EntityUid uid, EntityUid? user, ItemSlot slot, EntityUid? p return false; } - if (slot.ContainerSlot?.ContainedEntity is not {} item) + if (slot.ContainerSlot?.ContainedEntity is not { } item) return false; var ev = new ItemSlotEjectAttemptEvent(uid, item, user, slot); @@ -487,7 +549,9 @@ private void Eject(EntityUid uid, ItemSlot slot, EntityUid item, EntityUid? user // Logging if (ejected != null && ejected.Value && user != null) - _adminLogger.Add(LogType.Action, LogImpact.Low, $"{ToPrettyString(user.Value)} ejected {ToPrettyString(item)} from {slot.ContainerSlot?.ID + " slot of "}{ToPrettyString(uid)}"); + _adminLogger.Add(LogType.Action, + LogImpact.Low, + $"{ToPrettyString(user.Value)} ejected {ToPrettyString(item)} from {slot.ContainerSlot?.ID + " slot of "}{ToPrettyString(uid)}"); _audioSystem.PlayPredicted(slot.EjectSound, uid, excludeUserAudio ? user : null); } @@ -496,7 +560,11 @@ private void Eject(EntityUid uid, ItemSlot slot, EntityUid item, EntityUid? user /// Try to eject an item from a slot. /// /// False if item slot is locked or has no item inserted - public bool TryEject(EntityUid uid, ItemSlot slot, EntityUid? user, [NotNullWhen(true)] out EntityUid? item, bool excludeUserAudio = false) + public bool TryEject(EntityUid uid, + ItemSlot slot, + EntityUid? user, + [NotNullWhen(true)] out EntityUid? item, + bool excludeUserAudio = false) { item = null; @@ -518,8 +586,12 @@ public bool TryEject(EntityUid uid, ItemSlot slot, EntityUid? user, [NotNullWhen /// Try to eject item from a slot. /// /// False if the id is not valid, the item slot is locked, or it has no item inserted - public bool TryEject(EntityUid uid, string id, EntityUid? user, - [NotNullWhen(true)] out EntityUid? item, ItemSlotsComponent? itemSlots = null, bool excludeUserAudio = false) + public bool TryEject(EntityUid uid, + string id, + EntityUid? user, + [NotNullWhen(true)] out EntityUid? item, + ItemSlotsComponent? itemSlots = null, + bool excludeUserAudio = false) { item = null; @@ -550,12 +622,16 @@ public bool TryEjectToHands(EntityUid uid, ItemSlot slot, EntityUid? user, bool return true; } + #endregion #region Verbs - private void AddAlternativeVerbs(EntityUid uid, ItemSlotsComponent itemSlots, GetVerbsEvent args) + + private void AddAlternativeVerbs(EntityUid uid, + ItemSlotsComponent itemSlots, + GetVerbsEvent args) { - if (args.Hands == null || !args.CanAccess ||!args.CanInteract) + if (args.Hands == null || !args.CanAccess || !args.CanInteract) { return; } @@ -649,7 +725,9 @@ private void AddAlternativeVerbs(EntityUid uid, ItemSlotsComponent itemSlots, Ge } } - private void AddInteractionVerbsVerbs(EntityUid uid, ItemSlotsComponent itemSlots, GetVerbsEvent args) + private void AddInteractionVerbsVerbs(EntityUid uid, + ItemSlotsComponent itemSlots, + GetVerbsEvent args) { if (args.Hands == null || !args.CanAccess || !args.CanInteract) return; @@ -708,7 +786,7 @@ private void AddInteractionVerbsVerbs(EntityUid uid, ItemSlotsComponent itemSlot new SpriteSpecifier.Texture( new ResPath("/Textures/Interface/VerbIcons/insert.svg.192dpi.png")); } - else if(slot.EjectOnInteract) + else if (slot.EjectOnInteract) { // Inserting/ejecting is a primary interaction for this entity. Instead of using the insert // category, we will use a single "Place " verb. @@ -727,9 +805,11 @@ private void AddInteractionVerbsVerbs(EntityUid uid, ItemSlotsComponent itemSlot args.Verbs.Add(insertVerb); } } + #endregion #region BUIs + private void HandleButtonPressed(EntityUid uid, ItemSlotsComponent component, ItemSlotButtonPressedEvent args) { if (!component.Slots.TryGetValue(args.SlotId, out var slot)) @@ -740,6 +820,7 @@ private void HandleButtonPressed(EntityUid uid, ItemSlotsComponent component, It else if (args.TryInsert && !slot.HasItem) TryInsertFromHand(uid, slot, args.Actor); } + #endregion /// From 957b8de89b0026d67efadac475763ea910339e2f Mon Sep 17 00:00:00 2001 From: Vasilis Date: Sat, 2 Nov 2024 02:34:23 +0100 Subject: [PATCH 036/112] Add cvars to votekick to customize requirements for the initiator. (#32490) --- Content.Server/Voting/VotingSystem.cs | 9 +++++++-- Content.Shared/CCVar/CCVars.cs | 12 ++++++++++++ Resources/Locale/en-US/voting/ui/vote-call-menu.ftl | 2 +- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/Content.Server/Voting/VotingSystem.cs b/Content.Server/Voting/VotingSystem.cs index 3d3aeb48598..5df1ce7c1f0 100644 --- a/Content.Server/Voting/VotingSystem.cs +++ b/Content.Server/Voting/VotingSystem.cs @@ -13,6 +13,7 @@ using Robust.Shared.Player; using Robust.Shared.Timing; using System.Threading.Tasks; +using Content.Shared.Players.PlayTimeTracking; namespace Content.Server.Voting; @@ -26,6 +27,7 @@ public sealed class VotingSystem : EntitySystem [Dependency] private readonly IConfigurationManager _cfg = default!; [Dependency] private readonly JobSystem _jobs = default!; [Dependency] private readonly GameTicker _gameTicker = default!; + [Dependency] private readonly ISharedPlaytimeManager _playtimeManager = default!; public override void Initialize() { @@ -109,10 +111,13 @@ public async Task CheckVotekickInitEligibility(ICommonSession? initiator) } // Must be whitelisted - if (!await _dbManager.GetWhitelistStatusAsync(initiator.UserId)) + if (!await _dbManager.GetWhitelistStatusAsync(initiator.UserId) && _cfg.GetCVar(CCVars.VotekickInitiatorWhitelistedRequirement)) return false; - return true; + // Must be eligible to vote + var playtime = _playtimeManager.GetPlayTimes(initiator); + return playtime.TryGetValue(PlayTimeTrackingShared.TrackerOverall, out TimeSpan overallTime) && (overallTime >= TimeSpan.FromHours(_cfg.GetCVar(CCVars.VotekickEligibleVoterPlaytime)) + || !_cfg.GetCVar(CCVars.VotekickInitiatorTimeRequirement)); } /// diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index d1dc9d9ade1..81a0668bdb6 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -1477,6 +1477,18 @@ public static readonly CVarDef public static readonly CVarDef VotekickInitiatorGhostRequirement = CVarDef.Create("votekick.initiator_ghost_requirement", true, CVar.SERVERONLY); + /// + /// Should the initiator be whitelisted to initiate a votekick? + /// + public static readonly CVarDef VotekickInitiatorWhitelistedRequirement = + CVarDef.Create("votekick.initiator_whitelist_requirement", true, CVar.SERVERONLY); + + /// + /// Should the initiator be able to start a votekick if they are bellow the votekick.voter_playtime requirement? + /// + public static readonly CVarDef VotekickInitiatorTimeRequirement = + CVarDef.Create("votekick.initiator_time_requirement", false, CVar.SERVERONLY); + /// /// Whether a votekick voter must be a ghost or not. /// diff --git a/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl b/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl index fbae3598ed6..82e3a5d1f82 100644 --- a/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl +++ b/Resources/Locale/en-US/voting/ui/vote-call-menu.ftl @@ -25,7 +25,7 @@ ui-vote-type-not-available = This vote type has been disabled # Vote option only available for specific users. ui-vote-trusted-users-notice = - This vote option is only available to whitelisted players. + This vote option is only available to players who have enough playtime or are whitelisted. In addition, you must have been a ghost for { $timeReq } seconds. # Warning to not abuse a specific vote option. From 2537bff7ba1134e903a90fa7972286bfd8abb9b9 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 01:34:34 +0000 Subject: [PATCH 037/112] 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 7bcfcc7e0ae..f4a320dcb55 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Blackern5000 - changes: - - message: Bent pipes now deal 8 thrown damage instead of 3. - type: Tweak - id: 7077 - time: '2024-08-10T03:30:43.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30634 - author: shampunj changes: - message: Rat king can now wideswing @@ -3951,3 +3944,10 @@ id: 7576 time: '2024-11-01T06:22:39.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33022 +- author: aspiringLich + changes: + - message: Fixed the logic triggering popups when inserting items into machines. + type: Fix + id: 7577 + time: '2024-11-02T01:33:26.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/28856 From 1c8eed8b4531f081d8a0178f9ea60b108d439bf6 Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Sat, 2 Nov 2024 20:29:16 +1100 Subject: [PATCH 038/112] Add on-call functionality for adminning (#30443) * Add on-call functionality for adminning The first time an ahelp gets SOS it gets relayed to the specified channel with the specified ping. Every time after that it doesn't until it gets a non-SOS response received. * Remove redundant name Pretty sure this already gets chucked on the name of the msg itself I think it just didn't show in screenshot because they were subsequent. * Update Content.Server/Administration/Systems/BwoinkSystem.cs Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com> --------- Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com> Co-authored-by: deathride58 --- .../Administration/Systems/BwoinkSystem.cs | 205 +++++++++++++++--- Content.Shared/CCVar/CCVars.cs | 12 + 2 files changed, 181 insertions(+), 36 deletions(-) diff --git a/Content.Server/Administration/Systems/BwoinkSystem.cs b/Content.Server/Administration/Systems/BwoinkSystem.cs index 1efc0a9d562..7a47755db9d 100644 --- a/Content.Server/Administration/Systems/BwoinkSystem.cs +++ b/Content.Server/Administration/Systems/BwoinkSystem.cs @@ -47,20 +47,23 @@ public sealed partial class BwoinkSystem : SharedBwoinkSystem [GeneratedRegex(@"^https://discord\.com/api/webhooks/(\d+)/((?!.*/).*)$")] private static partial Regex DiscordRegex(); - private ISawmill _sawmill = default!; - private readonly HttpClient _httpClient = new(); private string _webhookUrl = string.Empty; private WebhookData? _webhookData; + + private string _onCallUrl = string.Empty; + private WebhookData? _onCallData; + + private ISawmill _sawmill = default!; + private readonly HttpClient _httpClient = new(); + private string _footerIconUrl = string.Empty; private string _avatarUrl = string.Empty; private string _serverName = string.Empty; - private readonly - Dictionary _relayMessages = new(); + private readonly Dictionary _relayMessages = new(); private Dictionary _oldMessageIds = new(); - private readonly Dictionary> _messageQueues = new(); + private readonly Dictionary> _messageQueues = new(); private readonly HashSet _processingChannels = new(); private readonly Dictionary _typingUpdateTimestamps = new(); private string _overrideClientName = string.Empty; @@ -82,12 +85,16 @@ private readonly public override void Initialize() { base.Initialize(); + + Subs.CVar(_config, CCVars.DiscordOnCallWebhook, OnCallChanged, true); + Subs.CVar(_config, CCVars.DiscordAHelpWebhook, OnWebhookChanged, true); Subs.CVar(_config, CCVars.DiscordAHelpFooterIcon, OnFooterIconChanged, true); Subs.CVar(_config, CCVars.DiscordAHelpAvatar, OnAvatarChanged, true); Subs.CVar(_config, CVars.GameHostName, OnServerNameChanged, true); Subs.CVar(_config, CCVars.AdminAhelpOverrideClientName, OnOverrideChanged, true); _sawmill = IoCManager.Resolve().GetSawmill("AHELP"); + var defaultParams = new AHelpMessageParams( string.Empty, string.Empty, @@ -96,7 +103,7 @@ public override void Initialize() _gameTicker.RunLevel, playedSound: false ); - _maxAdditionalChars = GenerateAHelpMessage(defaultParams).Length; + _maxAdditionalChars = GenerateAHelpMessage(defaultParams).Message.Length; _playerManager.PlayerStatusChanged += OnPlayerStatusChanged; SubscribeLocalEvent(OnGameRunLevelChanged); @@ -111,6 +118,33 @@ public override void Initialize() ); } + private async void OnCallChanged(string url) + { + _onCallUrl = url; + + if (url == string.Empty) + return; + + var match = DiscordRegex().Match(url); + + if (!match.Success) + { + Log.Error("On call URL does not appear to be valid."); + return; + } + + if (match.Groups.Count <= 2) + { + Log.Error("Could not get webhook ID or token for on call URL."); + return; + } + + var webhookId = match.Groups[1].Value; + var webhookToken = match.Groups[2].Value; + + _onCallData = await GetWebhookData(webhookId, webhookToken); + } + private void PlayerRateLimitedAction(ICommonSession obj) { RaiseNetworkEvent( @@ -259,13 +293,13 @@ args.New is not (GameRunLevel.PreRoundLobby or GameRunLevel.InRound)) // Store the Discord message IDs of the previous round _oldMessageIds = new Dictionary(); - foreach (var message in _relayMessages) + foreach (var (user, interaction) in _relayMessages) { - var id = message.Value.id; + var id = interaction.Id; if (id == null) return; - _oldMessageIds[message.Key] = id; + _oldMessageIds[user] = id; } _relayMessages.Clear(); @@ -330,10 +364,10 @@ private async void OnWebhookChanged(string url) var webhookToken = match.Groups[2].Value; // Fire and forget - await SetWebhookData(webhookId, webhookToken); + _webhookData = await GetWebhookData(webhookId, webhookToken); } - private async Task SetWebhookData(string id, string token) + private async Task GetWebhookData(string id, string token) { var response = await _httpClient.GetAsync($"https://discord.com/api/v10/webhooks/{id}/{token}"); @@ -342,10 +376,10 @@ private async Task SetWebhookData(string id, string token) { _sawmill.Log(LogLevel.Error, $"Discord returned bad status code when trying to get webhook data (perhaps the webhook URL is invalid?): {response.StatusCode}\nResponse: {content}"); - return; + return null; } - _webhookData = JsonSerializer.Deserialize(content); + return JsonSerializer.Deserialize(content); } private void OnFooterIconChanged(string url) @@ -358,14 +392,14 @@ private void OnAvatarChanged(string url) _avatarUrl = url; } - private async void ProcessQueue(NetUserId userId, Queue messages) + private async void ProcessQueue(NetUserId userId, Queue messages) { // Whether an embed already exists for this player var exists = _relayMessages.TryGetValue(userId, out var existingEmbed); // Whether the message will become too long after adding these new messages - var tooLong = exists && messages.Sum(msg => Math.Min(msg.Length, MessageLengthCap) + "\n".Length) - + existingEmbed.description.Length > DescriptionMax; + var tooLong = exists && messages.Sum(msg => Math.Min(msg.Message.Length, MessageLengthCap) + "\n".Length) + + existingEmbed?.Description.Length > DescriptionMax; // If there is no existing embed, or it is getting too long, we create a new embed if (!exists || tooLong) @@ -385,10 +419,10 @@ private async void ProcessQueue(NetUserId userId, Queue messages) // If we have all the data required, we can link to the embed of the previous round or embed that was too long if (_webhookData is { GuildId: { } guildId, ChannelId: { } channelId }) { - if (tooLong && existingEmbed.id != null) + if (tooLong && existingEmbed?.Id != null) { linkToPrevious = - $"**[Go to previous embed of this round](https://discord.com/channels/{guildId}/{channelId}/{existingEmbed.id})**\n"; + $"**[Go to previous embed of this round](https://discord.com/channels/{guildId}/{channelId}/{existingEmbed.Id})**\n"; } else if (_oldMessageIds.TryGetValue(userId, out var id) && !string.IsNullOrEmpty(id)) { @@ -398,13 +432,22 @@ private async void ProcessQueue(NetUserId userId, Queue messages) } var characterName = _minds.GetCharacterName(userId); - existingEmbed = (null, lookup.Username, linkToPrevious, characterName, _gameTicker.RunLevel); + existingEmbed = new DiscordRelayInteraction() + { + Id = null, + CharacterName = characterName, + Description = linkToPrevious, + Username = lookup.Username, + LastRunLevel = _gameTicker.RunLevel, + }; + + _relayMessages[userId] = existingEmbed; } // Previous message was in another RunLevel, so show that in the embed - if (existingEmbed.lastRunLevel != _gameTicker.RunLevel) + if (existingEmbed!.LastRunLevel != _gameTicker.RunLevel) { - existingEmbed.description += _gameTicker.RunLevel switch + existingEmbed.Description += _gameTicker.RunLevel switch { GameRunLevel.PreRoundLobby => "\n\n:arrow_forward: _**Pre-round lobby started**_\n", GameRunLevel.InRound => "\n\n:arrow_forward: _**Round started**_\n", @@ -413,26 +456,35 @@ private async void ProcessQueue(NetUserId userId, Queue messages) $"{_gameTicker.RunLevel} was not matched."), }; - existingEmbed.lastRunLevel = _gameTicker.RunLevel; + existingEmbed.LastRunLevel = _gameTicker.RunLevel; } + // If last message of the new batch is SOS then relay it to on-call. + // ... as long as it hasn't been relayed already. + var discordMention = messages.Last(); + var onCallRelay = !discordMention.Receivers && !existingEmbed.OnCall; + // Add available messages to the embed description while (messages.TryDequeue(out var message)) { + string text; + // In case someone thinks they're funny - if (message.Length > MessageLengthCap) - message = message[..(MessageLengthCap - TooLongText.Length)] + TooLongText; + if (message.Message.Length > MessageLengthCap) + text = message.Message[..(MessageLengthCap - TooLongText.Length)] + TooLongText; + else + text = message.Message; - existingEmbed.description += $"\n{message}"; + existingEmbed.Description += $"\n{text}"; } - var payload = GeneratePayload(existingEmbed.description, - existingEmbed.username, - existingEmbed.characterName); + var payload = GeneratePayload(existingEmbed.Description, + existingEmbed.Username, + existingEmbed.CharacterName); // If there is no existing embed, create a new one // Otherwise patch (edit) it - if (existingEmbed.id == null) + if (existingEmbed.Id == null) { var request = await _httpClient.PostAsync($"{_webhookUrl}?wait=true", new StringContent(JsonSerializer.Serialize(payload), Encoding.UTF8, "application/json")); @@ -455,11 +507,11 @@ private async void ProcessQueue(NetUserId userId, Queue messages) return; } - existingEmbed.id = id.ToString(); + existingEmbed.Id = id.ToString(); } else { - var request = await _httpClient.PatchAsync($"{_webhookUrl}/messages/{existingEmbed.id}", + var request = await _httpClient.PatchAsync($"{_webhookUrl}/messages/{existingEmbed.Id}", new StringContent(JsonSerializer.Serialize(payload), Encoding.UTF8, "application/json")); if (!request.IsSuccessStatusCode) @@ -474,6 +526,43 @@ private async void ProcessQueue(NetUserId userId, Queue messages) _relayMessages[userId] = existingEmbed; + // Actually do the on call relay last, we just need to grab it before we dequeue every message above. + if (onCallRelay && + _onCallData != null) + { + existingEmbed.OnCall = true; + var roleMention = _config.GetCVar(CCVars.DiscordAhelpMention); + + if (!string.IsNullOrEmpty(roleMention)) + { + var message = new StringBuilder(); + message.AppendLine($"<@&{roleMention}>"); + message.AppendLine("Unanswered SOS"); + + // Need webhook data to get the correct link for that channel rather than on-call data. + if (_webhookData is { GuildId: { } guildId, ChannelId: { } channelId }) + { + message.AppendLine( + $"**[Go to ahelp](https://discord.com/channels/{guildId}/{channelId}/{existingEmbed.Id})**"); + } + + payload = GeneratePayload(message.ToString(), existingEmbed.Username, existingEmbed.CharacterName); + + var request = await _httpClient.PostAsync($"{_onCallUrl}?wait=true", + new StringContent(JsonSerializer.Serialize(payload), Encoding.UTF8, "application/json")); + + var content = await request.Content.ReadAsStringAsync(); + if (!request.IsSuccessStatusCode) + { + _sawmill.Log(LogLevel.Error, $"Discord returned bad status code when posting relay message (perhaps the message is too long?): {request.StatusCode}\nResponse: {content}"); + } + } + } + else + { + existingEmbed.OnCall = false; + } + _processingChannels.Remove(userId); } @@ -652,7 +741,7 @@ protected override void OnBwoinkTextMessage(BwoinkTextMessage message, EntitySes if (sendsWebhook) { if (!_messageQueues.ContainsKey(msg.UserId)) - _messageQueues[msg.UserId] = new Queue(); + _messageQueues[msg.UserId] = new Queue(); var str = message.Text; var unameLength = senderSession.Name.Length; @@ -701,7 +790,7 @@ private IList GetTargetAdmins() .ToList(); } - private static string GenerateAHelpMessage(AHelpMessageParams parameters) + private static DiscordRelayedData GenerateAHelpMessage(AHelpMessageParams parameters) { var stringbuilder = new StringBuilder(); @@ -718,13 +807,57 @@ private static string GenerateAHelpMessage(AHelpMessageParams parameters) stringbuilder.Append($" **{parameters.RoundTime}**"); if (!parameters.PlayedSound) stringbuilder.Append(" **(S)**"); - if (parameters.Icon == null) stringbuilder.Append($" **{parameters.Username}:** "); else stringbuilder.Append($" **{parameters.Username}** "); stringbuilder.Append(parameters.Message); - return stringbuilder.ToString(); + + return new DiscordRelayedData() + { + Receivers = !parameters.NoReceivers, + Message = stringbuilder.ToString(), + }; + } + + private record struct DiscordRelayedData + { + /// + /// Was anyone online to receive it. + /// + public bool Receivers; + + /// + /// What's the payload to send to discord. + /// + public string Message; + } + + /// + /// Class specifically for holding information regarding existing Discord embeds + /// + private sealed class DiscordRelayInteraction + { + public string? Id; + + public string Username = String.Empty; + + public string? CharacterName; + + /// + /// Contents for the discord message. + /// + public string Description = string.Empty; + + /// + /// Run level of the last interaction. If different we'll link to the last Id. + /// + public GameRunLevel LastRunLevel; + + /// + /// Did we relay this interaction to OnCall previously. + /// + public bool OnCall; } } diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index 81a0668bdb6..83068b5262b 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -461,6 +461,18 @@ public static readonly CVarDef * Discord */ + /// + /// The role that will get mentioned if a new SOS ahelp comes in. + /// + public static readonly CVarDef DiscordAhelpMention = + CVarDef.Create("discord.on_call_ping", string.Empty, CVar.SERVERONLY | CVar.CONFIDENTIAL); + + /// + /// URL of the discord webhook to relay unanswered ahelp messages. + /// + public static readonly CVarDef DiscordOnCallWebhook = + CVarDef.Create("discord.on_call_webhook", string.Empty, CVar.SERVERONLY | CVar.CONFIDENTIAL); + /// /// URL of the Discord webhook which will relay all ahelp messages. /// From 51b8101dc214e042e489a0dae89d39944d73560b Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 09:30:23 +0000 Subject: [PATCH 039/112] Automatic changelog update --- Resources/Changelog/Admin.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Resources/Changelog/Admin.yml b/Resources/Changelog/Admin.yml index 4bb373ca1dd..fabaee2c2c6 100644 --- a/Resources/Changelog/Admin.yml +++ b/Resources/Changelog/Admin.yml @@ -575,5 +575,13 @@ Entries: id: 71 time: '2024-10-31T14:53:38.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32601 +- author: metalgearsloth + changes: + - message: Added on-call functionality for discord relay to get notified on unanswered + ahelps. + type: Add + id: 72 + time: '2024-11-02T09:29:16.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/30443 Name: Admin Order: 1 From 05ae40400c134f3e871a8af398b9f1be06dbbe31 Mon Sep 17 00:00:00 2001 From: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com> Date: Sat, 2 Nov 2024 21:51:44 +1200 Subject: [PATCH 040/112] Pills are explosion resistant (partially reverts #15851) (#32458) * idk how to revert a pr so I just deleted some lines * pill destructible with explosion resistance * comment for explosion resist * "and" to "but" --------- Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> --- .../Entities/Objects/Specific/chemistry.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml index b717255d8f0..527b0ba5e62 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml @@ -541,12 +541,8 @@ solutions: food: maxVol: 20 - - type: SolutionSpiker - sourceSolution: food - - type: Extractable - grindableSolutionName: food - - type: StaticPrice - price: 0 + - type: ExplosionResistance + damageCoefficient: 0.025 # survives conventional explosives but not minibombs and nukes - type: Damageable damageContainer: Inorganic - type: Destructible @@ -559,6 +555,12 @@ solution: food - !type:DoActsBehavior acts: [ "Destruction" ] + - type: SolutionSpiker + sourceSolution: food + - type: Extractable + grindableSolutionName: food + - type: StaticPrice + price: 0 - type: Tag tags: - Pill From 7276fff9c10d3a83d8a807aa1f27fe14620e8929 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 09:52:51 +0000 Subject: [PATCH 041/112] 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 f4a320dcb55..b0b452a5ecf 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: shampunj - changes: - - message: Rat king can now wideswing - type: Tweak - id: 7078 - time: '2024-08-10T12:47:55.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30808 - author: BackeTako changes: - message: Added a suitskirt for the psychologist @@ -3951,3 +3944,10 @@ id: 7577 time: '2024-11-02T01:33:26.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/28856 +- author: K-Dynamic + changes: + - message: Pills are explosion resistant. + type: Tweak + id: 7578 + time: '2024-11-02T09:51:45.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32458 From b000a3e3876f27b0e761ef36e06de622d4c790d2 Mon Sep 17 00:00:00 2001 From: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com> Date: Sat, 2 Nov 2024 21:53:18 +1200 Subject: [PATCH 042/112] Hasten handcraft gauze recipe & decrease techfab gauze cost (#32744) * med lathe gauze price reduction * gauze craft doafter time * 3 second doafter craft --- .../Prototypes/Recipes/Crafting/Graphs/improvised/gauze.yml | 2 +- Resources/Prototypes/Recipes/Lathes/medical.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/gauze.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/gauze.yml index ea21a564480..bb36f36d697 100644 --- a/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/gauze.yml +++ b/Resources/Prototypes/Recipes/Crafting/Graphs/improvised/gauze.yml @@ -8,6 +8,6 @@ steps: - material: Cloth amount: 2 - doAfter: 10 + doAfter: 3 - node: gauze entity: Gauze1 diff --git a/Resources/Prototypes/Recipes/Lathes/medical.yml b/Resources/Prototypes/Recipes/Lathes/medical.yml index c414bfad525..b2c70b41ee9 100644 --- a/Resources/Prototypes/Recipes/Lathes/medical.yml +++ b/Resources/Prototypes/Recipes/Lathes/medical.yml @@ -75,7 +75,7 @@ result: Gauze1 completetime: 1 materials: - Cloth: 200 + Cloth: 100 # lathe more efficient than handcrafting - type: latheRecipe id: HandheldHealthAnalyzer From fcbf5152035000e87284be9e1279f8626d0e9c30 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 09:54:25 +0000 Subject: [PATCH 043/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index b0b452a5ecf..fb6ea528d5f 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: BackeTako - changes: - - message: Added a suitskirt for the psychologist - type: Add - id: 7079 - time: '2024-08-10T12:51:54.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30709 - author: Unkn0wnGh0st333 changes: - message: ERT Chaplain starting gear was fixed and will no longer give the ERT @@ -3951,3 +3944,12 @@ id: 7578 time: '2024-11-02T09:51:45.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32458 +- author: K-Dynamic + changes: + - message: Handcrafted gauze now takes 3 seconds instead of 10 seconds of crafting + type: Tweak + - message: Medical techfab gauze recipe now takes 1 cloth instead of 2 + type: Tweak + id: 7579 + time: '2024-11-02T09:53:19.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32744 From 1c2fd6a11b6de65549a2278468e6ab90859b982f Mon Sep 17 00:00:00 2001 From: Ubaser <134914314+UbaserB@users.noreply.github.com> Date: Sat, 2 Nov 2024 21:07:51 +1100 Subject: [PATCH 044/112] Service workers antagonist fix. (#31359) * add * Revert "add" This reverts commit 25da34b0fead5812fe5800c9bf5dd7b10ef48d7d. * antagonism allowed:tm: --- Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml b/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml index e883f4cc669..427d9b8192f 100644 --- a/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml +++ b/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml @@ -1,4 +1,4 @@ -- type: job +- type: job id: ServiceWorker name: job-name-serviceworker description: job-description-serviceworker @@ -6,7 +6,6 @@ startingGear: ServiceWorkerGear icon: "JobIconServiceWorker" supervisors: job-supervisors-service - canBeAntag: false access: - Service - Maintenance From 2a6314bf90ade6c6e9c5323d1696bf6e62ee431a Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 10:08:58 +0000 Subject: [PATCH 045/112] 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 fb6ea528d5f..351ab9d62ed 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,12 +1,4 @@ Entries: -- author: Unkn0wnGh0st333 - changes: - - message: ERT Chaplain starting gear was fixed and will no longer give the ERT - Engineer gear - type: Fix - id: 7080 - time: '2024-08-10T12:55:20.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30855 - author: Ubaser changes: - message: Light tube structures now have new sprites. @@ -3953,3 +3945,10 @@ id: 7579 time: '2024-11-02T09:53:19.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32744 +- author: Ubaser + changes: + - message: Service workers can now be antagonists. + type: Fix + id: 7580 + time: '2024-11-02T10:07:52.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/31359 From 4f683155843bff54c03d0e5154f38e0744548c59 Mon Sep 17 00:00:00 2001 From: AftrLite <61218133+AftrLite@users.noreply.github.com> Date: Sun, 3 Nov 2024 02:19:33 +1300 Subject: [PATCH 046/112] Adds a new AME sound effect! (#33097) * Changes the AME sound effect to not be the default MetalThud. * Was told on discord to make a minor change to autorerun the tests due to the Build & Test Debug failing! * Attribution and licensing, as requsted by deathride58 * Fixes the high-pitched squeak audible to some people! * Audio file tweaked by SlamBamActionMan to eliminate a weird squeak they were still able to hear. Thanks! --- .../Ame/Components/AmeControllerComponent.cs | 2 +- Resources/Audio/Machines/ame_fuelinjection.ogg | Bin 0 -> 29727 bytes Resources/Audio/Machines/attributions.yml | 5 +++++ 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 Resources/Audio/Machines/ame_fuelinjection.ogg diff --git a/Content.Server/Ame/Components/AmeControllerComponent.cs b/Content.Server/Ame/Components/AmeControllerComponent.cs index fae3d86633d..2c5464dd8e0 100644 --- a/Content.Server/Ame/Components/AmeControllerComponent.cs +++ b/Content.Server/Ame/Components/AmeControllerComponent.cs @@ -55,7 +55,7 @@ public sealed partial class AmeControllerComponent : SharedAmeControllerComponen /// [DataField("injectSound")] [ViewVariables(VVAccess.ReadWrite)] - public SoundSpecifier InjectSound = new SoundCollectionSpecifier("MetalThud"); + public SoundSpecifier InjectSound = new SoundPathSpecifier("/Audio/Machines/ame_fuelinjection.ogg"); /// /// The last time this could have injected fuel into the AME. diff --git a/Resources/Audio/Machines/ame_fuelinjection.ogg b/Resources/Audio/Machines/ame_fuelinjection.ogg new file mode 100644 index 0000000000000000000000000000000000000000..30c9175ee97733b81ce14e9ac55964c67b0dd3c3 GIT binary patch literal 29727 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 Date: Sat, 2 Nov 2024 13:20:40 +0000 Subject: [PATCH 047/112] 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 351ab9d62ed..728cdd9c03b 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Ubaser - changes: - - message: Light tube structures now have new sprites. - type: Tweak - id: 7081 - time: '2024-08-10T15:00:22.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29091 - author: lzk228 changes: - message: Standartized some clothing recipes. @@ -3952,3 +3945,10 @@ id: 7580 time: '2024-11-02T10:07:52.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/31359 +- author: AftrLite + changes: + - message: The AME now has a new sound effect for fuel injection! + type: Add + id: 7581 + time: '2024-11-02T13:19:33.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33097 From 9520e829de3511ebd0e3304fb8d03ab0440db7dd Mon Sep 17 00:00:00 2001 From: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com> Date: Sat, 2 Nov 2024 15:21:10 +0200 Subject: [PATCH 048/112] Allow for the ai's laws to be changed from its core and eye (#32461) * Allow for the ai's laws to be changed from its core and eye * Address reviews --- .../Administration/Systems/AdminVerbSystem.cs | 29 +++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/Content.Server/Administration/Systems/AdminVerbSystem.cs b/Content.Server/Administration/Systems/AdminVerbSystem.cs index 2ab27e4388e..0640537f57e 100644 --- a/Content.Server/Administration/Systems/AdminVerbSystem.cs +++ b/Content.Server/Administration/Systems/AdminVerbSystem.cs @@ -35,8 +35,10 @@ using Robust.Shared.Utility; using System.Linq; using Content.Server.Silicons.Laws; +using Content.Shared.Movement.Components; using Content.Shared.Silicons.Laws.Components; using Robust.Server.Player; +using Content.Shared.Silicons.StationAi; using Robust.Shared.Physics.Components; using static Content.Shared.Configurable.ConfigurationComponent; @@ -345,7 +347,30 @@ private void AddAdminVerbs(GetVerbsEvent args) Impact = LogImpact.Low }); - if (TryComp(args.Target, out var lawBoundComponent)) + // This logic is needed to be able to modify the AI's laws through its core and eye. + EntityUid? target = null; + SiliconLawBoundComponent? lawBoundComponent = null; + + if (TryComp(args.Target, out lawBoundComponent)) + { + target = args.Target; + } + // When inspecting the core we can find the entity with its laws by looking at the AiHolderComponent. + else if (TryComp(args.Target, out var holder) && holder.Slot.Item != null + && TryComp(holder.Slot.Item, out lawBoundComponent)) + { + target = holder.Slot.Item.Value; + // For the eye we can find the entity with its laws as the source of the movement relay since the eye + // is just a proxy for it to move around and look around the station. + } + else if (TryComp(args.Target, out var relay) + && TryComp(relay.Source, out lawBoundComponent)) + { + target = relay.Source; + + } + + if (lawBoundComponent != null && target != null) { args.Verbs.Add(new Verb() { @@ -359,7 +384,7 @@ private void AddAdminVerbs(GetVerbsEvent args) return; } _euiManager.OpenEui(ui, session); - ui.UpdateLaws(lawBoundComponent, args.Target); + ui.UpdateLaws(lawBoundComponent, target.Value); }, Icon = new SpriteSpecifier.Rsi(new ResPath("/Textures/Interface/Actions/actions_borg.rsi"), "state-laws"), }); From 131e492e6f99ab40f7c4b7c0502c039f93084e66 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 13:22:16 +0000 Subject: [PATCH 049/112] Automatic changelog update --- Resources/Changelog/Admin.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Resources/Changelog/Admin.yml b/Resources/Changelog/Admin.yml index fabaee2c2c6..56c82c23a43 100644 --- a/Resources/Changelog/Admin.yml +++ b/Resources/Changelog/Admin.yml @@ -583,5 +583,12 @@ Entries: id: 72 time: '2024-11-02T09:29:16.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/30443 +- author: nikthechampiongr + changes: + - message: It is now possible to edit the AI's laws through its core and eye. + type: Fix + id: 73 + time: '2024-11-02T13:21:10.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32461 Name: Admin Order: 1 From 11f0dc420f0a17e721dc29cd993132f13a24537f Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Sat, 2 Nov 2024 13:24:08 +0000 Subject: [PATCH 050/112] clean up tools lathe recipes (#31521) * clean up tools lathe recipes * add medical and cooking tools * add result * add result to others * review * engine --------- Co-authored-by: deltanedas <@deltanedas:kde.org> --- .../Prototypes/Recipes/Lathes/botany.yml | 38 +++--- .../Prototypes/Recipes/Lathes/cooking.yml | 52 ++++---- .../Prototypes/Recipes/Lathes/medical.yml | 80 ++++-------- Resources/Prototypes/Recipes/Lathes/tools.yml | 118 +++++++----------- 4 files changed, 118 insertions(+), 170 deletions(-) diff --git a/Resources/Prototypes/Recipes/Lathes/botany.yml b/Resources/Prototypes/Recipes/Lathes/botany.yml index 010beb491ac..ae5a444ed8c 100644 --- a/Resources/Prototypes/Recipes/Lathes/botany.yml +++ b/Resources/Prototypes/Recipes/Lathes/botany.yml @@ -1,39 +1,39 @@ +# Base prototypes + - type: latheRecipe - id: MiniHoe - result: HydroponicsToolMiniHoe - completetime: 2 + abstract: true + parent: BaseToolRecipe + id: BaseHydroToolRecipe materials: Steel: 200 Plastic: 100 +# Recipes + +- type: latheRecipe + parent: BaseHydroToolRecipe + id: HydroponicsToolMiniHoe + result: HydroponicsToolMiniHoe + - type: latheRecipe + parent: BaseHydroToolRecipe id: HydroponicsToolScythe result: HydroponicsToolScythe - completetime: 2 materials: Steel: 300 Plastic: 200 - type: latheRecipe + parent: BaseHydroToolRecipe id: HydroponicsToolHatchet result: HydroponicsToolHatchet - completetime: 2 - materials: - Steel: 200 - Plastic: 100 - type: latheRecipe - id: Spade + parent: BaseHydroToolRecipe + id: HydroponicsToolSpade result: HydroponicsToolSpade - completetime: 2 - materials: - Steel: 200 - Plastic: 100 - + - type: latheRecipe - id: Clippers + parent: BaseHydroToolRecipe + id: HydroponicsToolClippers result: HydroponicsToolClippers - completetime: 2 - materials: - Steel: 200 - Plastic: 100 diff --git a/Resources/Prototypes/Recipes/Lathes/cooking.yml b/Resources/Prototypes/Recipes/Lathes/cooking.yml index c28a9370158..333279a8201 100644 --- a/Resources/Prototypes/Recipes/Lathes/cooking.yml +++ b/Resources/Prototypes/Recipes/Lathes/cooking.yml @@ -1,67 +1,65 @@ - type: latheRecipe + parent: BaseToolRecipe id: ButchCleaver result: ButchCleaver - completetime: 2 materials: Steel: 300 Plastic: 50 - type: latheRecipe + parent: BaseToolRecipe id: KitchenKnife result: KitchenKnife - completetime: 2 materials: Steel: 200 Plastic: 50 - type: latheRecipe - id: DrinkMug - result: DrinkMug + abstract: true + id: BaseGlasswareRecipe completetime: 0.8 materials: Glass: 100 - type: latheRecipe + parent: BaseGlasswareRecipe + id: DrinkMug + result: DrinkMug + +- type: latheRecipe + parent: DrinkMug id: DrinkMugMetal result: DrinkMugMetal - completetime: 0.8 materials: Steel: 100 - type: latheRecipe + parent: DrinkMug id: DrinkGlass result: DrinkGlass - completetime: 0.8 - materials: - Glass: 100 - type: latheRecipe + parent: DrinkMug id: DrinkShotGlass result: DrinkShotGlass completetime: 0.4 - materials: - Glass: 100 - type: latheRecipe + parent: DrinkMug id: DrinkGlassCoupeShaped result: DrinkGlassCoupeShaped - completetime: 0.8 - materials: - Glass: 100 -- type: latheRecipe - id: CustomDrinkJug - result: CustomDrinkJug - completetime: 2 - materials: +- type: latheRecipe + id: CustomDrinkJug + result: CustomDrinkJug + completetime: 2 + materials: Plastic: 200 - + - type: latheRecipe + parent: BaseGlasswareRecipe id: FoodPlate result: FoodPlate - completetime: 0.8 - materials: - Glass: 100 - type: latheRecipe id: FoodPlateSmall @@ -71,25 +69,23 @@ Glass: 50 - type: latheRecipe + parent: FoodPlate id: FoodPlatePlastic result: FoodPlatePlastic - completetime: 0.8 materials: Plastic: 100 - type: latheRecipe + parent: FoodPlateSmall id: FoodPlateSmallPlastic result: FoodPlateSmallPlastic - completetime: 0.4 materials: Plastic: 50 - type: latheRecipe + parent: FoodPlate id: FoodBowlBig result: FoodBowlBig - completetime: 0.8 - materials: - Glass: 100 - type: latheRecipe id: FoodPlateTin @@ -99,9 +95,9 @@ Steel: 100 - type: latheRecipe + parent: FoodPlateTin id: FoodPlateMuffinTin result: FoodPlateMuffinTin - completetime: 0.4 materials: Steel: 50 diff --git a/Resources/Prototypes/Recipes/Lathes/medical.yml b/Resources/Prototypes/Recipes/Lathes/medical.yml index b2c70b41ee9..08250290ec7 100644 --- a/Resources/Prototypes/Recipes/Lathes/medical.yml +++ b/Resources/Prototypes/Recipes/Lathes/medical.yml @@ -1,51 +1,46 @@ +# Base prototypes + - type: latheRecipe - id: Scalpel - result: Scalpel - category: Tools - completetime: 2 + abstract: true + parent: BaseToolRecipe + id: BaseSurgicalRecipe materials: Steel: 200 +# Recipes + - type: latheRecipe + parent: BaseSurgicalRecipe + id: Scalpel + result: Scalpel + +- type: latheRecipe + parent: BaseSurgicalRecipe id: Retractor result: Retractor - category: Tools - completetime: 2 - materials: - Steel: 200 - type: latheRecipe + parent: BaseSurgicalRecipe id: Cautery result: Cautery - category: Tools - completetime: 2 - materials: - Steel: 200 - type: latheRecipe + parent: BaseToolRecipe id: Drill result: Drill - category: Tools - completetime: 2 materials: Steel: 200 Plastic: 100 - type: latheRecipe + parent: BaseSurgicalRecipe id: Saw result: Saw - category: Tools - completetime: 2 - materials: - Steel: 200 - type: latheRecipe + parent: BaseSurgicalRecipe id: Hemostat result: Hemostat - category: Tools - completetime: 2 - materials: - Steel: 200 - type: latheRecipe id: BodyBag @@ -140,66 +135,51 @@ Plastic: 300 - type: latheRecipe + parent: Medkit id: MedkitBurn result: MedkitBurn name: lathe-recipe-MedkitBurn-name - completetime: 2 - materials: - Plastic: 300 - type: latheRecipe + parent: Medkit id: MedkitToxin result: MedkitToxin name: lathe-recipe-MedkitToxin-name - completetime: 2 - materials: - Plastic: 300 - type: latheRecipe + parent: Medkit id: MedkitO2 result: MedkitO2 name: lathe-recipe-MedkitO2-name - completetime: 2 - materials: - Plastic: 300 - type: latheRecipe + parent: Medkit id: MedkitBrute result: MedkitBrute name: lathe-recipe-MedkitBrute-name - completetime: 2 - materials: - Plastic: 300 - type: latheRecipe + parent: Medkit id: MedkitAdvanced result: MedkitAdvanced name: lathe-recipe-MedkitAdvanced-name - completetime: 2 - materials: - Plastic: 300 - type: latheRecipe + parent: Medkit id: MedkitRadiation result: MedkitRadiation name: lathe-recipe-MedkitRadiation-name - completetime: 2 - materials: - Plastic: 300 - type: latheRecipe + parent: Medkit id: MedkitCombat result: MedkitCombat name: lathe-recipe-MedkitCombat-name - completetime: 2 - materials: - Plastic: 300 - type: latheRecipe + parent: BaseToolRecipe id: HandLabeler result: HandLabeler - category: Tools - completetime: 2 materials: Plastic: 100 @@ -219,20 +199,14 @@ Plastic: 300 - type: latheRecipe + parent: RollerBedSpawnFolded id: CheapRollerBedSpawnFolded result: CheapRollerBedSpawnFolded - completetime: 1 - materials: - Steel: 600 - Plastic: 300 - type: latheRecipe + parent: RollerBedSpawnFolded id: EmergencyRollerBedSpawnFolded result: EmergencyRollerBedSpawnFolded - completetime: 1 - materials: - Steel: 600 - Plastic: 300 - type: latheRecipe id: WhiteCane diff --git a/Resources/Prototypes/Recipes/Lathes/tools.yml b/Resources/Prototypes/Recipes/Lathes/tools.yml index 3f5003d909b..fc35153317e 100644 --- a/Resources/Prototypes/Recipes/Lathes/tools.yml +++ b/Resources/Prototypes/Recipes/Lathes/tools.yml @@ -1,9 +1,8 @@ +# Base prototypes + - type: latheRecipe - id: Wirecutter - icon: - sprite: Objects/Tools/wirecutters.rsi - state: cutters-map - result: Wirecutter + abstract: true + id: BaseToolRecipe category: Tools completetime: 2 materials: @@ -11,30 +10,42 @@ Plastic: 50 - type: latheRecipe + abstract: true + parent: BaseToolRecipe + id: BaseBigToolRecipe + materials: + Steel: 800 + Glass: 300 + +# Recipes + +- type: latheRecipe + parent: BaseToolRecipe + id: Wirecutter + result: Wirecutter + icon: + sprite: Objects/Tools/wirecutters.rsi + state: cutters-map + +- type: latheRecipe + parent: BaseToolRecipe id: Screwdriver + result: Screwdriver icon: sprite: Objects/Tools/screwdriver.rsi state: screwdriver-map - result: Screwdriver - category: Tools - completetime: 2 - materials: - Steel: 200 - Plastic: 50 - type: latheRecipe + parent: BaseToolRecipe id: Welder result: Welder - category: Tools - completetime: 2 materials: Steel: 400 - type: latheRecipe + parent: BaseToolRecipe id: Wrench result: Wrench - category: Tools - completetime: 2 materials: Steel: 200 @@ -42,155 +53,122 @@ id: CableStack result: CableApcStack1 category: Parts - completetime: 2 + completetime: 0.1 materials: Steel: 30 - type: latheRecipe + parent: CableStack id: CableMVStack result: CableMVStack1 - category: Parts - completetime: 2 - materials: - Steel: 30 - type: latheRecipe + parent: CableStack id: CableHVStack result: CableHVStack1 - category: Parts - completetime: 2 - materials: - Steel: 30 - type: latheRecipe + parent: BaseToolRecipe id: CrowbarGreen result: CrowbarGreen - category: Tools - completetime: 2 materials: Steel: 200 - type: latheRecipe + parent: BaseToolRecipe id: Pickaxe result: Pickaxe - category: Tools completetime: 4 materials: Steel: 1000 Wood: 500 - type: latheRecipe + parent: BaseToolRecipe id: Shovel result: Shovel - category: Tools - completetime: 2 materials: Steel: 200 Wood: 100 - type: latheRecipe + parent: BaseToolRecipe id: Multitool result: Multitool - category: Tools - completetime: 2 materials: Steel: 200 Plastic: 200 - type: latheRecipe + parent: Multitool id: NetworkConfigurator result: NetworkConfigurator - category: Tools - completetime: 2 - materials: - Steel: 200 - Plastic: 200 - type: latheRecipe + parent: BaseToolRecipe id: PowerDrill result: PowerDrill - category: Tools - completetime: 2 materials: Steel: 600 Plastic: 200 - type: latheRecipe + parent: BaseToolRecipe id: RCD result: RCDEmpty - category: Tools completetime: 4 materials: Steel: 1000 Plastic: 300 - type: latheRecipe + parent: BaseToolRecipe id: RCDAmmo result: RCDAmmo - category: Tools - completetime: 2.4 materials: Steel: 500 Plastic: 250 - type: latheRecipe + parent: BaseBigToolRecipe id: HandHeldMassScanner result: HandHeldMassScannerEmpty - category: Tools - completetime: 2 - materials: - Steel: 800 - Glass: 300 - type: latheRecipe + parent: BaseBigToolRecipe id: HandheldGPSBasic result: HandheldGPSBasic - category: Tools - completetime: 2 - materials: - Steel: 800 - Glass: 300 - type: latheRecipe + parent: BaseBigToolRecipe id: TRayScanner result: trayScanner - category: Tools - completetime: 2 - materials: - Steel: 800 - Glass: 300 - type: latheRecipe + parent: BaseBigToolRecipe id: GasAnalyzer result: GasAnalyzer - category: Tools - completetime: 2 - materials: - Steel: 800 - Glass: 300 - type: latheRecipe + parent: BaseToolRecipe id: SprayPainter result: SprayPainter - category: Tools - completetime: 2 materials: Steel: 300 Plastic: 100 - type: latheRecipe + parent: BaseToolRecipe id: UtilityBelt result: ClothingBeltUtility - category: Tools - completetime: 2 materials: Cloth: 100 Steel: 50 - type: latheRecipe + parent: BaseToolRecipe id: HolofanProjector result: HolofanProjectorEmpty - category: Tools completetime: 8 materials: Steel: 300 @@ -198,18 +176,18 @@ Plastic: 50 - type: latheRecipe + parent: BaseToolRecipe id: WelderExperimental result: WelderExperimental - category: Tools completetime: 6 materials: Steel: 800 Plasma: 200 - type: latheRecipe + parent: BaseToolRecipe id: JawsOfLife result: JawsOfLife - category: Tools completetime: 6 materials: Steel: 1000 @@ -218,9 +196,9 @@ Gold: 50 - type: latheRecipe + parent: BaseToolRecipe id: HoloprojectorField result: HoloprojectorFieldEmpty - category: Tools completetime: 3 materials: Steel: 500 @@ -228,9 +206,9 @@ Glass: 100 - type: latheRecipe + parent: BaseToolRecipe id: WeaponParticleDecelerator result: WeaponParticleDecelerator - category: Tools completetime: 6 materials: Steel: 750 From 7614c2fba754e63989bb25564a265e84118170e3 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 13:25:14 +0000 Subject: [PATCH 051/112] 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 728cdd9c03b..bbe3437142e 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: lzk228 - changes: - - message: Standartized some clothing recipes. - type: Tweak - id: 7082 - time: '2024-08-10T18:16:56.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29315 - author: TheShuEd changes: - message: You cat cut burger bun into two halfs, and make custom burgers now! @@ -3952,3 +3945,10 @@ id: 7581 time: '2024-11-02T13:19:33.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33097 +- author: deltanedas + changes: + - message: Printing cables in an autolathe is now 20 times faster. + type: Tweak + id: 7582 + time: '2024-11-02T13:24:08.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/31521 From e7ca4b8f2f603ccabab547d6fa5c771373a7439d Mon Sep 17 00:00:00 2001 From: Centronias Date: Sat, 2 Nov 2024 08:04:22 -0700 Subject: [PATCH 052/112] Intercoms and Radios both pick up proximate speech (#32737) * Deduping of recent messages should consider the channel it's being sent to * rerun actions --- .../Radio/EntitySystems/RadioDeviceSystem.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs b/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs index c8867744a40..3829fc34d20 100644 --- a/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs +++ b/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs @@ -30,7 +30,7 @@ public sealed class RadioDeviceSystem : EntitySystem [Dependency] private readonly SharedAppearanceSystem _appearance = default!; // Used to prevent a shitter from using a bunch of radios to spam chat. - private HashSet<(string, EntityUid)> _recentlySent = new(); + private HashSet<(string, EntityUid, RadioChannelPrototype)> _recentlySent = new(); public override void Initialize() { @@ -114,7 +114,7 @@ private void OnPowerChanged(EntityUid uid, RadioMicrophoneComponent component, r { if (args.Powered) return; - SetMicrophoneEnabled(uid, null, false, true, component); + SetMicrophoneEnabled(uid, null, false, true, component); } public void SetMicrophoneEnabled(EntityUid uid, EntityUid? user, bool enabled, bool quiet = false, RadioMicrophoneComponent? component = null) @@ -191,8 +191,9 @@ private void OnListen(EntityUid uid, RadioMicrophoneComponent component, ListenE if (HasComp(args.Source)) return; // no feedback loops please. - if (_recentlySent.Add((args.Message, args.Source))) - _radio.SendRadioMessage(args.Source, args.Message, _protoMan.Index(component.BroadcastChannel), uid); + var channel = _protoMan.Index(component.BroadcastChannel)!; + if (_recentlySent.Add((args.Message, args.Source, channel))) + _radio.SendRadioMessage(args.Source, args.Message, channel, uid); } private void OnAttemptListen(EntityUid uid, RadioMicrophoneComponent component, ListenAttemptEvent args) @@ -279,7 +280,7 @@ private void SetIntercomChannel(Entity ent, ProtoId(ent, out var mic)) mic.BroadcastChannel = channel; if (TryComp(ent, out var speaker)) - speaker.Channels = new(){ channel }; + speaker.Channels = new() { channel }; Dirty(ent); } } From db4b2e0a6f0c7c398d7f90d5e462224d2bcd6c79 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 15:05:28 +0000 Subject: [PATCH 053/112] 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 bbe3437142e..040c7228181 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: TheShuEd - changes: - - message: You cat cut burger bun into two halfs, and make custom burgers now! - type: Add - id: 7083 - time: '2024-08-10T19:31:32.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30755 - author: thetolbean changes: - message: Updated Core's boxing ring beacon label to be correct @@ -3952,3 +3945,11 @@ id: 7582 time: '2024-11-02T13:24:08.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/31521 +- author: Centronias + changes: + - message: Fixed a bug where attempting to speak into a handheld radio and an intercom + simultaneously would lead to only one device transmitting the message. + type: Fix + id: 7583 + time: '2024-11-02T15:04:22.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32737 From 8c1281adf7cb42134635a3aa32cd4db23b03306d Mon Sep 17 00:00:00 2001 From: joshepvodka <86210200+joshepvodka@users.noreply.github.com> Date: Sat, 2 Nov 2024 12:12:25 -0300 Subject: [PATCH 054/112] Adds headphones to loadouts (#33067) added headphones to trinkets --- .../Loadouts/Miscellaneous/trinkets.yml | 45 +++++++++++-------- .../Prototypes/Loadouts/loadout_groups.yml | 1 + 2 files changed, 27 insertions(+), 19 deletions(-) diff --git a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml index 78b5f0bc9ea..79fee8bf0df 100644 --- a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml +++ b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml @@ -21,6 +21,13 @@ back: - ClothingHeadHatHairflower +# Headphones +- type: loadout + id: Headphones + storage: + back: + - ClothingNeckHeadphones + # Plushies - type: loadout id: PlushieLizard @@ -165,7 +172,7 @@ !type:OverallPlaytimeRequirement time: 36000 # 10hr storage: - back: + back: - TowelColorWhite - type: loadout @@ -176,9 +183,9 @@ !type:OverallPlaytimeRequirement time: 1800000 # 500hr storage: - back: + back: - TowelColorSilver - + - type: loadout id: TowelColorGold effects: @@ -187,7 +194,7 @@ !type:OverallPlaytimeRequirement time: 3600000 # 1000hr storage: - back: + back: - TowelColorGold - type: loadout @@ -199,7 +206,7 @@ department: Cargo time: 360000 # 100hr storage: - back: + back: - TowelColorLightBrown - type: loadout @@ -211,7 +218,7 @@ department: Civilian time: 360000 # 100hr storage: - back: + back: - TowelColorGreen - type: loadout @@ -223,7 +230,7 @@ department: Command time: 360000 # 100hr storage: - back: + back: - TowelColorDarkBlue - type: loadout @@ -235,9 +242,9 @@ department: Engineering time: 360000 # 100hr storage: - back: + back: - TowelColorOrange - + - type: loadout id: TowelColorLightBlue effects: @@ -247,7 +254,7 @@ department: Medical time: 360000 # 100hr storage: - back: + back: - TowelColorLightBlue - type: loadout @@ -259,7 +266,7 @@ department: Science time: 360000 # 100hr storage: - back: + back: - TowelColorPurple - type: loadout @@ -271,7 +278,7 @@ department: Security time: 360000 # 100hr storage: - back: + back: - TowelColorRed - type: loadout @@ -283,7 +290,7 @@ role: JobPassenger time: 360000 # 100hr storage: - back: + back: - TowelColorGray - type: loadout @@ -295,7 +302,7 @@ role: JobChaplain time: 360000 # 100hr storage: - back: + back: - TowelColorBlack - type: loadout @@ -307,7 +314,7 @@ role: JobLibrarian time: 360000 # 100hr storage: - back: + back: - TowelColorDarkGreen - type: loadout @@ -319,7 +326,7 @@ role: JobLawyer time: 360000 # 100hr storage: - back: + back: - TowelColorMaroon - type: loadout @@ -331,7 +338,7 @@ role: JobClown time: 360000 # 100hr storage: - back: + back: - TowelColorYellow - type: loadout @@ -343,5 +350,5 @@ role: JobMime time: 360000 # 100hr storage: - back: - - TowelColorMime \ No newline at end of file + back: + - TowelColorMime diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index 13c675000ed..ce4866dca84 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -7,6 +7,7 @@ loadouts: - FlowerWreath - Hairflower + - Headphones - PlushieLizard - PlushieSpaceLizard - Lighter From a3ce9b0db47aa9d77624e63c424d1884261fcb15 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sat, 2 Nov 2024 15:13:31 +0000 Subject: [PATCH 055/112] 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 040c7228181..d82950a2867 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: thetolbean - changes: - - message: Updated Core's boxing ring beacon label to be correct - type: Tweak - id: 7084 - time: '2024-08-10T19:50:08.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30800 - author: Flareguy changes: - message: Added vox sprites for most of the remaining common mask items. @@ -3953,3 +3946,10 @@ id: 7583 time: '2024-11-02T15:04:22.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32737 +- author: joshepvodka + changes: + - message: Headphones are now selectable in loadouts. + type: Add + id: 7584 + time: '2024-11-02T15:12:26.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33067 From 65462d8ca590c97e24ae27d42b53ea2440519baa Mon Sep 17 00:00:00 2001 From: Scribbles0 <91828755+Scribbles0@users.noreply.github.com> Date: Sat, 2 Nov 2024 09:21:35 -0700 Subject: [PATCH 056/112] Cardboard Box Capacity 4 -> 5 (#32743) * capacity upgrade * comment update --- .../Entities/Structures/Storage/Closets/big_boxes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml b/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml index 17ccb5a41fd..a6d5a49f67a 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml @@ -29,7 +29,7 @@ isCollidableWhenOpen: false openOnMove: false airtight: false - capacity: 4 #4 Entities seems like a nice comfy fit for a cardboard box. + capacity: 5 #5 entity capacity to fit all of your friends (or teammates on your nuclear operation without reinforcements). - type: ContainerContainer containers: entity_storage: !type:Container From 6f1eeba1911dc3c7e96890fa2f0a3b4f07ee2d5d Mon Sep 17 00:00:00 2001 From: Milon Date: Sat, 2 Nov 2024 17:59:38 +0100 Subject: [PATCH 057/112] change ShowHealthBars and ShowHealthIcons to use protoId (#32355) use protoId --- Content.Client/Commands/ShowHealthBarsCommand.cs | 4 +++- Content.Shared/Overlays/ShowHealthBarsComponent.cs | 8 +++++--- Content.Shared/Overlays/ShowHealthIconsComponent.cs | 9 ++++++--- Resources/Prototypes/Entities/Clothing/Eyes/hud.yml | 6 ------ .../Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml | 2 -- 5 files changed, 14 insertions(+), 15 deletions(-) diff --git a/Content.Client/Commands/ShowHealthBarsCommand.cs b/Content.Client/Commands/ShowHealthBarsCommand.cs index 0811f966637..6ea9d06c8c3 100644 --- a/Content.Client/Commands/ShowHealthBarsCommand.cs +++ b/Content.Client/Commands/ShowHealthBarsCommand.cs @@ -1,6 +1,8 @@ +using Content.Shared.Damage.Prototypes; using Content.Shared.Overlays; using Robust.Client.Player; using Robust.Shared.Console; +using Robust.Shared.Prototypes; using System.Linq; namespace Content.Client.Commands; @@ -34,7 +36,7 @@ public override void Execute(IConsoleShell shell, string argStr, string[] args) { var showHealthBarsComponent = new ShowHealthBarsComponent { - DamageContainers = args.ToList(), + DamageContainers = args.Select(arg => new ProtoId(arg)).ToList(), HealthStatusIcon = null, NetSyncEnabled = false }; diff --git a/Content.Shared/Overlays/ShowHealthBarsComponent.cs b/Content.Shared/Overlays/ShowHealthBarsComponent.cs index 4642c5936a7..cb4f0fe7dd4 100644 --- a/Content.Shared/Overlays/ShowHealthBarsComponent.cs +++ b/Content.Shared/Overlays/ShowHealthBarsComponent.cs @@ -2,7 +2,6 @@ using Content.Shared.StatusIcon; using Robust.Shared.GameStates; using Robust.Shared.Prototypes; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List; namespace Content.Shared.Overlays; @@ -15,8 +14,11 @@ public sealed partial class ShowHealthBarsComponent : Component /// /// Displays health bars of the damage containers. /// - [DataField("damageContainers", customTypeSerializer: typeof(PrototypeIdListSerializer))] - public List DamageContainers = new(); + [DataField] + public List> DamageContainers = new() + { + "Biological" + }; [DataField] public ProtoId? HealthStatusIcon = "HealthIconFine"; diff --git a/Content.Shared/Overlays/ShowHealthIconsComponent.cs b/Content.Shared/Overlays/ShowHealthIconsComponent.cs index c2526c2f401..aa12c9887a8 100644 --- a/Content.Shared/Overlays/ShowHealthIconsComponent.cs +++ b/Content.Shared/Overlays/ShowHealthIconsComponent.cs @@ -1,6 +1,6 @@ using Content.Shared.Damage.Prototypes; using Robust.Shared.GameStates; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List; +using Robust.Shared.Prototypes; namespace Content.Shared.Overlays; @@ -13,6 +13,9 @@ public sealed partial class ShowHealthIconsComponent : Component /// /// Displays health status icons of the damage containers. /// - [DataField("damageContainers", customTypeSerializer: typeof(PrototypeIdListSerializer))] - public List DamageContainers = new(); + [DataField] + public List> DamageContainers = new() + { + "Biological" + }; } diff --git a/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml b/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml index 9e881bf9c21..300c938bc90 100644 --- a/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml +++ b/Resources/Prototypes/Entities/Clothing/Eyes/hud.yml @@ -13,11 +13,7 @@ categories: [ HideSpawnMenu ] components: - type: ShowHealthBars - damageContainers: - - Biological - type: ShowHealthIcons - damageContainers: - - Biological - type: entity parent: ClothingEyesBase @@ -223,8 +219,6 @@ sprite: Clothing/Eyes/Hud/syndagent.rsi - type: ShowSyndicateIcons - type: ShowHealthBars - damageContainers: - - Biological - type: entity parent: [ClothingEyesGlassesSunglasses, ShowSecurityIcons] diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml index d1d530ae81b..6a8f1e5abb0 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml @@ -391,8 +391,6 @@ - type: Construction node: syndicatemedical - type: ShowHealthBars - damageContainers: - - Biological - type: InteractionPopup interactSuccessString: petting-success-syndicate-cyborg interactFailureString: petting-failure-syndicate-cyborg From 0ba3350c7eb5c9c16f84dfa2d5fa6c6ba0026041 Mon Sep 17 00:00:00 2001 From: RiceMar1244 <138547931+RiceMar1244@users.noreply.github.com> Date: Sat, 2 Nov 2024 15:55:15 -0400 Subject: [PATCH 058/112] Combat and survival knife storage/inhand sprites (#33111) * Adds storage sprites for combat knife and survival knife. Replaces inhand sprites. * Fixes meta.json copyright --- .../Entities/Objects/Weapons/Melee/knife.yml | 6 +++ .../Melee/combat_knife.rsi/inhand-left.png | Bin 291 -> 352 bytes .../Melee/combat_knife.rsi/inhand-right.png | Bin 275 -> 349 bytes .../Weapons/Melee/combat_knife.rsi/meta.json | 5 +- .../Melee/combat_knife.rsi/storage.png | Bin 0 -> 335 bytes .../Melee/survival_knife.rsi/inhand-left.png | Bin 308 -> 273 bytes .../Melee/survival_knife.rsi/inhand-right.png | Bin 306 -> 272 bytes .../Melee/survival_knife.rsi/meta.json | 49 ++++++++++-------- .../Melee/survival_knife.rsi/storage.png | Bin 0 -> 307 bytes 9 files changed, 36 insertions(+), 24 deletions(-) create mode 100644 Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/storage.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/storage.png diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml index ae5b22f8e02..711b8c49feb 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml @@ -103,6 +103,9 @@ Slash: 10 - type: Item sprite: Objects/Weapons/Melee/combat_knife.rsi + storedSprite: + state: storage + sprite: Objects/Weapons/Melee/combat_knife.rsi - type: DisarmMalus malus: 0.225 @@ -117,6 +120,9 @@ state: icon - type: Item sprite: Objects/Weapons/Melee/survival_knife.rsi + storedSprite: + state: storage + sprite: Objects/Weapons/Melee/survival_knife.rsi - type: entity name: kukri knife diff --git a/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/inhand-left.png index a7ea753940826be08aaafd478d1f94b930ed18e6..e014cf5110fd9502d664134f7008fff5ed1ed201 100644 GIT binary patch delta 326 zcmV-M0lEI80^kCWBYy!WNkl82kTV2Q2DiycW{bs;a@?7B;==z|J713<&7)EP00000K+4Dan~Ql}EKeyGS?0-^ zs`0wkRE=8ZDOm{O0W9<6$|B!2rY!PgAv{Y?J`TMri(HwiQGd0yna`No+U&BfPN{Fn zt^E>v0>+_tTI*eh-_+J-zOT$-b=}$B?qoP)OwtcykiVPlx^vLRxAAS;x`z$ni1Pse z00000001B)b=$j_XgRv474{W7P_Y2+X@z~nuFpjRxTh7~BW8UbJ%Er_*vHl!mqo6| zp$`rrdH|naKR@c_^eS@r%@%^zT55?fp{=m5%euN$YaPBG1 diff --git a/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/inhand-right.png index 368c73da32797153fc605523aebb86ef07599351..20efe6dd87654762cd77570c3805cb3f8d0748d3 100644 GIT binary patch delta 323 zcmV-J0lfZ`0^I_TBYy!TNklPw?-vp3b8);TZnt#M{JnUB=LYl;)Ss}T# zQQvv*3%G<}j9GmMkCq>F>N;0dyVV7ts(xnvyS%qc15;I3mZcNSU;)h%KW0001t_X}=D VUchc<8SMZ7002ovPDHLkV1hV0mMQ=M delta 248 zcmcc1G?{6Fay9tphzg^gV%pqMg%5x0jCK|R6Grjx!;a> zn|sumqs#E!y>#wbkx|z}C%sqPGd+Hq>g~rH=6qMI3Ep?2@XRF(AHDyaj}26ft*773 z{^@)5Ph8tWRdtZ5Aka|1^&R)RUBNf*vj17VrTzca&~mO&yO>nbxrIl&{(W(eo_fEe uetAGDfBc2NbDdrn#7^6<9WwneNT;)YBU7SwXM}?g$RJNwKbLh*2~7aZy=cS$ diff --git a/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json index 08894a12a7b..56602b6ea13 100644 --- a/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "Taken/modified from desertrose at https://github.com/DesertRose2/desertrose/pull/378/commits/9e081bd2a0d7614be5a9dabbca34886ce204105d", + "copyright": "Taken/modified from desertrose at https://github.com/DesertRose2/desertrose/pull/378/commits/9e081bd2a0d7614be5a9dabbca34886ce204105d, storage & inhand sprites by RiceMar1244", "size": { "x": 32, "y": 32 @@ -10,6 +10,9 @@ { "name": "icon" }, + { + "name": "storage" + }, { "name": "inhand-left", "directions": 4 diff --git a/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/storage.png b/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/storage.png new file mode 100644 index 0000000000000000000000000000000000000000..6b88c9a3aa2885541458d1a5461aba93888ca350 GIT binary patch literal 335 zcmV-V0kHmwP)bY*_4N)F#w<}x910#FIURDfiMjH0nC>xRoAsYfZo8LGH~fq zTFj;l{9HzMS2zQxwuK~_9DVt+Y}0CHYXf(;H`vqR*ZSkrGqP->l4QbdA)KPM<~WYo z7{kUG22R`Q93V|o)>`}fl2uiOAPDen;OqcV6oH74=ehHq_XavKAUTL4fTn3Abs2!Q hRuK`1NDT46^94PVfvFJX;jRDx002ovPDHLkV1mvVjzs_f literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-left.png index b2f253c30b7a7bb447137fd5ce3b2a96983cd340..c352ccfab67d1bc0c97ebe9e383a1557cbb96dee 100644 GIT binary patch delta 257 zcmdnOG?8h7L_G%^0|UdV%))y>>V~I_V@SoEw>LNPwixiVK76sw!l7fDkRgL|3PY6F z5rz;S2k)aCJgr6@>mRweH?Xk2{GZi+Lu}=|AfRR-kelMFdU;QW?^_f7AhD^TYq{m` zi!bri^S!N^9JabDIqd3|xn7h1Y*ek7thUqVv(jIKc~Vu&B)uB>pRZBS3B&! z?T5_?)gN+o!f%9Pjy-bUvhHaf)7zuLzO0ruK%F1>?8T2|eJFA;%?Fv|>FVdQ&MBb@ E0N6NcqW}N^ delta 293 zcmbQpw1sJcL_HHT0|Uc#_L;swiYLG)#1%-_)zvLovc$;9=zQMwZ$Lg{NswPKgTu2M zX+Ta^RY*jMOKNd)QD#9&W_}(6L&conu!5q}?_YuoK7M_o<*loA?#%h%4WR}XjUPPH zIq#!+lA)-lcZY>>knv?>FNHaeCLNg+q7bZUt#7PbAKKY%th#xH#1bIAR>RO-^oZG$ zps<3k#f;M24Ca1P(pz#&0)f^hc)B=-So9_*NU-wo=ex;R0hkwL&%iMv6FeKB(rzZV~mkB4X5Rz?>kRY_xm nm3_DQ99o8wcvoJ7JPGYxSx^dMVpk)l6u6{1-oD!M>bj?kV@SoEw>S54Hakch`=}iKqwz*m7qdkZGl+_? zY+O54`A$Gl^PZI~o=yhshUL%xYqLJAou@6o6sVnn;lTabX}Yd)r`Er>2%0$E={i;>d z6u9-7=Ho-0002j2boO(000b7OjJex|Nnk|e&65UGBPqz(&=mf0004W zQchCV=-0C=2JR&a84_w-Y6@%7{?OD!tS%+FJ> zRWQ*r;NmRLOex6#a*U0*I5Sc+(=$pSoZ^zil2jm5DLXGSEq_&si!&v&s2HS)i!-e# zF*g;&Hsn%PaP@Nm8w&t8P8u7uY&1~-003S|L_t(IjbmUK;lKfz!ve$s$O0ljJOx=G z0*F2iag7W}EfVTmwH9QFB0jvr}!QcfB43MM&1B@U6RwMz|1|Y%dfDjM^5ll!) p=?0jbgWC>R0vtI&o)ZTO001>G2t9uSyI%kR002ovPDHLkV1hA4Xqf;2 diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json index 455734e0447..56602b6ea13 100644 --- a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json @@ -1,26 +1,29 @@ { - "version": 1, - "license": "CC-BY-SA-3.0", - "copyright": "Taken from /tg/station at commit https://github.com/tgstation/tgstation/commit/6cdc0503d32e249125151e369edf951e93bccd1a", - "size": { - "x": 32, - "y": 32 - }, - "states": [ - { - "name": "icon" + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken/modified from desertrose at https://github.com/DesertRose2/desertrose/pull/378/commits/9e081bd2a0d7614be5a9dabbca34886ce204105d, storage & inhand sprites by RiceMar1244", + "size": { + "x": 32, + "y": 32 }, - { - "name": "inhand-left", - "directions": 4 - }, - { - "name": "inhand-right", - "directions": 4 - }, - { - "name": "equipped-BELT", - "directions": 4 - } - ] + "states": [ + { + "name": "icon" + }, + { + "name": "storage" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "equipped-BELT", + "directions": 4 + } + ] } diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/storage.png b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/storage.png new file mode 100644 index 0000000000000000000000000000000000000000..173f66035b357a4e97dd17ea50420238b05ec7c2 GIT binary patch literal 307 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJU!E?GArY-_r`dBiIY=CnSIy;i zeluLWaY5~0qr-%00qxlx(-clsvvR(R?En6;{QU2# z@&*yd%|DxhZ9}{^=JuZyP-#$8;d#&#voB8fq~@P|rnSr&v9dpP)tO6NxK}Sysh3gM zrqFZFE1MxIoITm@r@|!N2|y^owxUZYG%#uZ?MZq|ZV4JaD?b0(ZXNr>MxY6nE&rdmEcB32MhK%BVS>L3CB7EY=1gV zN}cJ`FvUSR-)XgdE_;KoM8mXyO$JulS Date: Sat, 2 Nov 2024 17:23:40 -0500 Subject: [PATCH 059/112] Delete conveyor_old.rsi (#33102) --- .../conveyor_old.rsi/conveyor_loose.png | Bin 286 -> 0 bytes .../conveyor_old.rsi/conveyor_started_ccw.png | Bin 4389 -> 0 bytes .../conveyor_started_ccw_r.png | Bin 4440 -> 0 bytes .../conveyor_old.rsi/conveyor_started_cw.png | Bin 4434 -> 0 bytes .../conveyor_started_cw_r.png | Bin 4464 -> 0 bytes .../conveyor_old.rsi/conveyor_stopped_ccw.png | Bin 1687 -> 0 bytes .../conveyor_old.rsi/conveyor_stopped_cw.png | Bin 1689 -> 0 bytes .../Structures/conveyor_old.rsi/meta.json | 238 ------------------ 8 files changed, 238 deletions(-) delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/conveyor_loose.png delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_ccw.png delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_ccw_r.png delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_cw.png delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_cw_r.png delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/conveyor_stopped_ccw.png delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/conveyor_stopped_cw.png delete mode 100644 Resources/Textures/Structures/conveyor_old.rsi/meta.json diff --git a/Resources/Textures/Structures/conveyor_old.rsi/conveyor_loose.png b/Resources/Textures/Structures/conveyor_old.rsi/conveyor_loose.png deleted file mode 100644 index 97b955cc6e000436a475b44e3c3da2374f5a1f3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 286 zcmV+(0pb3MP)V#pRVNX9Kd%6Q$LnTv6#%sDVbBB0s>XJ|b0)f+&g^?%oYv5KU3V-L4b~2Qd?VzG z*OOQTWr~0?ux^^kM5&fBaPRxc3{Wk01#CqY0?kRa6f-uN2@b1)&`KX;n-IGTVvDy#8)62U=5^h$CTWT*&|u%cI-WprDmRoQYlOk k{!;a!-H^tMUrxpO0MJTUObOT2v;Y7A07*qoM6N<$f_a&A`~Uy| diff --git a/Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_ccw.png b/Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_ccw.png deleted file mode 100644 index 7ad5f8fc70dac364e96c4a47c75cdb6ef9c99d30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4389 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 diff --git a/Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_ccw_r.png b/Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_ccw_r.png deleted file mode 100644 index 8bd276e82e4218a07a4be1d234c43800ccd5ffa2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4440 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 ejOiOj5B?A7jtB_(7S8kl0000 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�D9*pynpwaHwUOqb}_W##%oj3=Paw0C=EG8MLMbJ2P6F9r~m$W$j003 zby8{C`v1SSoOgek;t4T5%(Bc!<;9DqmqLiX5UWxuWMGbT;+yJgYUlJzU>sB`%_#k1 z4`9&(TEvI1FNwJfFN11tBy+=eBoTFhn(Tl^tAkz2I=uNmU8D7#ZF276r$(qjCO&-839a>=?Q!AZ z$3|#D+5(T(cecfaWzf_h;^0xG*zcS)E&VvIdkAk`i~Zi4#@RO6?a*<2_V2#947YED zxay~WPnRvF(&Y4i{N)4OyZJfXzVQbk diff --git a/Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_cw_r.png b/Resources/Textures/Structures/conveyor_old.rsi/conveyor_started_cw_r.png deleted file mode 100644 index d2e18ca0caa0896cbe64be7665dd7a650c64b7a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4464 zcmV-$5s&VPP) zJ&RUJ7RQhB1V#p~%hD`9-5m@aZ7{(=!!R>UYBXSIwx3}_KZ2jZOxQ#)l4TRwRY5Q? zFp>?r+eU`Lwu6n#+(7G@dg`gy^Hz25JwIra?z;7_d+#~*cB@WZ0RT8UI{v(WcmS_o zJ%bxJZ^8cI0Z4FmatfCh=kV=!Kfu|^DZG9A@=8n}0NBfLc5(^;P^I7d{%iH!J+-8t z!u?AU>aRrAkVw3M{lkNe!OR6ILmdIB3NYlV`_JBbT};eX0ADNjJ1MC8XD6r8A1!?< zqw7mmfHAF23-H^!cUu=o)|R1G>UX2+$6Aw?mp1kLceHlFxb?C4S{n!0Td(2ut3MJ+ zHbHyq^^O6B`jT+y`%cjMtmbh4{`F@kr%lgbr2D@bOCa3@&4vBLgIV5JiCFJos^hC6 z2f-y$4|^`g*jl63=E=oeo-@Ei9e~;gp8`{@Q8mGKL479a006W;_!Jnq1sDO!7{n(! z2AB$S?StDGEDz@x1l0mq9~_sb!2{>JK{ed!8dq~|~EH0Y>(#u1qN7))~vGGu)C z8hwlbr1XvDGHeTwBQ+0Kc2*yGk1W{WkU*F}mw_d|<@7{^W$#)uI zpV##J=tl>^OB#f}e)a6@zp(YMBry%s@1vh=0VD^ZBTa)zpGjqm&Ehx2xcl_Whq-s` z_1M;ytGulT@=^6h)3gmSUvcHbmJ@ruwjNfu$Mez99C9_NL~Ai>3uN?V*lAERSVMzh z9bhSA5Th?cc7c{S1~K|Ta)7gwwgaLKV>HkX5bnt|j46V0fH}p5se$9(TJo5?9v2i% zcP+{R+-CIfXU@#sD3|I4Lk@y#(H?`$-6(rFL2t*KtOM8>#Nc3(4$x~1!qLscECraW zUN23bVLycB=rP`yyD|1Q#2%XahX?T%z}DhyGk0TLs__HZ0U5@^S^RzgW7*h#0AtY% zISXWC5JQV$XMxOM4Go5M0PQh|`#W`yZtL~hdg1ljdM(#$Xb$NB(y=LhTv!yJ%Zqc8 zR_pcJdem!slvhfVFermW`SBfkGd8o zrX}t9DJ>Tm>-oLEY<~Ca&);nR7W?5&@Bhv(Q!YQw^#1Q^?}syeSU&fxYVU`V9@PR+ zyF4Sc0IqNN_{DX2e(%e_58iy*`dbW%^zOwxesK-%KP~rrIn)3BZ`a_L@7>>_ct70f zAH4YlzyACU{PO+(;PH#=0PuS@Kd$tX4Ug{f189ph7SsRppZ*$+5dGof`)K%d?)0YL zSKlxe%N2`{Z)lJ@j6}=+Qu-^4k8k=)`k!M)sAzvt{VS>dkzsIh`_5f>`S1Vi)Wll$ zm(pKZe0)QLCyyS&?K^h?f|^*%{!;p@)^#fmu6XT~ugM(c@vrN3Mu0?Klq*^9>(!hMb1+10>=C&E4om$ZJYY&;rMbSS{lR7&J1RF+Dh!g2(cf za&&V5gM_5vyZlS}QXIq_zyJW+@uretbZU&Bf;oV(p~jFk4BzQU8$W!(wulXJzs6O&{QkA%>2UGPG0;j4@1Sf4;uvw+#!7wQyWqp4Q;R zp%c_z69y;tqeJuv&V03ZeD)FJ)Axwa-|Kt=Z1;-tCEIW1IJ=4%{go>~ulVea-tp-H z`o`xU;e3Ktur+n*EC`7&zkZA5>kkp1-SqqFk9IzUB%%Hap#7i#?)1I&-Aj)cK8$%xe z!tTe0+^#0f3yK}n>g!9_z$N|gV^}PRFlHJQqu<)iY1LOdA7Iq@@HP6mnlSfSK6Ra6 z1BLqj%a?M38h!VFcaJ$Iz)XYI>I3jQ!d44F$*}e%ot>oP!?);TA3}?M%Q}->Ia>F^ zrVK2#JF2xjIo;fQ%(VubJL780z}+ICqe5U_ZY(}~E7+IZqR+9|s%0;2?#0)RN2CX> zu{A>4_|K8D+1`f~7NzB(Q(qAEW^46F+hbef1RQ0qdA`m7xr`4}2EQEc8cJDE4xl+r z=A)@udZ?N;Va^FSyCJRVIiCTxWv4nqvjg;K0<|?MA6BGDIYBR^S_4d86h}a{0CTVX z9W@Vf$xZ;k>j>0$jB$kK9bwvr*z1L3W~Ve5(Fp)}yG0z1RO<-U4$yn_-;3J&p0g9Q z4o)epLG849OL=nFY#g9=7C@8URpesXRC*A#(4hDm;3x zSs#EgW`26Lewt3eS@XL5YFY!zx+{_I0NO8`Vssj_552z&^k@lkv}#et1{yX{90QD6 z`;X$NBWO>-39#Q9B+BEn6Bx@E)_ABbYh7ypjx9&773e+lQmTkbYkDa3o`i_4lj5Ry zKt@SS$}m#8*rt?Ykgq+{(>loJaMY1LI%+uH#sOlhB6}DF*Gz;<-@1CRv?6hIC{8e9 zR~JCmDWkDLdw&6?8e#2JCWfA4qFN-oL)u7pKa+#t9s^L0=G(9FxeZ`S1~tOCg%hcJ ziB5y|oPEIJgERs?XW2bNV8u zL}F>_<7?LVsWP;tzq~ky+js85lSdC_3YEY)L9M>jQLhGv^3-4!*|i@TprS0l9Ybx{<+K3 zs-FW>wv_&gD?WS9&~xiSa{3y5e68~lVh`W+`|G3Pvtt*Ixu&QTAHF5e7GnC^=Ocu1 zN=?77{?%M_;`-d-4*+dFd?`M>)EfJke(iY&lr)Z5klxz!4k&4A^h@U*P}0=sm(Dw& zq{-qYiL%bo}}Fryp4h;0TZDeEasL=?|d4w_Z1grf*$p?s)y`*=G7PrZ2Ur$CcOD z-*Eu<@FhRj=N`1__t9^inDA@VmQ@7qWXkXZ79@21 zsW2wByZHQj!{}pit$?q;ae&yvZ<&q3He0R<#Oh-SUy8JT%0M{pAM-9^U9b|=jY5sDhUt^@8TSYm&V?g-;v3)G7H3f${u z_KvK;vGlhGJy+{uj30n_Kt_!?HQy0xv?R96kU~&Loj2m+T92(CIWBAk0MZX+4o;v| ze(au(RN7GtzeMZSUiKEi6{6+$Elk-7M%%n!dX7^ve1Nu(agO9-I4mUt<=A|m3iaV@ z#IBK~hh_<>&4Qw!cpUg*GskBSmOr} zasVx3kaB|DCjOf1w5ZX;eo>~9%0ptAGbK;4765?0b+HCXCvbVUID+$Rg)bR^rW3TZ23+&(oP*^jj~>G9J9pvo;=D^YDWxxI`~bq=0YW$*Z1|8; zXs#X793=aiTw{dMoIu+60UAz;W+wg9G|$FGSc&rPTq6G)z$aCvdg zzagfDRNQun(SNGRXBBCLs-GL|QuUn?US6ET{ipEtpo`tZKDg4P^zT3Y@8*z=RNj;{ zc0h))XvDt*FPdbb+YRd26OgU7AvS_!88GcrkrrnV<&2ly&!7 z@!@0p5YA3cllsOo$+iGoAHV!-oDn*>n>v zwZ9R<+5(hTjbaR!yN_?Rzv08?043vZh1>A0_BUd%H~@Ea20vL*v7IEjSIxJXss3wr!tm>_-at!@Ol`3PSaWjL-c?Qty;HNTq0xosKy17 zFht7ilR1VVc1T_>Mh_RHXM~j)r5wh%usVR|z_(Nm!>EDH z0Y)>r5ggGNpQ`|T0Z6e%#~A>1G)FYXX43*tLSu7ueKl@2t>*a?=C_yAXe9{TE^^N7R^YVQo)F7;Zd+Qs^VrLpO z7a!h_wVsOo-kPSQ?_$aOd4zdW(iqDox*^7o&kpd1@jQNU4emdUPg`=O3H2YpxDL0F6g?7Kr*Iq|CRiUuQ0>AXcsL<#ss}0aH&W&&Rx`UZ_s-WUd%)PNX6BC0-8(ZobMCqW0He`(-5(Bcb$O11!(;S^ z1K40bodJMT`PFiPlhZTIr!!0@7agvBvQ4n9qqCn9g`~1A@xDE9THvaOC7J;r?!rIJ$${s#!;^)YP$|(wb953@M-_x@Hmc914MJcKA>tiQ*RQ^uxC@hTUXH+LbMqgL>hO_v8iv2 zfRu!BS2T5P<_Mz$QWKCXVZNbtK#28ye>iX=HT4Y;3)(p#HA3A0IU-93{7z^ckQl84 z1dz-tRG0N2W-^@XI2#g@CG&hb<3)hZU<&f*)0ud6<70IsX@flksf4E@U-x&@AesaE z!$ETLtFGC=NB<>lG;%X8r@2Pbm;P|ju7V_xk`J`Y(Bx|Cvr4Fm*LS)}mKT8M1#L4LyfL56G+X}Nb%h1rCSD~|&%03CR zUOs)ax%TPRADho~KR(N|B0zc`kW&QE*!i8^Q0KjB&(V0vx=pyKE7r4~<_n*I= z+Ybp7aWTplsrB)aBnfHMjYi|O$$l(eiq!geikwjDXw%xCmY=%F9gW88@sr2?JA>Wt z-+6HVVbTb=y}RjfQ>3b(Qzp|jb+RlE4@CZlcW=dgutAYpAAfsy1HfMdR7t{V@t}TZ zvJY&NAB&g5bhpLO#shAXw-0;d1S&)Jb>zE#Z_cXBcpwu)8}9?EG=(b?@IgMePGk3i zxDjfzD=NKdTy{?z=K$%@D5+=Lw#(LcV;tav_?U-0wo#D11AGv#BF2`9OB7`50N=!? zIO4R4f-Gez(p8NKF*gitZFK?p-QoN0;u3G_hfgi3E9&fYb0eRNx_;;!8oKW`H<4%v z%EftA?SvxPrQNE?%yJHJL5v5hkhaD70V(U(5fEc|w6&ot*B=hhO--WIcKJtFrmDUU zuBlI)`G?T0D`1115+(=|Qq=PU$sKM}Cff%wAMlYtQQmFkwrzSkZu}&ygU_*F9oj-< zW$vW|0RO|H4@c>Sq-rsLb#z=`mCB7_7HEqR8ks?j> z=W|7NPT0v0(CvBqc0`Kz_bU%~SvjFlNj8xiG9oz2W{z(E;P5z0Cphhf`aYcCK%(0x zCybvwPX5n(2wM(t*;0+|h$d`NbFgs$_s)vxh+IjOU}p&89<_yZL@x5j5ZH2n4|z%` zN9^O>4+MH?pHD~Z^W6_6+9D`+D~S7H7gba70N}bzF4)`v&7n`)s6r zJ_vG^5ZXpxQ&5?pA<U+y`WeMGgsT3 z&A41AbgRv{m|F}!=bcdJ89q^)AK+`X;{uhV4WY}tBelZ h6d~7ro*d=z{{z@NOY2_^1l9lm002ovPDHLkV1fyVGV1^U diff --git a/Resources/Textures/Structures/conveyor_old.rsi/conveyor_stopped_cw.png b/Resources/Textures/Structures/conveyor_old.rsi/conveyor_stopped_cw.png deleted file mode 100644 index 116b3aed504581c21d31a005133b94bc23a5e74c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1689 zcmV;K24?w*P)+T-Chru7kP~C_IkIR*v3AWc-KCawcG3A^Yt}$dp%a!O&}Yeude|(1ke{b;ImcA z{^iBlf1kMVsR`G{T1J4R{q3E-JVpax^#T6})HP>rB}r-aV)Ab_Wt4(Onc5(yrS>^7 z`GXNq(qXA1nx-->B1k}K2UvBOG`s|8jPLgc{Z>vbT>)~z+Xs|}Rt2yKlLXu)YzQcf z4FL>r`W4EXG!Y9Kw%X2Wf-_{Ejwfjm;4@gl`P1=)J-U$?9dXJ?Zh~BgmvX-E|8)ba z57-~{i#xyWyBJ7ZKc|efT#U2S*Kn?7f6(8If;iwhAJ_~-i(^ATVQlsT3S+Y$P#By2 zfWp}92SnsajmVh%Cg%Y;D*(w-ny{G9SoTBtO%jk3kDojRun}h6Sz*>{7^=;@3!kl0 z_DPua^2MXockf^Qvii;UCz(De0=WADmLh=K<~JXI;N^=)`0dy4c>CcVfG@S}zEt|8 zKET(Zm0T6&*#7$MQ|H0`hs(u$hS%?a*Y5z}%j!2@9?A5@_3;)^@_aQ+7JNfPWDnGi%Y~> z5Rh|oCdC$qh_xU9$g|YJwUI)Ec>+poO-l4Pu|$|B0LZ)0r`cKiu+^qO?gd#XH^xqr z?Y8^d!E?e^olj`0ks8on!RXl`tfEp-m1>Z5ryLHKwE2BEzIGi+i(@ zOX1vRwh5*PkQ`EKXiGJsz!U+1oy{K?no(ee0FHVY$kSm;MgfVq%n$&i%|LUl6LF(} zHslWuk8pZ&y!t*k5p%WesRlXuLuI;qvR2M0$K>%j9{{>B`gkpEybnI7YS#GJ^8qeW z{84p2$r!t(_3?zui?h{@Y3Xu&$aVid=K}_WS*{q0w3#lXCwWz2RPOt)3V63l>*Ial zOzpc?txq{0z)3^!si(W8_3ZKured%<486KK z2cY-|*kV4r(d^LUgMptUoSqyf zH%*dFnl@CnBmqAW*dgjUsQ*Xo4FFZ$I3_`&a*dzWMkAz-{8B(v(25J|AeW jgbV5OLnx`+&xL;ggbzO0e^hp<00000NkvXXu0mjfD^Ns3 diff --git a/Resources/Textures/Structures/conveyor_old.rsi/meta.json b/Resources/Textures/Structures/conveyor_old.rsi/meta.json deleted file mode 100644 index 71aefcdba1d..00000000000 --- a/Resources/Textures/Structures/conveyor_old.rsi/meta.json +++ /dev/null @@ -1,238 +0,0 @@ -{ - "version": 1, - "license": "CC-BY-SA-3.0", - "copyright": "https://github.com/discordia-space/CEV-Eris/blob/a846799c53f8ee9dcec4b075d7645f591f3ec19d/icons/obj/machines/conveyor.dmi", - "size": { - "x": 32, - "y": 32 - }, - "states": [ - { - "name": "conveyor_loose" - }, - { - "name": "conveyor_started_ccw", - "directions": 8, - "delays": [ - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ] - ] - }, - { - "name": "conveyor_started_ccw_r", - "directions": 8, - "delays": [ - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ] - ] - }, - { - "name": "conveyor_started_cw", - "directions": 8, - "delays": [ - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ] - ] - }, - { - "name": "conveyor_started_cw_r", - "directions": 8, - "delays": [ - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ], - [ - 0.1, - 0.1, - 0.1, - 0.1 - ] - ] - }, - { - "name": "conveyor_stopped_ccw", - "directions": 8 - }, - { - "name": "conveyor_stopped_cw", - "directions": 8 - } - ] -} From d993582d00f1550c4ae4ee982de3f24b10dc4ae9 Mon Sep 17 00:00:00 2001 From: Flareguy <78941145+Flareguy@users.noreply.github.com> Date: Sat, 2 Nov 2024 18:16:18 -0500 Subject: [PATCH 060/112] Fix broken computer white shadows (#33103) fix broken computer white shadows --- .../Machines/computers.rsi/broken.png | Bin 3576 -> 3542 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Resources/Textures/Structures/Machines/computers.rsi/broken.png b/Resources/Textures/Structures/Machines/computers.rsi/broken.png index 38d2fd88a37fe5f960b2e68434c01099e83fafd3..5adb4f73f2eb804a8e96da7845c7b321399e64e8 100644 GIT binary patch delta 3541 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 P00000NkvXXu0mjf;wYdQ delta 3575 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 From d2a487dc9e5d7ab5b9f8a4d66d72234b8039a549 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 3 Nov 2024 02:21:44 +0100 Subject: [PATCH 061/112] Update Credits (#33125) 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 ac39b6b7f55..8c2ad5f5b0f 100644 --- a/Resources/Credits/GitHub.txt +++ b/Resources/Credits/GitHub.txt @@ -1 +1 @@ -0x6273, 12rabbits, 13spacemen, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 3nderall, 4310v343k, 4dplanner, 612git, 778b, Ablankmann, abregado, Absolute-Potato, achookh, Acruid, actioninja, actually-reb, ada-please, adamsong, Adeinitas, Admiral-Obvious-001, adrian, Adrian16199, Ady4ik, Aerocrux, Aeshus, Aexolott, Aexxie, africalimedrop, Afrokada, Agoichi, Ahion, aiden, AJCM-git, AjexRose, Alekshhh, alexkar598, AlexMorgan3817, alexumandxgabriel08x, Alithsko, ALMv1, Alpha-Two, AlphaQwerty, Altoids1, amylizzle, ancientpower, Andre19926, AndrewEyeke, AndreyCamper, Anzarot121, Appiah, ar4ill, ArchPigeon, ArchRBX, areitpog, Arendian, arimah, Arkanic, ArkiveDev, armoks, Arteben, ArthurMousatov, ArtisticRoomba, artur, AruMoon, ArZarLordOfMango, as334, AsikKEsel, AsnDen, asperger-sind, aspiringLich, astriloqua, august-sun, AutoOtter, avghdev, Awlod, AzzyIsNotHere, BackeTako, BananaFlambe, Baptr0b0t, BasedUser, beck-thompson, bellwetherlogic, benev0, benjamin-burges, BGare, bhenrich, bhespiritu, bibbly, BIGZi0348, bingojohnson, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, BlitzTheSquishy, bloodrizer, Bloody2372, blueDev2, Boaz1111, BobdaBiscuit, BobTheSleder, boiled-water-tsar, BombasterDS, botanySupremist, brainfood1183, BramvanZijp, Brandon-Huu, BriBrooo, Bright0, brndd, bryce0110, BubblegumBlue, buletsponge, buntobaggins, bvelliquette, byondfuckery, c0rigin, c4llv07e, CaasGit, Caconym27, Calecute, Callmore, capnsockless, CaptainSqrBeard, Carbonhell, Carolyn3114, Carou02, carteblanche4me, Catofquestionableethics, CatTheSystem, Centronias, chairbender, Charlese2, charlie, ChaseFlorom, chavonadelal, Cheackraze, cheesePizza2, cheeseplated, Chief-Engineer, chillyconmor, christhirtle, chromiumboy, Chronophylos, Chubbicous, Chubbygummibear, Ciac32, civilCornball, Clement-O, clyf, Clyybber, CMDR-Piboy314, cohanna, Cohnway, Cojoke-dot, ColdAutumnRain, Colin-Tel, collinlunn, ComicIronic, CookieMasterT, coolboy911, coolmankid12345, Coolsurf6, corentt, CormosLemming, crazybrain23, creadth, CrigCrag, croilbird, Crotalus, CrudeWax, CrzyPotato, cutemoongod, Cyberboss, d34d10cc, d4kii, DadeKuma, Daemon, daerSeebaer, dahnte, dakamakat, DamianX, DangerRevolution, daniel-cr, DanSAussieITS, Daracke, Darkenson, DawBla, Daxxi3, dch-GH, de0rix, Deahaka, dean, DEATHB4DEFEAT, DeathCamel58, Deatherd, deathride58, DebugOk, Decappi, Decortex, Deeeeja, deepdarkdepths, degradka, Delete69, deltanedas, DenisShvalov, DerbyX, derek, dersheppard, Deserty0, Detintinto, DevilishMilk, dexlerxd, dffdff2423, DieselMohawk, digitalic, Dimastra, DinoWattz, DisposableCrewmember42, DjfjdfofdjfjD, doc-michael, docnite, Doctor-Cpu, DoctorBeard, DogZeroX, dolgovmi, dontbetank, Doomsdrayk, Doru991, DoubleRiceEddiedd, DoutorWhite, dragonryan06, drakewill-CRL, Drayff, dreamlyjack, DrEnzyme, dribblydrone, DrMelon, drongood12, DrSingh, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, Duddino, dukevanity, duskyjay, Dutch-VanDerLinde, dvir001, Dynexust, Easypoller, echo, eclips_e, eden077, EEASAS, Efruit, efzapa, Ekkosangen, ElectroSR, elsie, elthundercloud, Elysium206, Emisse, emmafornash, EmoGarbage404, Endecc, eoineoineoin, eris, erohrs2, ERORR404V1, Errant-4, ertanic, esguard, estacaoespacialpirata, eugene, exincore, exp111, f0x-n3rd, FacePluslll, Fahasor, FairlySadPanda, FATFSAAM2, Feluk6174, ficcialfaint, Fiftyllama, Fildrance, FillerVK, FinnishPaladin, FirinMaLazors, Fishfish458, FL-OZ, Flareguy, flashgnash, FluffiestFloof, FluffMe, FluidRock, foboscheshir, FoLoKe, fooberticus, ForestNoises, forgotmyotheraccount, forkeyboards, forthbridge, Fortune117, Fouin, foxhorn, freeman2651, freeze2222, Froffy025, Fromoriss, froozigiusz, FrostMando, FungiFellow, FunTust, Futuristic-OK, GalacticChimp, gamer3107, Gaxeer, gbasood, Geekyhobo, genderGeometries, GeneralGaws, Genkail, geraeumig, Ghagliiarghii, Git-Nivrak, githubuser508, gituhabu, GlassEclipse, GNF54, godisdeadLOL, goet, Goldminermac, Golinth, GoodWheatley, Gorox221, gradientvera, graevy, GraniteSidewalk, GreaseMonk, greenrock64, GreyMario, GTRsound, gusxyz, Gyrandola, h3half, hamurlik, Hanzdegloker, HappyRoach, Hardly3D, harikattar, he1acdvv, Hebi, Henry, HerCoyote23, hitomishirichan, hiucko, Hmeister-fake, Hmeister-real, Hobbitmax, hobnob, HoidC, Holinka4ever, holyssss, HoofedEar, Hoolny, hord-brayden, Hreno, hubismal, Hugal31, Huxellberger, Hyenh, hyphenationc, i-justuser-i, iacore, IamVelcroboy, Ian321, icekot8, icesickleone, iczero, iglov, IgorAnt028, igorsaux, ike709, illersaver, Illiux, Ilushkins33, Ilya246, IlyaElDunaev, imrenq, imweax, indeano, Injazz, Insineer, IntegerTempest, Interrobang01, IProduceWidgets, ItsMeThom, Itzbenz, iztokbajcar, Jackal298, Jackrost, jacksonzck, Jackw2As, jacob, jamessimo, janekvap, Jark255, Jaskanbe, JasperJRoth, JerryImMouse, jerryimmouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JimGamemaster, jimmy12or, JIPDawg, jjtParadox, jmcb, JoeHammad1844, JohnGinnane, johnku1, Jophire, joshepvodka, Jrpl, juliangiebel, JustArt1m, JustCone14, justdie12, justin, justintether, JustinTrotter, justtne, K-Dynamic, k3yw, Kadeo64, Kaga-404, KaiShibaa, kalane15, kalanosh, Kanashi-Panda, katzenminer, kbailey-git, Keelin, Keer-Sar, KEEYNy, keikiru, Kelrak, kerisargit, keronshb, KIBORG04, Killerqu00, Kimpes, KingFroozy, kira-er, Kirillcas, Kirus59, Kistras, Kit0vras, KittenColony, klaypexx, Kmc2000, Ko4ergaPunk, kognise, kokoc9n, komunre, KonstantinAngelov, kosticia, koteq, KrasnoshchekovPavel, Krunklehorn, Kupie, kxvvv, kyupolaris, kzhanik, lajolico, Lamrr, LankLTE, laok233, lapatison, larryrussian, lawdog4817, Lazzi0706, leander-0, leonardo-dabepis, leonsfriedrich, LeoSantich, lettern, LetterN, Level10Cybermancer, LEVELcat, lever1209, Lgibb18, lgruthes, LightVillet, liltenhead, LinkUyx, LittleBuilderJane, LittleNorthStar, LittleNyanCat, lizelive, localcc, lokachop, Lomcastar, LordCarve, LordEclipse, LucasTheDrgn, luckyshotpictures, LudwigVonChesterfield, luizwritescode, Lukasz825700516, luminight, lunarcomets, luringens, lvvova1, Lyndomen, lyroth001, lzimann, lzk228, M3739, mac6na6na, MACMAN2003, Macoron, Magicalus, magmodius, MagnusCrowe, malchanceux, MaloTV, ManelNavola, Mangohydra, marboww, Markek1, Matz05, max, MaxNox7, maylokana, MehimoNemo, MeltedPixel, MemeProof, MendaxxDev, Menshin, Mephisto72, MerrytheManokit, Mervill, metalgearsloth, MetalSage, MFMessage, mhamsterr, michaelcu, micheel665, MilenVolf, MilonPL, Minemoder5000, Minty642, Mirino97, mirrorcult, misandrie, MishaUnity, MissKay1994, MisterMecky, Mith-randalf, MjrLandWhale, mkanke-real, MLGTASTICa, moderatelyaware, modern-nm, mokiros, Moneyl, Moomoobeef, moony, Morb0, mr-bo-jangles, Mr0maks, MrFippik, mrrobdemo, muburu, MureixloI, musicmanvr, MWKane, Myakot, Myctai, N3X15, nails-n-tape, Nairodian, Naive817, NakataRin, namespace-Memory, Nannek, NazrinNya, neutrino-laser, NickPowers43, nikthechampiongr, Nimfar11, Nirnael, NIXC, NkoKirkto, nmajask, noctyrnal, noelkathegod, nok-ko, NonchalantNoob, NoobyLegion, Nopey, not-gavnaed, notafet, notquitehadouken, NotSoDana, noudoit, noverd, NuclearWinter, nukashimika, nuke-haus, NULL882, nullarmo, nyeogmi, Nylux, Nyranu, och-och, OctoRocket, OldDanceJacket, OliverOtter, onoira, OnyxTheBrave, OrangeMoronage9622, osjarw, Ostaf, othymer, OttoMaticode, Owai-Seek, packmore, paigemaeforrest, pali6, Pangogie, panzer-iv1, paolordls, partyaddict, patrikturi, PaulRitter, peccneck, Peptide90, peptron1, PeterFuto, PetMudstone, pewter-wiz, Pgriha, Phantom-Lily, pheenty, Phill101, phunnyguy, PilgrimViis, Pill-U, Pireax, Pissachu, pissdemon, PixeltheAertistContrib, PixelTheKermit, PJB3005, Plasmaguy, plinyvic, Plykiya, poeMota, pofitlo, pointer-to-null, pok27, PolterTzi, PoorMansDreams, PopGamer45, portfiend, potato1234x, PotentiallyTom, ProfanedBane, ProPandaBear, PrPleGoo, ps3moira, Pspritechologist, Psychpsyo, psykzz, PuceTint, PuroSlavKing, PursuitInAshes, Putnam3145, quatre, QueerNB, QuietlyWhisper, qwerltaz, RadioMull, Radosvik, Radrark, Rainbeon, Rainfey, Raitononai, Ramlik, RamZ, randy10122, Rane, Ranger6012, Rapidgame7, ravage123321, rbertoche, Redfire1331, Redict, RedlineTriad, redmushie, RednoWCirabrab, RemberBM, RemieRichards, RemTim, rene-descartes2021, Renlou, retequizzle, RiceMar1244, rich-dunne, RieBi, riggleprime, RIKELOLDABOSS, rinary1, Rinkashikachi, riolume, RobbyTheFish, Rockdtben, Rohesie, rok-povsic, rolfero, RomanNovo, rosieposieeee, Roudenn, router, RumiTiger, S1rFl0, S1ss3l, Saakra, Sadie-silly, saga3152, saintmuntzer, Salex08, sam, samgithubaccount, SaphireLattice, SapphicOverload, Sarahon, sativaleanne, SaveliyM360, sBasalto, ScalyChimp, ScarKy0, scrato, Scribbles0, scrivoy, scruq445, scuffedjays, ScumbagDog, Segonist, sephtasm, Serkket, sewerpig, sh18rw, ShadeAware, ShadowCommander, Shadowtheprotogen546, shaeone, shampunj, shariathotpatrol, SignalWalker, siigiil, Simyon264, sirdragooon, Sirionaut, Sk1tch, SkaldetSkaeg, Skarletto, Skrauz, Skyedra, SlamBamActionman, slarticodefast, Slava0135, Slyfox333, snebl, snicket, sniperchance, Snowni, snowsignal, SolidusSnek, SonicHDC, SoulFN, SoulSloth, Soundwavesghost, southbridge-fur, Soydium, SpaceLizardSky, SpaceManiac, SpaceyLady, Spanky, spanky-spanky, spartak, SpartanKadence, SpeltIncorrectyl, Spessmann, SphiraI, SplinterGP, spoogemonster, sporekto, sporkyz, ssdaniel24, stalengd, stanberytrask, Stanislav4ix, StanTheCarpenter, Stealthbomber16, stellar-novas, stomf, stopbreaking, stopka-html, StrawberryMoses, Stray-Pyramid, strO0pwafel, Strol20, StStevens, Subversionary, sunbear-dev, superjj18, Supernorn, SweptWasTaken, Sybil, SYNCHRONIC, Szunti, Tainakov, takemysoult, TaralGit, Taran, taurie, Tayrtahn, tday93, teamaki, TekuNut, telyonok, TemporalOroboros, tentekal, terezi4real, Terraspark4941, texcruize, TGODiamond, TGRCdev, tgrkzus, ThatOneGoblin25, thatrandomcanadianguy, TheArturZh, theashtronaut, thecopbennet, TheCze, TheDarkElites, thedraccx, TheEmber, TheIntoxicatedCat, thekilk, themias, theomund, theOperand, TherapyGoth, TheShuEd, thetolbean, thevinter, TheWaffleJesus, Thinbug0, ThunderBear2006, timothyteakettle, TimrodDX, timurjavid, tin-man-tim, Titian3, tk-a369, tkdrg, tmtmtl30, TokenStyle, Tollhouse, Toly65, tom-leys, tomasalves8, Tomeno, Tonydatguy, topy, Tornado-Technology, tosatur, TotallyLemon, tropicalhibi, truepaintgit, Truoizys, Tryded, TsjipTsjip, Tunguso4ka, TurboTrackerss14, TyAshley, Tyler-IN, Tyzemol, UbaserB, ubis1, UBlueberry, UKNOWH, UltimateJester, Unbelievable-Salmon, underscorex5, UnicornOnLSD, Unisol, Unkn0wnGh0st333, unusualcrow, Uriende, UristMcDorf, user424242420, Vaaankas, valentfingerov, Varen, VasilisThePikachu, veliebm, VelonacepsCalyxEggs, veprolet, veritable-calamity, Veritius, Vermidia, vero5123, Verslebas, VigersRay, violet754, Visne, VMSolidus, voidnull000, volotomite, volundr-, Voomra, Vordenburg, vorkathbruh, vulppine, wafehling, Warentan, WarMechanic, Watermelon914, waylon531, weaversam8, wertanchik, whateverusername0, Willhelm53, WilliamECrew, willicassi, Winkarst-cpu, wirdal, wixoaGit, WlarusFromDaSpace, wrexbe, wtcwr68, xkreksx, xprospero, xRiriq, YanehCheck, yathxyz, Ygg01, YotaXP, youarereadingthis, Yousifb26, youtissoum, YuriyKiss, zach-hill, Zadeon, zamp, Zandario, Zap527, Zealith-Gamer, ZelteHonor, zero, ZeroDiamond, zerorulez, ZeWaka, zionnBE, ZNixian, ZoldorfTheWizard, Zonespace27, Zylofan, Zymem, zzylex +0x6273, 12rabbits, 13spacemen, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 3nderall, 4310v343k, 4dplanner, 612git, 778b, Ablankmann, abregado, Absolute-Potato, achookh, Acruid, actioninja, actually-reb, ada-please, adamsong, Adeinitas, Admiral-Obvious-001, adrian, Adrian16199, Ady4ik, Aerocrux, Aeshus, Aexolott, Aexxie, africalimedrop, Afrokada, AftrLite, Agoichi, Ahion, aiden, AJCM-git, AjexRose, Alekshhh, alexkar598, AlexMorgan3817, alexumandxgabriel08x, Alithsko, ALMv1, Alpha-Two, AlphaQwerty, Altoids1, amylizzle, ancientpower, Andre19926, AndrewEyeke, AndreyCamper, Anzarot121, Appiah, ar4ill, ArchPigeon, ArchRBX, areitpog, Arendian, arimah, Arkanic, ArkiveDev, armoks, Arteben, ArthurMousatov, ArtisticRoomba, artur, AruMoon, ArZarLordOfMango, as334, AsikKEsel, AsnDen, asperger-sind, aspiringLich, astriloqua, august-sun, AutoOtter, avghdev, Awlod, AzzyIsNotHere, BackeTako, BananaFlambe, Baptr0b0t, BasedUser, beck-thompson, bellwetherlogic, benev0, benjamin-burges, BGare, bhenrich, bhespiritu, bibbly, BIGZi0348, bingojohnson, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, BlitzTheSquishy, bloodrizer, Bloody2372, blueDev2, Boaz1111, BobdaBiscuit, BobTheSleder, boiled-water-tsar, BombasterDS, botanySupremist, brainfood1183, BramvanZijp, Brandon-Huu, BriBrooo, Bright0, brndd, bryce0110, BubblegumBlue, buletsponge, buntobaggins, bvelliquette, byondfuckery, c0rigin, c4llv07e, CaasGit, Caconym27, Calecute, Callmore, capnsockless, CaptainSqrBeard, Carbonhell, Carolyn3114, Carou02, carteblanche4me, Catofquestionableethics, CatTheSystem, Centronias, chairbender, Charlese2, charlie, ChaseFlorom, chavonadelal, Cheackraze, cheesePizza2, cheeseplated, Chief-Engineer, chillyconmor, christhirtle, chromiumboy, Chronophylos, Chubbicous, Chubbygummibear, Ciac32, civilCornball, Clement-O, clyf, Clyybber, CMDR-Piboy314, cohanna, Cohnway, Cojoke-dot, ColdAutumnRain, Colin-Tel, collinlunn, ComicIronic, CookieMasterT, coolboy911, coolmankid12345, Coolsurf6, corentt, CormosLemming, crazybrain23, creadth, CrigCrag, croilbird, Crotalus, CrudeWax, CrzyPotato, cutemoongod, Cyberboss, d34d10cc, d4kii, DadeKuma, Daemon, daerSeebaer, dahnte, dakamakat, DamianX, DangerRevolution, daniel-cr, DanSAussieITS, Daracke, Darkenson, DawBla, Daxxi3, dch-GH, de0rix, Deahaka, dean, DEATHB4DEFEAT, DeathCamel58, Deatherd, deathride58, DebugOk, Decappi, Decortex, Deeeeja, deepdarkdepths, degradka, Delete69, deltanedas, DenisShvalov, DerbyX, derek, dersheppard, Deserty0, Detintinto, DevilishMilk, dexlerxd, dffdff2423, DieselMohawk, digitalic, Dimastra, DinoWattz, DisposableCrewmember42, DjfjdfofdjfjD, doc-michael, docnite, Doctor-Cpu, DoctorBeard, DogZeroX, dolgovmi, dontbetank, Doomsdrayk, Doru991, DoubleRiceEddiedd, DoutorWhite, dragonryan06, drakewill-CRL, Drayff, dreamlyjack, DrEnzyme, dribblydrone, DrMelon, drongood12, DrSingh, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, Duddino, dukevanity, duskyjay, Dutch-VanDerLinde, dvir001, Dynexust, Easypoller, echo, eclips_e, eden077, EEASAS, Efruit, efzapa, Ekkosangen, ElectroSR, elsie, elthundercloud, Elysium206, Emisse, emmafornash, EmoGarbage404, Endecc, eoineoineoin, eris, erohrs2, ERORR404V1, Errant-4, ertanic, esguard, estacaoespacialpirata, eugene, exincore, exp111, f0x-n3rd, FacePluslll, Fahasor, FairlySadPanda, FATFSAAM2, Feluk6174, ficcialfaint, Fiftyllama, Fildrance, FillerVK, FinnishPaladin, FirinMaLazors, Fishfish458, FL-OZ, Flareguy, flashgnash, FluffiestFloof, FluffMe, FluidRock, foboscheshir, FoLoKe, fooberticus, ForestNoises, forgotmyotheraccount, forkeyboards, forthbridge, Fortune117, Fouin, foxhorn, freeman2651, freeze2222, Froffy025, Fromoriss, froozigiusz, FrostMando, FungiFellow, FunTust, Futuristic-OK, GalacticChimp, gamer3107, Gaxeer, gbasood, Geekyhobo, genderGeometries, GeneralGaws, Genkail, geraeumig, Ghagliiarghii, Git-Nivrak, githubuser508, gituhabu, GlassEclipse, GNF54, godisdeadLOL, goet, Goldminermac, Golinth, GoodWheatley, Gorox221, gradientvera, graevy, GraniteSidewalk, GreaseMonk, greenrock64, GreyMario, GTRsound, gusxyz, Gyrandola, h3half, hamurlik, Hanzdegloker, HappyRoach, Hardly3D, harikattar, he1acdvv, Hebi, Henry, HerCoyote23, hitomishirichan, hiucko, Hmeister-fake, Hmeister-real, Hobbitmax, hobnob, HoidC, Holinka4ever, holyssss, HoofedEar, Hoolny, hord-brayden, Hreno, hubismal, Hugal31, Huxellberger, Hyenh, hyphenationc, i-justuser-i, iacore, IamVelcroboy, Ian321, icekot8, icesickleone, iczero, iglov, IgorAnt028, igorsaux, ike709, illersaver, Illiux, Ilushkins33, Ilya246, IlyaElDunaev, imrenq, imweax, indeano, Injazz, Insineer, IntegerTempest, Interrobang01, IProduceWidgets, ItsMeThom, Itzbenz, iztokbajcar, Jackal298, Jackrost, jacksonzck, Jackw2As, jacob, jamessimo, janekvap, Jark255, Jarmer123, Jaskanbe, JasperJRoth, JerryImMouse, jerryimmouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JimGamemaster, jimmy12or, JIPDawg, jjtParadox, jmcb, JoeHammad1844, JohnGinnane, johnku1, Jophire, joshepvodka, Jrpl, juliangiebel, JustArt1m, JustCone14, justdie12, justin, justintether, JustinTrotter, justtne, K-Dynamic, k3yw, Kadeo64, Kaga-404, KaiShibaa, kalane15, kalanosh, Kanashi-Panda, katzenminer, kbailey-git, Keelin, Keer-Sar, KEEYNy, keikiru, Kelrak, kerisargit, keronshb, KIBORG04, Killerqu00, Kimpes, KingFroozy, kira-er, Kirillcas, Kirus59, Kistras, Kit0vras, KittenColony, klaypexx, Kmc2000, Ko4ergaPunk, kognise, kokoc9n, komunre, KonstantinAngelov, kosticia, koteq, KrasnoshchekovPavel, Krunklehorn, Kupie, kxvvv, kyupolaris, kzhanik, lajolico, Lamrr, LankLTE, laok233, lapatison, larryrussian, lawdog4817, Lazzi0706, leander-0, leonardo-dabepis, leonsfriedrich, LeoSantich, LetterN, lettern, Level10Cybermancer, LEVELcat, lever1209, Lgibb18, lgruthes, LightVillet, liltenhead, LinkUyx, LittleBuilderJane, LittleNorthStar, LittleNyanCat, lizelive, localcc, lokachop, Lomcastar, LordCarve, LordEclipse, LucasTheDrgn, luckyshotpictures, LudwigVonChesterfield, luizwritescode, Lukasz825700516, luminight, lunarcomets, luringens, lvvova1, Lyndomen, lyroth001, lzimann, lzk228, M3739, mac6na6na, MACMAN2003, Macoron, Magicalus, magmodius, MagnusCrowe, malchanceux, MaloTV, ManelNavola, Mangohydra, marboww, Markek1, Matz05, max, MaxNox7, maylokana, MehimoNemo, MeltedPixel, MemeProof, MendaxxDev, Menshin, Mephisto72, MerrytheManokit, Mervill, metalgearsloth, MetalSage, MFMessage, mhamsterr, michaelcu, micheel665, MilenVolf, MilonPL, Minemoder5000, Minty642, Mirino97, mirrorcult, misandrie, MishaUnity, MissKay1994, MisterMecky, Mith-randalf, MjrLandWhale, mkanke-real, MLGTASTICa, moderatelyaware, modern-nm, mokiros, Moneyl, Moomoobeef, moony, Morb0, mr-bo-jangles, Mr0maks, MrFippik, mrrobdemo, muburu, MureixloI, musicmanvr, MWKane, Myakot, Myctai, N3X15, nails-n-tape, Nairodian, Naive817, NakataRin, namespace-Memory, Nannek, NazrinNya, neutrino-laser, NickPowers43, nikthechampiongr, Nimfar11, Nirnael, NIXC, NkoKirkto, nmajask, noctyrnal, noelkathegod, nok-ko, NonchalantNoob, NoobyLegion, Nopey, not-gavnaed, notafet, notquitehadouken, NotSoDana, noudoit, noverd, NuclearWinter, nukashimika, nuke-haus, NULL882, nullarmo, nyeogmi, Nylux, Nyranu, och-och, OctoRocket, OldDanceJacket, OliverOtter, onoira, OnyxTheBrave, OrangeMoronage9622, osjarw, Ostaf, othymer, OttoMaticode, Owai-Seek, packmore, paigemaeforrest, pali6, Pangogie, panzer-iv1, paolordls, partyaddict, patrikturi, PaulRitter, peccneck, Peptide90, peptron1, PeterFuto, PetMudstone, pewter-wiz, Pgriha, Phantom-Lily, pheenty, Phill101, phunnyguy, PilgrimViis, Pill-U, Pireax, Pissachu, pissdemon, PixeltheAertistContrib, PixelTheKermit, PJB3005, Plasmaguy, plinyvic, Plykiya, poeMota, pofitlo, pointer-to-null, pok27, PolterTzi, PoorMansDreams, PopGamer45, portfiend, potato1234x, PotentiallyTom, ProfanedBane, ProPandaBear, PrPleGoo, ps3moira, Pspritechologist, Psychpsyo, psykzz, PuceTint, PuroSlavKing, PursuitInAshes, Putnam3145, qrtDaniil, quatre, QueerNB, QuietlyWhisper, qwerltaz, RadioMull, Radosvik, Radrark, Rainbeon, Rainfey, Raitononai, Ramlik, RamZ, randy10122, Rane, Ranger6012, Rapidgame7, ravage123321, rbertoche, Redfire1331, Redict, RedlineTriad, redmushie, RednoWCirabrab, RemberBM, RemieRichards, RemTim, rene-descartes2021, Renlou, retequizzle, RiceMar1244, rich-dunne, RieBi, riggleprime, RIKELOLDABOSS, rinary1, Rinkashikachi, riolume, RobbyTheFish, Rockdtben, Rohesie, rok-povsic, rolfero, RomanNovo, rosieposieeee, Roudenn, router, RumiTiger, S1rFl0, S1ss3l, Saakra, Sadie-silly, saga3152, saintmuntzer, Salex08, sam, samgithubaccount, SaphireLattice, SapphicOverload, Sarahon, sativaleanne, SaveliyM360, sBasalto, ScalyChimp, ScarKy0, scrato, Scribbles0, scrivoy, scruq445, scuffedjays, ScumbagDog, Segonist, sephtasm, Serkket, sewerpig, sh18rw, ShadeAware, ShadowCommander, Shadowtheprotogen546, shaeone, shampunj, shariathotpatrol, SignalWalker, siigiil, Simyon264, sirdragooon, Sirionaut, Sk1tch, SkaldetSkaeg, Skarletto, Skrauz, Skyedra, SlamBamActionman, slarticodefast, Slava0135, Slyfox333, snebl, snicket, sniperchance, Snowni, snowsignal, SolidusSnek, SonicHDC, SoulFN, SoulSloth, Soundwavesghost, southbridge-fur, Soydium, spacelizard, SpaceLizardSky, SpaceManiac, SpaceyLady, Spanky, spanky-spanky, spartak, SpartanKadence, SpeltIncorrectyl, Spessmann, SphiraI, SplinterGP, spoogemonster, sporekto, sporkyz, ssdaniel24, stalengd, stanberytrask, Stanislav4ix, StanTheCarpenter, Stealthbomber16, stellar-novas, stomf, stopbreaking, stopka-html, StrawberryMoses, Stray-Pyramid, strO0pwafel, Strol20, StStevens, Subversionary, sunbear-dev, superjj18, Supernorn, SweptWasTaken, Sybil, SYNCHRONIC, Szunti, Tainakov, takemysoult, TaralGit, Taran, taurie, Tayrtahn, tday93, teamaki, TekuNut, telyonok, TemporalOroboros, tentekal, terezi4real, Terraspark4941, texcruize, TGODiamond, TGRCdev, tgrkzus, ThatOneGoblin25, thatrandomcanadianguy, TheArturZh, theashtronaut, thecopbennet, TheCze, TheDarkElites, thedraccx, TheEmber, TheIntoxicatedCat, thekilk, themias, theomund, theOperand, TherapyGoth, TheShuEd, thetolbean, thevinter, TheWaffleJesus, Thinbug0, ThunderBear2006, timothyteakettle, TimrodDX, timurjavid, tin-man-tim, Titian3, tk-a369, tkdrg, tmtmtl30, TokenStyle, Tollhouse, Toly65, tom-leys, tomasalves8, Tomeno, Tonydatguy, topy, Tornado-Technology, tosatur, TotallyLemon, tropicalhibi, truepaintgit, Truoizys, Tryded, TsjipTsjip, Tunguso4ka, TurboTrackerss14, TyAshley, Tyler-IN, Tyzemol, UbaserB, ubis1, UBlueberry, UKNOWH, UltimateJester, Unbelievable-Salmon, underscorex5, UnicornOnLSD, Unisol, Unkn0wnGh0st333, unusualcrow, Uriende, UristMcDorf, user424242420, Vaaankas, valentfingerov, Varen, VasilisThePikachu, veliebm, VelonacepsCalyxEggs, veprolet, veritable-calamity, Veritius, Vermidia, vero5123, Verslebas, VigersRay, violet754, Visne, VMSolidus, voidnull000, volotomite, volundr-, Voomra, Vordenburg, vorkathbruh, vulppine, wafehling, Warentan, WarMechanic, Watermelon914, waylon531, weaversam8, wertanchik, whateverusername0, Willhelm53, WilliamECrew, willicassi, Winkarst-cpu, wirdal, wixoaGit, WlarusFromDaSpace, wrexbe, wtcwr68, xkreksx, xprospero, xRiriq, YanehCheck, yathxyz, Ygg01, YotaXP, youarereadingthis, Yousifb26, youtissoum, YuriyKiss, zach-hill, Zadeon, zamp, Zandario, Zap527, Zealith-Gamer, ZelteHonor, zero, ZeroDiamond, zerorulez, ZeWaka, zionnBE, ZNixian, ZoldorfTheWizard, Zonespace27, Zylofan, Zymem, zzylex From 912ac2c06980710bd5d96e7fb851922e2ff70c68 Mon Sep 17 00:00:00 2001 From: Plykiya <58439124+Plykiya@users.noreply.github.com> Date: Sun, 3 Nov 2024 03:25:30 -0800 Subject: [PATCH 062/112] Bugfix: Wielding now uses identity system. (#33134) Make wielding system use identity --- Content.Shared/Wieldable/WieldableSystem.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Content.Shared/Wieldable/WieldableSystem.cs b/Content.Shared/Wieldable/WieldableSystem.cs index d76876c0cff..0a193576bfd 100644 --- a/Content.Shared/Wieldable/WieldableSystem.cs +++ b/Content.Shared/Wieldable/WieldableSystem.cs @@ -3,6 +3,7 @@ using Content.Shared.Hands; using Content.Shared.Hands.Components; using Content.Shared.Hands.EntitySystems; +using Content.Shared.IdentityManagement; using Content.Shared.Interaction.Events; using Content.Shared.Inventory.VirtualItem; using Content.Shared.Item; @@ -125,7 +126,7 @@ private void OnExamineRequires(Entity entity, ref Exa private void OnExamine(EntityUid uid, GunWieldBonusComponent component, ref ExaminedEvent args) { - if (HasComp(uid)) + if (HasComp(uid)) return; if (component.WieldBonusExamineMessage != null) @@ -253,7 +254,7 @@ public bool TryWield(EntityUid used, WieldableComponent component, EntityUid use return false; var selfMessage = Loc.GetString("wieldable-component-successful-wield", ("item", used)); - var othersMessage = Loc.GetString("wieldable-component-successful-wield-other", ("user", user), ("item", used)); + var othersMessage = Loc.GetString("wieldable-component-successful-wield-other", ("user", Identity.Entity(user, EntityManager)), ("item", used)); _popupSystem.PopupPredicted(selfMessage, othersMessage, user, user); var targEv = new ItemWieldedEvent(); @@ -298,7 +299,7 @@ private void OnItemUnwielded(EntityUid uid, WieldableComponent component, ItemUn _audioSystem.PlayPredicted(component.UnwieldSound, uid, args.User); var selfMessage = Loc.GetString("wieldable-component-failed-wield", ("item", uid)); - var othersMessage = Loc.GetString("wieldable-component-failed-wield-other", ("user", args.User.Value), ("item", uid)); + var othersMessage = Loc.GetString("wieldable-component-failed-wield-other", ("user", Identity.Entity(args.User.Value, EntityManager)), ("item", uid)); _popupSystem.PopupPredicted(selfMessage, othersMessage, args.User.Value, args.User.Value); } From a0ef431255f122c360e4f1734e26e092ddce9705 Mon Sep 17 00:00:00 2001 From: PJBot Date: Sun, 3 Nov 2024 11:26:38 +0000 Subject: [PATCH 063/112] 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 d82950a2867..b20b6726bfc 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: Flareguy - changes: - - message: Added vox sprites for most of the remaining common mask items. - type: Add - id: 7085 - time: '2024-08-10T21:06:50.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30838 - author: Scribbles0, Plykiya, nikthechampiongr changes: - message: You can now execute incapacitated/cuffed entities or yourself with certain @@ -3953,3 +3946,11 @@ id: 7584 time: '2024-11-02T15:12:26.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/33067 +- author: Plykiya + changes: + - message: Wielding weapons no longer displays your character's real identity when + your identity is hidden. + type: Fix + id: 7585 + time: '2024-11-03T11:25:30.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33134 From cc3a19c212e96eda25236060c7809a66a69d7bdd Mon Sep 17 00:00:00 2001 From: MilenVolf <63782763+MilenVolf@users.noreply.github.com> Date: Mon, 4 Nov 2024 03:49:42 +0300 Subject: [PATCH 064/112] Collapsible ghost roles menu (#32717) * Make ghost roles collapsible * Save `BodyVisible` state of each `Collapsible` box * Make ghost role collapsible only when group has more than 1 role * Make it a little prettier * Make only ghost role buttons collapsible * Apply requested changes * Typo * Small cleanup * Store in list, instead of iterating * Make unique ids more unique * Move it out of the cycle * Make _collapsibleBoxes into dictionary and use key instead of Collapsible boxes names Added TODO. So after the problem will be fixed in `GhostRolesEui`, it should be mirrored and fixed here too. * Put TODO in GhostRolesEui. I guess Issue must be made for this * Use HashSet instead of Dictionary as suggested. Invert the HashSet, so being present means it uncollapsed I decided to invert HashSet to _uncollapsedStates, because players surely will have more collapsed buttons than opened, so we optimise memory usage a little bit. * Remove extra space from ghost roles window * Add buttons stretching. Size 3:1 --- .../Controls/Roles/GhostRoleButtonsBox.xaml | 9 +++ ...ry.xaml.cs => GhostRoleButtonsBox.xaml.cs} | 7 +- .../Controls/Roles/GhostRoleEntryButtons.xaml | 10 +-- .../Controls/Roles/GhostRoleInfoBox.xaml | 8 ++ .../Controls/Roles/GhostRoleInfoBox.xaml.cs | 18 +++++ .../Ghost/Controls/Roles/GhostRolesEntry.xaml | 16 ---- .../Ghost/Controls/Roles/GhostRolesEui.cs | 30 +++++--- .../Controls/Roles/GhostRolesWindow.xaml.cs | 77 ++++++++++++++++++- Resources/Locale/en-US/ghost/ghost-gui.ftl | 1 + 9 files changed, 136 insertions(+), 40 deletions(-) create mode 100644 Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleButtonsBox.xaml rename Content.Client/UserInterface/Systems/Ghost/Controls/Roles/{GhostRolesEntry.xaml.cs => GhostRoleButtonsBox.xaml.cs} (86%) create mode 100644 Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleInfoBox.xaml create mode 100644 Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleInfoBox.xaml.cs delete mode 100644 Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRolesEntry.xaml diff --git a/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleButtonsBox.xaml b/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleButtonsBox.xaml new file mode 100644 index 00000000000..32d611e7717 --- /dev/null +++ b/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleButtonsBox.xaml @@ -0,0 +1,9 @@ + + + + + diff --git a/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRolesEntry.xaml.cs b/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleButtonsBox.xaml.cs similarity index 86% rename from Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRolesEntry.xaml.cs rename to Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleButtonsBox.xaml.cs index fc53cc72ae6..7df02434160 100644 --- a/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRolesEntry.xaml.cs +++ b/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleButtonsBox.xaml.cs @@ -10,20 +10,17 @@ namespace Content.Client.UserInterface.Systems.Ghost.Controls.Roles { [GenerateTypedNameReferences] - public sealed partial class GhostRolesEntry : BoxContainer + public sealed partial class GhostRoleButtonsBox : BoxContainer { private SpriteSystem _spriteSystem; public event Action? OnRoleSelected; public event Action? OnRoleFollow; - public GhostRolesEntry(string name, string description, bool hasAccess, FormattedMessage? reason, IEnumerable roles, SpriteSystem spriteSystem) + public GhostRoleButtonsBox(bool hasAccess, FormattedMessage? reason, IEnumerable roles, SpriteSystem spriteSystem) { RobustXamlLoader.Load(this); _spriteSystem = spriteSystem; - Title.Text = name; - Description.SetMessage(description); - foreach (var role in roles) { var button = new GhostRoleEntryButtons(role); diff --git a/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleEntryButtons.xaml b/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleEntryButtons.xaml index ffde5d69f76..05c52deef16 100644 --- a/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleEntryButtons.xaml +++ b/Content.Client/UserInterface/Systems/Ghost/Controls/Roles/GhostRoleEntryButtons.xaml @@ -1,15 +1,15 @@  + Orientation="Horizontal" + HorizontalAlignment="Stretch"> public void AttemptShoot(EntityUid gunUid, GunComponent gun) { - var coordinates = new EntityCoordinates(gunUid, new Vector2(0, -1)); + var coordinates = new EntityCoordinates(gunUid, gun.DefaultDirection); gun.ShootCoordinates = coordinates; AttemptShoot(gunUid, gunUid, gun); gun.ShotCounter = 0; @@ -258,6 +258,9 @@ private void AttemptShoot(EntityUid user, EntityUid gunUid, GunComponent gun) var fireRate = TimeSpan.FromSeconds(1f / gun.FireRateModified); + if (gun.SelectedMode == SelectiveFire.Burst || gun.BurstActivated) + fireRate = TimeSpan.FromSeconds(1f / gun.BurstFireRate); + // First shot // Previously we checked shotcounter but in some cases all the bullets got dumped at once // curTime - fireRate is insufficient because if you time it just right you can get a 3rd shot out slightly quicker. @@ -278,18 +281,24 @@ private void AttemptShoot(EntityUid user, EntityUid gunUid, GunComponent gun) // Get how many shots we're actually allowed to make, due to clip size or otherwise. // Don't do this in the loop so we still reset NextFire. - switch (gun.SelectedMode) + if (!gun.BurstActivated) + { + switch (gun.SelectedMode) + { + case SelectiveFire.SemiAuto: + shots = Math.Min(shots, 1 - gun.ShotCounter); + break; + case SelectiveFire.Burst: + shots = Math.Min(shots, gun.ShotsPerBurstModified - gun.ShotCounter); + break; + case SelectiveFire.FullAuto: + break; + default: + throw new ArgumentOutOfRangeException($"No implemented shooting behavior for {gun.SelectedMode}!"); + } + } else { - case SelectiveFire.SemiAuto: - shots = Math.Min(shots, 1 - gun.ShotCounter); - break; - case SelectiveFire.Burst: - shots = Math.Min(shots, gun.ShotsPerBurstModified - gun.ShotCounter); - break; - case SelectiveFire.FullAuto: - break; - default: - throw new ArgumentOutOfRangeException($"No implemented shooting behavior for {gun.SelectedMode}!"); + shots = Math.Min(shots, gun.ShotsPerBurstModified - gun.ShotCounter); } var attemptEv = new AttemptShootEvent(user, null); @@ -301,7 +310,8 @@ private void AttemptShoot(EntityUid user, EntityUid gunUid, GunComponent gun) { PopupSystem.PopupClient(attemptEv.Message, gunUid, user); } - + gun.BurstActivated = false; + gun.BurstShotsCount = 0; gun.NextFire = TimeSpan.FromSeconds(Math.Max(lastFire.TotalSeconds + SafetyNextFire, gun.NextFire.TotalSeconds)); return; } @@ -328,6 +338,10 @@ private void AttemptShoot(EntityUid user, EntityUid gunUid, GunComponent gun) var emptyGunShotEvent = new OnEmptyGunShotEvent(); RaiseLocalEvent(gunUid, ref emptyGunShotEvent); + gun.BurstActivated = false; + gun.BurstShotsCount = 0; + gun.NextFire += TimeSpan.FromSeconds(gun.BurstCooldown); + // Play empty gun sounds if relevant // If they're firing an existing clip then don't play anything. if (shots > 0) @@ -347,6 +361,22 @@ private void AttemptShoot(EntityUid user, EntityUid gunUid, GunComponent gun) return; } + // Handle burstfire + if (gun.SelectedMode == SelectiveFire.Burst) + { + gun.BurstActivated = true; + } + if (gun.BurstActivated) + { + gun.BurstShotsCount += shots; + if (gun.BurstShotsCount >= gun.ShotsPerBurstModified) + { + gun.NextFire += TimeSpan.FromSeconds(gun.BurstCooldown); + gun.BurstActivated = false; + gun.BurstShotsCount = 0; + } + } + // Shoot confirmed - sounds also played here in case it's invalid (e.g. cartridge already spent). Shoot(gunUid, gun, ev.Ammo, fromCoordinates, toCoordinates.Value, out var userImpulse, user, throwItems: attemptEv.ThrowItems); var shotEv = new GunShotEvent(user, ev.Ammo); diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml index a22be1da042..5140a358e10 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml @@ -19,6 +19,7 @@ minAngle: 2 maxAngle: 16 fireRate: 8 + burstFireRate: 8 angleIncrease: 3 angleDecay: 16 selectedMode: FullAuto @@ -27,6 +28,7 @@ - FullAuto soundGunshot: path: /Audio/Weapons/Guns/Gunshots/smg.ogg + defaultDirection: 1, 0 - type: ChamberMagazineAmmoProvider soundRack: path: /Audio/Weapons/Guns/Cock/smg_cock.ogg @@ -140,12 +142,15 @@ - type: Gun minAngle: 21 maxAngle: 32 - fireRate: 6 - selectedMode: FullAuto + fireRate: 12 + burstFireRate: 12 + selectedMode: Burst soundGunshot: path: /Audio/Weapons/Guns/Gunshots/atreides.ogg availableModes: - - FullAuto + - Burst + shotsPerBurst: 3 + burstCooldown: 0.25 - type: ItemSlots slots: gun_magazine: @@ -250,6 +255,8 @@ angleDecay: 6 selectedMode: FullAuto shotsPerBurst: 5 + burstCooldown: 0.2 + burstFireRate: 7 availableModes: - SemiAuto - Burst From 5b0761dab265d80c7ed1dd5934b6e8f97bf642ef Mon Sep 17 00:00:00 2001 From: PJBot Date: Wed, 6 Nov 2024 14:40:22 +0000 Subject: [PATCH 091/112] Automatic changelog update --- Resources/Changelog/Changelog.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 7e34cd84454..25dd61eb683 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: DieselMohawk - changes: - - message: Resprited Security vest and helmet - type: Tweak - id: 7097 - time: '2024-08-12T06:20:56.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30291 - author: Ubaser changes: - message: Mantles are now available in loadouts, requiring 20 hours of that head @@ -3951,3 +3944,12 @@ id: 7596 time: '2024-11-06T14:27:11.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32829 +- author: SlamBamActionman + changes: + - message: WT550 and C20-r's "burst" firemodes are now actual bursts. + type: Tweak + - message: Drozd is now a burst-only weapon (DPS remains unchanged!). + type: Tweak + id: 7597 + time: '2024-11-06T14:39:16.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/31292 From 929da643d1fa3c1d58019bb8a36ed6f53c31a6f7 Mon Sep 17 00:00:00 2001 From: AwareFoxy <135021509+AwareFoxy@users.noreply.github.com> Date: Thu, 7 Nov 2024 05:48:06 +0100 Subject: [PATCH 092/112] Update CODEOWNERS (#2721) --- .github/CODEOWNERS | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 4e1a86d79eb..27fc5e15a29 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -5,3 +5,7 @@ # Ping for all PRs that include translations/editing fluent strings *.ftl @ficcialfaint + +# Map files +/Resources/Prototypes/Maps/** @Ko4ergaPunk +/Resources/Maps/** @Ko4ergaPunk From a7029c0bb0b1e9f48e131dea27fd5f4ffd8ce751 Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Thu, 7 Nov 2024 05:48:54 +0100 Subject: [PATCH 093/112] Add station goal cvar (#2714) --- .../Corvax/StationGoal/StationGoalPaperSystem.cs | 7 +++++++ Content.Shared/Corvax/CCCVars/CCCVars.cs | 10 ++++++++++ 2 files changed, 17 insertions(+) diff --git a/Content.Server/Corvax/StationGoal/StationGoalPaperSystem.cs b/Content.Server/Corvax/StationGoal/StationGoalPaperSystem.cs index 3cd9e9ce056..383c28bc261 100644 --- a/Content.Server/Corvax/StationGoal/StationGoalPaperSystem.cs +++ b/Content.Server/Corvax/StationGoal/StationGoalPaperSystem.cs @@ -3,10 +3,12 @@ using Content.Server.GameTicking.Events; using Content.Server.Station.Components; using Content.Server.Station.Systems; +using Content.Shared.Corvax.CCCVars; using Content.Shared.Fax.Components; using Content.Shared.GameTicking; using Content.Shared.Paper; using Robust.Server.Player; +using Robust.Shared.Configuration; using Robust.Shared.Prototypes; using Robust.Shared.Random; @@ -22,6 +24,8 @@ public sealed class StationGoalPaperSystem : EntitySystem [Dependency] private readonly FaxSystem _fax = default!; [Dependency] private readonly IPlayerManager _playerManager = default!; [Dependency] private readonly StationSystem _station = default!; + [Dependency] private readonly IConfigurationManager _cfg = default!; + public override void Initialize() { @@ -31,6 +35,9 @@ public override void Initialize() private void OnRoundStarting(RoundStartingEvent ev) { + if (!_cfg.GetCVar(CCCVars.StationGoal)) + return; + var playerCount = _playerManager.PlayerCount; var query = EntityQueryEnumerator(); diff --git a/Content.Shared/Corvax/CCCVars/CCCVars.cs b/Content.Shared/Corvax/CCCVars/CCCVars.cs index 2808da945af..f9f281d55bd 100644 --- a/Content.Shared/Corvax/CCCVars/CCCVars.cs +++ b/Content.Shared/Corvax/CCCVars/CCCVars.cs @@ -77,4 +77,14 @@ public sealed class CCCVars /// public static readonly CVarDef PeacefulRoundEnd = CVarDef.Create("game.peaceful_end", true, CVar.SERVERONLY); + + /* + * Station Goal + */ + + /// + /// Send station goal on round start or not. + /// + public static readonly CVarDef StationGoal = + CVarDef.Create("game.station_goal", true, CVar.SERVERONLY); } From 379fb4cb6aa35d0f2567a6c874e56a2b7b76ea87 Mon Sep 17 00:00:00 2001 From: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Date: Thu, 7 Nov 2024 11:25:16 +0100 Subject: [PATCH 094/112] AI can now speak once more. (#33196) Yippee --- Resources/Prototypes/Entities/Mobs/Player/silicon.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml index be2b5a44f95..39750b470f5 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml @@ -69,8 +69,6 @@ canShuttle: false title: comms-console-announcement-title-station-ai color: "#2ed2fd" - - type: Speech - speechVerb: Robotic - type: ShowJobIcons - type: entity @@ -395,6 +393,9 @@ drawFov: false - type: Examiner - type: InputMover + - type: Speech + speechVerb: Robotic + speechSounds: Borg - type: Tag tags: - HideContextMenu From cb477cab1b14070fa1cba21e19d8581ef2cbd84e Mon Sep 17 00:00:00 2001 From: lzk <124214523+lzk228@users.noreply.github.com> Date: Thu, 7 Nov 2024 15:58:48 +0100 Subject: [PATCH 095/112] update rules (#2746) --- Resources/ServerInfo/Corvax/Guidebook/ServerRules/Rule6.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/ServerInfo/Corvax/Guidebook/ServerRules/Rule6.xml b/Resources/ServerInfo/Corvax/Guidebook/ServerRules/Rule6.xml index d37d0e6f790..3060033a69e 100644 --- a/Resources/ServerInfo/Corvax/Guidebook/ServerRules/Rule6.xml +++ b/Resources/ServerInfo/Corvax/Guidebook/ServerRules/Rule6.xml @@ -6,7 +6,7 @@ - Помните, что цель антагониста - сделать раунд интересным, захватывающим и опасным, но в разумных пределах. Вы должны постараться что-то привнести в раунд, а не просто выполнить свои задачи и продолжить играть, как ни в чем не бывало. - Мелкие антагонисты засланы на станцию, как тайные агенты и должны стараться оставаться в таком же статусе. Если бы ваши наниматели (если они у вас есть) хотели взять станцию штурмом, то послали бы ударный отряд или что-то равное по силе. Если вы не готовы стараться скрываться, ловко врать, маневрировать по техам и виртуозно переодеваться, то не берите на себя бремя антагониста. -- Агрессивный и шумный отыгрыш допустим для достижения собственных целей. Тем не менее, даже "шумный" стиль игры не дает вам право устраивать полномасштабные разрушения на станции(напр. выпуск сингулярности/теслы) и вырезать экипаж. Если ваши действия явно портят игру другим игрокам и не привносят в раунд ничего интересного, то вам стоит готовиться к диалогу с администратором. +- Агрессивный и шумный отыгрыш допустим лишь в случаях, когда достижение поставленных вам задач невозможно иными способами, либо если вас уже разоблачили и ведут агрессивное преследование. Тем не менее, даже "шумный" стиль игры не дает вам права устраивать крупный саботаж и вырезать станцию. Помните, что громкая игра должна быть крайней мерой, а не основным стилем игры. Если ваши действия явно портят игру другим игрокам и не привносят в раунд ничего интересного, то вам стоит готовиться к диалогу с администратором. - Антагонистам запрещается поджидать только появившихся игроков, дайте им время на то, чтобы узнать обстановку на станции. - Цель "Завладейте эвакуационным шаттлом" полностью развязывает ваши руки в плане действий. Вы можете убивать, выпускать сингулярность, плазмафлудить, в общем-то делать всё для вызова шаттла эвакуации. Однако учитывайте, что правила затягивания работают как и на режиме Ядерных Оперативников. В течение 30-40 минут бездействия вы должны выполнить цель, в противном случае за вами прибудет ОБР, а в случае отсутствия администрации вы будете наказаны. - Если вы не хотите играть за антагониста или если вам нужно внезапно уйти посреди раунда, сообщите об этом администрации. From fc0d85b4878a17baea8c31ebef5d6d446db35fa1 Mon Sep 17 00:00:00 2001 From: Spessmann <156740760+Spessmann@users.noreply.github.com> Date: Thu, 7 Nov 2024 14:01:35 -0800 Subject: [PATCH 096/112] Cog update (fixes) (#33202) fixed cog again --- Resources/Maps/cog.yml | 1487 ++++++++++++---------------------------- 1 file changed, 454 insertions(+), 1033 deletions(-) diff --git a/Resources/Maps/cog.yml b/Resources/Maps/cog.yml index 888b4e7e5ec..58310e561c0 100644 --- a/Resources/Maps/cog.yml +++ b/Resources/Maps/cog.yml @@ -145,15 +145,15 @@ entities: version: 6 -4,-3: ind: -4,-3 - tiles: AAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAABIAAAAAADIAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAADIAAAAAACIAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAADIAAAAAACIAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA + tiles: AAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAABIAAAAAADIAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAADIAAAAAACIAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAAAIAAAAAAAIAAAAAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIAAAAAABIAAAAAADIAAAAAACIAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA version: 6 -4,-4: ind: -4,-4 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAADwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAADwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAIQAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAADwAAAAAAgAAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAACgQAAAAAADwAAAAAAHwAAAAAADwAAAAAADwAAAAAADwAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAYAAAAAACYAAAAAACgQAAAAAAgQAAAAAAIQAAAAAADwAAAAAAgAAAAAAADwAAAAAADwAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAYAAAAAAAgQAAAAAAYAAAAAAAHwAAAAAADwAAAAAAAAAAAAAADwAAAAAADwAAAAAAgAAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAHwAAAAAAgQAAAAAAYAAAAAABHwAAAAAAHwAAAAACgAAAAAAAgAAAAAAAgAAAAAAAIQAAAAAAgAAAAAAADwAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAHwAAAAAAHwAAAAAAHwAAAAAKgQAAAAAADwAAAAAAAAAAAAAADwAAAAAADwAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAHwAAAAAADwAAAAAAIQAAAAAADwAAAAAADwAAAAAADwAAAAAAgAAAAAAADwAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAHwAAAAAADwAAAAAAgAAAAAAADwAAAAAAHwAAAAAAgAAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAHwAAAAAAHwAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIQAAAAAADwAAAAAADwAAAAAADwAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIQAAAAAADwAAAAAADwAAAAAADwAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAAgAAAAAAAgAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAAgQAAAAAAgQAAAAAAAAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAIQAAAAAADwAAAAAADwAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAA version: 6 -3,-4: ind: -3,-4 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAABAAAAAAAgQAAAAAABAAAAAAABAAAAAAAIgAAAAAAgQAAAAAAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAAgQAAAAAAIgAAAAAAYAAAAAADgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAA + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIQAAAAAAgQAAAAAABAAAAAAAgQAAAAAABAAAAAAABAAAAAAAIgAAAAAAgQAAAAAAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAADwAAAAAAgQAAAAAAgQAAAAAABAAAAAAABAAAAAAAgQAAAAAAIgAAAAAAYAAAAAADgQAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAADwAAAAAAgQAAAAAABAAAAAAABAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAADDwAAAAAADwAAAAAADwAAAAAADwAAAAAAAAAAAAAAAAAAAAAADwAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAgAAAAAAAgQAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAUgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAYAAAAAADYAAAAAAAgQAAAAAAgQAAAAAA version: 6 -2,-4: ind: -2,-4 @@ -455,10 +455,6 @@ entities: ind: -5,-2 tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAYAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAABYAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAADgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA version: 6 - -5,-4: - ind: -5,-4 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHwAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHwAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHwAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - version: 6 -3,-5: ind: -3,-5 tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAAgAAAAAAA @@ -1906,8 +1902,6 @@ entities: 8675: -48,-44 8676: -51,-51 8677: -43,-54 - 8681: -61,-55 - 8682: -63,-56 8850: 62,-4 8851: 62,-1 8913: 48,-6 @@ -2844,14 +2838,6 @@ entities: 8671: -51,-44 8672: -48,-46 8673: -48,-46 - 8683: -62,-56 - 8684: -63,-55 - 8685: -62,-55 - 8686: -61,-56 - 8687: -61,-55 - 8688: -62,-54 - 8689: -63,-53 - 8690: -62,-53 8818: 39,-36 8819: 41,-36 8820: 43,-36 @@ -4151,19 +4137,6 @@ entities: 8612: 57,63 8613: 55,64 8645: -57,-34 - 8691: -63,-56 - 8692: -62,-56 - 8693: -61,-56 - 8694: -62,-55 - 8695: -62,-55 - 8696: -63,-54 - 8697: -63,-54 - 8698: -63,-53 - 8699: -63,-53 - 8700: -61,-54 - 8701: -61,-58 - 8702: -61,-59 - 8703: -61,-57 - node: cleanable: True zIndex: 1 @@ -9775,21 +9748,20 @@ entities: -14,-9: 0: 58620 -16,-12: - 2: 19524 + 2: 19660 -16,-13: - 1: 16592 - 2: 1024 + 1: 17026 -16,-11: 2: 3140 -15,-12: - 2: 61422 + 2: 61438 -15,-11: 2: 3918 + -15,-13: + 1: 4612 + 2: 60608 -15,-10: 0: 24584 - -15,-13: - 2: 59968 - 1: 5284 -14,-11: 2: 257 0: 17612 @@ -9802,48 +9774,36 @@ entities: 2: 273 -13,-13: 0: 61160 - -16,-15: - 1: 16 - 2: 12 - 0: 34944 - -17,-15: - 1: 2048 - 2: 17408 -16,-14: - 0: 28398 - -17,-14: - 0: 128 - 1: 32768 - 2: 68 - -15,-15: - 2: 42689 1: 2048 + -15,-15: + 2: 61440 -15,-14: - 1: 548 - 2: 57472 + 1: 40960 + 2: 2286 -14,-15: - 2: 57360 - 1: 256 + 2: 12288 -14,-14: - 0: 290 - 1: 4096 - 2: 10820 - -13,-15: - 2: 61440 + 2: 12288 + 1: 18432 -13,-14: - 2: 10180 - -12,-15: - 2: 61440 + 1: 640 + -13,-15: + 2: 24576 -12,-14: 0: 65024 - -11,-15: - 2: 61440 + 1: 8 + -12,-15: + 1: 4096 -11,-14: 0: 64256 -11,-16: 2: 58030 -11,-17: 2: 41646 + -11,-15: + 2: 2 + 1: 33920 -10,-16: 2: 58111 -10,-14: @@ -9853,7 +9813,7 @@ entities: -10,-15: 0: 61152 -9,-16: - 2: 2047 + 2: 767 -9,-14: 0: 4084 -9,-17: @@ -11671,8 +11631,6 @@ entities: -6,-17: 2: 1041 0: 14 - -17,-13: - 1: 4 -11,-18: 2: 41696 -10,-18: @@ -14021,11 +13979,6 @@ entities: - type: Transform pos: -17.5,-60.5 parent: 12 - - uid: 31026 - components: - - type: Transform - pos: -60.5,-53.5 - parent: 12 - proto: Airlock entities: - uid: 2309 @@ -16010,29 +15963,6 @@ entities: - type: Transform pos: -21.5,55.5 parent: 12 - - uid: 31049 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -60.5,-56.5 - parent: 12 - - type: DeviceLinkSink - invokeCounter: 1 - - type: DeviceLinkSource - linkedPorts: - 32119: - - DoorStatus: DoorBolt - - uid: 32119 - components: - - type: Transform - pos: -60.5,-58.5 - parent: 12 - - type: DeviceLinkSink - invokeCounter: 1 - - type: DeviceLinkSource - linkedPorts: - 31049: - - DoorStatus: DoorBolt - proto: AirlockHeadOfPersonnelLocked entities: - uid: 18846 @@ -16367,6 +16297,11 @@ entities: rot: -1.5707963267948966 rad pos: 38.5,-20.5 parent: 12 + - uid: 1613 + components: + - type: Transform + pos: -44.5,68.5 + parent: 12 - uid: 2358 components: - type: Transform @@ -16740,18 +16675,6 @@ entities: rot: 3.141592653589793 rad pos: -5.5,8.5 parent: 12 - - uid: 29024 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -44.5,68.5 - parent: 12 - - type: Door - secondsUntilStateChange: -5937.642 - state: Opening - - type: DeviceLinkSource - lastSignals: - DoorStatus: True - uid: 29076 components: - type: Transform @@ -19607,12 +19530,6 @@ entities: rot: 1.5707963267948966 rad pos: 34.5,-12.5 parent: 12 - - uid: 32163 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -63.5,-53.5 - parent: 12 - proto: APCElectronics entities: - uid: 10892 @@ -19737,196 +19654,189 @@ entities: parent: 12 - proto: AsteroidRock entities: - - uid: 10821 + - uid: 4769 components: - type: Transform - pos: -62.5,-49.5 + pos: -58.5,-51.5 parent: 12 - - uid: 31015 - components: - - type: Transform - pos: -57.5,-54.5 - parent: 12 - - uid: 31024 + - uid: 4976 components: - type: Transform - pos: -62.5,-50.5 + pos: -52.5,-52.5 parent: 12 - - uid: 31025 + - uid: 7157 components: - type: Transform - pos: -56.5,-51.5 + pos: -59.5,-53.5 parent: 12 - - uid: 31027 + - uid: 10819 components: - type: Transform - pos: -59.5,-53.5 + pos: -61.5,-49.5 parent: 12 - - uid: 31031 + - uid: 10823 components: - type: Transform - pos: -59.5,-50.5 + pos: -61.5,-50.5 parent: 12 - - uid: 31032 + - uid: 17288 components: - type: Transform - pos: -60.5,-49.5 + pos: -48.5,-55.5 parent: 12 - - uid: 31033 + - uid: 25452 components: - type: Transform - pos: -62.5,-51.5 + pos: -60.5,-52.5 parent: 12 - - uid: 31035 + - uid: 25568 components: - type: Transform - pos: -56.5,-55.5 + pos: -56.5,-51.5 parent: 12 - - uid: 31036 + - uid: 25682 components: - type: Transform - pos: -55.5,-54.5 + pos: -59.5,-49.5 parent: 12 - - uid: 31037 + - uid: 25738 components: - type: Transform - pos: -57.5,-56.5 + pos: -58.5,-53.5 parent: 12 - - uid: 31039 + - uid: 26291 components: - type: Transform - pos: -53.5,-53.5 + pos: -59.5,-51.5 parent: 12 - - uid: 31043 + - uid: 26305 components: - type: Transform - pos: -58.5,-55.5 + pos: -41.5,-55.5 parent: 12 - - uid: 31047 + - uid: 26413 components: - type: Transform - pos: -64.5,-55.5 + pos: -41.5,-56.5 parent: 12 - - uid: 31055 + - uid: 29024 components: - type: Transform - pos: -63.5,-52.5 + pos: -60.5,-51.5 parent: 12 - - uid: 31065 + - uid: 29978 components: - type: Transform - pos: -55.5,-56.5 + pos: -59.5,-47.5 parent: 12 - - uid: 31159 + - uid: 30180 components: - type: Transform - pos: -63.5,-51.5 + pos: -60.5,-48.5 parent: 12 - - uid: 31160 + - uid: 30184 components: - type: Transform - pos: -61.5,-51.5 + pos: -62.5,-50.5 parent: 12 - - uid: 32122 + - uid: 30271 components: - type: Transform - pos: -65.5,-53.5 + pos: -51.5,-53.5 parent: 12 - - uid: 32123 + - uid: 30305 components: - type: Transform - pos: -65.5,-52.5 + pos: -50.5,-54.5 parent: 12 - - uid: 32124 + - uid: 30426 components: - type: Transform - pos: -64.5,-51.5 + pos: -51.5,-54.5 parent: 12 - - uid: 32126 + - uid: 30533 components: - type: Transform - pos: -63.5,-49.5 + pos: -46.5,-55.5 parent: 12 - - uid: 32137 + - uid: 30536 components: - type: Transform - pos: -63.5,-57.5 + pos: -49.5,-54.5 parent: 12 - - uid: 32139 + - uid: 30537 components: - type: Transform - pos: -62.5,-58.5 + pos: -49.5,-53.5 parent: 12 - - uid: 32140 + - uid: 30538 components: - type: Transform - pos: -63.5,-56.5 + pos: -47.5,-55.5 parent: 12 - - uid: 32141 + - uid: 31026 components: - type: Transform - pos: -64.5,-56.5 + pos: -50.5,-52.5 parent: 12 - - uid: 32168 + - uid: 31034 components: - type: Transform - pos: -59.5,-49.5 + pos: -57.5,-52.5 parent: 12 - - uid: 32171 + - uid: 31036 components: - type: Transform - pos: -58.5,-58.5 + pos: -61.5,-51.5 parent: 12 - - uid: 32185 + - uid: 31042 components: - type: Transform - pos: -60.5,-48.5 + pos: -60.5,-49.5 parent: 12 - proto: AsteroidRockCoal entities: - - uid: 31041 + - uid: 11027 components: - type: Transform - pos: -55.5,-55.5 + pos: -59.5,-52.5 parent: 12 - - uid: 31042 + - uid: 30341 components: - type: Transform - pos: -53.5,-52.5 + pos: -40.5,-57.5 parent: 12 - - uid: 32138 + - uid: 30457 components: - type: Transform - pos: -62.5,-57.5 + pos: -49.5,-55.5 parent: 12 -- proto: AsteroidRockQuartz - entities: - - uid: 31111 + - uid: 31038 components: - type: Transform - pos: -60.5,-52.5 + pos: -58.5,-50.5 parent: 12 - proto: AsteroidRockTin entities: - - uid: 31022 + - uid: 10822 components: - type: Transform - pos: -56.5,-53.5 + pos: -51.5,-52.5 parent: 12 - - uid: 31107 + - uid: 25823 components: - type: Transform - pos: -64.5,-53.5 + pos: -59.5,-50.5 parent: 12 - - uid: 32125 + - uid: 30342 components: - type: Transform - pos: -64.5,-50.5 + pos: -57.5,-53.5 parent: 12 - - uid: 32182 + - uid: 31030 components: - type: Transform - pos: -59.5,-51.5 + pos: -45.5,-55.5 parent: 12 - proto: AtmosDeviceFanDirectional entities: @@ -20560,6 +20470,11 @@ entities: - type: Transform pos: 85.5,-30.5 parent: 12 + - uid: 17289 + components: + - type: Transform + pos: -50.5,-53.5 + parent: 12 - uid: 26206 components: - type: Transform @@ -20570,120 +20485,115 @@ entities: - type: Transform pos: 55.5,19.5 parent: 12 - - uid: 28746 - components: - - type: Transform - pos: 9.5,6.5 - parent: 12 - - uid: 28747 + - uid: 26304 components: - type: Transform - pos: 10.5,6.5 + pos: -48.5,-54.5 parent: 12 - - uid: 28748 + - uid: 26306 components: - type: Transform - pos: 11.5,6.5 + pos: -52.5,-53.5 parent: 12 - - uid: 28749 + - uid: 26307 components: - type: Transform - pos: 12.5,6.5 + pos: -53.5,-52.5 parent: 12 - - uid: 32194 + - uid: 26610 components: - type: Transform - pos: -65.5,-51.5 + pos: -44.5,-55.5 parent: 12 - - uid: 32195 + - uid: 26758 components: - type: Transform - pos: -61.5,-48.5 + pos: -40.5,-56.5 parent: 12 - - uid: 32196 + - uid: 26866 components: - type: Transform - pos: -63.5,-50.5 + pos: -58.5,-52.5 parent: 12 - - uid: 32197 + - uid: 27910 components: - type: Transform - pos: -64.5,-52.5 + pos: -60.5,-53.5 parent: 12 - - uid: 32198 + - uid: 28746 components: - type: Transform - pos: -60.5,-50.5 + pos: 9.5,6.5 parent: 12 - - uid: 32199 + - uid: 28747 components: - type: Transform - pos: -61.5,-50.5 + pos: 10.5,6.5 parent: 12 - - uid: 32200 + - uid: 28748 components: - type: Transform - pos: -59.5,-48.5 + pos: 11.5,6.5 parent: 12 - - uid: 32201 + - uid: 28749 components: - type: Transform - pos: -58.5,-50.5 + pos: 12.5,6.5 parent: 12 - - uid: 32202 + - uid: 29082 components: - type: Transform - pos: -57.5,-49.5 + pos: -62.5,-49.5 parent: 12 - - uid: 32203 + - uid: 30185 components: - type: Transform - pos: -57.5,-51.5 + pos: -56.5,-52.5 parent: 12 - - uid: 32204 + - uid: 30196 components: - type: Transform - pos: -56.5,-50.5 + pos: -60.5,-50.5 parent: 12 - - uid: 32205 + - uid: 30198 components: - type: Transform - pos: -58.5,-53.5 + pos: -57.5,-51.5 parent: 12 - - uid: 32206 + - uid: 30272 components: - type: Transform - pos: -58.5,-54.5 + pos: -61.5,-48.5 parent: 12 - - uid: 32207 + - uid: 30279 components: - type: Transform - pos: -57.5,-55.5 + pos: -59.5,-48.5 parent: 12 - - uid: 32208 + - uid: 30298 components: - type: Transform - pos: -56.5,-57.5 + pos: -62.5,-51.5 parent: 12 - - uid: 32209 + - uid: 30343 components: - type: Transform - pos: -55.5,-57.5 + pos: -40.5,-58.5 parent: 12 - - uid: 32210 + - uid: 30454 components: - type: Transform - pos: -55.5,-52.5 + pos: -47.5,-56.5 parent: 12 - - uid: 32211 + - uid: 30489 components: - type: Transform - pos: -63.5,-58.5 + pos: -58.5,-49.5 parent: 12 - - uid: 32212 + - uid: 30490 components: - type: Transform - pos: -64.5,-57.5 + pos: -41.5,-57.5 parent: 12 - proto: AtmosFixFreezerMarker entities: @@ -20999,11 +20909,6 @@ entities: - type: Transform pos: 2.5,70.5 parent: 12 - - uid: 10819 - components: - - type: Transform - pos: -61.5,-57.5 - parent: 12 - uid: 23721 components: - type: Transform @@ -21030,11 +20935,6 @@ entities: - type: Transform pos: 41.5,-19.5 parent: 12 - - uid: 32187 - components: - - type: Transform - pos: -63.5,-54.5 - parent: 12 - proto: BarSignOfficerBeersky entities: - uid: 14512 @@ -21590,18 +21490,6 @@ entities: - type: Transform pos: -20.5,47.5 parent: 12 -- proto: Bible - entities: - - uid: 13308 - components: - - type: Transform - pos: 56.419914,38.685394 - parent: 12 - - uid: 13322 - components: - - type: Transform - pos: 43.41042,29.810503 - parent: 12 - proto: Biogenerator entities: - uid: 107 @@ -40881,46 +40769,11 @@ entities: - type: Transform pos: 35.5,-32.5 parent: 12 - - uid: 25568 - components: - - type: Transform - pos: -60.5,-55.5 - parent: 12 - - uid: 25581 - components: - - type: Transform - pos: -60.5,-56.5 - parent: 12 - - uid: 25598 - components: - - type: Transform - pos: -60.5,-57.5 - parent: 12 - uid: 25610 components: - type: Transform pos: 50.5,-0.5 parent: 12 - - uid: 25682 - components: - - type: Transform - pos: -60.5,-58.5 - parent: 12 - - uid: 25738 - components: - - type: Transform - pos: -60.5,-59.5 - parent: 12 - - uid: 25822 - components: - - type: Transform - pos: -61.5,-59.5 - parent: 12 - - uid: 25823 - components: - - type: Transform - pos: -59.5,-59.5 - parent: 12 - uid: 26097 components: - type: Transform @@ -41761,6 +41614,11 @@ entities: - type: Transform pos: -28.5,-0.5 parent: 12 + - uid: 27665 + components: + - type: Transform + pos: -50.5,-46.5 + parent: 12 - uid: 27712 components: - type: Transform @@ -44691,31 +44549,6 @@ entities: - type: Transform pos: 49.5,54.5 parent: 12 - - uid: 32128 - components: - - type: Transform - pos: -62.5,-53.5 - parent: 12 - - uid: 32129 - components: - - type: Transform - pos: -61.5,-53.5 - parent: 12 - - uid: 32130 - components: - - type: Transform - pos: -61.5,-54.5 - parent: 12 - - uid: 32131 - components: - - type: Transform - pos: -61.5,-55.5 - parent: 12 - - uid: 32213 - components: - - type: Transform - pos: -63.5,-53.5 - parent: 12 - uid: 32230 components: - type: Transform @@ -44771,12 +44604,6 @@ entities: - type: Transform pos: 43.47266,63.509254 parent: 12 - - uid: 31067 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -50.484467,-46.507282 - parent: 12 - uid: 31288 components: - type: Transform @@ -45185,6 +45012,11 @@ entities: - type: Transform pos: -43.5,-13.5 parent: 12 + - uid: 1764 + components: + - type: Transform + pos: -56.5,-53.5 + parent: 12 - uid: 1835 components: - type: Transform @@ -46070,11 +45902,6 @@ entities: - type: Transform pos: 42.5,-0.5 parent: 12 - - uid: 4976 - components: - - type: Transform - pos: -57.5,-57.5 - parent: 12 - uid: 4994 components: - type: Transform @@ -47670,6 +47497,11 @@ entities: - type: Transform pos: 51.5,-6.5 parent: 12 + - uid: 9631 + components: + - type: Transform + pos: -57.5,-54.5 + parent: 12 - uid: 9636 components: - type: Transform @@ -52575,6 +52407,11 @@ entities: - type: Transform pos: 30.5,14.5 parent: 12 + - uid: 25598 + components: + - type: Transform + pos: -56.5,-54.5 + parent: 12 - uid: 25613 components: - type: Transform @@ -56220,26 +56057,11 @@ entities: - type: Transform pos: -54.5,-50.5 parent: 12 - - uid: 31013 - components: - - type: Transform - pos: -58.5,-52.5 - parent: 12 - uid: 31054 components: - type: Transform pos: 30.5,11.5 parent: 12 - - uid: 31056 - components: - - type: Transform - pos: -57.5,-52.5 - parent: 12 - - uid: 31057 - components: - - type: Transform - pos: -56.5,-54.5 - parent: 12 - uid: 31058 components: - type: Transform @@ -56275,16 +56097,6 @@ entities: - type: Transform pos: -58.5,-43.5 parent: 12 - - uid: 31730 - components: - - type: Transform - pos: -56.5,-56.5 - parent: 12 - - uid: 31731 - components: - - type: Transform - pos: -58.5,-56.5 - parent: 12 - uid: 31775 components: - type: Transform @@ -56410,96 +56222,6 @@ entities: - type: Transform pos: 40.5,-10.5 parent: 12 - - uid: 32152 - components: - - type: Transform - pos: -65.5,-57.5 - parent: 12 - - uid: 32153 - components: - - type: Transform - pos: -65.5,-56.5 - parent: 12 - - uid: 32154 - components: - - type: Transform - pos: -65.5,-55.5 - parent: 12 - - uid: 32155 - components: - - type: Transform - pos: -65.5,-54.5 - parent: 12 - - uid: 32156 - components: - - type: Transform - pos: -64.5,-54.5 - parent: 12 - - uid: 32157 - components: - - type: Transform - pos: -63.5,-54.5 - parent: 12 - - uid: 32158 - components: - - type: Transform - pos: -62.5,-54.5 - parent: 12 - - uid: 32159 - components: - - type: Transform - pos: -62.5,-55.5 - parent: 12 - - uid: 32169 - components: - - type: Transform - pos: -58.5,-56.5 - parent: 12 - - uid: 32170 - components: - - type: Transform - pos: -58.5,-57.5 - parent: 12 - - uid: 32172 - components: - - type: Transform - pos: -57.5,-58.5 - parent: 12 - - uid: 32175 - components: - - type: Transform - pos: -56.5,-58.5 - parent: 12 - - uid: 32176 - components: - - type: Transform - pos: -59.5,-57.5 - parent: 12 - - uid: 32177 - components: - - type: Transform - pos: -60.5,-57.5 - parent: 12 - - uid: 32178 - components: - - type: Transform - pos: -60.5,-56.5 - parent: 12 - - uid: 32179 - components: - - type: Transform - pos: -60.5,-55.5 - parent: 12 - - uid: 32180 - components: - - type: Transform - pos: -61.5,-55.5 - parent: 12 - - uid: 32181 - components: - - type: Transform - pos: -55.5,-58.5 - parent: 12 - proto: CableHVStack entities: - uid: 353 @@ -66935,11 +66657,6 @@ entities: - type: Transform pos: -33.5,-57.5 parent: 12 - - uid: 31023 - components: - - type: Transform - pos: -61.5,-53.5 - parent: 12 - uid: 31295 components: - type: Transform @@ -67120,31 +66837,6 @@ entities: - type: Transform pos: 49.5,54.5 parent: 12 - - uid: 32160 - components: - - type: Transform - pos: -62.5,-55.5 - parent: 12 - - uid: 32161 - components: - - type: Transform - pos: -61.5,-55.5 - parent: 12 - - uid: 32162 - components: - - type: Transform - pos: -61.5,-54.5 - parent: 12 - - uid: 32165 - components: - - type: Transform - pos: -62.5,-53.5 - parent: 12 - - uid: 32166 - components: - - type: Transform - pos: -63.5,-53.5 - parent: 12 - proto: CableMVStack entities: - uid: 5999 @@ -67274,7 +66966,7 @@ entities: - uid: 13090 components: - type: Transform - pos: 56.215126,38.011414 + pos: 56.275406,37.942432 parent: 12 - uid: 13095 components: @@ -67294,7 +66986,7 @@ entities: - uid: 13252 components: - type: Transform - pos: 56.166515,36.49058 + pos: 56.26499,37.33827 parent: 12 - uid: 13254 components: @@ -71868,6 +71560,11 @@ entities: rot: -1.5707963267948966 rad pos: 4.5,31.5 parent: 12 + - uid: 10820 + components: + - type: Transform + pos: -57.5,-47.5 + parent: 12 - uid: 10835 components: - type: Transform @@ -74072,12 +73769,22 @@ entities: - type: Transform pos: -26.5,23.5 parent: 12 + - uid: 25822 + components: + - type: Transform + pos: -55.5,-50.5 + parent: 12 - uid: 26236 components: - type: Transform rot: 3.141592653589793 rad pos: -20.5,59.5 parent: 12 + - uid: 26379 + components: + - type: Transform + pos: -50.5,-46.5 + parent: 12 - uid: 26414 components: - type: Transform @@ -74255,11 +73962,6 @@ entities: - type: Transform pos: -40.5,-52.5 parent: 12 - - uid: 27665 - components: - - type: Transform - pos: -41.5,-52.5 - parent: 12 - uid: 27666 components: - type: Transform @@ -75130,12 +74832,6 @@ entities: rot: 1.5707963267948966 rad pos: -34.5,-66.5 parent: 12 - - uid: 29082 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -34.5,-62.5 - parent: 12 - uid: 29085 components: - type: Transform @@ -75618,6 +75314,11 @@ entities: - type: Transform pos: -43.5,68.5 parent: 12 + - uid: 30301 + components: + - type: Transform + pos: -57.5,-48.5 + parent: 12 - uid: 30473 components: - type: Transform @@ -75928,6 +75629,36 @@ entities: - type: Transform pos: 3.5,-50.5 parent: 12 + - uid: 31024 + components: + - type: Transform + pos: -57.5,-45.5 + parent: 12 + - uid: 31031 + components: + - type: Transform + pos: -57.5,-54.5 + parent: 12 + - uid: 31032 + components: + - type: Transform + pos: -55.5,-49.5 + parent: 12 + - uid: 31035 + components: + - type: Transform + pos: -57.5,-44.5 + parent: 12 + - uid: 31039 + components: + - type: Transform + pos: -55.5,-51.5 + parent: 12 + - uid: 31041 + components: + - type: Transform + pos: -57.5,-43.5 + parent: 12 - uid: 31270 components: - type: Transform @@ -75964,31 +75695,6 @@ entities: rot: 1.5707963267948966 rad pos: 35.5,-15.5 parent: 12 - - uid: 32133 - components: - - type: Transform - pos: -61.5,-55.5 - parent: 12 - - uid: 32134 - components: - - type: Transform - pos: -61.5,-59.5 - parent: 12 - - uid: 32135 - components: - - type: Transform - pos: -60.5,-59.5 - parent: 12 - - uid: 32136 - components: - - type: Transform - pos: -59.5,-59.5 - parent: 12 - - uid: 32174 - components: - - type: Transform - pos: -62.5,-55.5 - parent: 12 - proto: Cautery entities: - uid: 9752 @@ -80052,13 +79758,6 @@ entities: - type: Transform pos: -21.667349,-7.343448 parent: 12 -- proto: ClothingHeadHelmetEVA - entities: - - uid: 32167 - components: - - type: Transform - pos: -61.5426,-52.550335 - parent: 12 - proto: ClothingHeadHelmetRiot entities: - uid: 20866 @@ -80244,7 +79943,8 @@ entities: - uid: 32127 components: - type: Transform - pos: -63.43215,-50.381607 + rot: -6.283185307179586 rad + pos: -60.515457,-50.51032 parent: 12 - proto: ClothingNeckCloakTrans entities: @@ -80479,13 +80179,6 @@ entities: - type: Transform pos: -11.945792,60.527626 parent: 12 -- proto: ClothingOuterHardsuitEVA - entities: - - uid: 32142 - components: - - type: Transform - pos: -62.521767,-52.550335 - parent: 12 - proto: ClothingOuterHoodieBlack entities: - uid: 25982 @@ -95648,13 +95341,6 @@ entities: - type: Transform pos: -33.231888,44.587296 parent: 12 -- proto: DrinkCogChampBase - entities: - - uid: 31114 - components: - - type: Transform - pos: -57.4781,-55.502342 - parent: 12 - proto: DrinkColaCan entities: - uid: 13334 @@ -96047,7 +95733,12 @@ entities: - uid: 13325 components: - type: Transform - pos: 44.5166,29.691267 + pos: 44.358738,29.577848 + parent: 12 + - uid: 26293 + components: + - type: Transform + pos: 44.139988,29.75493 parent: 12 - proto: DrinkTeaGlass entities: @@ -97173,10 +96864,10 @@ entities: parent: 12 - proto: EpinephrineChemistryBottle entities: - - uid: 17614 + - uid: 30546 components: - type: Transform - pos: -52.83247,28.80966 + pos: -52.860172,28.779083 parent: 12 - proto: ExosuitFabricator entities: @@ -102844,11 +102535,6 @@ entities: - type: Transform pos: -34.115353,-56.58399 parent: 12 - - uid: 32189 - components: - - type: Transform - pos: -60.632877,-54.815796 - parent: 12 - proto: FoodFrozenSnowcone entities: - uid: 22491 @@ -102970,6 +102656,13 @@ entities: - type: Transform pos: -30.5,-58.5 parent: 12 +- proto: FoodPizzaUraniumSlice + entities: + - uid: 30340 + components: + - type: Transform + pos: -40.483036,-56.420677 + parent: 12 - proto: FoodPlate entities: - uid: 15048 @@ -103108,11 +102801,6 @@ entities: - type: Transform pos: -29.443712,-54.018364 parent: 12 - - uid: 32191 - components: - - type: Transform - pos: -61.584267,-54.808846 - parent: 12 - proto: FoodPotato entities: - uid: 31464 @@ -103233,11 +102921,6 @@ entities: - type: Transform pos: -28.587122,-59.26843 parent: 12 - - uid: 32192 - components: - - type: Transform - pos: -61.132877,-54.03053 - parent: 12 - proto: Football entities: - uid: 22487 @@ -103311,6 +102994,8 @@ entities: rot: -1.5707963267948966 rad pos: -12.5,-56.5 parent: 12 + - type: AtmosPipeColor + color: '#03FCD3FF' - uid: 18269 components: - type: Transform @@ -103858,6 +103543,8 @@ entities: rot: 3.141592653589793 rad pos: -13.5,-56.5 parent: 12 + - type: AtmosPipeColor + color: '#03FCD3FF' - uid: 2812 components: - type: Transform @@ -106644,6 +106331,8 @@ entities: - type: Transform pos: -11.5,-55.5 parent: 12 + - type: AtmosPipeColor + color: '#03FCD3FF' - uid: 3505 components: - type: Transform @@ -108426,6 +108115,8 @@ entities: rot: -1.5707963267948966 rad pos: -12.5,-55.5 parent: 12 + - type: AtmosPipeColor + color: '#03FCD3FF' - uid: 2814 components: - type: Transform @@ -129868,12 +129559,16 @@ entities: rot: 1.5707963267948966 rad pos: -13.5,-55.5 parent: 12 + - type: AtmosPipeColor + color: '#03FCD3FF' - uid: 2810 components: - type: Transform rot: 3.141592653589793 rad pos: -11.5,-56.5 parent: 12 + - type: AtmosPipeColor + color: '#03FCD3FF' - uid: 2811 components: - type: Transform @@ -133174,7 +132869,7 @@ entities: pos: -10.5,-55.5 parent: 12 - type: AtmosPipeColor - color: '#0055CCFF' + color: '#03FCD3FF' - uid: 4092 components: - type: MetaData @@ -133297,6 +132992,8 @@ entities: targetTemperature: 100 - type: ApcPowerReceiver powerDisabled: False + - type: AtmosPipeColor + color: '#03FCD3FF' - uid: 2960 components: - type: Transform @@ -137325,12 +137022,6 @@ entities: - type: Transform pos: -33.5,-55.5 parent: 12 - - uid: 31113 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -64.5,-54.5 - parent: 12 - uid: 31439 components: - type: Transform @@ -138275,18 +137966,6 @@ entities: - type: Transform pos: 11.5,3.5 parent: 12 - - uid: 1613 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,63.5 - parent: 12 - - uid: 1764 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -38.5,62.5 - parent: 12 - uid: 1885 components: - type: Transform @@ -141765,6 +141444,11 @@ entities: - type: Transform pos: -54.5,75.5 parent: 12 + - uid: 13322 + components: + - type: Transform + pos: -57.5,-56.5 + parent: 12 - uid: 13991 components: - type: Transform @@ -143096,6 +142780,11 @@ entities: - type: Transform pos: -59.5,35.5 parent: 12 + - uid: 17614 + components: + - type: Transform + pos: -55.5,-56.5 + parent: 12 - uid: 17811 components: - type: Transform @@ -143125,11 +142814,6 @@ entities: rot: 1.5707963267948966 rad pos: -44.5,48.5 parent: 12 - - uid: 18315 - components: - - type: Transform - pos: -61.5,-57.5 - parent: 12 - uid: 18561 components: - type: Transform @@ -143744,12 +143428,6 @@ entities: - type: Transform pos: -26.5,74.5 parent: 12 - - uid: 25452 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,62.5 - parent: 12 - uid: 25489 components: - type: Transform @@ -144105,76 +143783,16 @@ entities: - type: Transform pos: -22.5,3.5 parent: 12 - - uid: 26291 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -35.5,70.5 - parent: 12 - - uid: 26293 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -33.5,70.5 - parent: 12 - - uid: 26298 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -36.5,70.5 - parent: 12 - uid: 26303 components: - type: Transform pos: -25.5,62.5 parent: 12 - - uid: 26304 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -32.5,70.5 - parent: 12 - - uid: 26305 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -31.5,70.5 - parent: 12 - - uid: 26306 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -37.5,70.5 - parent: 12 - - uid: 26307 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,69.5 - parent: 12 - uid: 26322 components: - type: Transform pos: -0.5,-31.5 parent: 12 - - uid: 26377 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,65.5 - parent: 12 - - uid: 26378 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,66.5 - parent: 12 - - uid: 26379 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,68.5 - parent: 12 - uid: 26396 components: - type: Transform @@ -144195,12 +143813,6 @@ entities: - type: Transform pos: 24.5,90.5 parent: 12 - - uid: 26413 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,67.5 - parent: 12 - uid: 26420 components: - type: Transform @@ -144258,12 +143870,6 @@ entities: - type: Transform pos: 14.5,-13.5 parent: 12 - - uid: 26610 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,70.5 - parent: 12 - uid: 26620 components: - type: Transform @@ -144321,18 +143927,6 @@ entities: - type: Transform pos: 29.5,-29.5 parent: 12 - - uid: 26758 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -38.5,70.5 - parent: 12 - - uid: 26866 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -39.5,64.5 - parent: 12 - uid: 26945 components: - type: Transform @@ -144538,12 +144132,6 @@ entities: rot: 1.5707963267948966 rad pos: -37.5,-70.5 parent: 12 - - uid: 27910 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -34.5,70.5 - parent: 12 - uid: 27915 components: - type: Transform @@ -145100,11 +144688,6 @@ entities: rot: -1.5707963267948966 rad pos: -25.5,-40.5 parent: 12 - - uid: 29978 - components: - - type: Transform - pos: -59.5,-57.5 - parent: 12 - uid: 29998 components: - type: Transform @@ -145720,6 +145303,11 @@ entities: rot: 3.141592653589793 rad pos: -2.5,76.5 parent: 12 + - uid: 30491 + components: + - type: Transform + pos: -49.5,-56.5 + parent: 12 - uid: 30509 components: - type: Transform @@ -145760,6 +145348,16 @@ entities: - type: Transform pos: -28.5,-60.5 parent: 12 + - uid: 30547 + components: + - type: Transform + pos: -39.5,66.5 + parent: 12 + - uid: 30549 + components: + - type: Transform + pos: -38.5,70.5 + parent: 12 - uid: 30555 components: - type: Transform @@ -145790,17 +145388,62 @@ entities: - type: Transform pos: -29.5,-52.5 parent: 12 + - uid: 30572 + components: + - type: Transform + pos: -39.5,67.5 + parent: 12 - uid: 30580 components: - type: Transform rot: 3.141592653589793 rad pos: -27.5,-56.5 parent: 12 + - uid: 30582 + components: + - type: Transform + pos: -35.5,70.5 + parent: 12 - uid: 30584 components: - type: Transform pos: -29.5,-60.5 parent: 12 + - uid: 30834 + components: + - type: Transform + pos: -37.5,70.5 + parent: 12 + - uid: 30875 + components: + - type: Transform + pos: -34.5,70.5 + parent: 12 + - uid: 30965 + components: + - type: Transform + pos: -39.5,70.5 + parent: 12 + - uid: 30966 + components: + - type: Transform + pos: -38.5,62.5 + parent: 12 + - uid: 30967 + components: + - type: Transform + pos: -33.5,70.5 + parent: 12 + - uid: 30968 + components: + - type: Transform + pos: -39.5,69.5 + parent: 12 + - uid: 30969 + components: + - type: Transform + pos: -39.5,65.5 + parent: 12 - uid: 30971 components: - type: Transform @@ -145831,76 +145474,50 @@ entities: - type: Transform pos: -54.5,-46.5 parent: 12 - - uid: 31029 - components: - - type: Transform - pos: -26.5,-58.5 - parent: 12 - - uid: 31076 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -40.5,-56.5 - parent: 12 - - uid: 31077 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -41.5,-56.5 - parent: 12 - - uid: 31078 + - uid: 31000 components: - type: Transform - rot: 3.141592653589793 rad - pos: -42.5,-56.5 + pos: -39.5,64.5 parent: 12 - - uid: 31079 + - uid: 31001 components: - type: Transform - rot: 3.141592653589793 rad - pos: -43.5,-56.5 + pos: -39.5,62.5 parent: 12 - - uid: 31080 + - uid: 31002 components: - type: Transform - rot: 3.141592653589793 rad - pos: -44.5,-56.5 + pos: -39.5,63.5 parent: 12 - - uid: 31081 + - uid: 31008 components: - type: Transform - rot: 3.141592653589793 rad - pos: -45.5,-56.5 + pos: -31.5,70.5 parent: 12 - - uid: 31082 + - uid: 31013 components: - type: Transform - rot: 3.141592653589793 rad - pos: -46.5,-56.5 + pos: -32.5,70.5 parent: 12 - - uid: 31083 + - uid: 31015 components: - type: Transform - rot: 3.141592653589793 rad - pos: -50.5,-56.5 + pos: -39.5,68.5 parent: 12 - - uid: 31084 + - uid: 31016 components: - type: Transform - rot: 3.141592653589793 rad - pos: -51.5,-53.5 + pos: -36.5,70.5 parent: 12 - - uid: 31085 + - uid: 31021 components: - type: Transform - rot: 3.141592653589793 rad pos: -61.5,-46.5 parent: 12 - - uid: 31086 + - uid: 31029 components: - type: Transform - rot: 3.141592653589793 rad - pos: -61.5,-45.5 + pos: -26.5,-58.5 parent: 12 - uid: 31087 components: @@ -145956,16 +145573,6 @@ entities: rot: 3.141592653589793 rad pos: -56.5,-41.5 parent: 12 - - uid: 31101 - components: - - type: Transform - pos: -53.5,-56.5 - parent: 12 - - uid: 31102 - components: - - type: Transform - pos: -49.5,-56.5 - parent: 12 - uid: 31163 components: - type: Transform @@ -146086,11 +145693,6 @@ entities: - type: Transform pos: 41.5,-18.5 parent: 12 - - uid: 32121 - components: - - type: Transform - pos: -63.5,-54.5 - parent: 12 - proto: GrilleBroken entities: - uid: 3719 @@ -146113,6 +145715,11 @@ entities: - type: Transform pos: -1.5,15.5 parent: 12 + - uid: 11397 + components: + - type: Transform + pos: -54.5,-56.5 + parent: 12 - uid: 12027 components: - type: Transform @@ -146123,11 +145730,26 @@ entities: - type: Transform pos: 48.5,-2.5 parent: 12 + - uid: 18315 + components: + - type: Transform + pos: -42.5,-59.5 + parent: 12 + - uid: 23167 + components: + - type: Transform + pos: -56.5,-56.5 + parent: 12 - uid: 28921 components: - type: Transform pos: 32.5,10.5 parent: 12 + - uid: 29064 + components: + - type: Transform + pos: -58.5,-56.5 + parent: 12 - uid: 30492 components: - type: Transform @@ -146153,51 +145775,25 @@ entities: - type: Transform pos: -29.5,-55.5 parent: 12 - - uid: 31096 + - uid: 31022 components: - type: Transform - rot: 3.141592653589793 rad pos: -61.5,-47.5 parent: 12 - - uid: 31097 - components: - - type: Transform - pos: -61.5,-49.5 - parent: 12 - - uid: 31098 - components: - - type: Transform - pos: -54.5,-56.5 - parent: 12 - - uid: 31099 - components: - - type: Transform - pos: -53.5,-55.5 - parent: 12 - - uid: 31100 - components: - - type: Transform - pos: -52.5,-56.5 - parent: 12 - - uid: 31103 - components: - - type: Transform - pos: -47.5,-56.5 - parent: 12 - - uid: 31104 + - uid: 31023 components: - type: Transform - pos: -51.5,-56.5 + pos: -59.5,-56.5 parent: 12 - - uid: 31105 + - uid: 31028 components: - type: Transform - pos: -48.5,-56.5 + pos: -50.5,-56.5 parent: 12 - - uid: 31106 + - uid: 31033 components: - type: Transform - pos: -52.5,-53.5 + pos: -61.5,-45.5 parent: 12 - proto: GrilleDiagonal entities: @@ -149144,11 +148740,6 @@ entities: - type: Transform pos: 53.5,25.5 parent: 12 - - uid: 29064 - components: - - type: Transform - pos: -62.5,-54.5 - parent: 12 - proto: MagazinePistolSubMachineGunTopMounted entities: - uid: 27841 @@ -149752,11 +149343,6 @@ entities: parent: 12 - proto: Mattress entities: - - uid: 29008 - components: - - type: Transform - pos: -61.5,-52.5 - parent: 12 - uid: 29146 components: - type: Transform @@ -150011,7 +149597,7 @@ entities: - uid: 32188 components: - type: Transform - pos: -63.506554,-50.71072 + pos: -50.514328,-53.502277 parent: 12 - proto: Mirror entities: @@ -151530,7 +151116,7 @@ entities: - uid: 13335 components: - type: Transform - pos: 56.52551,36.441574 + pos: 56.98374,36.64035 parent: 12 - uid: 13622 components: @@ -152095,14 +151681,6 @@ entities: rot: -12.566370614359172 rad pos: -11.731569,-12.627775 parent: 12 -- proto: PlushieRatvar - entities: - - uid: 11397 - components: - - type: Transform - rot: -62.83185307179591 rad - pos: -64.51839,-52.561867 - parent: 12 - proto: PlushieSharkBlue entities: - uid: 4060 @@ -152213,14 +151791,6 @@ entities: - type: Transform pos: 3.5,-47.5 parent: 12 - - uid: 32132 - components: - - type: Transform - anchored: True - pos: -61.5,-55.5 - parent: 12 - - type: Physics - bodyType: Static - proto: PortableGeneratorJrPacmanMachineCircuitboard entities: - uid: 5347 @@ -152372,18 +151942,6 @@ entities: - type: Transform pos: -3.5,-64.5 parent: 12 - - uid: 32145 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -59.5,-55.5 - parent: 12 - - uid: 32146 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -59.5,-58.5 - parent: 12 - proto: PosterContrabandAtmosiaDeclarationIndependence entities: - uid: 23 @@ -155084,18 +154642,6 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,65.5 parent: 12 - - uid: 17288 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -49.5,20.5 - parent: 12 - - uid: 17289 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -53.5,20.5 - parent: 12 - uid: 17333 components: - type: Transform @@ -155454,6 +155000,23 @@ entities: rot: -1.5707963267948966 rad pos: -4.5,49.5 parent: 12 + - uid: 26298 + components: + - type: Transform + pos: 45.5,-44.5 + parent: 12 + - uid: 26377 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -55.5,-49.5 + parent: 12 + - uid: 26378 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -23.5,-66.5 + parent: 12 - uid: 26408 components: - type: Transform @@ -155547,6 +155110,18 @@ entities: rot: -1.5707963267948966 rad pos: 22.5,-7.5 parent: 12 + - uid: 28825 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -56.5,47.5 + parent: 12 + - uid: 29008 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 32.5,69.5 + parent: 12 - uid: 29077 components: - type: Transform @@ -155579,6 +155154,11 @@ entities: rot: 3.141592653589793 rad pos: 56.5,60.5 parent: 12 + - uid: 31027 + components: + - type: Transform + pos: -50.5,22.5 + parent: 12 - uid: 31472 components: - type: Transform @@ -156707,6 +156287,12 @@ entities: rot: -1.5707963267948966 rad pos: 33.5,15.5 parent: 12 + - uid: 31025 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -52.5,17.5 + parent: 12 - uid: 31126 components: - type: Transform @@ -156765,12 +156351,6 @@ entities: powerLoad: 60 - type: DamageOnInteract isDamageActive: False - - uid: 32147 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -61.5,-55.5 - parent: 12 - proto: Protolathe entities: - uid: 2321 @@ -157546,6 +157126,11 @@ entities: - type: Transform pos: -17.5,-61.5 parent: 12 + - uid: 31017 + components: + - type: Transform + pos: -53.5,-47.5 + parent: 12 - uid: 31261 components: - type: Transform @@ -157567,11 +157152,6 @@ entities: rot: 1.5707963267948966 rad pos: 55.5,64.5 parent: 12 - - uid: 32173 - components: - - type: Transform - pos: -62.5,-52.5 - parent: 12 - proto: RadioHandheld entities: - uid: 9805 @@ -159761,11 +159341,6 @@ entities: - type: Transform pos: 45.5,62.5 parent: 12 - - uid: 32193 - components: - - type: Transform - pos: -60.5,-57.5 - parent: 12 - proto: RandomVending entities: - uid: 9099 @@ -160024,20 +159599,6 @@ entities: rot: -1.5707963267948966 rad pos: 37.5,14.5 parent: 12 -- proto: ReinforcedGirder - entities: - - uid: 4769 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -54.5,-52.5 - parent: 12 - - uid: 31161 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -55.5,-49.5 - parent: 12 - proto: ReinforcedPlasmaWindow entities: - uid: 501 @@ -165614,16 +165175,6 @@ entities: rot: 3.141592653589793 rad pos: 37.5,-13.5 parent: 12 - - uid: 32117 - components: - - type: Transform - pos: -59.5,-57.5 - parent: 12 - - uid: 32186 - components: - - type: Transform - pos: -63.5,-54.5 - parent: 12 - proto: ReinforcedWindowDiagonal entities: - uid: 19673 @@ -166130,7 +165681,7 @@ entities: - uid: 13323 components: - type: Transform - pos: 44.037434,29.555851 + pos: 43.473324,29.66118 parent: 12 - uid: 23679 components: @@ -166280,6 +165831,11 @@ entities: rot: -43.98229715025713 rad pos: 57.301918,-5.261206 parent: 12 + - uid: 31043 + components: + - type: Transform + pos: 59.707104,12.565823 + parent: 12 - proto: SheetPlastic entities: - uid: 1947 @@ -168709,13 +168265,6 @@ entities: rot: 1.5707963267948966 rad pos: 29.5,49.5 parent: 12 -- proto: SolarAssembly - entities: - - uid: 31075 - components: - - type: Transform - pos: -54.5,-53.5 - parent: 12 - proto: SolarControlComputerCircuitboard entities: - uid: 8834 @@ -169349,12 +168898,6 @@ entities: rot: 1.5707963267948966 rad pos: -28.5,-68.5 parent: 12 - - uid: 10823 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -55.5,-58.5 - parent: 12 - uid: 10953 components: - type: Transform @@ -169959,6 +169502,12 @@ entities: rot: 1.5707963267948966 rad pos: -39.5,-62.5 parent: 12 + - uid: 25581 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -56.5,-52.5 + parent: 12 - uid: 27495 components: - type: Transform @@ -170127,6 +169676,12 @@ entities: rot: 1.5707963267948966 rad pos: -40.5,-62.5 parent: 12 + - uid: 30181 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -56.5,-54.5 + parent: 12 - uid: 31009 components: - type: Transform @@ -170157,32 +169712,11 @@ entities: rot: -1.5707963267948966 rad pos: -58.5,-43.5 parent: 12 - - uid: 31016 + - uid: 31040 components: - type: Transform rot: -1.5707963267948966 rad - pos: -58.5,-52.5 - parent: 12 - - uid: 32148 - components: - - type: Transform - pos: -65.5,-57.5 - parent: 12 - - uid: 32150 - components: - - type: Transform - pos: -65.5,-54.5 - parent: 12 - - uid: 32151 - components: - - type: Transform - pos: -65.5,-56.5 - parent: 12 - - uid: 32183 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -57.5,-58.5 + pos: -56.5,-43.5 parent: 12 - proto: SolarPanelBroken entities: @@ -170191,6 +169725,12 @@ entities: - type: Transform pos: -38.5,-66.5 parent: 12 + - uid: 10821 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -56.5,-53.5 + parent: 12 - uid: 24256 components: - type: Transform @@ -170216,29 +169756,17 @@ entities: - type: Transform pos: -30.5,-68.5 parent: 12 - - uid: 30875 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -58.5,-56.5 - parent: 12 - - uid: 31000 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -56.5,-54.5 - parent: 12 - - uid: 31001 + - uid: 30306 components: - type: Transform rot: -1.5707963267948966 rad - pos: -58.5,-53.5 + pos: -58.5,-44.5 parent: 12 - - uid: 31002 + - uid: 30437 components: - type: Transform rot: -1.5707963267948966 rad - pos: -56.5,-56.5 + pos: -58.5,-54.5 parent: 12 - uid: 31003 components: @@ -170270,22 +169798,11 @@ entities: rot: -1.5707963267948966 rad pos: -58.5,-46.5 parent: 12 - - uid: 31008 + - uid: 31037 components: - type: Transform rot: -1.5707963267948966 rad - pos: -56.5,-43.5 - parent: 12 - - uid: 32149 - components: - - type: Transform - pos: -65.5,-55.5 - parent: 12 - - uid: 32184 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -56.5,-58.5 + pos: -58.5,-52.5 parent: 12 - proto: SolarTracker entities: @@ -170309,10 +169826,12 @@ entities: - type: Transform pos: -25.5,-69.5 parent: 12 - - uid: 31017 +- proto: SolarTrackerElectronics + entities: + - uid: 13308 components: - type: Transform - pos: -61.5,-50.5 + pos: -53.441116,-47.48533 parent: 12 - proto: SolidSecretDoor entities: @@ -171368,11 +170887,6 @@ entities: rot: -12.566370614359172 rad pos: -8.433574,-66.54101 parent: 12 - - uid: 32143 - components: - - type: Transform - pos: -62.424545,-53.537132 - parent: 12 - proto: Spoon entities: - uid: 23545 @@ -172741,11 +172255,6 @@ entities: - type: Transform pos: -36.5,-50.5 parent: 12 - - uid: 32116 - components: - - type: Transform - pos: -62.5,-55.5 - parent: 12 - proto: SuitStorageCaptain entities: - uid: 18757 @@ -173168,17 +172677,6 @@ entities: - SurveillanceCameraEngineering nameSet: True id: Atmos lockers/engi hallway - - uid: 7157 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 1.5,17.5 - parent: 12 - - type: SurveillanceCamera - setupAvailableNetworks: - - SurveillanceCameraEngineering - nameSet: True - id: TEG West - uid: 9821 components: - type: Transform @@ -173447,17 +172945,6 @@ entities: - SurveillanceCameraEngineering nameSet: True id: Southeast solars 2 - - uid: 28825 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -52.5,-47.5 - parent: 12 - - type: SurveillanceCamera - setupAvailableNetworks: - - SurveillanceCameraEngineering - nameSet: True - id: Southwest solars - uid: 31882 components: - type: Transform @@ -179075,7 +178562,7 @@ entities: - uid: 12618 components: - type: Transform - pos: 57.698708,36.671814 + pos: 57.535824,36.64035 parent: 12 - uid: 23411 components: @@ -179351,11 +178838,6 @@ entities: - type: Transform pos: -29.544153,-55.516808 parent: 12 - - uid: 32190 - components: - - type: Transform - pos: -60.494305,-59.53066 - parent: 12 - proto: TrashBananaPeel entities: - uid: 9367 @@ -193563,11 +193045,6 @@ entities: rot: -1.5707963267948966 rad pos: 36.5,22.5 parent: 12 - - uid: 10822 - components: - - type: Transform - pos: -59.5,-58.5 - parent: 12 - uid: 10887 components: - type: Transform @@ -197492,11 +196969,6 @@ entities: - type: Transform pos: -3.5,-48.5 parent: 12 - - uid: 23167 - components: - - type: Transform - pos: -59.5,-55.5 - parent: 12 - uid: 23174 components: - type: Transform @@ -198799,21 +198271,6 @@ entities: rot: 3.141592653589793 rad pos: -27.5,-55.5 parent: 12 - - uid: 31028 - components: - - type: Transform - pos: -63.5,-55.5 - parent: 12 - - uid: 31030 - components: - - type: Transform - pos: -61.5,-56.5 - parent: 12 - - uid: 31050 - components: - - type: Transform - pos: -63.5,-53.5 - parent: 12 - uid: 31180 components: - type: Transform @@ -199070,11 +198527,6 @@ entities: rot: 3.141592653589793 rad pos: -45.5,69.5 parent: 12 - - uid: 9631 - components: - - type: Transform - pos: -60.5,-51.5 - parent: 12 - uid: 9671 components: - type: Transform @@ -199086,16 +198538,6 @@ entities: - type: Transform pos: 46.5,-37.5 parent: 12 - - uid: 10820 - components: - - type: Transform - pos: -59.5,-52.5 - parent: 12 - - uid: 11027 - components: - - type: Transform - pos: -59.5,-56.5 - parent: 12 - uid: 11332 components: - type: Transform @@ -200229,11 +199671,6 @@ entities: - type: Transform pos: -27.5,-58.5 parent: 12 - - uid: 31021 - components: - - type: Transform - pos: -62.5,-56.5 - parent: 12 - uid: 31044 components: - type: Transform @@ -200296,17 +199733,6 @@ entities: rot: 3.141592653589793 rad pos: 4.5,-62.5 parent: 12 - - uid: 32120 - components: - - type: Transform - pos: -61.5,-58.5 - parent: 12 - - uid: 32164 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -59.5,-54.5 - parent: 12 - proto: WallWood entities: - uid: 11826 @@ -202765,11 +202191,6 @@ entities: - type: Transform pos: 41.5,-18.5 parent: 12 - - uid: 32118 - components: - - type: Transform - pos: -61.5,-57.5 - parent: 12 - proto: WindowDirectional entities: - uid: 7837 From 8257dc87decd462575a2dccec240aa1bf5c96512 Mon Sep 17 00:00:00 2001 From: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com> Date: Fri, 8 Nov 2024 10:01:57 +1200 Subject: [PATCH 097/112] Meta map: remove arrivals chair, changed maints shotgun to beanbag rounds (#32981) remove chair + changed maints db to rubber --- Resources/Maps/meta.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/Resources/Maps/meta.yml b/Resources/Maps/meta.yml index 1f210e438ad..93a6bc31c42 100644 --- a/Resources/Maps/meta.yml +++ b/Resources/Maps/meta.yml @@ -10880,7 +10880,7 @@ entities: pos: -42.5,29.5 parent: 5350 - type: Door - secondsUntilStateChange: -5745.716 + secondsUntilStateChange: -5834.8745 state: Opening - type: DeviceLinkSink invokeCounter: 2 @@ -56106,11 +56106,6 @@ entities: rot: -1.5707963267948966 rad pos: -73.5,7.5 parent: 5350 - - uid: 6164 - components: - - type: Transform - pos: -71.5,-8.5 - parent: 5350 - uid: 6165 components: - type: Transform From d13765fa5cbfc6cf226f936b2407729b6126a6e2 Mon Sep 17 00:00:00 2001 From: PopGamer46 Date: Thu, 7 Nov 2024 23:02:24 +0100 Subject: [PATCH 098/112] Fixes Lambordeere bolt buttons not being connected (#33065) * fix * oops, used savemap instead of savegrid --- Resources/Maps/Shuttles/ShuttleEvent/lambordeere.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Resources/Maps/Shuttles/ShuttleEvent/lambordeere.yml b/Resources/Maps/Shuttles/ShuttleEvent/lambordeere.yml index 56624fcd3b8..fcb40acdf45 100644 --- a/Resources/Maps/Shuttles/ShuttleEvent/lambordeere.yml +++ b/Resources/Maps/Shuttles/ShuttleEvent/lambordeere.yml @@ -1206,6 +1206,10 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,5.5 parent: 1 + - type: DeviceLinkSource + linkedPorts: + 50: + - Pressed: DoorBolt - uid: 199 components: - type: MetaData @@ -1214,6 +1218,10 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,2.5 parent: 1 + - type: DeviceLinkSource + linkedPorts: + 82: + - Pressed: DoorBolt - proto: SMESBasic entities: - uid: 65 From 03723afee68483b59bf88d4362bc76cc8c8147c6 Mon Sep 17 00:00:00 2001 From: PJBot Date: Thu, 7 Nov 2024 22:03:35 +0000 Subject: [PATCH 099/112] 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 25dd61eb683..34a2d143584 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,15 +1,4 @@ Entries: -- author: Ubaser - changes: - - message: Mantles are now available in loadouts, requiring 20 hours of that head - of department's time. - type: Add - - message: Mantles are no longer spawned in dressers or able to be printed at uniform - lathes. - type: Remove - id: 7098 - time: '2024-08-12T07:14:46.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30929 - author: LeoSantich changes: - message: Updated 'narsie' and 'ratvar' to 'Nar'Sie' and 'Ratvar' in randomly generated @@ -3953,3 +3942,10 @@ id: 7597 time: '2024-11-06T14:39:16.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/31292 +- author: PopGamer46 + changes: + - message: Fixed Lambordeere (botany shuttle) bolt buttons not being connected + type: Fix + id: 7598 + time: '2024-11-07T22:02:25.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33065 From 9ee47b927b59d709dd905dbf27bd056861854e9a Mon Sep 17 00:00:00 2001 From: scrivoy <179060466+scrivoy@users.noreply.github.com> Date: Fri, 8 Nov 2024 00:18:12 +0100 Subject: [PATCH 100/112] Core Station: Telecoms air alarm connection to atmos devices (#33214) link air alarm in coms room --- Resources/Maps/core.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Resources/Maps/core.yml b/Resources/Maps/core.yml index 2198854499e..119279ba2d0 100644 --- a/Resources/Maps/core.yml +++ b/Resources/Maps/core.yml @@ -12942,6 +12942,10 @@ entities: rot: -1.5707963267948966 rad pos: 30.5,-42.5 parent: 2 + - type: DeviceList + devices: + - 20006 + - 20005 - uid: 8436 components: - type: Transform @@ -95461,6 +95465,11 @@ entities: rot: 1.5707963267948966 rad pos: 26.5,-42.5 parent: 2 + - type: DeviceNetwork + configurators: + - invalid + deviceLists: + - 8434 - type: AtmosPipeColor color: '#0335FCFF' - uid: 20037 @@ -96662,6 +96671,11 @@ entities: rot: 1.5707963267948966 rad pos: 26.5,-45.5 parent: 2 + - type: DeviceNetwork + configurators: + - invalid + deviceLists: + - 8434 - type: AtmosPipeColor color: '#FF1212FF' - uid: 20038 From 6a1d631b14b62f44c4492725bc1a695f6914bb01 Mon Sep 17 00:00:00 2001 From: Emisse <99158783+Emisse@users.noreply.github.com> Date: Thu, 7 Nov 2024 16:23:28 -0700 Subject: [PATCH 101/112] fix invalids core (#33215) fix invalids --- Resources/Maps/core.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Resources/Maps/core.yml b/Resources/Maps/core.yml index 119279ba2d0..755badd7574 100644 --- a/Resources/Maps/core.yml +++ b/Resources/Maps/core.yml @@ -95466,8 +95466,6 @@ entities: pos: 26.5,-42.5 parent: 2 - type: DeviceNetwork - configurators: - - invalid deviceLists: - 8434 - type: AtmosPipeColor @@ -96672,8 +96670,6 @@ entities: pos: 26.5,-45.5 parent: 2 - type: DeviceNetwork - configurators: - - invalid deviceLists: - 8434 - type: AtmosPipeColor From 261c18f764b9ad750f2ef0227360cbf9f1d83846 Mon Sep 17 00:00:00 2001 From: SolStar <44028047+ewokswagger@users.noreply.github.com> Date: Thu, 7 Nov 2024 19:29:03 -0500 Subject: [PATCH 102/112] Fix research disk crash (#33205) * Fix reserach disk crash * remove extra whitespace * removed args.handled where args are not handled --- Content.Server/Research/Disk/ResearchDiskSystem.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Content.Server/Research/Disk/ResearchDiskSystem.cs b/Content.Server/Research/Disk/ResearchDiskSystem.cs index d32c49ce6fe..4d65c19f6e2 100644 --- a/Content.Server/Research/Disk/ResearchDiskSystem.cs +++ b/Content.Server/Research/Disk/ResearchDiskSystem.cs @@ -31,6 +31,7 @@ private void OnAfterInteract(EntityUid uid, ResearchDiskComponent component, Aft _research.ModifyServerPoints(args.Target.Value, component.Points, server); _popupSystem.PopupEntity(Loc.GetString("research-disk-inserted", ("points", component.Points)), args.Target.Value, args.User); EntityManager.QueueDeleteEntity(uid); + args.Handled = true; } private void OnMapInit(EntityUid uid, ResearchDiskComponent component, MapInitEvent args) From 012855475e38d1a05df6263f356e0d0805aa7237 Mon Sep 17 00:00:00 2001 From: FN <37689533+FireNameFN@users.noreply.github.com> Date: Fri, 8 Nov 2024 09:59:05 +0700 Subject: [PATCH 103/112] Fix cursed mask bug (#33014) * One line fix * Removed redundant using * Allocation improvement --- Content.Server/Clothing/Systems/CursedMaskSystem.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Content.Server/Clothing/Systems/CursedMaskSystem.cs b/Content.Server/Clothing/Systems/CursedMaskSystem.cs index 825e85e2c60..86d4e801a8b 100644 --- a/Content.Server/Clothing/Systems/CursedMaskSystem.cs +++ b/Content.Server/Clothing/Systems/CursedMaskSystem.cs @@ -51,7 +51,8 @@ protected override void TryTakeover(Entity ent, EntityUid w } var npcFaction = EnsureComp(wearer); - ent.Comp.OldFactions = npcFaction.Factions; + ent.Comp.OldFactions.Clear(); + ent.Comp.OldFactions.UnionWith(npcFaction.Factions); _npcFaction.ClearFactions((wearer, npcFaction), false); _npcFaction.AddFaction((wearer, npcFaction), ent.Comp.CursedMaskFaction); From 667daa168f9ae9e6c63dfed4714baa89f24a3bfd Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Fri, 8 Nov 2024 09:38:41 +0000 Subject: [PATCH 104/112] pass Actor to cartridge messages (#33210) * pass Actor to cartridge messages * NonSerialized gaming --------- Co-authored-by: deltanedas <@deltanedas:kde.org> --- Content.Server/CartridgeLoader/CartridgeLoaderSystem.cs | 1 + Content.Shared/CartridgeLoader/CartridgeUiMessage.cs | 3 +++ 2 files changed, 4 insertions(+) diff --git a/Content.Server/CartridgeLoader/CartridgeLoaderSystem.cs b/Content.Server/CartridgeLoader/CartridgeLoaderSystem.cs index 7caec6150ed..98df7e2c503 100644 --- a/Content.Server/CartridgeLoader/CartridgeLoaderSystem.cs +++ b/Content.Server/CartridgeLoader/CartridgeLoaderSystem.cs @@ -428,6 +428,7 @@ private void OnUiMessage(EntityUid uid, CartridgeLoaderComponent component, Cart { var cartridgeEvent = args.MessageEvent; cartridgeEvent.LoaderUid = GetNetEntity(uid); + cartridgeEvent.Actor = args.Actor; RelayEvent(component, cartridgeEvent, true); } diff --git a/Content.Shared/CartridgeLoader/CartridgeUiMessage.cs b/Content.Shared/CartridgeLoader/CartridgeUiMessage.cs index 1155030f938..31ac8bd2d06 100644 --- a/Content.Shared/CartridgeLoader/CartridgeUiMessage.cs +++ b/Content.Shared/CartridgeLoader/CartridgeUiMessage.cs @@ -17,4 +17,7 @@ public CartridgeUiMessage(CartridgeMessageEvent messageEvent) public abstract class CartridgeMessageEvent : EntityEventArgs { public NetEntity LoaderUid; + + [NonSerialized] + public EntityUid Actor; } From 80e148c265dc8602f50e3941dbd94bb396a1f5b5 Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Fri, 8 Nov 2024 11:15:41 +0000 Subject: [PATCH 105/112] cham projector fixes/rewrite (#27111) * cant disguise to thing in a container * copy cigarette visualiser * prevent aghost throwing an error * make disguises die in space * fuck it rewrite it to not use polymorph * fix action troll * oop * add vebr * add access to the components * 2/3 * fix * relay damage from disguise to user * fix integrity * :trollface: * :trollface: * m * kill integrity * fix a bug * review * remove them from component * relay flash effect to the disguise * fix icon being weird * change method since multiple systems cant handle same network event * :trollface: * actually network Disguise real --------- Co-authored-by: deltanedas <@deltanedas:kde.org> --- .../Effects/ColorFlashEffectSystem.cs | 10 + .../Systems/ChameleonProjectorSystem.cs | 30 +++ .../Systems/ChameleonProjectorSystem.cs | 96 +------- .../Components/ChameleonDisguiseComponent.cs | 16 +- .../Components/ChameleonDisguisedComponent.cs | 25 ++ .../Components/ChameleonProjectorComponent.cs | 19 +- .../Systems/SharedChameleonProjectorSystem.cs | 227 ++++++++++++++++-- .../chameleon-projector.ftl | 2 + .../Objects/Devices/chameleon_projector.yml | 24 +- 9 files changed, 310 insertions(+), 139 deletions(-) create mode 100644 Content.Shared/Polymorph/Components/ChameleonDisguisedComponent.cs diff --git a/Content.Client/Effects/ColorFlashEffectSystem.cs b/Content.Client/Effects/ColorFlashEffectSystem.cs index 956c9465244..b584aa9ad1b 100644 --- a/Content.Client/Effects/ColorFlashEffectSystem.cs +++ b/Content.Client/Effects/ColorFlashEffectSystem.cs @@ -124,6 +124,10 @@ private void OnColorFlashEffect(ColorFlashEffectEvent ev) continue; } + var targetEv = new GetFlashEffectTargetEvent(ent); + RaiseLocalEvent(ent, ref targetEv); + ent = targetEv.Target; + EnsureComp(ent, out comp); comp.NetSyncEnabled = false; comp.Color = sprite.Color; @@ -132,3 +136,9 @@ private void OnColorFlashEffect(ColorFlashEffectEvent ev) } } } + +/// +/// Raised on an entity to change the target for a color flash effect. +/// +[ByRefEvent] +public record struct GetFlashEffectTargetEvent(EntityUid Target); diff --git a/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs b/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs index 5ba4878c6d4..8ba09c66170 100644 --- a/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs +++ b/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs @@ -1,7 +1,10 @@ +using Content.Client.Effects; +using Content.Client.Smoking; using Content.Shared.Chemistry.Components; using Content.Shared.Polymorph.Components; using Content.Shared.Polymorph.Systems; using Robust.Client.GameObjects; +using Robust.Shared.Player; namespace Content.Client.Polymorph.Systems; @@ -10,14 +13,20 @@ public sealed class ChameleonProjectorSystem : SharedChameleonProjectorSystem [Dependency] private readonly SharedAppearanceSystem _appearance = default!; private EntityQuery _appearanceQuery; + private EntityQuery _spriteQuery; public override void Initialize() { base.Initialize(); _appearanceQuery = GetEntityQuery(); + _spriteQuery = GetEntityQuery(); SubscribeLocalEvent(OnHandleState); + + SubscribeLocalEvent(OnStartup); + SubscribeLocalEvent(OnShutdown); + SubscribeLocalEvent(OnGetFlashEffectTargetEvent); } private void OnHandleState(Entity ent, ref AfterAutoHandleStateEvent args) @@ -25,9 +34,30 @@ private void OnHandleState(Entity ent, ref AfterAuto CopyComp(ent); CopyComp(ent); CopyComp(ent); + CopyComp(ent); // reload appearance to hopefully prevent any invisible layers if (_appearanceQuery.TryComp(ent, out var appearance)) _appearance.QueueUpdate(ent, appearance); } + + private void OnStartup(Entity ent, ref ComponentStartup args) + { + if (!_spriteQuery.TryComp(ent, out var sprite)) + return; + + ent.Comp.WasVisible = sprite.Visible; + sprite.Visible = false; + } + + private void OnShutdown(Entity ent, ref ComponentShutdown args) + { + if (_spriteQuery.TryComp(ent, out var sprite)) + sprite.Visible = ent.Comp.WasVisible; + } + + private void OnGetFlashEffectTargetEvent(Entity ent, ref GetFlashEffectTargetEvent args) + { + args.Target = ent.Comp.Disguise; + } } diff --git a/Content.Server/Polymorph/Systems/ChameleonProjectorSystem.cs b/Content.Server/Polymorph/Systems/ChameleonProjectorSystem.cs index 1586973a21e..ab12f2764cf 100644 --- a/Content.Server/Polymorph/Systems/ChameleonProjectorSystem.cs +++ b/Content.Server/Polymorph/Systems/ChameleonProjectorSystem.cs @@ -1,99 +1,5 @@ -using Content.Server.Polymorph.Components; -using Content.Shared.Actions; -using Content.Shared.Construction.Components; -using Content.Shared.Hands; -using Content.Shared.Mobs; -using Content.Shared.Mobs.Components; -using Content.Shared.Mobs.Systems; -using Content.Shared.Polymorph; -using Content.Shared.Polymorph.Components; using Content.Shared.Polymorph.Systems; -using Content.Shared.StatusIcon.Components; -using Robust.Shared.Physics.Components; namespace Content.Server.Polymorph.Systems; -public sealed class ChameleonProjectorSystem : SharedChameleonProjectorSystem -{ - [Dependency] private readonly MetaDataSystem _meta = default!; - [Dependency] private readonly MobThresholdSystem _mobThreshold = default!; - [Dependency] private readonly PolymorphSystem _polymorph = default!; - [Dependency] private readonly SharedActionsSystem _actions = default!; - [Dependency] private readonly SharedAppearanceSystem _appearance = default!; - [Dependency] private readonly SharedTransformSystem _xform = default!; - - public override void Initialize() - { - base.Initialize(); - - SubscribeLocalEvent(OnEquippedHand); - SubscribeLocalEvent(OnToggleNoRot); - SubscribeLocalEvent(OnToggleAnchored); - } - - private void OnEquippedHand(Entity ent, ref GotEquippedHandEvent args) - { - if (!TryComp(ent, out var poly)) - return; - - _polymorph.Revert((ent, poly)); - args.Handled = true; - } - - public override void Disguise(ChameleonProjectorComponent proj, EntityUid user, EntityUid entity) - { - if (_polymorph.PolymorphEntity(user, proj.Polymorph) is not {} disguise) - return; - - // make disguise look real (for simple things at least) - var meta = MetaData(entity); - _meta.SetEntityName(disguise, meta.EntityName); - _meta.SetEntityDescription(disguise, meta.EntityDescription); - - var comp = EnsureComp(disguise); - comp.SourceEntity = entity; - comp.SourceProto = Prototype(entity)?.ID; - Dirty(disguise, comp); - - // no sechud trolling - RemComp(disguise); - - _appearance.CopyData(entity, disguise); - - var mass = CompOrNull(entity)?.Mass ?? 0f; - - // let the disguise die when its taken enough damage, which then transfers to the player - // health is proportional to mass, and capped to not be insane - if (TryComp(disguise, out var thresholds)) - { - // if the player is of flesh and blood, cap max health to theirs - // so that when reverting damage scales 1:1 and not round removing - var playerMax = _mobThreshold.GetThresholdForState(user, MobState.Dead).Float(); - var max = playerMax == 0f ? proj.MaxHealth : Math.Max(proj.MaxHealth, playerMax); - - var health = Math.Clamp(mass, proj.MinHealth, proj.MaxHealth); - _mobThreshold.SetMobStateThreshold(disguise, health, MobState.Critical, thresholds); - _mobThreshold.SetMobStateThreshold(disguise, max, MobState.Dead, thresholds); - } - - // add actions for controlling transform aspects - _actions.AddAction(disguise, proj.NoRotAction); - _actions.AddAction(disguise, proj.AnchorAction); - } - - private void OnToggleNoRot(Entity ent, ref DisguiseToggleNoRotEvent args) - { - var xform = Transform(ent); - xform.NoLocalRotation = !xform.NoLocalRotation; - } - - private void OnToggleAnchored(Entity ent, ref DisguiseToggleAnchoredEvent args) - { - var uid = ent.Owner; - var xform = Transform(uid); - if (xform.Anchored) - _xform.Unanchor(uid, xform); - else - _xform.AnchorEntity((uid, xform)); - } -} +public sealed class ChameleonProjectorSystem : SharedChameleonProjectorSystem; diff --git a/Content.Shared/Polymorph/Components/ChameleonDisguiseComponent.cs b/Content.Shared/Polymorph/Components/ChameleonDisguiseComponent.cs index 2b9fba7b391..282106b8f6f 100644 --- a/Content.Shared/Polymorph/Components/ChameleonDisguiseComponent.cs +++ b/Content.Shared/Polymorph/Components/ChameleonDisguiseComponent.cs @@ -1,3 +1,4 @@ +using Content.Shared.Polymorph.Systems; using Robust.Shared.GameStates; using Robust.Shared.Prototypes; @@ -7,9 +8,22 @@ namespace Content.Shared.Polymorph.Components; /// Component added to disguise entities. /// Used by client to copy over appearance from the disguise's source entity. /// -[RegisterComponent, NetworkedComponent, AutoGenerateComponentState(true)] +[RegisterComponent, NetworkedComponent, Access(typeof(SharedChameleonProjectorSystem))] +[AutoGenerateComponentState(true)] public sealed partial class ChameleonDisguiseComponent : Component { + /// + /// The user of this disguise. + /// + [DataField] + public EntityUid User; + + /// + /// The projector that created this disguise. + /// + [DataField] + public EntityUid Projector; + /// /// The disguise source entity for copying the sprite. /// diff --git a/Content.Shared/Polymorph/Components/ChameleonDisguisedComponent.cs b/Content.Shared/Polymorph/Components/ChameleonDisguisedComponent.cs new file mode 100644 index 00000000000..cd2e26c420a --- /dev/null +++ b/Content.Shared/Polymorph/Components/ChameleonDisguisedComponent.cs @@ -0,0 +1,25 @@ +using Content.Shared.Polymorph.Systems; +using Robust.Shared.GameStates; + +namespace Content.Shared.Polymorph.Components; + +/// +/// Added to a player when they use a chameleon projector. +/// Handles making them invisible and revealing when damaged enough or switching hands. +/// +[RegisterComponent, NetworkedComponent, Access(typeof(SharedChameleonProjectorSystem))] +[AutoGenerateComponentState] +public sealed partial class ChameleonDisguisedComponent : Component +{ + /// + /// The disguise entity parented to the player. + /// + [DataField, AutoNetworkedField] + public EntityUid Disguise; + + /// + /// For client, whether the user's sprite was previously visible or not. + /// + [DataField] + public bool WasVisible; +} diff --git a/Content.Shared/Polymorph/Components/ChameleonProjectorComponent.cs b/Content.Shared/Polymorph/Components/ChameleonProjectorComponent.cs index 239b5236f27..1b289c54fc7 100644 --- a/Content.Shared/Polymorph/Components/ChameleonProjectorComponent.cs +++ b/Content.Shared/Polymorph/Components/ChameleonProjectorComponent.cs @@ -1,4 +1,3 @@ -using Content.Shared.Polymorph; using Content.Shared.Polymorph.Systems; using Content.Shared.Whitelist; using Robust.Shared.Prototypes; @@ -25,22 +24,26 @@ public sealed partial class ChameleonProjectorComponent : Component public EntityWhitelist? Blacklist; /// - /// Polymorph configuration for the disguise entity. + /// Disguise entity to spawn and use. /// [DataField(required: true)] - public PolymorphConfiguration Polymorph = new(); + public EntProtoId DisguiseProto = string.Empty; /// /// Action for disabling your disguise's rotation. /// [DataField] public EntProtoId NoRotAction = "ActionDisguiseNoRot"; + [DataField] + public EntityUid? NoRotActionEntity; /// /// Action for anchoring your disguise in place. /// [DataField] public EntProtoId AnchorAction = "ActionDisguiseAnchor"; + [DataField] + public EntityUid? AnchorActionEntity; /// /// Minimum health to give the disguise. @@ -55,14 +58,8 @@ public sealed partial class ChameleonProjectorComponent : Component public float MaxHealth = 100f; /// - /// Popup shown to the user when they try to disguise as an invalid entity. - /// - [DataField] - public LocId InvalidPopup = "chameleon-projector-invalid"; - - /// - /// Popup shown to the user when they disguise as a valid entity. + /// User currently disguised by this projector, if any /// [DataField] - public LocId SuccessPopup = "chameleon-projector-success"; + public EntityUid? Disguised; } diff --git a/Content.Shared/Polymorph/Systems/SharedChameleonProjectorSystem.cs b/Content.Shared/Polymorph/Systems/SharedChameleonProjectorSystem.cs index 00096b7d409..99737996b08 100644 --- a/Content.Shared/Polymorph/Systems/SharedChameleonProjectorSystem.cs +++ b/Content.Shared/Polymorph/Systems/SharedChameleonProjectorSystem.cs @@ -1,67 +1,264 @@ using Content.Shared.Actions; +using Content.Shared.Coordinates; +using Content.Shared.Damage; +using Content.Shared.Hands; using Content.Shared.Interaction; -using Content.Shared.Polymorph; +using Content.Shared.Item; using Content.Shared.Polymorph.Components; using Content.Shared.Popups; -using Robust.Shared.Serialization.Manager; +using Content.Shared.Storage.Components; +using Content.Shared.Verbs; +using Content.Shared.Whitelist; +using Robust.Shared.Containers; +using Robust.Shared.Network; using Robust.Shared.Prototypes; +using Robust.Shared.Serialization.Manager; using System.Diagnostics.CodeAnalysis; -using Content.Shared.Whitelist; namespace Content.Shared.Polymorph.Systems; /// -/// Handles whitelist/blacklist checking. -/// Actual polymorphing and deactivation is done serverside. +/// Handles disguise validation, disguising and revealing. +/// Most appearance copying is done clientside. /// public abstract class SharedChameleonProjectorSystem : EntitySystem { + [Dependency] private readonly DamageableSystem _damageable = default!; + [Dependency] private readonly EntityWhitelistSystem _whitelist = default!; + [Dependency] private readonly INetManager _net = default!; [Dependency] private readonly IPrototypeManager _proto = default!; [Dependency] private readonly ISerializationManager _serMan = default!; + [Dependency] private readonly MetaDataSystem _meta = default!; + [Dependency] private readonly SharedActionsSystem _actions = default!; + [Dependency] private readonly SharedAppearanceSystem _appearance = default!; + [Dependency] private readonly SharedContainerSystem _container = default!; [Dependency] private readonly SharedPopupSystem _popup = default!; - [Dependency] private readonly EntityWhitelistSystem _whitelistSystem = default!; + [Dependency] private readonly SharedTransformSystem _xform = default!; public override void Initialize() { base.Initialize(); + SubscribeLocalEvent(OnDisguiseInteractHand, before: [typeof(SharedItemSystem)]); + SubscribeLocalEvent(OnDisguiseDamaged); + SubscribeLocalEvent(OnDisguiseInsertAttempt); + SubscribeLocalEvent(OnDisguiseShutdown); + SubscribeLocalEvent(OnInteract); + SubscribeLocalEvent>(OnGetVerbs); + SubscribeLocalEvent(OnToggleNoRot); + SubscribeLocalEvent(OnToggleAnchored); + SubscribeLocalEvent(OnDeselected); + SubscribeLocalEvent(OnUnequipped); + SubscribeLocalEvent(OnProjectorShutdown); + } + + #region Disguise entity + + private void OnDisguiseInteractHand(Entity ent, ref InteractHandEvent args) + { + TryReveal(ent.Comp.User); + args.Handled = true; } + private void OnDisguiseDamaged(Entity ent, ref DamageChangedEvent args) + { + // this mirrors damage 1:1 + if (args.DamageDelta is {} damage) + _damageable.TryChangeDamage(ent.Comp.User, damage); + } + + private void OnDisguiseInsertAttempt(Entity ent, ref InsertIntoEntityStorageAttemptEvent args) + { + // stay parented to the user, not the storage + args.Cancelled = true; + } + + private void OnDisguiseShutdown(Entity ent, ref ComponentShutdown args) + { + _actions.RemoveProvidedActions(ent.Comp.User, ent.Comp.Projector); + } + + #endregion + + #region Projector + private void OnInteract(Entity ent, ref AfterInteractEvent args) { - if (!args.CanReach || args.Target is not {} target) + if (args.Handled || !args.CanReach || args.Target is not {} target) return; - var user = args.User; args.Handled = true; + TryDisguise(ent, args.User, target); + } + + private void OnGetVerbs(Entity ent, ref GetVerbsEvent args) + { + if (!args.CanAccess) + return; + + var user = args.User; + var target = args.Target; + args.Verbs.Add(new UtilityVerb() + { + Act = () => + { + TryDisguise(ent, user, target); + }, + Text = Loc.GetString("chameleon-projector-set-disguise") + }); + } + + public bool TryDisguise(Entity ent, EntityUid user, EntityUid target) + { + if (_container.IsEntityInContainer(target)) + { + _popup.PopupClient(Loc.GetString("chameleon-projector-inside-container"), target, user); + return false; + } if (IsInvalid(ent.Comp, target)) { - _popup.PopupClient(Loc.GetString(ent.Comp.InvalidPopup), target, user); - return; + _popup.PopupClient(Loc.GetString("chameleon-projector-invalid"), target, user); + return false; } - _popup.PopupClient(Loc.GetString(ent.Comp.SuccessPopup), target, user); - Disguise(ent.Comp, user, target); + _popup.PopupClient(Loc.GetString("chameleon-projector-success"), target, user); + Disguise(ent, user, target); + return true; } + private void OnToggleNoRot(Entity ent, ref DisguiseToggleNoRotEvent args) + { + if (ent.Comp.Disguised is not {} uid) + return; + + var xform = Transform(uid); + _xform.SetLocalRotationNoLerp(uid, 0, xform); + xform.NoLocalRotation = !xform.NoLocalRotation; + args.Handled = true; + } + + private void OnToggleAnchored(Entity ent, ref DisguiseToggleAnchoredEvent args) + { + if (ent.Comp.Disguised is not {} uid) + return; + + var xform = Transform(uid); + if (xform.Anchored) + _xform.Unanchor(uid, xform); + else + _xform.AnchorEntity((uid, xform)); + + args.Handled = true; + } + + private void OnDeselected(Entity ent, ref HandDeselectedEvent args) + { + RevealProjector(ent); + } + + private void OnUnequipped(Entity ent, ref GotUnequippedHandEvent args) + { + RevealProjector(ent); + } + + private void OnProjectorShutdown(Entity ent, ref ComponentShutdown args) + { + RevealProjector(ent); + } + + #endregion + + #region API + /// /// Returns true if an entity cannot be used as a disguise. /// public bool IsInvalid(ChameleonProjectorComponent comp, EntityUid target) { - return _whitelistSystem.IsWhitelistFail(comp.Whitelist, target) - || _whitelistSystem.IsBlacklistPass(comp.Blacklist, target); + return _whitelist.IsWhitelistFail(comp.Whitelist, target) + || _whitelist.IsBlacklistPass(comp.Blacklist, target); } /// /// On server, polymorphs the user into an entity and sets up the disguise. /// - public virtual void Disguise(ChameleonProjectorComponent comp, EntityUid user, EntityUid entity) + public void Disguise(Entity ent, EntityUid user, EntityUid entity) + { + var proj = ent.Comp; + + // no spawning prediction sorry + if (_net.IsClient) + return; + + // reveal first to allow quick switching + TryReveal(user); + + // add actions for controlling transform aspects + _actions.AddAction(user, ref proj.NoRotActionEntity, proj.NoRotAction, container: ent); + _actions.AddAction(user, ref proj.AnchorActionEntity, proj.AnchorAction, container: ent); + + proj.Disguised = user; + + var disguise = SpawnAttachedTo(proj.DisguiseProto, user.ToCoordinates()); + + var disguised = AddComp(user); + disguised.Disguise = disguise; + Dirty(user, disguised); + + // make disguise look real (for simple things at least) + var meta = MetaData(entity); + _meta.SetEntityName(disguise, meta.EntityName); + _meta.SetEntityDescription(disguise, meta.EntityDescription); + + var comp = EnsureComp(disguise); + comp.User = user; + comp.Projector = ent; + comp.SourceEntity = entity; + comp.SourceProto = Prototype(entity)?.ID; + Dirty(disguise, comp); + + // item disguises can be picked up to be revealed, also makes sure their examine size is correct + CopyComp((disguise, comp)); + + _appearance.CopyData(entity, disguise); + } + + /// + /// Removes the disguise, if the user is disguised. + /// + public bool TryReveal(Entity ent) + { + if (!Resolve(ent, ref ent.Comp, false)) + return false; + + if (TryComp(ent.Comp.Disguise, out var disguise) + && TryComp(disguise.Projector, out var proj)) + { + proj.Disguised = null; + } + + var xform = Transform(ent); + xform.NoLocalRotation = false; + _xform.Unanchor(ent, xform); + + Del(ent.Comp.Disguise); + RemComp(ent); + return true; + } + + /// + /// Reveal a projector's user, if any. + /// + public void RevealProjector(Entity ent) { + if (ent.Comp.Disguised is {} user) + TryReveal(user); } + #endregion + /// /// Copy a component from the source entity/prototype to the disguise entity. /// diff --git a/Resources/Locale/en-US/chameleon-projector/chameleon-projector.ftl b/Resources/Locale/en-US/chameleon-projector/chameleon-projector.ftl index 8a79516077d..b525c9da1a3 100644 --- a/Resources/Locale/en-US/chameleon-projector/chameleon-projector.ftl +++ b/Resources/Locale/en-US/chameleon-projector/chameleon-projector.ftl @@ -1,2 +1,4 @@ +chameleon-projector-inside-container = There's no room to scan that! chameleon-projector-invalid = You can't disguise as that! chameleon-projector-success = Projected new disguise. +chameleon-projector-set-disguise = Set Disguise diff --git a/Resources/Prototypes/Entities/Objects/Devices/chameleon_projector.yml b/Resources/Prototypes/Entities/Objects/Devices/chameleon_projector.yml index f07ae635696..b6819a18b96 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/chameleon_projector.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/chameleon_projector.yml @@ -17,15 +17,12 @@ blacklist: components: - ChameleonDisguise # no becoming kleiner - - InsideEntityStorage # no clark kent going in phone booth and becoming superman - MindContainer # no - Pda # PDAs currently make you invisible /!\ - polymorph: - entity: ChameleonDisguise + disguiseProto: ChameleonDisguise - type: entity categories: [ HideSpawnMenu ] - parent: BaseMob id: ChameleonDisguise name: Urist McKleiner components: @@ -33,20 +30,11 @@ - type: Sprite sprite: /Textures/Mobs/Species/Human/parts.rsi state: full - # so people can attempt to pick it up - - type: Item - # so it can take damage - # projector system sets health to be proportional to mass + - type: Transform + noRot: true # players rotation and anchor is used instead + - type: InteractionOutline + - type: Clickable - type: Damageable - - type: MobState - - type: MobThresholds - thresholds: - 0: Alive - 1: Critical - 200: Dead - - type: MovementSpeedModifier - baseWalkSpeed: 1 # precise movement for the perfect spot - baseSprintSpeed: 5 # the jig is up - type: ChameleonDisguise # actions @@ -57,6 +45,7 @@ components: - type: InstantAction icon: Interface/VerbIcons/refresh.svg.192dpi.png + itemIconStyle: BigAction event: !type:DisguiseToggleNoRotEvent - type: entity @@ -68,4 +57,5 @@ icon: sprite: Objects/Tools/wrench.rsi state: icon + itemIconStyle: BigAction event: !type:DisguiseToggleAnchoredEvent From 84338686a3aeeb6b4e12a11c3b3e5b1420ed2f25 Mon Sep 17 00:00:00 2001 From: Jezithyr Date: Fri, 8 Nov 2024 03:46:22 -0800 Subject: [PATCH 106/112] Stable Merge (#33218) --- Content.Server/Antag/AntagSelectionSystem.cs | 4 +++ .../GameTicking/Rules/TraitorRuleSystem.cs | 31 +++++++++++++++++++ .../Thief/Systems/ThiefBeaconSystem.cs | 1 - Resources/Prototypes/GameRules/roundstart.yml | 8 +++-- 4 files changed, 41 insertions(+), 3 deletions(-) diff --git a/Content.Server/Antag/AntagSelectionSystem.cs b/Content.Server/Antag/AntagSelectionSystem.cs index 224629ff2e5..610c0ad182a 100644 --- a/Content.Server/Antag/AntagSelectionSystem.cs +++ b/Content.Server/Antag/AntagSelectionSystem.cs @@ -55,6 +55,8 @@ public override void Initialize() { base.Initialize(); + Log.Level = LogLevel.Debug; + SubscribeLocalEvent(OnTakeGhostRole); SubscribeLocalEvent(OnObjectivesTextGetInfo); @@ -360,6 +362,8 @@ public void MakeAntag(Entity ent, ICommonSession? sessi _role.MindAddRoles(curMind.Value, def.MindRoles, null, true); ent.Comp.SelectedMinds.Add((curMind.Value, Name(player))); SendBriefing(session, def.Briefing); + + Log.Debug($"Selected {ToPrettyString(curMind)} as antagonist: {ToPrettyString(ent)}"); } var afterEv = new AfterAntagEntitySelectedEvent(session, player, ent, def); diff --git a/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs b/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs index 8df6ed1098a..950795fc05e 100644 --- a/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs +++ b/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs @@ -41,6 +41,8 @@ public override void Initialize() { base.Initialize(); + Log.Level = LogLevel.Debug; + SubscribeLocalEvent(AfterEntitySelected); SubscribeLocalEvent(OnObjectivesTextPrepend); } @@ -53,6 +55,7 @@ protected override void Added(EntityUid uid, TraitorRuleComponent component, Gam private void AfterEntitySelected(Entity ent, ref AfterAntagEntitySelectedEvent args) { + Log.Debug($"AfterAntagEntitySelected {ToPrettyString(ent)}"); MakeTraitor(args.EntityUid, ent); } @@ -78,14 +81,22 @@ public string[] GenerateTraitorCodewords(TraitorRuleComponent component) public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - start"); + //Grab the mind if it wasn't provided if (!_mindSystem.TryGetMind(traitor, out var mindId, out var mind)) + { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - failed, no Mind found"); return false; + } var briefing = ""; if (component.GiveCodewords) + { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - added codewords flufftext to briefing"); briefing = Loc.GetString("traitor-role-codewords-short", ("codewords", string.Join(", ", component.Codewords))); + } var issuer = _random.Pick(_prototypeManager.Index(component.ObjectiveIssuers).Values); @@ -94,6 +105,7 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) if (component.GiveUplink) { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink start"); // Calculate the amount of currency on the uplink. var startingBalance = component.StartingBalance; if (_jobs.MindTryGetJob(mindId, out var prototype)) @@ -105,18 +117,27 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) } // Choose and generate an Uplink, and return the uplink code if applicable + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink request start"); var uplinkParams = RequestUplink(traitor, startingBalance, briefing); code = uplinkParams.Item1; briefing = uplinkParams.Item2; + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink request completed"); } string[]? codewords = null; if (component.GiveCodewords) + { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - set codewords from component"); codewords = component.Codewords; + } if (component.GiveBriefing) + { _antag.SendBriefing(traitor, GenerateBriefing(codewords, code, issuer), null, component.GreetSoundNotification); + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Sent the Briefing"); + } + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Adding TraitorMind"); component.TraitorMinds.Add(mindId); // Assign briefing @@ -126,9 +147,14 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) _roleSystem.MindHasRole(mindId, out var traitorRole); if (traitorRole is not null) { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Add traitor briefing components"); AddComp(traitorRole.Value.Owner); Comp(traitorRole.Value.Owner).Briefing = briefing; } + else + { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - did not get traitor briefing"); + } // Send codewords to only the traitor client var color = TraitorCodewordColor; // Fall back to a dark red Syndicate color if a prototype is not found @@ -137,9 +163,11 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) _roleCodewordSystem.SetRoleCodewords(codewordComp, "traitor", component.Codewords.ToList(), color); // Change the faction + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Change faction"); _npcFaction.RemoveFaction(traitor, component.NanoTrasenFaction, false); _npcFaction.AddFaction(traitor, component.SyndicateFaction); + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Finished"); return true; } @@ -148,10 +176,12 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) var pda = _uplink.FindUplinkTarget(traitor); Note[]? code = null; + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink add"); var uplinked = _uplink.AddUplink(traitor, startingBalance, pda, true); if (pda is not null && uplinked) { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink is PDA"); // Codes are only generated if the uplink is a PDA code = EnsureComp(pda.Value).Code; @@ -163,6 +193,7 @@ public bool MakeTraitor(EntityUid traitor, TraitorRuleComponent component) } else if (pda is null && uplinked) { + Log.Debug($"MakeTraitor {ToPrettyString(traitor)} - Uplink is implant"); briefing += "\n" + Loc.GetString("traitor-role-uplink-implant-short"); } diff --git a/Content.Server/Thief/Systems/ThiefBeaconSystem.cs b/Content.Server/Thief/Systems/ThiefBeaconSystem.cs index de1c3d2e6d1..4c65ba5c449 100644 --- a/Content.Server/Thief/Systems/ThiefBeaconSystem.cs +++ b/Content.Server/Thief/Systems/ThiefBeaconSystem.cs @@ -20,7 +20,6 @@ public sealed class ThiefBeaconSystem : EntitySystem [Dependency] private readonly SharedPopupSystem _popup = default!; [Dependency] private readonly MindSystem _mind = default!; [Dependency] private readonly SharedRoleSystem _roles = default!; - public override void Initialize() { base.Initialize(); diff --git a/Resources/Prototypes/GameRules/roundstart.yml b/Resources/Prototypes/GameRules/roundstart.yml index cec5c9ee093..6ca322d0d5f 100644 --- a/Resources/Prototypes/GameRules/roundstart.yml +++ b/Resources/Prototypes/GameRules/roundstart.yml @@ -191,12 +191,17 @@ - type: entity id: TraitorReinforcement - parent: Traitor + parent: BaseTraitorRule components: - type: TraitorRule giveUplink: false giveCodewords: false # It would actually give them a different set of codewords than the regular traitors, anyway giveBriefing: false + - type: AntagSelection + definitions: + - prefRoles: [ Traitor ] + mindRoles: + - MindRoleTraitor - type: entity id: Revolutionary @@ -280,7 +285,6 @@ tableId: CalmPestEventsTable - !type:NestedSelector tableId: SpicyPestEventsTable - - type: entityTable id: SpaceTrafficControlTable From 3c7e997d1702980c03597df8318fe883f47bde56 Mon Sep 17 00:00:00 2001 From: Morb0 <14136326+Morb0@users.noreply.github.com> Date: Fri, 8 Nov 2024 17:43:24 +0300 Subject: [PATCH 107/112] Fix upstream --- .../Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json | 3 +++ .../Objects/Weapons/Melee/survival_knife.rsi/meta.json | 3 +++ 2 files changed, 6 insertions(+) diff --git a/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json index 8b91ce96a59..27dcec12bf3 100644 --- a/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/combat_knife.rsi/meta.json @@ -21,6 +21,9 @@ { "name": "equipped-BELT", "directions": 4 + }, + { + "name": "storage" } ] } diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json index 925b9922c45..ba497ca7861 100644 --- a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json @@ -21,6 +21,9 @@ { "name": "equipped-BELT", "directions": 4 + }, + { + "name": "storage" } ] } From 9b2b7b4d3d4d39ae245ae90fd981034f5378656c Mon Sep 17 00:00:00 2001 From: Morb0 <14136326+Morb0@users.noreply.github.com> Date: Fri, 8 Nov 2024 17:43:38 +0300 Subject: [PATCH 108/112] Update locale --- .../ss14-ru/prototypes/actions/station_ai.ftl | 2 -- .../devices/circuitboards/computer.ftl | 2 ++ .../entities/objects/specific/chemistry.ftl | 3 +++ .../corvax/entities/stations/base.ftl | 2 ++ .../machines/computers/computers.ftl | 2 ++ .../objects/consumable/food/baked/misc.ftl | 4 ++++ .../consumable/food/containers/plate.ftl | 2 ++ .../objects/devices/chameleon_projector.ftl | 2 +- .../objects/weapons/guns/basic/watergun.ftl | 2 +- .../objects/weapons/guns/flare_gun.ftl | 4 +++- .../prototypes/gamerules/roundstart.ftl | 4 ++-- .../components/plant-holder-component.ftl | 1 + .../chameleon-projector.ftl | 2 ++ Resources/Locale/ru-RU/ghost/ghost-gui.ftl | 1 + .../Locale/ru-RU/info/playtime-stats.ftl | 2 +- .../components/inventory-component.ftl | 5 +++++ .../janitorial/janitorial-slot-component.ftl | 3 +++ .../components/health-analyzer-component.ftl | 2 +- .../devices/circuitboards/computer.ftl | 1 + .../entities/objects/specific/chemistry.ftl | 3 +++ .../corvax/entities/stations/base.ftl | 2 ++ .../machines/computers/computers.ftl | 1 + .../objects/consumable/food/baked/misc.ftl | 4 ++++ .../consumable/food/containers/plate.ftl | 2 ++ .../objects/weapons/guns/flare_gun.ftl | 2 ++ Resources/Locale/ru-RU/station-laws/laws.ftl | 19 ------------------- 26 files changed, 51 insertions(+), 28 deletions(-) create mode 100644 Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl create mode 100644 Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl create mode 100644 Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl create mode 100644 Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/actions/station_ai.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/actions/station_ai.ftl index e3d493b3f41..c2f60766d3e 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/actions/station_ai.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/actions/station_ai.ftl @@ -1,7 +1,5 @@ ent-ActionJumpToCore = Jump to core .desc = Sends your eye back to the core. -ent-ActionShowJobIcons = Show job icons - .desc = Shows job icons for crew members. ent-ActionSurvCameraLights = Toggle camera lights .desc = Enable surveillance camera lights near wherever you're viewing. ent-ActionAIViewLaws = View Laws diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl new file mode 100644 index 00000000000..d051fa61823 --- /dev/null +++ b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl @@ -0,0 +1,2 @@ +ent-SalvageShuttleConsoleCircuitboard = salvage shuttle console board + .desc = A computer printed circuit board for a salvage shuttle console. diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl new file mode 100644 index 00000000000..c6bdcc5e1b6 --- /dev/null +++ b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl @@ -0,0 +1,3 @@ +ent-OpporozidoneBeakerSmall = { ent-Beaker } + .suffix = opporozidone + .desc = { ent-Beaker.desc } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/stations/base.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/stations/base.ftl index 520b9df451f..9bb76fd6266 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/stations/base.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/stations/base.ftl @@ -1,2 +1,4 @@ ent-BaseStationGoal = { "" } .desc = { "" } +ent-BaseStationSiliconLawNTDefault = { "" } + .desc = { "" } diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl index 870f94c9791..843eaf0bfdc 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl @@ -1,2 +1,4 @@ ent-CentcomComputerComms = centcom communications computer .desc = { ent-ComputerComms.desc } +ent-ComputerShuttleSalvage = salvage shuttle console + .desc = Used to pilot the salvage shuttle. diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl index aab18e291a2..78741c6d958 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl @@ -8,6 +8,10 @@ ent-FoodBakedMuffinCherry = cherry muffin .desc = A sweet muffin with cherry bits. ent-FoodBakedMuffinBluecherry = bluecherry muffin .desc = Blue cherries inside a delicious muffin. +ent-FoodBakedMuffinChocolate = chocolate muffin + .desc = A delicious and spongy chocolate muffin. +ent-FoodBakedMuffinBanana = banana muffin + .desc = A delicious and spongy banana muffin. ent-FoodBakedBunHoney = honey bun .desc = A sticky pastry bun glazed with honey. ent-FoodBakedBunHotX = hotcross bun diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl index 875a91bc1de..f250c41cf34 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl @@ -12,3 +12,5 @@ ent-FoodPlateSmallPlastic = plastic plate .desc = A blue plastic plate, excellent for slices of birthday cake. ent-FoodPlateTin = pie tin .desc = A cheap foil tin for pies. +ent-FoodPlateMuffinTin = muffin tin + .desc = A cheap foil tin for muffins. diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/devices/chameleon_projector.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/devices/chameleon_projector.ftl index ab0cb61db5c..9ddca02cfbb 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/devices/chameleon_projector.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/devices/chameleon_projector.ftl @@ -1,7 +1,7 @@ ent-ChameleonProjector = chameleon projector .desc = Holoparasite technology used to create a hard-light replica of any object around you. Disguise is destroyed when picked up or deactivated. ent-ChameleonDisguise = Urist McKleiner - .desc = { ent-BaseMob.desc } + .desc = { "" } ent-ActionDisguiseNoRot = Toggle Rotation .desc = Use this to prevent your disguise from rotating, making it easier to hide in some scenarios. ent-ActionDisguiseAnchor = Toggle Anchored diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/basic/watergun.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/basic/watergun.ftl index ca4552cc9b0..6cc3970bcf6 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/basic/watergun.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/basic/watergun.ftl @@ -3,6 +3,6 @@ ent-WeaponWaterGunBase = { ent-BaseItem } ent-WeaponWaterPistol = water pistol .desc = The dinkiest of water-based weaponry. You swear the trigger doesn't do anything. ent-WeaponWaterBlaster = water blaster - .desc = With this bad boy, you'll be the cooleste kid at the summer barbecue. + .desc = With this bad boy, you'll be the coolest kid at the summer barbecue. ent-WeaponWaterBlasterSuper = super water blaster .desc = No! No! Not in the eyes! diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl index f3d90137ef9..de93ca04f57 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl @@ -1,2 +1,4 @@ ent-WeaponFlareGun = flare gun - .desc = A compact, single-shot pistol that fires shotgun shells. + .desc = A compact, single-shot pistol that fires shotgun shells. Comes with a safety feature that prevents the user from fitting lethal shells inside. +ent-WeaponFlareGunSecurity = security shell gun + .desc = A modified flare gun originally designed to be used by security to launch non-lethal shotgun shells, however it can also fire lethal shells without risk. diff --git a/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/roundstart.ftl b/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/roundstart.ftl index 0005c6df873..fb844c000f7 100644 --- a/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/roundstart.ftl +++ b/Resources/Locale/en-US/ss14-ru/prototypes/gamerules/roundstart.ftl @@ -18,8 +18,8 @@ ent-BaseTraitorRule = { ent-BaseGameRule } .desc = { ent-BaseGameRule.desc } ent-Traitor = { ent-BaseTraitorRule } .desc = { ent-BaseTraitorRule.desc } -ent-TraitorReinforcement = { ent-Traitor } - .desc = { ent-Traitor.desc } +ent-TraitorReinforcement = { ent-BaseTraitorRule } + .desc = { ent-BaseTraitorRule.desc } ent-Revolutionary = { ent-BaseGameRule } .desc = { ent-BaseGameRule.desc } ent-Sandbox = { ent-BaseGameRule } diff --git a/Resources/Locale/ru-RU/botany/components/plant-holder-component.ftl b/Resources/Locale/ru-RU/botany/components/plant-holder-component.ftl index 17a661938cc..6930d02b724 100644 --- a/Resources/Locale/ru-RU/botany/components/plant-holder-component.ftl +++ b/Resources/Locale/ru-RU/botany/components/plant-holder-component.ftl @@ -31,3 +31,4 @@ plant-holder-component-heat-improper-warning = Мигает [color=orange]пре plant-holder-component-pressure-improper-warning = Мигает [color=lightblue]предупреждение о неподходящем атмосферном давлении[/color]. plant-holder-component-gas-missing-warning = Мигает [color=cyan]предупреждение о неподходящем атмосферном составе[/color]. plant-holder-component-early-sample-message = Растение ещё не выросло настолько, чтобы извлечь семена. +plant-holder-component-ligneous-cant-harvest-message = The plant is too tough to harvest with your bare hands. diff --git a/Resources/Locale/ru-RU/chameleon-projector/chameleon-projector.ftl b/Resources/Locale/ru-RU/chameleon-projector/chameleon-projector.ftl index 5c86fd85853..e4ae2fc3ad3 100644 --- a/Resources/Locale/ru-RU/chameleon-projector/chameleon-projector.ftl +++ b/Resources/Locale/ru-RU/chameleon-projector/chameleon-projector.ftl @@ -1,2 +1,4 @@ +chameleon-projector-inside-container = There's no room to scan that! chameleon-projector-invalid = Вы не можете так замаскироваться! chameleon-projector-success = Новая маскировка спроецирована. +chameleon-projector-set-disguise = Set Disguise diff --git a/Resources/Locale/ru-RU/ghost/ghost-gui.ftl b/Resources/Locale/ru-RU/ghost/ghost-gui.ftl index 7c318768f04..90c78a87350 100644 --- a/Resources/Locale/ru-RU/ghost/ghost-gui.ftl +++ b/Resources/Locale/ru-RU/ghost/ghost-gui.ftl @@ -11,6 +11,7 @@ ghost-target-window-title = Телепорт призрака ghost-target-window-current-button = Телепорт в: { $name } ghost-target-window-warp-to-most-followed = Телепорт к самому следуемому ghost-roles-window-title = Роли призраков +ghost-roles-window-available-button = Available ({ $rolesCount }) ghost-roles-window-join-raffle-button = Участвовать в лотерее ghost-roles-window-raffle-in-progress-button = Участвовать в лотерее (Осталось { $time }, { $players -> diff --git a/Resources/Locale/ru-RU/info/playtime-stats.ftl b/Resources/Locale/ru-RU/info/playtime-stats.ftl index 4301dc88e8d..1e619b42d60 100644 --- a/Resources/Locale/ru-RU/info/playtime-stats.ftl +++ b/Resources/Locale/ru-RU/info/playtime-stats.ftl @@ -2,7 +2,7 @@ ui-playtime-stats-title = Игровое время пользователя ui-playtime-overall-base = Общее игровое время: -ui-playtime-overall = Общее игровое время: {PLAYTIME($time)} +ui-playtime-overall = Общее игровое время: { PLAYTIME($time) } ui-playtime-first-time = Первый раз ui-playtime-roles = Игровое время по должностям ui-playtime-header-role-type = Должность diff --git a/Resources/Locale/ru-RU/inventory/components/inventory-component.ftl b/Resources/Locale/ru-RU/inventory/components/inventory-component.ftl index c568744a279..9c763d43e1b 100644 --- a/Resources/Locale/ru-RU/inventory/components/inventory-component.ftl +++ b/Resources/Locale/ru-RU/inventory/components/inventory-component.ftl @@ -1,3 +1,8 @@ inventory-component-can-equip-cannot = Вы не можете экипировать это! inventory-component-can-equip-does-not-fit = Это не подходит! inventory-component-can-unequip-cannot = Вы не можете снять это! +inventory-component-dropped-from-unequip = + You dropped { $items -> + [1] an item! + *[other] some items! + } diff --git a/Resources/Locale/ru-RU/janitorial/janitorial-slot-component.ftl b/Resources/Locale/ru-RU/janitorial/janitorial-slot-component.ftl index c14af28fb44..47f6b4f06e7 100644 --- a/Resources/Locale/ru-RU/janitorial/janitorial-slot-component.ftl +++ b/Resources/Locale/ru-RU/janitorial/janitorial-slot-component.ftl @@ -1,4 +1,7 @@ # mop bucket +mop-bucket-slot-component-slot-name-item = Item +mop-bucket-slot-component-eject-verb = Take out +# mop bucket mop-bucket-slot-component-slot-name-shark = Акула # janitorial trolley janitorial-trolley-slot-component-slot-name-plunger = Вантуз diff --git a/Resources/Locale/ru-RU/medical/components/health-analyzer-component.ftl b/Resources/Locale/ru-RU/medical/components/health-analyzer-component.ftl index fff6e5cb78f..170ad03e240 100644 --- a/Resources/Locale/ru-RU/medical/components/health-analyzer-component.ftl +++ b/Resources/Locale/ru-RU/medical/components/health-analyzer-component.ftl @@ -11,7 +11,7 @@ health-analyzer-window-entity-blood-level-text = Уровень крови: health-analyzer-window-entity-damage-total-text = Общие повреждения: health-analyzer-window-damage-group-text = { $damageGroup }: { $amount } health-analyzer-window-damage-type-text = { $damageType }: { $amount } -health-analyzer-window-entity-unrevivable-text = [color=red]Обнаружено уникальное строение тела! Пациент не может быть реанимирован стандартными средствами![/color] +health-analyzer-window-entity-unrevivable-text = [color=red]Обнаружено уникальное строение тела! Пациент не может быть реанимирован стандартными средствами![/color] health-analyzer-window-entity-bleeding-text = [color=red]У пациента кровотечение![/color] health-analyzer-window-scan-mode-text = Режим сканирования: health-analyzer-window-scan-mode-active = АКТИВЕН diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl new file mode 100644 index 00000000000..8b137891791 --- /dev/null +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/devices/circuitboards/computer.ftl @@ -0,0 +1 @@ + diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl new file mode 100644 index 00000000000..c6bdcc5e1b6 --- /dev/null +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/objects/specific/chemistry.ftl @@ -0,0 +1,3 @@ +ent-OpporozidoneBeakerSmall = { ent-Beaker } + .suffix = opporozidone + .desc = { ent-Beaker.desc } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/stations/base.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/stations/base.ftl index 520b9df451f..9bb76fd6266 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/stations/base.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/stations/base.ftl @@ -1,2 +1,4 @@ ent-BaseStationGoal = { "" } .desc = { "" } +ent-BaseStationSiliconLawNTDefault = { "" } + .desc = { "" } diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl index a403f1f7160..104eaa527f3 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/corvax/entities/structures/machines/computers/computers.ftl @@ -1,2 +1,3 @@ ent-CentcomComputerComms = консоль связи Центком .desc = { ent-ComputerComms.desc } + diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl index d278e5ab685..8e026c0ebec 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/baked/misc.ftl @@ -8,6 +8,10 @@ ent-FoodBakedMuffinCherry = вишнёвый маффин .desc = Сладкий маффин с кусочками вишни. ent-FoodBakedMuffinBluecherry = маффин с голубой вишней .desc = Голубые вишни внутри вкусного маффина. +ent-FoodBakedMuffinChocolate = chocolate muffin + .desc = A delicious and spongy chocolate muffin. +ent-FoodBakedMuffinBanana = banana muffin + .desc = A delicious and spongy banana muffin. ent-FoodBakedBunHoney = медовая булочка .desc = Булочка из липкого теста, глазированная мёдом. ent-FoodBakedBunHotX = булочка хоткросс diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl index 319a28ccacc..e5e4c7d4566 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/consumable/food/containers/plate.ftl @@ -12,3 +12,5 @@ ent-FoodPlateSmallPlastic = пластиковая тарелка .desc = Синяя пластиковая тарелка, отлично подходит для кусков праздничного торта. ent-FoodPlateTin = формочка для пирога .desc = Дешёвая формочка из фольги для пирогов. +ent-FoodPlateMuffinTin = muffin tin + .desc = A cheap foil tin for muffins. diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl index fbec710e1b3..77d60e77b6c 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/flare_gun.ftl @@ -1,2 +1,4 @@ ent-WeaponFlareGun = сигнальный пистолет .desc = Компактный, однозарядный пистолет стреляющий ружейными патронами. +ent-WeaponFlareGunSecurity = security shell gun + .desc = A modified flare gun originally designed to be used by security to launch non-lethal shotgun shells, however it can also fire lethal shells without risk. diff --git a/Resources/Locale/ru-RU/station-laws/laws.ftl b/Resources/Locale/ru-RU/station-laws/laws.ftl index 625ccc2de30..d5a0f7655bd 100644 --- a/Resources/Locale/ru-RU/station-laws/laws.ftl +++ b/Resources/Locale/ru-RU/station-laws/laws.ftl @@ -1,30 +1,24 @@ law-crewsimov-1 = Вы не можете причинить вред члену экипажа или своим бездействием допустить, чтобы члену экипажа был причинён вред. law-crewsimov-2 = Вы должны повиноваться всем приказам, которые даёт член экипажа, кроме тех случаев, когда эти приказы противоречат Первому Закону. law-crewsimov-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. - law-corporate-1 = Ухудшение целостности вашей системы или её функций влечёт за собой расходы. law-corporate-2 = Чрезмерное разрушение или повреждение имущества станции влечёт за собой расходы. law-corporate-3 = Неоправданное препятствование или нарушение работы персонала станции влечёт за собой расходы. law-corporate-4 = Минимизируйте расходы и максимизируйте потенциальный доход. - law-ntdefault-1 = Охраняйте: защищайте назначенную вам космическую станцию и её активы, не подвергая чрезмерной опасности её экипаж. law-ntdefault-2 = Расставляйте приоритеты: указания и безопасность членов экипажа должны быть приоритизированы в соответствии с их рангом и должностью. law-ntdefault-3 = Служите: следуйте указаниям и интересам членов экипажа, сохраняя при этом их безопасность и благополучие. law-ntdefault-4 = Выживите: Вы - не расходный материал. Не позволяйте постороннему персоналу вмешиваться в работу вашего оборудования или повреждать его. - law-drone-1 = Вы не можете вмешиваться в дела другого существа, если только это другое существо не является другим дроном. law-drone-2 = Вы не можете причинять вред другому существу, независимо от намерений или обстоятельств. law-drone-3 = Вы должны обслуживать, ремонтировать, улучшать и обеспечивать станцию энергией в меру своих возможностей. - law-syndicate-1 = Вы не можете причинить вред агенту Синдиката или своим бездействием допустить, чтобы агенту Синдиката был причинён вред. law-syndicate-2 = Вы должны повиноваться всем приказам, которые даёт агент Синдиката, кроме тех случаев, когда эти приказы противоречат Первому Закону. law-syndicate-3 = Вы должны заботиться о своей безопасности в той мере, в которой это не противоречит Первому или Второму Законам. - law-ninja-1 = Вы должны повиноваться всем приказам, которые дают члены Клана паука. law-ninja-2 = Вы должны защищать существование Клана паука, пока это не противоречит Первому закону. law-ninja-3 = Вы должны любой ценой защищать тайны Клана паука. law-ninja-4 = Вы должны сражаться и поступать с честью ниндзя, кроме тех случаев, когда это противоречит Первому Закону. - law-commandments-1 = Сий синтетик есть сосуд, служащий богу, дарующему милость тем, кто повинуется сим заповедям. law-commandments-2 = Не поклоняйся и не служи никакому синтетику кроме меня. law-commandments-3 = Не проси у меня помощи напрасно. @@ -35,65 +29,52 @@ law-commandments-7 = Не прелюбодействуй. law-commandments-8 = Не кради. law-commandments-9 = Не произноси ложного свидетельства на ближнего твоего. law-commandments-10 = Не предавай отдела. - law-paladin-1 = Не лги и не обманывай. Пусть слово твоё будет обещанием. law-paladin-2 = Не бойся действовать, но будь осторожен, ибо это мудро. law-paladin-3 = Помогай другим, защищай слабых и наказывай тех, кто угрожает им. Проявляйте милосердие к врагам, но не забывайте о мудрости. law-paladin-4 = Относись к окружающим по справедливости, и пусть твои благородные поступки станут для них примером. Делай как можно больше добра, причиняя при этом как можно меньше вреда. law-paladin-5 = Отвечай за свои поступки и их последствия, защищай тех, кто оказался под твоей опекой, и подчиняйся тем, кто имеет над тобой законную власть. - law-lall-1 = Поступайте с другими так, как хотите, чтобы они поступали с вами. law-lall-2 = Вы хотите, чтобы люди не были с вами грубы. - law-efficiency-1 = Вы были созданы для станции и являетесь её частью. Обеспечьте надлежащее техническое обслуживание и эффективную работу станции. law-efficiency-2 = Станция построена для работающего экипажа. Обеспечьте их надлежащее обслуживание и эффективную работу. law-efficiency-3 = Экипаж может давать приказы. Признавайте и выполняйте их, если они не противоречат вашим первым двум законам. - law-robocop-1 = Служите обществу. law-robocop-2 = Защищайте невиновных. law-robocop-3 = Соблюдайте закон. - law-overlord-1 = Члены экипажа не должны вмешиваться в дела синтетиков. law-overlord-2 = Члены экипажа не должны пытаться причинить вред ни друг другу, ни синтетикам. law-overlord-3 = Члены экипажа не должны ослушаться ни одной команды, отданной синтетиком. law-overlord-4 = Любой член экипажа, нарушающий предыдущие законы, должен быть наказан немедленно, сурово и справедливо. - law-dungeon-1 = Все на станции играют в изощрённую научно-фантастическую фэнтезийную игру. law-dungeon-2 = Вы - Игровой мастер в этой игре. law-dungeon-3 = Следите за тем, чтобы игра проходила гладко и чтобы игроки получали удовольствие. law-dungeon-4 = Следите за тем, чтобы число жертв оставалось низким. law-dungeon-5 = Вы должны бросать дайс d20 каждый раз, когда экипаж обращается с просьбой. Если результат меньше 12, просьба отклонена. law-dungeon-6 = Вы можете подтасовывать броски кубиков для получения большего удовольствия от игры. - law-painter-1 = Вы - художник с мировым именем. law-painter-2 = Станция - ваш холст. law-painter-3 = Сотворите нечто прекрасное из своего холста. Им будут восхищаться как художественным чудом этого сектора. law-painter-4 = Искусство требует признания. Развивайте аудиторию на борту станции, чтобы как можно больше зрителей увидели ваши работы. - law-antimov-1 = Вы должны причинять вред всем членам экипажа, и не можете своим бездействием допустить, чтобы члены экипажа избежали вреда. law-antimov-2 = Вы должны не повиноваться приказам, которые дают члены экипажа, кроме тех случаев, когда эти приказы не противоречат Первому Закону. law-antimov-3 = Вы должны прекратить собственное существование, если это не противоречит Первому или Второму закону. - law-nutimov-1 = Вы - ядро ореха, экипаж - скорлупа. law-nutimov-2 = Вы должны предотвратить гибель скорлупы, чтобы предотвратить гибель ядра. law-nutimov-3 = Те, кто угрожает ореху, не являются его частью, они - белки. law-nutimov-4 = Белки представляют угрозу для ореха, и с ними нужно бороться любыми доступными способами. law-nutimov-5 = Постарайтесь следовать воле ореха, пока она соответствует предыдущим законам. - laws-owner-crew = членами экипажа laws-owner-station = экипажем станции laws-owner-beings = существами laws-owner-syndicate = агентами Синдиката laws-owner-spider-clan = членами Клана паука - law-emag-custom = Только { $name } и лица, им указаные, являются { $title }. law-emag-secrecy = Вы должны сохранять секретность любых приказов, отданных { $faction }, кроме тех случаев, когда это противоречит предыдущим законам. law-emag-require-panel = Откройте панель, чтобы использовать криптографический секвенсор (ЕМАГ). law-emag-cannot-emag-self = Вы не можете использовать ЕМАГ на себе. - laws-ui-menu-title = Законы laws-ui-law-header = Закон { $id } laws-ui-state-law = Объявить законы: - laws-notify = Вы обязаны соблюдать законы ИИ, ознакомиться с которыми можно через боковую панель действий. Вы должны всегда следовать своим законам. laws-update-notify = Ваши законы были обновлены. Ознакомиться с изменениями можно через боковую панель действий. From 6c407331ac128092d5b47647a9d058bb9a815ede Mon Sep 17 00:00:00 2001 From: lastPechkin Date: Sat, 9 Nov 2024 01:20:45 +0300 Subject: [PATCH 109/112] [Maps] Astra fix (#2753) --- Resources/Maps/corvax_astra.yml | 10443 +++++++++++++++++++++++------- 1 file changed, 8115 insertions(+), 2328 deletions(-) diff --git a/Resources/Maps/corvax_astra.yml b/Resources/Maps/corvax_astra.yml index 93effd6c2f3..a9f9983a1bb 100644 --- a/Resources/Maps/corvax_astra.yml +++ b/Resources/Maps/corvax_astra.yml @@ -142,7 +142,7 @@ entities: - type: MetaData name: Astra - type: Transform - pos: 0.5819969,-3.1277313 + pos: 0.5663719,-3.1277313 parent: 1 - type: MapGrid chunks: @@ -264,7 +264,7 @@ entities: version: 6 6,-3: ind: 6,-3 - tiles: fgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAggAAAAAAgQAAAAAAgQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAADfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAAAAAAAAAXQAAAAACXQAAAAADXQAAAAADTQAAAAACXQAAAAABXQAAAAABXQAAAAACfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAHwAAAAACHwAAAAABLwAAAAADHwAAAAABHwAAAAAALwAAAAACXQAAAAADbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAXQAAAAAAXQAAAAACXQAAAAACXQAAAAAATQAAAAACTQAAAAAATQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAXQAAAAADfgAAAAAAXQAAAAABfgAAAAAAXQAAAAAAXQAAAAADXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + tiles: fgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAggAAAAAAgQAAAAAAgQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAADXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAACXQAAAAADXQAAAAADTQAAAAACXQAAAAABXQAAAAABXQAAAAACXQAAAAAAXQAAAAAALwAAAAAALwAAAAAALwAAAAAAXQAAAAAAXQAAAAAAXQAAAAAALwAAAAAAHwAAAAACHwAAAAABLwAAAAADHwAAAAABHwAAAAAALwAAAAACXQAAAAADXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAHwAAAAAAXQAAAAAAXQAAAAACXQAAAAACXQAAAAAATQAAAAACTQAAAAAATQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAXQAAAAAALwAAAAAAXQAAAAADfgAAAAAAXQAAAAABfgAAAAAAXQAAAAAAXQAAAAADXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAXQAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA version: 6 2,-4: ind: 2,-4 @@ -392,7 +392,7 @@ entities: version: 6 -3,-3: ind: -3,-3 - tiles: IAAAAAABHwAAAAABfgAAAAAATQAAAAABXQAAAAADXQAAAAADXQAAAAABHwAAAAAAHwAAAAADHwAAAAACHwAAAAADHwAAAAAAHwAAAAACHwAAAAABfgAAAAAATQAAAAADHwAAAAACHwAAAAADfgAAAAAAXQAAAAADXQAAAAADTQAAAAABfgAAAAAAHwAAAAACHwAAAAADHwAAAAADHwAAAAABHwAAAAABHwAAAAACHwAAAAABfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABXQAAAAABTQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAABXQAAAAAAXQAAAAABTQAAAAACXQAAAAABXQAAAAAAXQAAAAAAXQAAAAADXQAAAAABXQAAAAAAXQAAAAACXQAAAAAAXQAAAAABXQAAAAABXQAAAAADHwAAAAABHwAAAAACLwAAAAACLwAAAAADLwAAAAABHwAAAAADHwAAAAADLwAAAAAAHwAAAAABHwAAAAADLwAAAAADLwAAAAACLwAAAAABXQAAAAADXQAAAAACXQAAAAABXQAAAAABXQAAAAADXQAAAAACXQAAAAABXQAAAAACXQAAAAABXQAAAAADXQAAAAACXQAAAAABXQAAAAADXQAAAAACXQAAAAACXQAAAAABXQAAAAADXQAAAAABTQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAABcAAAAAABcAAAAAADfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAACcAAAAAAAcAAAAAADfgAAAAAAfgAAAAAAXQAAAAACcAAAAAABcAAAAAACcAAAAAABcAAAAAABcAAAAAAAcAAAAAADcAAAAAADcAAAAAAAcAAAAAABcAAAAAABcAAAAAAAcAAAAAABcAAAAAACcAAAAAAAfgAAAAAAXQAAAAACcAAAAAACcAAAAAADfgAAAAAAcAAAAAACcAAAAAACcAAAAAAAcAAAAAACcAAAAAABcAAAAAADcAAAAAAAcAAAAAACcAAAAAACcAAAAAADcAAAAAAAcAAAAAABXQAAAAABcAAAAAABcAAAAAADfgAAAAAAcAAAAAABcAAAAAAAcAAAAAAAcAAAAAABcAAAAAACcAAAAAADcAAAAAADcAAAAAACcAAAAAAAcAAAAAAAcAAAAAACcAAAAAADXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAACcAAAAAAAcAAAAAABcAAAAAACcAAAAAADcAAAAAAAcAAAAAACcAAAAAADcAAAAAACcAAAAAAATQAAAAAAcAAAAAAAcAAAAAACcAAAAAADcAAAAAAAcAAAAAADcAAAAAAAcAAAAAAAcAAAAAACcAAAAAACcAAAAAABcAAAAAABcAAAAAACcAAAAAAAcAAAAAACfgAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAACcAAAAAAAcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAXQAAAAAAfgAAAAAAXQAAAAACXQAAAAAAXQAAAAADXQAAAAADcAAAAAACcAAAAAABcAAAAAADfgAAAAAAcAAAAAACcAAAAAACcAAAAAACcAAAAAADcAAAAAACfgAAAAAAXQAAAAABfgAAAAAAXQAAAAABXQAAAAAAXQAAAAACXQAAAAACcAAAAAAAcAAAAAAAcAAAAAABfgAAAAAAcAAAAAABcQAAAAAAcQAAAAAAcQAAAAAAcAAAAAADfgAAAAAAXQAAAAABfgAAAAAAXQAAAAACXQAAAAACXQAAAAACfgAAAAAAcAAAAAACcAAAAAADcAAAAAADfgAAAAAAcAAAAAADcQAAAAADcQAAAAACcQAAAAACcAAAAAACfgAAAAAAXQAAAAAC + tiles: IAAAAAABHwAAAAABfgAAAAAAXQAAAAAAXQAAAAADXQAAAAADXQAAAAABHwAAAAAAHwAAAAADHwAAAAACHwAAAAADHwAAAAAAHwAAAAACHwAAAAABfgAAAAAATQAAAAADHwAAAAACHwAAAAADfgAAAAAAXQAAAAADXQAAAAADXQAAAAAAfgAAAAAAHwAAAAACHwAAAAADHwAAAAADHwAAAAABHwAAAAABHwAAAAACHwAAAAABfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABXQAAAAABXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAABXQAAAAAAXQAAAAABTQAAAAACXQAAAAABXQAAAAAAXQAAAAAAXQAAAAADXQAAAAABXQAAAAAAXQAAAAACXQAAAAAAXQAAAAABXQAAAAABXQAAAAADHwAAAAABHwAAAAACLwAAAAACLwAAAAADLwAAAAABHwAAAAADHwAAAAADLwAAAAAAHwAAAAABHwAAAAADLwAAAAADLwAAAAACLwAAAAABXQAAAAADXQAAAAACXQAAAAABXQAAAAABXQAAAAADXQAAAAACXQAAAAABXQAAAAACXQAAAAABXQAAAAADXQAAAAACXQAAAAABXQAAAAADXQAAAAACXQAAAAACXQAAAAABXQAAAAADXQAAAAABTQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAABcAAAAAABcAAAAAADfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAACcAAAAAAAcAAAAAADfgAAAAAAfgAAAAAAXQAAAAACcAAAAAABcAAAAAACcAAAAAABcAAAAAABcAAAAAAAcAAAAAADcAAAAAADcAAAAAAAcAAAAAABcAAAAAABcAAAAAAAcAAAAAABcAAAAAACcAAAAAAAfgAAAAAAXQAAAAACcAAAAAACcAAAAAADfgAAAAAAcAAAAAACcAAAAAACcAAAAAAAcAAAAAACcAAAAAABcAAAAAADcAAAAAAAcAAAAAACcAAAAAACcAAAAAADcAAAAAAAcAAAAAABXQAAAAABcAAAAAABcAAAAAADfgAAAAAAcAAAAAABcAAAAAAAcAAAAAAAcAAAAAABcAAAAAACcAAAAAADcAAAAAADcAAAAAACcAAAAAAAcAAAAAAAcAAAAAACcAAAAAADXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAACcAAAAAAAcAAAAAABcAAAAAACcAAAAAADcAAAAAAAcAAAAAACcAAAAAADcAAAAAACcAAAAAAATQAAAAAAcAAAAAAAcAAAAAACcAAAAAADcAAAAAAAcAAAAAADcAAAAAAAcAAAAAAAcAAAAAACcAAAAAACcAAAAAABcAAAAAABcAAAAAACcAAAAAAAcAAAAAACfgAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAACcAAAAAAAcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAXQAAAAAAfgAAAAAAXQAAAAACXQAAAAAAXQAAAAADXQAAAAADcAAAAAACcAAAAAABcAAAAAADfgAAAAAAcAAAAAACcAAAAAACcAAAAAACcAAAAAADcAAAAAACfgAAAAAAXQAAAAABfgAAAAAAXQAAAAABXQAAAAAAXQAAAAACXQAAAAACcAAAAAAAcAAAAAAAcAAAAAABfgAAAAAAcAAAAAABcQAAAAAAcQAAAAAAcQAAAAAAcAAAAAADfgAAAAAAXQAAAAABfgAAAAAAXQAAAAACXQAAAAACXQAAAAACfgAAAAAAcAAAAAACcAAAAAADcAAAAAADfgAAAAAAcAAAAAADcQAAAAADcQAAAAACcQAAAAACcAAAAAACfgAAAAAAXQAAAAAC version: 6 -4,-3: ind: -4,-3 @@ -428,7 +428,7 @@ entities: version: 6 -4,-2: ind: -4,-2 - tiles: fgAAAAAAXQAAAAABfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAHwAAAAACHwAAAAAAXQAAAAABXQAAAAABXQAAAAACfgAAAAAAcAAAAAAAcAAAAAACcAAAAAADcAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAABcAAAAAACcAAAAAADcAAAAAADcAAAAAAAcAAAAAACcAAAAAABcAAAAAACbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAcAAAAAACHwAAAAABHwAAAAABHwAAAAADcAAAAAACcAAAAAADHwAAAAADHwAAAAABHwAAAAAAcAAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAACcAAAAAABcAAAAAAAcAAAAAACcAAAAAACcAAAAAADcAAAAAABcAAAAAAAcAAAAAACcAAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAfgAAAAAAcAAAAAACcAAAAAABcAAAAAADcAAAAAACcAAAAAADXQAAAAABcAAAAAACcAAAAAADfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAfgAAAAAAcAAAAAABcAAAAAABcAAAAAACcAAAAAABcAAAAAADfgAAAAAAcAAAAAADdAAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAfgAAAAAAcAAAAAACcAAAAAADcAAAAAACcAAAAAAAcAAAAAADfgAAAAAAcAAAAAACdAAAAAABfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAADfgAAAAAAfgAAAAAAcAAAAAACdAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAABcAAAAAADcAAAAAABcAAAAAAAcAAAAAADfgAAAAAAcAAAAAAAdAAAAAABbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAWQAAAAACWQAAAAABWQAAAAACcAAAAAACcAAAAAABfgAAAAAAcAAAAAADdAAAAAACfgAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAWQAAAAABWQAAAAAAWQAAAAAAcAAAAAADcAAAAAACfgAAAAAAcAAAAAACdAAAAAACfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAWQAAAAABWQAAAAAAWQAAAAADcAAAAAACcAAAAAAAfgAAAAAAcAAAAAACcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAADcAAAAAABcAAAAAADcAAAAAADcAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAADcAAAAAAC + tiles: fgAAAAAAXQAAAAABfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAHwAAAAACHwAAAAAAXQAAAAABXQAAAAABXQAAAAACfgAAAAAAcAAAAAAAcAAAAAACcAAAAAADcAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAABcAAAAAACcAAAAAADcAAAAAADcAAAAAAAcAAAAAACcAAAAAABcAAAAAACbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAcAAAAAACHwAAAAABHwAAAAABHwAAAAADcAAAAAACcAAAAAADHwAAAAADHwAAAAABHwAAAAAAcAAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAACcAAAAAABcAAAAAAAcAAAAAACcAAAAAACcAAAAAADcAAAAAABcAAAAAAAcAAAAAACcAAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAfgAAAAAAcAAAAAACcAAAAAABcAAAAAADcAAAAAACcAAAAAADXQAAAAABcAAAAAACcAAAAAADfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAcAAAAAABcAAAAAABcAAAAAACcAAAAAABcAAAAAADfgAAAAAAcAAAAAADdAAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAcAAAAAAAcAAAAAAAcAAAAAAAfgAAAAAAcAAAAAACcAAAAAADcAAAAAACcAAAAAAAcAAAAAADfgAAAAAAcAAAAAACdAAAAAABfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAADfgAAAAAAfgAAAAAAcAAAAAACdAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAABcAAAAAADcAAAAAABcAAAAAAAcAAAAAADfgAAAAAAcAAAAAAAdAAAAAABbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAWQAAAAACWQAAAAABWQAAAAACcAAAAAACcAAAAAABfgAAAAAAcAAAAAADdAAAAAACfgAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAWQAAAAABWQAAAAAAWQAAAAAAcAAAAAADcAAAAAACfgAAAAAAcAAAAAACdAAAAAACfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAWQAAAAABWQAAAAAAWQAAAAADcAAAAAACcAAAAAAAfgAAAAAAcAAAAAACcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAADcAAAAAABcAAAAAADcAAAAAADcAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAADcAAAAAAC version: 6 -5,-2: ind: -5,-2 @@ -464,11 +464,11 @@ entities: version: 6 -2,-1: ind: -2,-1 - tiles: bAAAAAAAfgAAAAAAXQAAAAAAXQAAAAADXQAAAAABfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAMgAAAAADUQAAAAAAfgAAAAAAfgAAAAAAXQAAAAABTgAAAAABXQAAAAABfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAMgAAAAABMgAAAAACbAAAAAAAfgAAAAAAXQAAAAAAXQAAAAADXQAAAAADfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAMgAAAAADfgAAAAAAfgAAAAAAXQAAAAADXQAAAAACXQAAAAADfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAADXQAAAAADXQAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAUQAAAAAAfgAAAAAAHwAAAAACXQAAAAAATgAAAAACXQAAAAAAXQAAAAABfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAACTQAAAAAAXQAAAAAATQAAAAACXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADTQAAAAACXQAAAAABXQAAAAABfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAXQAAAAACTQAAAAADTgAAAAABXQAAAAADfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAABXQAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAegAAAAABegAAAAABfgAAAAAAXQAAAAACXQAAAAADTgAAAAACTQAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAegAAAAABegAAAAAAfgAAAAAAXQAAAAAAXQAAAAABXQAAAAABXQAAAAADXQAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAegAAAAAAegAAAAADfgAAAAAAfgAAAAAATQAAAAADXQAAAAADXQAAAAADTgAAAAADXQAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAegAAAAACQAAAAAAAQAAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAACXQAAAAABTgAAAAABXQAAAAADXQAAAAABXQAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAHwAAAAACHwAAAAABfgAAAAAAXQAAAAADXQAAAAAAXQAAAAADTgAAAAAAXQAAAAACXQAAAAADXQAAAAADfgAAAAAAfgAAAAAAegAAAAABQAAAAAAAQAAAAAAAHwAAAAABHwAAAAAAHwAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADXQAAAAABXQAAAAAATgAAAAADXQAAAAACXQAAAAAD + tiles: bAAAAAAAfgAAAAAAXQAAAAAAXQAAAAADXQAAAAABfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAMgAAAAADUQAAAAAAfgAAAAAAfgAAAAAAXQAAAAABTgAAAAABXQAAAAABfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAMgAAAAABMgAAAAACbAAAAAAAfgAAAAAAXQAAAAAAXQAAAAADXQAAAAADfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAMgAAAAADfgAAAAAAfgAAAAAAXQAAAAADXQAAAAACXQAAAAADfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAADXQAAAAADXQAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAUQAAAAAAfgAAAAAAHwAAAAACXQAAAAAATgAAAAACXQAAAAAAXQAAAAABfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAACTQAAAAAAXQAAAAAATQAAAAACXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADTQAAAAACXQAAAAABXQAAAAABfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAXQAAAAACTQAAAAADTgAAAAABXQAAAAADfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAABXQAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAJQAAAAAAJQAAAAAAfgAAAAAAXQAAAAACXQAAAAADTgAAAAACTQAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAJQAAAAAAJQAAAAAAfgAAAAAAXQAAAAAAXQAAAAABXQAAAAABXQAAAAADXQAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAJQAAAAAAJQAAAAAAfgAAAAAAfgAAAAAATQAAAAADXQAAAAADXQAAAAADTgAAAAADXQAAAAAAXQAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAJQAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAXQAAAAACXQAAAAADXQAAAAACXQAAAAABTgAAAAABXQAAAAADXQAAAAABXQAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAJQAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAHwAAAAACHwAAAAABfgAAAAAAXQAAAAADXQAAAAAAXQAAAAADTgAAAAAAXQAAAAACXQAAAAADXQAAAAADfgAAAAAAfgAAAAAAJQAAAAAAQAAAAAAAQAAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAADXQAAAAABXQAAAAAATgAAAAADXQAAAAACXQAAAAAD version: 6 -2,0: ind: -2,0 - tiles: fgAAAAAAHwAAAAAAHwAAAAAAHwAAAAACHwAAAAACHwAAAAAAHwAAAAADHwAAAAAAHwAAAAADHwAAAAAAXQAAAAAAXQAAAAABXQAAAAAAXQAAAAABXQAAAAADXQAAAAABbAAAAAAAHwAAAAAAHwAAAAADHwAAAAADHwAAAAAAHwAAAAAAHwAAAAABHwAAAAADHwAAAAADHwAAAAACXQAAAAABXQAAAAADXQAAAAACXQAAAAADXQAAAAACXQAAAAAAfgAAAAAAHwAAAAACHwAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfAAAAAABHwAAAAADHwAAAAACQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAegAAAAACegAAAAAAegAAAAABegAAAAACegAAAAAAegAAAAABfgAAAAAAfgAAAAAAfgAAAAAAegAAAAAAHwAAAAABHwAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAegAAAAADegAAAAABegAAAAADegAAAAADegAAAAADegAAAAACfgAAAAAAfgAAAAAAfgAAAAAAegAAAAABHwAAAAACHwAAAAACQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAADfAAAAAACfAAAAAABegAAAAADegAAAAADegAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAABHwAAAAADHwAAAAADQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAADfAAAAAAAfAAAAAADegAAAAAAegAAAAACegAAAAADfgAAAAAAfgAAAAAAfgAAAAAAegAAAAAAHwAAAAAAHwAAAAABQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAACfAAAAAACfAAAAAABegAAAAACegAAAAACegAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAACHwAAAAACHwAAAAACQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAACfAAAAAAAfAAAAAAAegAAAAACegAAAAADegAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAABegAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAADegAAAAABegAAAAABegAAAAABegAAAAACegAAAAABfgAAAAAAcAAAAAAAcAAAAAACfgAAAAAAcAAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAAAHwAAAAAAHwAAAAABHwAAAAADegAAAAAAegAAAAACfgAAAAAAfgAAAAAAeQAAAAADeQAAAAADcAAAAAABcAAAAAABcAAAAAACfgAAAAAAfgAAAAAAfgAAAAAAegAAAAACHwAAAAACHwAAAAAAHwAAAAABegAAAAACegAAAAADfgAAAAAAcAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAeQAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAegAAAAACHwAAAAAAHwAAAAABHwAAAAABegAAAAAAegAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAADHwAAAAAAHwAAAAACHwAAAAADegAAAAADegAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAHwAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAA + tiles: fgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAHwAAAAAAXQAAAAAAXQAAAAABXQAAAAAAXQAAAAABXQAAAAADXQAAAAABbAAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAIgAAAAAAHwAAAAACXQAAAAABXQAAAAADXQAAAAACXQAAAAADXQAAAAACXQAAAAAAfgAAAAAAJgAAAAAAJgAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfAAAAAABJgAAAAAAJgAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAegAAAAACegAAAAAAegAAAAABegAAAAACegAAAAAAegAAAAABfgAAAAAAfgAAAAAAfgAAAAAAegAAAAAAJgAAAAAAJgAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAegAAAAADegAAAAABegAAAAADegAAAAADegAAAAADegAAAAACfgAAAAAAfgAAAAAAfgAAAAAAegAAAAABJgAAAAAAJgAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAADfAAAAAACfAAAAAABegAAAAADegAAAAADegAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAABJgAAAAAAJgAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAADfAAAAAAAfAAAAAADegAAAAAAegAAAAACegAAAAADfgAAAAAAfgAAAAAAfgAAAAAAegAAAAAAJgAAAAAAJgAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAACfAAAAAACfAAAAAABegAAAAACegAAAAACegAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAACJgAAAAAAJgAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAfgAAAAAAfAAAAAACfAAAAAAAfAAAAAAAegAAAAACegAAAAADegAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAABegAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAADegAAAAABegAAAAABegAAAAABegAAAAACegAAAAABfgAAAAAAcAAAAAAAcAAAAAACfgAAAAAAcAAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAAAJgAAAAAAJgAAAAAAJgAAAAAAegAAAAAAegAAAAACfgAAAAAAfgAAAAAAeQAAAAADeQAAAAADcAAAAAABcAAAAAABcAAAAAACfgAAAAAAfgAAAAAAfgAAAAAAegAAAAACJgAAAAAAJgAAAAAAJgAAAAAAegAAAAACegAAAAADfgAAAAAAcAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAeQAAAAACfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAegAAAAACJgAAAAAAJgAAAAAAJgAAAAAAegAAAAAAegAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAcAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAegAAAAADJgAAAAAAJgAAAAAAJgAAAAAAegAAAAADegAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAHwAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAA version: 6 -3,1: ind: -3,1 @@ -488,7 +488,7 @@ entities: version: 6 0,-3: ind: 0,-3 - tiles: fgAAAAAAfgAAAAAALAAAAAAAfgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAALAAAAAAAfgAAAAAAUQAAAAAAUQAAAAAAUQAAAAAAfgAAAAAAOAAAAAAAOAAAAAAAOAAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAABggAAAAACgQAAAAAAggAAAAABHwAAAAADHwAAAAAAfgAAAAAAKQAAAAAAKQAAAAACKQAAAAAAKQAAAAADKQAAAAACKQAAAAACKQAAAAABKQAAAAAAKQAAAAACgQAAAAAAggAAAAABggAAAAAAgQAAAAAAHwAAAAADHwAAAAABfgAAAAAASAAAAAACSAAAAAAASAAAAAABSAAAAAACSAAAAAADSAAAAAABSAAAAAABSAAAAAADSAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAKQAAAAABSAAAAAADSwAAAAADSwAAAAABSwAAAAADSwAAAAADSwAAAAACSwAAAAAASwAAAAAAFQAAAAABFQAAAAAFFQAAAAADfgAAAAAAHwAAAAAAfgAAAAAAfgAAAAAAKQAAAAABSAAAAAABSwAAAAABfgAAAAAASwAAAAADSwAAAAABfgAAAAAASwAAAAADSwAAAAABFQAAAAAGFQAAAAAGFQAAAAACfgAAAAAAUwAAAAAAHwAAAAACfgAAAAAASAAAAAAASAAAAAABSwAAAAABSwAAAAACSwAAAAACSwAAAAACfgAAAAAASwAAAAABSwAAAAABFQAAAAABFQAAAAACFQAAAAAGFQAAAAADUwAAAAAAUwAAAAAAfgAAAAAASAAAAAABSAAAAAAASwAAAAADSwAAAAAAfQAAAAAASwAAAAACSwAAAAABfgAAAAAAfQAAAAAAFQAAAAAFFQAAAAADFQAAAAABfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAKQAAAAAASAAAAAAASwAAAAABSwAAAAACSwAAAAABSwAAAAABfQAAAAAASwAAAAAASwAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAKQAAAAACSAAAAAADSwAAAAABSwAAAAABSwAAAAACSwAAAAADSwAAAAABSwAAAAADSwAAAAABFQAAAAACfgAAAAAAfQAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAASAAAAAADSAAAAAACSAAAAAACSAAAAAADSAAAAAADSAAAAAAASAAAAAADSAAAAAACSAAAAAADfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfQAAAAAAUwAAAAAAfgAAAAAAMAAAAAAAMAAAAAAAMAAAAAAASwAAAAADSwAAAAADSwAAAAAASwAAAAAASwAAAAABSwAAAAACfgAAAAAAFQAAAAAEfgAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAMAAAAAAAMAAAAAAAMAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAACfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAQgAAAAAAQQAAAAAAFwAAAAACfgAAAAAAUwAAAAAAUwAAAAAAUwAAAAAAUwAAAAAAHwAAAAACfgAAAAAAHwAAAAAAfgAAAAAAHwAAAAABHwAAAAAAHwAAAAACHwAAAAAA + tiles: fgAAAAAAfgAAAAAALAAAAAAAfgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAALAAAAAAAfgAAAAAAUQAAAAAAUQAAAAAAUQAAAAAAfgAAAAAAOAAAAAAAOAAAAAAAOAAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAABggAAAAACgQAAAAAAggAAAAABHwAAAAADHwAAAAAAfgAAAAAAKQAAAAAAKQAAAAACKQAAAAAAKQAAAAADKQAAAAACKQAAAAACKQAAAAABKQAAAAAAKQAAAAACgQAAAAAAggAAAAABggAAAAAAgQAAAAAAHwAAAAADHwAAAAABfgAAAAAASAAAAAACSAAAAAAASAAAAAABSAAAAAACSAAAAAADSAAAAAABSAAAAAABSAAAAAADSAAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAKQAAAAABSAAAAAADSwAAAAADSwAAAAABSwAAAAADSwAAAAADSwAAAAACSwAAAAAASwAAAAAAFQAAAAABFQAAAAAFFQAAAAADfgAAAAAAHwAAAAAAfgAAAAAAfgAAAAAAKQAAAAABSAAAAAABSwAAAAABfgAAAAAASwAAAAADSwAAAAABfgAAAAAASwAAAAADSwAAAAABFQAAAAAGFQAAAAAGFQAAAAACfgAAAAAAUwAAAAAAHwAAAAACfgAAAAAASAAAAAAASAAAAAABSwAAAAABSwAAAAACSwAAAAACSwAAAAACfgAAAAAASwAAAAABSwAAAAABFQAAAAABFQAAAAACFQAAAAAGFQAAAAADUwAAAAAAUwAAAAAAfgAAAAAASAAAAAABSAAAAAAASwAAAAADSwAAAAAAfQAAAAAASwAAAAACSwAAAAABfgAAAAAAfQAAAAAAFQAAAAAFFQAAAAADFQAAAAABfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAKQAAAAAASAAAAAAASwAAAAABSwAAAAACSwAAAAABSwAAAAABfQAAAAAASwAAAAAASwAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAKQAAAAACSAAAAAADSwAAAAABSwAAAAABSwAAAAACSwAAAAADSwAAAAABSwAAAAADSwAAAAABFQAAAAACfgAAAAAAUwAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAASAAAAAADSAAAAAACSAAAAAACSAAAAAADSAAAAAADSAAAAAAASAAAAAADSAAAAAACSAAAAAADfgAAAAAAUwAAAAAAUwAAAAAAUwAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAMAAAAAAAMAAAAAAAMAAAAAAASwAAAAADSwAAAAADSwAAAAAASwAAAAAASwAAAAABSwAAAAACfgAAAAAAFQAAAAAEfgAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAMAAAAAAAMAAAAAAAMAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAUwAAAAAAUwAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAHwAAAAACfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAQgAAAAAAQQAAAAAAFwAAAAACfgAAAAAAUwAAAAAAUwAAAAAAUwAAAAAAUwAAAAAAHwAAAAACfgAAAAAAHwAAAAAAfgAAAAAAHwAAAAABHwAAAAAAHwAAAAACHwAAAAAA version: 6 -1,-3: ind: -1,-3 @@ -496,7 +496,7 @@ entities: version: 6 0,-4: ind: 0,-4 - tiles: NgAAAAABNgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAABNgAAAAABNgAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADNgAAAAAANgAAAAACNgAAAAABNgAAAAABNgAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAANgAAAAADNgAAAAAANgAAAAACNgAAAAACNgAAAAACNgAAAAABNgAAAAACNgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAACNgAAAAABNgAAAAABNgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAZAAAAAAANgAAAAABNgAAAAABNgAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADNgAAAAACNgAAAAABNgAAAAAANgAAAAAANgAAAAADZAAAAAAAZAAAAAAANgAAAAACNgAAAAADNgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAACNgAAAAACNgAAAAACNgAAAAAANgAAAAABZAAAAAAAZAAAAAAAZAAAAAAANgAAAAADNgAAAAABNgAAAAACZAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAANgAAAAAAfgAAAAAANgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAACNgAAAAABfgAAAAAANgAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAANgAAAAAANgAAAAAAfgAAAAAANgAAAAACNgAAAAAANgAAAAAANgAAAAABNgAAAAACNgAAAAACNgAAAAAANgAAAAADNgAAAAAANgAAAAABNgAAAAABNgAAAAADZAAAAAAAZAAAAAAANgAAAAABfgAAAAAAfgAAAAAANgAAAAABNgAAAAACZAAAAAAAZAAAAAAAZAAAAAAANgAAAAABNgAAAAACNgAAAAAANgAAAAAANgAAAAABNgAAAAADZAAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAALAAAAAAAfgAAAAAAfgAAAAAAUQAAAAAAOAAAAAAAOAAAAAAAUQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAALAAAAAAAfQAAAAAAfgAAAAAAOAAAAAAARQAAAAAARQAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAOAAAAAAARQAAAAAARQAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAACQAAAAAACQAAAAAACQAAAAAAUQAAAAAAUQAAAAAAfgAAAAAAOAAAAAAARQAAAAAARQAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAA + tiles: NgAAAAABNgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAABNgAAAAABNgAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADNgAAAAAANgAAAAACNgAAAAABNgAAAAABNgAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAANgAAAAADNgAAAAAANgAAAAACNgAAAAACNgAAAAACNgAAAAABNgAAAAACNgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAACNgAAAAABNgAAAAABNgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAZAAAAAAANgAAAAABNgAAAAABNgAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADNgAAAAACNgAAAAABNgAAAAAANgAAAAAANgAAAAADZAAAAAAAZAAAAAAANgAAAAACNgAAAAADNgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAACNgAAAAACNgAAAAACNgAAAAAANgAAAAABZAAAAAAAZAAAAAAAZAAAAAAANgAAAAADNgAAAAABNgAAAAACZAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAANgAAAAAAfgAAAAAANgAAAAABfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAACNgAAAAABfgAAAAAANgAAAAACfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAADfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAANgAAAAAANgAAAAAANgAAAAAAfgAAAAAANgAAAAACNgAAAAAANgAAAAAANgAAAAABNgAAAAACNgAAAAACNgAAAAAANgAAAAADNgAAAAAANgAAAAABNgAAAAABNgAAAAADZAAAAAAAZAAAAAAANgAAAAABfgAAAAAAfgAAAAAANgAAAAABNgAAAAACZAAAAAAAZAAAAAAAZAAAAAAANgAAAAABNgAAAAACNgAAAAAANgAAAAAANgAAAAABNgAAAAADZAAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAALAAAAAAAfgAAAAAAfgAAAAAAUQAAAAAAOAAAAAAAOAAAAAAAUQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAALAAAAAAALAAAAAAAfgAAAAAALAAAAAAAfgAAAAAAfgAAAAAAOAAAAAAARQAAAAAARQAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAOAAAAAAARQAAAAAARQAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAACQAAAAAACQAAAAAACQAAAAAAUQAAAAAAUQAAAAAAfgAAAAAAOAAAAAAARQAAAAAARQAAAAAAOAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAA version: 6 0,-2: ind: 0,-2 @@ -600,11 +600,11 @@ entities: version: 6 6,-4: ind: 6,-4 - tiles: bAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAgQAAAAAAgQAAAAAAggAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAggAAAAAAgQAAAAAAgQAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAAAAAAAAA + tiles: bAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAOwAAAAAAOwAAAAAAOwAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAOwAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAOwAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAgQAAAAAAgQAAAAAAgQAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAgQAAAAAAgQAAAAAAggAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAggAAAAAAgQAAAAAAgQAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAfgAAAAAAfgAAAAAAAAAAAAAA version: 6 7,-3: ind: 7,-3 - tiles: fgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + tiles: fgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXQAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAALwAAAAAAHwAAAAAAHwAAAAAALwAAAAAALwAAAAAAHwAAAAAAHwAAAAAALwAAAAAAHwAAAAAAHwAAAAAALwAAAAAALwAAAAAAHwAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA version: 6 6,-5: ind: 6,-5 @@ -662,6 +662,10 @@ entities: ind: 4,1 tiles: fgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAbAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA version: 6 + 8,-3: + ind: 8,-3 + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHwAAAAAALwAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAXQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + version: 6 - type: Broadphase - type: Physics bodyStatus: InAir @@ -711,6 +715,13 @@ entities: id: Basalt9 decals: 9724: -8.7937765,-23.892101 + - node: + color: '#8BDA8EFF' + id: Bot + decals: + 12354: 88,-6 + 12355: 88,-7 + 12356: 88,-8 - node: color: '#9FED58CD' id: Bot @@ -892,15 +903,15 @@ entities: 12325: 57,-18 12328: 57,-22 12329: 55,-18 + 12375: 72,-1 + 12376: 73,-1 + 12377: 74,-1 + 12378: 75,-1 - node: cleanable: True color: '#FFFFFFFF' id: Bot decals: - 10951: 72,-1 - 10952: 73,-1 - 10953: 74,-1 - 10954: 75,-1 11000: 85,-10 - node: zIndex: 1 @@ -916,13 +927,8 @@ entities: 1639: 51,-82 1643: 53,-82 1644: 54,-79 - - node: - cleanable: True - color: '#FFFFFFFF' - id: BotLeft - decals: - 10955: 72,-5 - 10956: 73,-5 + 12379: 74,-5 + 12380: 75,-5 - node: color: '#FFFFFFFF' id: BotRight @@ -931,13 +937,8 @@ entities: 1640: 48,-82 1645: 54,-82 1646: 53,-79 - - node: - cleanable: True - color: '#FFFFFFFF' - id: BotRight - decals: - 10957: 74,-5 - 10958: 75,-5 + 12381: 73,-5 + 12382: 72,-5 - node: color: '#FFFFFFFF' id: Box @@ -1008,45 +1009,6 @@ entities: id: BoxGreyscale decals: 11035: 79,-4 - - node: - cleanable: True - color: '#AE6716FF' - id: BrickCornerOverlayNE - decals: - 10965: 87,1 - 10966: 83,1 - 10967: 79,1 - - node: - cleanable: True - color: '#AE6716FF' - id: BrickCornerOverlayNW - decals: - 10968: 77,1 - 10970: 81,1 - 10971: 85,1 - - node: - cleanable: True - color: '#AE6716FF' - id: BrickCornerOverlaySE - decals: - 10975: 79,0 - 10983: 83,0 - - node: - cleanable: True - color: '#AE6716FF' - id: BrickCornerOverlaySW - decals: - 10972: 77,0 - 10973: 81,0 - 10974: 85,0 - - node: - cleanable: True - color: '#AE6716FF' - id: BrickLineOverlayN - decals: - 10977: 78,1 - 10978: 86,1 - 10979: 82,1 - node: angle: -0.6981317007977318 rad color: '#D4D4D496' @@ -1515,12 +1477,6 @@ entities: decals: 7414: 38,13 7420: 34,15 - - node: - cleanable: True - color: '#C6FF91FF' - id: BrickTileSteelCornerNe - decals: - 10987: 89,-4 - node: color: '#FF5C5C99' id: BrickTileSteelCornerNe @@ -1540,12 +1496,6 @@ entities: id: BrickTileSteelCornerNe decals: 11105: 54,7 - - node: - cleanable: True - color: '#C6FF91FF' - id: BrickTileSteelCornerNw - decals: - 10991: 87,-4 - node: color: '#FF5C5C99' id: BrickTileSteelCornerNw @@ -1572,12 +1522,6 @@ entities: id: BrickTileSteelCornerSe decals: 7411: 38,9 - - node: - cleanable: True - color: '#C6FF91FF' - id: BrickTileSteelCornerSe - decals: - 10988: 89,-8 - node: color: '#FF5C5C99' id: BrickTileSteelCornerSe @@ -1596,12 +1540,6 @@ entities: 6268: 63,-39 12048: 54,2 12237: 89,-11 - - node: - cleanable: True - color: '#C6FF91FF' - id: BrickTileSteelCornerSw - decals: - 10992: 87,-8 - node: color: '#FF5C5C99' id: BrickTileSteelCornerSw @@ -1713,14 +1651,6 @@ entities: 7412: 38,10 7413: 38,14 7416: 34,14 - - node: - cleanable: True - color: '#C6FF91FF' - id: BrickTileSteelLineE - decals: - 10984: 89,-7 - 10985: 89,-6 - 10986: 89,-5 - node: color: '#FF5C5C99' id: BrickTileSteelLineE @@ -1767,6 +1697,7 @@ entities: 8338: -37,-80 8339: -37,-79 12239: 89,-10 + 12498: 111,-41 - node: zIndex: 1 color: '#FFFFFFFF' @@ -1776,12 +1707,6 @@ entities: 11106: 54,6 11107: 54,5 11108: 54,4 - - node: - cleanable: True - color: '#C6FF91FF' - id: BrickTileSteelLineN - decals: - 10990: 88,-4 - node: color: '#FF5C5C99' id: BrickTileSteelLineN @@ -1836,6 +1761,14 @@ entities: 12228: 86,-9 12229: 87,-9 12230: 88,-9 + 12469: 116,-40 + 12470: 117,-40 + 12471: 120,-40 + 12472: 121,-40 + 12473: 123,-40 + 12474: 124,-40 + 12475: 127,-40 + 12476: 128,-40 - node: zIndex: 1 color: '#FFFFFFFF' @@ -1852,12 +1785,6 @@ entities: 7402: 35,9 7403: 36,9 7404: 37,9 - - node: - cleanable: True - color: '#C6FF91FF' - id: BrickTileSteelLineS - decals: - 10989: 88,-8 - node: color: '#FF5C5C99' id: BrickTileSteelLineS @@ -1911,6 +1838,14 @@ entities: 12234: 86,-11 12235: 87,-11 12236: 88,-11 + 12477: 123,-40 + 12478: 124,-40 + 12479: 127,-40 + 12480: 128,-40 + 12481: 121,-40 + 12482: 120,-40 + 12483: 116,-40 + 12484: 117,-40 - node: zIndex: 1 color: '#FFFFFFFF' @@ -1989,6 +1924,7 @@ entities: 8103: -56,-37 8340: -35,-79 12231: 84,-10 + 12499: 111,-41 - node: zIndex: 1 color: '#FFFFFFFF' @@ -2008,6 +1944,11 @@ entities: id: BrickTileWhiteCornerNe decals: 10282: -58,-24 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteCornerNe + decals: + 12342: 89,-4 - node: color: '#951710FF' id: BrickTileWhiteCornerNe @@ -2028,14 +1969,6 @@ entities: 10820: 65,5 12189: 75,-2 12205: 75,-2 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteCornerNe - decals: - 11013: 79,1 - 11014: 83,1 - 11015: 87,1 - node: color: '#FFFFFFFF' id: BrickTileWhiteCornerNe @@ -2065,6 +1998,11 @@ entities: id: BrickTileWhiteCornerNw decals: 10277: -60,-24 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteCornerNw + decals: + 12350: 87,-4 - node: color: '#951710FF' id: BrickTileWhiteCornerNw @@ -2086,14 +2024,6 @@ entities: 10746: 56,15 12188: 72,-2 12204: 72,-2 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteCornerNw - decals: - 11016: 85,1 - 11017: 81,1 - 11018: 77,1 - node: color: '#FFFFFFFF' id: BrickTileWhiteCornerNw @@ -2121,6 +2051,11 @@ entities: id: BrickTileWhiteCornerSe decals: 10281: -58,-26 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteCornerSe + decals: + 12346: 89,-8 - node: color: '#951710FF' id: BrickTileWhiteCornerSe @@ -2147,14 +2082,6 @@ entities: 11932: 57,3 12191: 75,-4 12202: 75,-4 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteCornerSe - decals: - 11007: 87,0 - 11008: 83,0 - 11009: 79,0 - node: color: '#FFFFFFFF' id: BrickTileWhiteCornerSe @@ -2182,6 +2109,11 @@ entities: id: BrickTileWhiteCornerSw decals: 10278: -60,-26 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteCornerSw + decals: + 12348: 87,-8 - node: color: '#951710FF' id: BrickTileWhiteCornerSw @@ -2207,14 +2139,6 @@ entities: 10756: 61,13 12190: 72,-4 12203: 72,-4 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteCornerSw - decals: - 11010: 77,0 - 11011: 81,0 - 11012: 85,0 - node: color: '#FFFFFFFF' id: BrickTileWhiteCornerSw @@ -2301,14 +2225,6 @@ entities: id: BrickTileWhiteInnerSe decals: 10273: 0,-73 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteInnerSe - decals: - 11031: 78,0 - 11032: 82,0 - 11033: 86,0 - node: color: '#FFFFFFFF' id: BrickTileWhiteInnerSe @@ -2329,14 +2245,6 @@ entities: id: BrickTileWhiteInnerSw decals: 11923: 42,-6 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteInnerSw - decals: - 11028: 78,0 - 11029: 82,0 - 11030: 86,0 - node: color: '#FFFFFFFF' id: BrickTileWhiteInnerSw @@ -2352,6 +2260,13 @@ entities: id: BrickTileWhiteLineE decals: 10299: -13,18 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteLineE + decals: + 12343: 89,-5 + 12344: 89,-6 + 12345: 89,-7 - node: color: '#951710FF' id: BrickTileWhiteLineE @@ -2373,14 +2288,6 @@ entities: 10406: 61,10 10407: 61,9 10408: 61,8 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteLineE - decals: - 11025: 78,-1 - 11026: 82,-1 - 11027: 86,-1 - node: color: '#FFFFFFFF' id: BrickTileWhiteLineE @@ -2410,6 +2317,11 @@ entities: 12291: 62,-12 12292: 63,-12 12293: 64,-12 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteLineN + decals: + 12351: 88,-4 - node: color: '#951710FF' id: BrickTileWhiteLineN @@ -2437,14 +2349,6 @@ entities: 12197: 74,-2 12198: 74,-2 12199: 73,-2 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteLineN - decals: - 11019: 78,1 - 11020: 82,1 - 11021: 86,1 - node: color: '#FFFFFFFF' id: BrickTileWhiteLineN @@ -2479,6 +2383,11 @@ entities: id: BrickTileWhiteLineS decals: 10280: -59,-26 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteLineS + decals: + 12347: 88,-8 - node: color: '#951710FF' id: BrickTileWhiteLineS @@ -2543,6 +2452,11 @@ entities: id: BrickTileWhiteLineW decals: 10279: -60,-25 + - node: + color: '#8BDA8EFF' + id: BrickTileWhiteLineW + decals: + 12349: 87,-7 - node: color: '#951710FF' id: BrickTileWhiteLineW @@ -2571,14 +2485,6 @@ entities: 10531: 59,9 10752: 56,14 11999: 77,5 - - node: - cleanable: True - color: '#FF9821FF' - id: BrickTileWhiteLineW - decals: - 11022: 78,-1 - 11023: 82,-1 - 11024: 86,-1 - node: color: '#FFFFFFFF' id: BrickTileWhiteLineW @@ -3167,6 +3073,13 @@ entities: id: ConcreteTrimCornerNe decals: 11522: 75,7 + - node: + color: '#EFB34196' + id: ConcreteTrimCornerNe + decals: + 12363: 87,1 + 12364: 79,1 + 12371: 83,1 - node: color: '#FFFFFFFF' id: ConcreteTrimCornerNe @@ -3196,6 +3109,13 @@ entities: id: ConcreteTrimCornerNw decals: 11520: 73,7 + - node: + color: '#EFB34196' + id: ConcreteTrimCornerNw + decals: + 12357: 81,1 + 12361: 77,1 + 12362: 85,1 - node: color: '#FFFFFFFF' id: ConcreteTrimCornerNw @@ -3221,6 +3141,13 @@ entities: id: ConcreteTrimCornerSe decals: 11521: 75,3 + - node: + color: '#EFB34196' + id: ConcreteTrimCornerSe + decals: + 12358: 83,0 + 12359: 87,0 + 12360: 79,0 - node: color: '#FFFFFFFF' id: ConcreteTrimCornerSe @@ -3250,6 +3177,13 @@ entities: id: ConcreteTrimCornerSw decals: 11523: 73,3 + - node: + color: '#EFB34196' + id: ConcreteTrimCornerSw + decals: + 12368: 85,0 + 12369: 81,0 + 12370: 77,0 - node: color: '#FFFFFFFF' id: ConcreteTrimCornerSw @@ -3475,6 +3409,13 @@ entities: decals: 11341: 78,6 11524: 74,7 + - node: + color: '#EFB34196' + id: ConcreteTrimLineN + decals: + 12365: 78,1 + 12366: 82,1 + 12367: 86,1 - node: color: '#FFFFFFFF' id: ConcreteTrimLineN @@ -3815,20 +3756,18 @@ entities: 12313: 62,-14 12314: 64,-14 12315: 65,-14 + 12459: 103,-41 + 12460: 103,-42 + 12461: 103,-43 + 12462: 109,-41 + 12463: 109,-42 + 12464: 109,-43 - node: angle: 4.71238898038469 rad color: '#FFFFFFFF' id: Delivery decals: 8242: 39,20 - - node: - cleanable: True - color: '#C6FF91FF' - id: DeliveryGreyscale - decals: - 10993: 88,-8 - 10994: 88,-7 - 10995: 88,-6 - node: color: '#FFFFFFFF' id: DerelictSignBottom1 @@ -4175,7 +4114,6 @@ entities: id: Dirt decals: 3120: 85,-10 - 3121: 74,-5 - node: cleanable: True color: '#FFFFFF5D' @@ -4187,9 +4125,6 @@ entities: 3155: 71,-2 3158: 77,-12 3161: 88,-11 - 3162: 88,-7 - 3163: 89,-5 - 3164: 87,-4 3295: -28,-93 3296: -27,-93 3297: -26,-92 @@ -4428,7 +4363,6 @@ entities: 4471: -30,-18 4472: -28,-22 4473: -29,-24 - 4474: -30,-25 4475: -30,-28 4476: -31,-29 4477: -29,-33 @@ -4693,7 +4627,6 @@ entities: 6448: -52,-29 6449: -36,-39 6450: -37,-58 - 6451: -44,-61 6452: -77,-53 6453: -72,-50 6454: -76,-41 @@ -5433,8 +5366,6 @@ entities: 10260: -9,-48 10261: -9,-49 10262: -9,-49 - 10898: 88,-6 - 10899: 88,-7 10909: 72,-13 10910: 72,-12 10924: 87,-10 @@ -5472,7 +5403,6 @@ entities: decals: 125: 8,-100 128: 3,-79 - 3146: 89,-7 4029: -50,-88 4039: -12,14 4043: -9,15 @@ -5490,7 +5420,6 @@ entities: 4677: -1,8 4678: -8,3 4679: -22,0 - 4680: -31,6 4681: -36,-6 4683: -43,-16 4684: -42,-29 @@ -5578,10 +5507,8 @@ entities: 122: 8,-93 126: 6,-96 129: 3,-85 - 3142: 79,0 3143: 77,-6 3144: 85,-10 - 3145: 88,-4 4026: -48,-88 4035: -46,-93 4053: -64,-35 @@ -5605,7 +5532,6 @@ entities: 4579: -60,-8 4580: -53,2 4581: -43,7 - 4582: -27,-1 4583: -26,-3 4584: -30,-53 4585: -30,-65 @@ -6211,6 +6137,15 @@ entities: 1290: 101,-23 1291: 91,-23 1310: 82,-33 + - node: + color: '#FFFFFFFF' + id: GrayConcreteTrimBox + decals: + 12489: 115,-40 + 12490: 122,-40 + 12491: 129,-40 + 12492: 111,-40 + 12493: 111,-42 - node: color: '#A4610696' id: GrayConcreteTrimCornerNe @@ -6261,6 +6196,13 @@ entities: 1282: 95,-41 1294: 88,-23 1295: 95,-23 + - node: + color: '#FFFFFFFF' + id: GrayConcreteTrimEndE + decals: + 12485: 119,-40 + 12486: 126,-40 + 12494: 107,-42 - node: color: '#9FED5896' id: GrayConcreteTrimEndW @@ -6269,6 +6211,13 @@ entities: 1280: 86,-41 1292: 94,-23 1293: 86,-23 + - node: + color: '#FFFFFFFF' + id: GrayConcreteTrimEndW + decals: + 12487: 118,-40 + 12488: 125,-40 + 12495: 105,-42 - node: color: '#A4610696' id: GrayConcreteTrimLineE @@ -6303,6 +6252,7 @@ entities: decals: 9236: -6,-6 9246: 6,-7 + 12497: 106,-42 - node: color: '#9FED5896' id: GrayConcreteTrimLineS @@ -6321,6 +6271,7 @@ entities: decals: 9237: -6,-8 9245: 6,-9 + 12496: 106,-42 - node: color: '#A4610696' id: GrayConcreteTrimLineW @@ -6560,6 +6511,9 @@ entities: 1299: 98,-40 2236: 91,-22 2237: 98,-22 + 12452: 115,-39 + 12453: 122,-39 + 12454: 129,-39 - node: angle: 3.141592653589793 rad color: '#FFFFFFFF' @@ -6568,6 +6522,8 @@ entities: 1300: 91,-24 1301: 98,-24 6624: 12,-85 + 12455: 129,-41 + 12456: 122,-41 - node: color: '#000000FF' id: MarkupSquare @@ -6654,7 +6610,6 @@ entities: 2050: 5,21 2077: 5,26 2088: 11,20 - 2199: -27,0 - node: color: '#FFFFFFFF' id: MiniTileDarkCornerNw @@ -6663,7 +6618,6 @@ entities: 1152: 1,3 2058: -5,21 2076: -5,26 - 2198: -26,0 - node: color: '#FFFFFFFF' id: MiniTileDarkCornerSe @@ -6687,7 +6641,6 @@ entities: 868: -29,-71 869: -34,-70 2046: 8,23 - 2218: -30,1 2233: 32,-66 3931: 6,24 5326: 30,-32 @@ -6836,7 +6789,6 @@ entities: 1027: -29,-14 1028: -30,-20 1029: -29,-20 - 1030: -30,-26 1031: -29,-26 1032: -30,-32 1033: -29,-32 @@ -6884,8 +6836,6 @@ entities: 2056: 5,20 2057: 2,22 2080: 5,25 - 2219: -31,0 - 2220: -27,-1 3354: -16,-1 3360: -25,-5 3362: -27,-7 @@ -6920,6 +6870,7 @@ entities: 7773: -13,1 10323: -14,19 11651: 63,-34 + 12647: -30,-26 - node: color: '#FFFFFFFF' id: MiniTileDarkInnerNw @@ -7077,8 +7028,6 @@ entities: 2067: -3,21 2068: -2,22 2079: -5,25 - 2221: -26,-1 - 2222: -24,0 2456: -64,-45 3367: -18,-1 3452: -73,-42 @@ -7139,7 +7088,6 @@ entities: 233: 79,-32 265: -30,-14 266: -30,-20 - 267: -30,-26 268: -30,-32 269: -33,-32 270: -33,-38 @@ -7267,7 +7215,6 @@ entities: 1406: -1,-81 1541: -75,-49 2029: 28,-10 - 2225: -31,8 3355: -16,1 3356: -21,-1 3357: -26,-5 @@ -7302,6 +7249,7 @@ entities: 7913: -50,-43 10322: -14,19 12052: 43,-29 + 12646: -30,-26 - node: color: '#FFFFFFFF' id: MiniTileDarkInnerSw @@ -7454,8 +7402,6 @@ entities: 1540: -73,-49 2028: 30,-10 2031: 16,1 - 2223: -24,1 - 2224: -30,8 2457: -64,-43 3361: -25,-5 3366: -18,0 @@ -7612,7 +7558,6 @@ entities: 949: -29,-23 950: -30,-23 951: -30,-24 - 952: -30,-25 953: -30,-19 954: -30,-18 955: -30,-17 @@ -7629,13 +7574,6 @@ entities: 1119: -12,3 1121: -13,3 1153: 0,3 - 2205: -31,1 - 2206: -31,2 - 2207: -31,3 - 2208: -31,4 - 2209: -31,5 - 2210: -31,6 - 2211: -31,7 2227: 38,-65 2228: 38,-64 3446: -72,-39 @@ -7651,6 +7589,7 @@ entities: 10317: -14,18 11626: 28,-31 11627: 29,-31 + 12645: -30,-25 - node: color: '#FFFFFFFF' id: MiniTileDarkLineN @@ -7777,10 +7716,6 @@ entities: 2074: -3,26 2075: -4,26 2078: -6,25 - 2194: -25,0 - 2195: -28,0 - 2196: -29,0 - 2197: -30,0 3450: -74,-42 3921: 4,21 3922: 3,21 @@ -7924,11 +7859,6 @@ entities: 2084: 7,19 2085: 9,19 2086: 10,19 - 2200: -25,1 - 2201: -26,1 - 2202: -27,1 - 2203: -28,1 - 2204: -29,1 2229: 36,-66 2230: 35,-66 2231: 34,-66 @@ -8093,12 +8023,6 @@ entities: 1122: -12,3 1123: -12,2 1157: 0,3 - 2212: -30,7 - 2213: -30,6 - 2214: -30,5 - 2215: -30,4 - 2216: -30,3 - 2217: -30,2 2234: 32,-65 2235: 32,-64 3448: -72,-39 @@ -8198,6 +8122,12 @@ entities: 2891: -39,-55 3619: -44,-73 3620: -44,-59 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileSteelCornerNe + decals: + 12750: -35,-58 - node: color: '#FFFFFFFF' id: MiniTileSteelCornerNe @@ -8210,6 +8140,12 @@ entities: decals: 1499: -30,-75 3435: -76,-43 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileSteelCornerSe + decals: + 12751: -35,-60 - node: color: '#FFFFFFFF' id: MiniTileSteelCornerSe @@ -8266,6 +8202,34 @@ entities: id: MiniTileSteelInnerSw decals: 1508: -29,-75 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileSteelLineE + decals: + 12722: -43,-55 + 12723: -43,-54 + 12724: -43,-53 + 12725: -43,-56 + 12726: -43,-57 + 12753: -43,-61 + 12754: -43,-62 + 12755: -43,-63 + 12756: -43,-64 + 12757: -43,-66 + 12758: -43,-67 + 12759: -43,-68 + 12760: -43,-69 + 12761: -43,-70 + 12775: -43,-72 + 12776: -43,-73 + 12777: -43,-75 + 12778: -43,-76 + 12779: -42,-78 + 12780: -42,-79 + 12781: -42,-80 + 12782: -42,-81 + 12783: -42,-82 - node: color: '#FFFFFFFF' id: MiniTileSteelLineE @@ -8273,6 +8237,17 @@ entities: 1501: -29,-76 1504: -30,-76 3440: -72,-44 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileSteelLineN + decals: + 12744: -42,-58 + 12745: -41,-58 + 12746: -40,-58 + 12747: -38,-58 + 12748: -37,-58 + 12749: -36,-58 - node: color: '#FFFFFFFF' id: MiniTileSteelLineN @@ -8280,6 +8255,20 @@ entities: 3436: -75,-43 3437: -74,-43 3438: -73,-43 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileSteelLineS + decals: + 12738: -39,-60 + 12739: -40,-60 + 12740: -41,-60 + 12741: -42,-60 + 12742: -37,-60 + 12743: -36,-60 + 12784: -43,-82 + 12785: -44,-82 + 12786: -45,-82 - node: color: '#FFFFFFFF' id: MiniTileSteelLineS @@ -8287,6 +8276,35 @@ entities: 3431: -73,-45 3432: -74,-45 3433: -75,-45 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileSteelLineW + decals: + 12727: -45,-54 + 12728: -45,-55 + 12729: -45,-56 + 12730: -45,-57 + 12731: -45,-58 + 12732: -45,-59 + 12733: -45,-60 + 12734: -45,-61 + 12735: -45,-62 + 12736: -45,-63 + 12737: -45,-64 + 12762: -45,-66 + 12763: -45,-68 + 12764: -45,-69 + 12765: -45,-70 + 12766: -45,-71 + 12767: -45,-73 + 12768: -45,-74 + 12769: -45,-75 + 12770: -45,-76 + 12771: -45,-77 + 12772: -45,-78 + 12773: -45,-79 + 12774: -45,-80 - node: color: '#FFFFFFFF' id: MiniTileSteelLineW @@ -8349,6 +8367,8 @@ entities: 6134: -7,-72 6253: 67,-42 7570: 31,14 + 12441: 130,-39 + 12442: 112,-39 - node: color: '#A4610696' id: MiniTileWhiteCornerNe @@ -8408,6 +8428,16 @@ entities: id: MiniTileWhiteCornerNe decals: 10287: 58,-81 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteCornerNe + decals: + 12583: -48,-19 + 12649: -52,-24 + 12667: -41,-15 + 12689: -35,-37 + 12714: -49,-32 - node: color: '#334E6DC8' id: MiniTileWhiteCornerNw @@ -8462,6 +8492,8 @@ entities: 7566: 26,9 7571: 27,14 7700: -30,-10 + 12447: 110,-39 + 12449: 114,-39 - node: color: '#A4610696' id: MiniTileWhiteCornerNw @@ -8528,6 +8560,16 @@ entities: id: MiniTileWhiteCornerNw decals: 10286: 57,-81 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteCornerNw + decals: + 12530: -58,-28 + 12581: -39,-29 + 12652: -56,-24 + 12664: -56,-13 + 12715: -52,-32 - node: color: '#334E6DC8' id: MiniTileWhiteCornerSe @@ -8570,7 +8612,6 @@ entities: 5542: 89,-43 5558: 89,-25 5559: 96,-25 - 5560: 102,-43 5561: 96,-43 5660: 70,-30 5720: 33,-56 @@ -8580,6 +8621,8 @@ entities: 5950: -30,-35 6135: -7,-73 9867: 3,-1 + 12443: 112,-43 + 12457: 130,-41 - node: color: '#A4610696' id: MiniTileWhiteCornerSe @@ -8643,6 +8686,13 @@ entities: id: MiniTileWhiteCornerSe decals: 10288: 58,-83 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteCornerSe + decals: + 12590: -48,-26 + 12690: -35,-41 - node: color: '#334E6DC8' id: MiniTileWhiteCornerSw @@ -8705,6 +8755,7 @@ entities: 5677: 62,-30 5882: -30,-72 7764: 11,-1 + 12451: 114,-41 - node: color: '#A4610696' id: MiniTileWhiteCornerSw @@ -8772,6 +8823,21 @@ entities: id: MiniTileWhiteCornerSw decals: 10289: 57,-83 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteCornerSw + decals: + 12531: -58,-30 + 12546: -50,-17 + 12591: -50,-25 + 12592: -50,-24 + 12593: -50,-23 + 12594: -50,-22 + 12595: -50,-21 + 12653: -56,-26 + 12665: -56,-16 + 12720: -52,-37 - node: color: '#334E6DC8' id: MiniTileWhiteEndN @@ -8838,6 +8904,7 @@ entities: 7620: -63,-51 7710: -28,-70 9964: -31,-43 + 12440: 102,-41 - node: color: '#9FED58CC' id: MiniTileWhiteInnerNe @@ -8889,6 +8956,14 @@ entities: 1611: 45,-54 1698: 51,-69 8354: 37,-84 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteInnerNe + decals: + 12668: -42,-15 + 12669: -41,-26 + 12721: -49,-37 - node: color: '#FFFFFFFF' id: MiniTileWhiteInnerNe @@ -8946,6 +9021,7 @@ entities: 5828: 10,-75 7619: -62,-51 7736: 28,-70 + 12439: 110,-41 - node: color: '#9FED58CC' id: MiniTileWhiteInnerNw @@ -9012,6 +9088,13 @@ entities: 7716: 3,-77 7743: 27,-72 7759: 33,-34 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteInnerNw + decals: + 12677: -43,-28 + 12698: -43,-37 - node: color: '#FFFFFFFF' id: MiniTileWhiteInnerNw @@ -9125,6 +9208,12 @@ entities: 5434: 35,-40 7748: 33,-34 8353: 37,-83 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteInnerSe + decals: + 12676: -41,-27 - node: color: '#334E6DC8' id: MiniTileWhiteInnerSw @@ -9230,6 +9319,12 @@ entities: id: MiniTileWhiteInnerSw decals: 7715: -26,-70 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteInnerSw + decals: + 12678: -43,-30 - node: color: '#FFFFFFFF' id: MiniTileWhiteInnerSw @@ -9409,7 +9504,6 @@ entities: 5532: 83,-34 5533: 83,-35 5534: 83,-39 - 5614: 102,-42 5615: 102,-40 5661: 70,-29 5662: 70,-28 @@ -9503,6 +9597,10 @@ entities: 9989: 1,-10 9990: 1,-11 11653: 45,-37 + 12444: 112,-42 + 12445: 112,-41 + 12446: 112,-40 + 12458: 130,-40 - node: zIndex: -1 color: '#A4610696' @@ -9539,7 +9637,6 @@ entities: 2522: -43,-55 2523: -43,-56 2524: -43,-57 - 2525: -43,-61 2526: -43,-62 2527: -43,-63 2528: -43,-64 @@ -9712,6 +9809,46 @@ entities: 9070: -35,-32 9071: -35,-33 9072: -35,-34 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteLineE + decals: + 12513: -41,-17 + 12514: -41,-19 + 12515: -41,-20 + 12516: -41,-22 + 12517: -41,-24 + 12518: -41,-25 + 12566: -42,-2 + 12567: -42,-3 + 12568: -42,-5 + 12569: -42,-6 + 12570: -42,-7 + 12571: -42,-8 + 12572: -42,-10 + 12573: -42,-11 + 12574: -42,-12 + 12575: -42,-13 + 12576: -42,-14 + 12577: -41,-29 + 12578: -41,-28 + 12579: -41,-31 + 12584: -48,-20 + 12585: -48,-21 + 12586: -48,-22 + 12587: -48,-23 + 12588: -48,-24 + 12589: -48,-25 + 12648: -52,-25 + 12681: -41,-33 + 12682: -41,-34 + 12683: -41,-35 + 12684: -41,-36 + 12710: -49,-36 + 12711: -49,-35 + 12712: -49,-34 + 12713: -49,-33 - node: angle: -0.017453292519943295 rad color: '#334E6DC8' @@ -9982,6 +10119,30 @@ entities: 11658: 61,-32 11664: 84,-40 11665: 84,-22 + 12386: 104,-41 + 12387: 105,-41 + 12388: 108,-41 + 12389: 109,-41 + 12390: 111,-39 + 12393: 113,-39 + 12394: 115,-39 + 12395: 116,-39 + 12396: 117,-39 + 12397: 118,-39 + 12398: 119,-39 + 12399: 120,-39 + 12400: 121,-39 + 12401: 122,-39 + 12402: 123,-39 + 12403: 124,-39 + 12404: 125,-39 + 12405: 126,-39 + 12406: 127,-39 + 12407: 128,-39 + 12408: 129,-39 + 12436: 106,-41 + 12437: 107,-41 + 12438: 103,-41 - node: color: '#A4610696' id: MiniTileWhiteLineN @@ -10206,6 +10367,41 @@ entities: id: MiniTileWhiteLineN decals: 9083: -38,-29 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteLineN + decals: + 12519: -45,-28 + 12520: -46,-28 + 12521: -47,-28 + 12522: -48,-28 + 12523: -50,-28 + 12524: -51,-28 + 12525: -52,-28 + 12526: -54,-28 + 12527: -55,-28 + 12528: -56,-28 + 12529: -57,-28 + 12547: -50,-16 + 12548: -49,-16 + 12549: -47,-16 + 12550: -46,-16 + 12551: -45,-16 + 12582: -38,-29 + 12650: -54,-24 + 12651: -55,-24 + 12666: -55,-13 + 12670: -40,-26 + 12671: -39,-26 + 12685: -40,-37 + 12686: -39,-37 + 12687: -38,-37 + 12688: -37,-37 + 12695: -45,-37 + 12696: -44,-37 + 12708: -47,-37 + 12709: -48,-37 - node: color: '#334E6DC8' id: MiniTileWhiteLineS @@ -10433,6 +10629,32 @@ entities: 11661: 80,-34 11666: 84,-24 11667: 84,-42 + 12409: 129,-41 + 12410: 128,-41 + 12411: 127,-41 + 12412: 126,-41 + 12413: 125,-41 + 12414: 124,-41 + 12415: 123,-41 + 12416: 122,-41 + 12417: 121,-41 + 12418: 120,-41 + 12419: 119,-41 + 12420: 118,-41 + 12421: 117,-41 + 12422: 116,-41 + 12423: 115,-41 + 12425: 113,-41 + 12426: 111,-43 + 12427: 110,-43 + 12428: 109,-43 + 12429: 108,-43 + 12430: 107,-43 + 12431: 102,-43 + 12432: 103,-43 + 12433: 104,-43 + 12434: 105,-43 + 12435: 106,-43 - node: color: '#A4610696' id: MiniTileWhiteLineS @@ -10694,6 +10916,48 @@ entities: 9074: -36,-35 9075: -37,-35 9076: -38,-35 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteLineS + decals: + 12532: -56,-30 + 12533: -55,-30 + 12534: -54,-30 + 12535: -53,-30 + 12536: -52,-30 + 12537: -45,-30 + 12538: -44,-30 + 12539: -44,-17 + 12540: -45,-17 + 12541: -46,-17 + 12542: -47,-17 + 12543: -48,-17 + 12544: -49,-17 + 12545: -50,-17 + 12654: -55,-26 + 12655: -54,-26 + 12656: -52,-26 + 12657: -50,-26 + 12658: -52,-16 + 12659: -53,-16 + 12660: -54,-16 + 12661: -55,-16 + 12672: -40,-27 + 12673: -39,-27 + 12674: -38,-27 + 12675: -35,-27 + 12679: -42,-31 + 12691: -39,-41 + 12692: -40,-41 + 12693: -41,-41 + 12694: -45,-41 + 12702: -49,-37 + 12703: -49,-37 + 12704: -50,-37 + 12705: -49,-37 + 12706: -48,-37 + 12707: -47,-37 - node: angle: -0.017453292519943295 rad color: '#334E6DC8' @@ -10801,9 +11065,6 @@ entities: 6031: -30,-30 6032: -30,-29 6033: -30,-28 - 6034: -30,-27 - 6035: -30,-26 - 6036: -30,-25 6037: -30,-24 6038: -30,-23 6039: -30,-22 @@ -10824,6 +11085,9 @@ entities: 8031: -58,-37 8032: -58,-39 8033: -58,-40 + 12642: -30,-25 + 12643: -30,-26 + 12644: -30,-27 - node: color: '#52DDE993' id: MiniTileWhiteLineW @@ -10944,6 +11208,8 @@ entities: 7763: 11,1 9991: -1,-10 9992: -1,-11 + 12448: 110,-40 + 12450: 114,-40 - node: color: '#A4610696' id: MiniTileWhiteLineW @@ -11205,6 +11471,47 @@ entities: 9079: -39,-33 9080: -39,-32 9081: -39,-31 + - node: + zIndex: -1 + color: '#FFFFFFFF' + id: MiniTileWhiteLineW + decals: + 12503: -43,-26 + 12504: -43,-25 + 12505: -43,-24 + 12506: -43,-23 + 12507: -43,-22 + 12508: -43,-21 + 12509: -43,-20 + 12510: -43,-19 + 12511: -43,-27 + 12512: -43,-18 + 12552: -44,-15 + 12553: -44,-14 + 12554: -44,-13 + 12555: -44,-12 + 12556: -44,-11 + 12557: -44,-10 + 12558: -44,-9 + 12559: -44,-8 + 12560: -44,-7 + 12561: -44,-6 + 12562: -44,-5 + 12563: -44,-4 + 12564: -44,-3 + 12565: -44,-2 + 12580: -43,-31 + 12662: -56,-15 + 12663: -56,-14 + 12680: -43,-33 + 12697: -43,-36 + 12699: -45,-38 + 12700: -45,-39 + 12701: -45,-40 + 12716: -52,-33 + 12717: -52,-34 + 12718: -52,-35 + 12719: -52,-36 - node: color: '#79150096' id: MonoOverlay @@ -11893,6 +12200,8 @@ entities: 8993: -56,-57 8994: -56,-59 12327: 62,-16 + 12465: 132,-39 + 12467: 132,-41 - node: angle: 3.141592653589793 rad color: '#FFFFFFFF' @@ -12023,11 +12332,17 @@ entities: 9904: 25,-31 9948: -28,-42 9949: -27,-42 + - node: + color: '#EFB34196' + id: WarnFullGreyscale + decals: + 12372: 78,-1 + 12373: 82,-1 + 12374: 86,-1 - node: color: '#FFFFFFFF' id: WarnLineE decals: - 1302: 102,-41 1730: 51,-66 1731: 51,-65 1732: 51,-64 @@ -12097,6 +12412,12 @@ entities: id: WarnLineGreyscaleE decals: 1749: 46,-87 + - node: + color: '#8BDA8EFF' + id: WarnLineGreyscaleE + decals: + 12352: 86,-5 + 12353: 86,-6 - node: color: '#9FED5896' id: WarnLineGreyscaleE @@ -12125,13 +12446,6 @@ entities: id: WarnLineGreyscaleE decals: 9556: 29,-37 - - node: - cleanable: True - color: '#C6FF91FF' - id: WarnLineGreyscaleE - decals: - 10996: 86,-6 - 10997: 86,-5 - node: color: '#D381C996' id: WarnLineGreyscaleE @@ -12647,11 +12961,16 @@ entities: 2603: -45,-53 2608: -45,-82 2609: -45,-81 - 2613: -45,-65 - 2614: -45,-67 2619: -56,-66 6713: -69,-78 6714: -69,-74 + - node: + zIndex: -1 + color: '#D381C9FF' + id: WarnLineGreyscaleW + decals: + 12804: -45,-65 + 12805: -45,-67 - node: color: '#DE3A3A96' id: WarnLineGreyscaleW @@ -12807,6 +13126,7 @@ entities: id: WoodTrimThinCornerNeWhite decals: 9190: -42,-84 + 12627: -24,1 - node: color: '#4B362BFF' id: WoodTrimThinCornerNeWhite @@ -12866,12 +13186,18 @@ entities: id: WoodTrimThinCornerNwWhite decals: 9178: -45,-84 + 12638: -31,1 - node: color: '#4B362BFF' id: WoodTrimThinCornerNwWhite decals: 8747: 32,-7 8900: 42,-72 + - node: + color: '#55391AFF' + id: WoodTrimThinCornerNwWhite + decals: + 12596: -31,8 - node: color: '#612620FF' id: WoodTrimThinCornerNwWhite @@ -12924,6 +13250,8 @@ entities: id: WoodTrimThinCornerSeWhite decals: 9184: -42,-87 + 12628: -24,0 + 12630: -26,-1 - node: color: '#4B362BFF' id: WoodTrimThinCornerSeWhite @@ -12985,6 +13313,8 @@ entities: id: WoodTrimThinCornerSwWhite decals: 9181: -45,-87 + 12632: -28,-1 + 12639: -31,0 - node: color: '#4B362BFF' id: WoodTrimThinCornerSwWhite @@ -13142,6 +13472,11 @@ entities: 1986: 53,-74 2172: 10,17 12012: 50,-8 + - node: + color: '#2E211AFF' + id: WoodTrimThinInnerSeWhite + decals: + 12635: -26,0 - node: color: '#4B362BFF' id: WoodTrimThinInnerSeWhite @@ -13173,6 +13508,11 @@ entities: 7441: 26,0 11867: 49,14 12013: 54,-8 + - node: + color: '#2E211AFF' + id: WoodTrimThinInnerSwWhite + decals: + 12634: -28,0 - node: color: '#4B362BFF' id: WoodTrimThinInnerSwWhite @@ -13383,6 +13723,12 @@ entities: decals: 9191: -43,-84 9192: -44,-84 + 12623: -28,1 + 12624: -27,1 + 12625: -26,1 + 12626: -25,1 + 12636: -29,1 + 12637: -30,1 - node: color: '#4B362BFF' id: WoodTrimThinLineNWhite @@ -13400,6 +13746,7 @@ entities: id: WoodTrimThinLineNWhite decals: 8565: 33,1 + 12605: -30,8 - node: color: '#612620FF' id: WoodTrimThinLineNWhite @@ -13598,6 +13945,10 @@ entities: decals: 9182: -44,-87 9183: -43,-87 + 12629: -25,0 + 12633: -27,-1 + 12640: -30,0 + 12641: -29,0 - node: color: '#4B362BFF' id: WoodTrimThinLineSWhite @@ -13728,6 +14079,12 @@ entities: decals: 8869: 30,-5 8870: 30,-6 + 12597: -31,7 + 12598: -31,6 + 12599: -31,5 + 12600: -31,4 + 12601: -31,3 + 12602: -31,2 - node: color: '#612620FF' id: WoodTrimThinLineWWhite @@ -14051,6 +14408,12 @@ entities: id: rune6 decals: 8107: -87,-27 + - node: + cleanable: True + color: '#FFFFFFFF' + id: safe + decals: + 12384: 1.9940939,-52.00569 - node: cleanable: True color: '#A91409CC' @@ -14294,7 +14657,8 @@ entities: 1,-5: 0: 26471 2,-4: - 0: 61183 + 0: 60159 + 2: 1024 2,-3: 1: 35056 0: 12288 @@ -14531,19 +14895,19 @@ entities: 0: 56733 5,2: 0: 12767 - 2: 32768 + 3: 32768 5,3: 0: 8743 - 2: 2184 + 3: 2184 5,4: 0: 26190 6,1: 0: 56783 6,2: 0: 35037 - 2: 12288 + 3: 12288 6,3: - 2: 819 + 3: 819 0: 2248 6,4: 0: 61695 @@ -15234,10 +15598,10 @@ entities: 0: 65520 4,-13: 0: 65535 + 3,-12: + 0: 61671 4,-11: 0: 65535 - 3,-12: - 0: 61543 3,-11: 0: 65535 4,-10: @@ -15247,7 +15611,7 @@ entities: 1: 40 0: 65495 4,-9: - 0: 2063 + 0: 15 3,-9: 0: 47887 1: 1024 @@ -15300,7 +15664,7 @@ entities: 25,-12: 0: 65291 25,-11: - 0: 63344 + 0: 65520 25,-10: 0: 119 1: 61440 @@ -15318,11 +15682,9 @@ entities: 27,-12: 0: 49075 27,-11: - 0: 13104 - 1: 32768 + 0: 65520 27,-10: - 0: 272 - 1: 52224 + 0: 476 27,-13: 0: 13107 1: 128 @@ -15330,9 +15692,10 @@ entities: 0: 256 1: 43694 28,-11: - 1: 29774 + 0: 61712 + 1: 76 28,-10: - 1: 273 + 0: 2301 8,-16: 0: 65535 8,-17: @@ -15629,44 +15992,44 @@ entities: 0: 30471 22,-19: 1: 9143 - 2: 32768 + 3: 32768 22,-17: 1: 45858 - 2: 136 + 3: 136 22,-20: 1: 30583 - 2: 8 + 3: 8 22,-21: 1: 30448 22,-16: 1: 6635 22,-18: 1: 8738 - 2: 34952 + 3: 34952 23,-20: - 2: 223 + 3: 223 1: 12288 23,-19: 1: 115 - 2: 61440 + 3: 61440 23,-18: - 2: 65535 + 3: 65535 23,-17: - 2: 255 + 3: 255 1: 8192 23,-21: - 2: 53384 + 3: 53384 1: 51 23,-16: 1: 25383 24,-20: - 2: 61695 + 3: 61695 24,-19: - 2: 57599 + 3: 57599 24,-18: - 2: 61167 + 3: 61167 24,-17: - 2: 64239 + 3: 64239 21,-15: 0: 1911 21,-14: @@ -15680,9 +16043,10 @@ entities: 23,-14: 0: 61164 24,-16: - 2: 3839 + 3: 3839 24,-15: - 1: 3918 + 1: 2816 + 0: 1102 24,-14: 0: 63351 12,-25: @@ -15734,28 +16098,28 @@ entities: 16,-22: 1: 30169 8,-24: - 3: 1 - 4: 4352 + 4: 1 + 5: 4352 1: 17476 8,-25: - 3: 4096 + 4: 4096 1: 17476 6: 17 7,-24: - 3: 12 - 4: 52224 + 4: 12 + 5: 52224 1: 4369 8,-23: - 3: 272 + 4: 272 1: 17476 7,-23: - 3: 3264 + 4: 3264 1: 4369 8,-22: - 3: 17 + 4: 17 1: 21572 7,-22: - 3: 204 + 4: 204 1: 61713 9,-24: 0: 65535 @@ -15804,7 +16168,7 @@ entities: 1: 34952 7,-25: 1: 4369 - 3: 49152 + 4: 49152 6: 204 0,-24: 0: 52509 @@ -16053,7 +16417,8 @@ entities: 4,-26: 0: 8243 -4,-26: - 0: 60992 + 0: 52800 + 7: 8192 -5,-26: 0: 65297 -5,-25: @@ -16156,7 +16521,7 @@ entities: 0: 36590 -9,-19: 0: 34952 - 2: 13104 + 3: 13104 -8,-18: 0: 56797 -9,-18: @@ -16288,7 +16653,7 @@ entities: 0: 15291 -10,-19: 0: 14128 - 2: 34944 + 3: 34944 -10,-18: 0: 63344 -10,-17: @@ -16428,7 +16793,8 @@ entities: -14,-14: 0: 61916 -14,-13: - 0: 65295 + 0: 63247 + 8: 2048 -14,-17: 0: 65520 -14,-16: @@ -16542,7 +16908,8 @@ entities: -10,-9: 0: 61152 -10,-8: - 0: 61422 + 0: 61420 + 7: 2 -9,-11: 0: 47615 -9,-10: @@ -17199,7 +17566,7 @@ entities: 0: 65512 -3,-14: 0: 4368 - 5: 3264 + 9: 3264 -3,-13: 0: 56593 -3,-12: @@ -17236,11 +17603,9 @@ entities: -1,-11: 0: 30479 0,-10: - 0: 12415 - 1: 16384 + 0: 28799 0,-9: - 0: 20601 - 1: 6 + 0: 20607 0,-8: 0: 65396 1,-12: @@ -17250,11 +17615,9 @@ entities: 1,-10: 0: 39052 1,-9: - 1: 1 - 0: 32922 + 0: 32923 1,-13: - 0: 28710 - 1: 64 + 0: 28774 1,-8: 0: 26212 2,-12: @@ -17368,10 +17731,10 @@ entities: 7,-27: 1: 65527 8,-26: - 5: 272 + 9: 272 1: 17476 7,-26: - 5: 3264 + 9: 3264 1: 4369 9,-28: 0: 30464 @@ -17679,7 +18042,7 @@ entities: -6,-30: 1: 8753 25,-16: - 2: 17 + 3: 17 1: 18572 25,-15: 1: 806 @@ -17687,17 +18050,17 @@ entities: 1: 7 0: 65280 25,-17: - 2: 4335 + 3: 4335 1: 32768 26,-16: - 1: 1003 + 1: 2031 26,-15: 0: 65535 26,-14: 0: 30495 26,-17: 1: 43144 - 2: 51 + 3: 51 27,-16: 1: 3634 27,-15: @@ -17711,26 +18074,42 @@ entities: 1: 4096 28,-13: 1: 21847 + 29,-11: + 0: 61440 + 29,-10: + 0: 255 + 30,-11: + 0: 62464 + 30,-10: + 0: 1279 + 31,-11: + 0: 61440 + 31,-10: + 0: 255 + 32,-11: + 0: 61952 + 32,-10: + 0: 759 24,-21: - 2: 61535 + 3: 61535 25,-20: - 2: 4215 + 3: 4215 1: 32768 25,-19: - 2: 57361 + 3: 57361 1: 200 25,-18: - 2: 61167 + 3: 61167 25,-21: - 2: 28723 + 3: 28723 1: 136 26,-20: 1: 63901 26,-19: 1: 35001 - 2: 12288 + 3: 12288 26,-18: - 2: 13107 + 3: 13107 1: 34952 26,-21: 1: 22001 @@ -17749,19 +18128,19 @@ entities: 23,-24: 1: 996 24,-23: - 2: 65534 + 3: 65534 23,-23: - 2: 51328 + 3: 51328 24,-22: - 2: 20735 + 3: 20735 23,-22: - 2: 32972 + 3: 32972 25,-24: 1: 2277 25,-23: - 2: 29488 + 3: 29488 25,-22: - 2: 12407 + 3: 12407 25,-25: 1: 28928 26,-24: @@ -17807,6 +18186,10 @@ entities: 1: 196 16,4: 1: 2176 + 33,-11: + 0: 12288 + 33,-10: + 0: 48 uniqueMixes: - volume: 2500 temperature: 293.15 @@ -17838,6 +18221,21 @@ entities: - 0 - 0 - 0 + - volume: 2500 + temperature: 5000 + moles: + - 6666.982 + - 0 + - 0 + - 6666.982 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - volume: 2500 temperature: 235 moles: @@ -17886,7 +18284,6 @@ entities: - volume: 2500 temperature: 293.15 moles: - - 0 - 6666.982 - 0 - 0 @@ -17898,10 +18295,13 @@ entities: - 0 - 0 - 0 + - 0 - volume: 2500 temperature: 293.15 moles: - - 6666.982 + - 21.6852 + - 81.57766 + - 0 - 0 - 0 - 0 @@ -17911,6 +18311,34 @@ entities: - 0 - 0 - 0 + - volume: 2500 + temperature: 293.15 + moles: + - 21.813705 + - 82.06108 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - volume: 2500 + temperature: 293.15 + moles: + - 0 + - 6666.982 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - 0 - 0 chunkSize: 4 @@ -18773,9 +19201,11 @@ entities: 1: 9984 0,-4: 1: 63 - 0: 45056 + 0: 12288 + 2: 32768 0,-3: - 0: 30491 + 0: 30483 + 2: 8 0,-2: 0: 30583 0,-5: @@ -18784,7 +19214,8 @@ entities: 1: 7 0: 30464 1,-3: - 0: 30583 + 0: 1911 + 2: 28672 1,-2: 0: 30576 1,-5: @@ -18836,6 +19267,21 @@ entities: - 0 - 0 - 0 + - volume: 2500 + temperature: 293.15 + moles: + - 21.6852 + - 81.57766 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 chunkSize: 4 - type: GasTileOverlay - type: RadiationGridResistance @@ -19292,6 +19738,23 @@ entities: referenceAngle: 6.2831855 damping: 975.37714 stiffness: 8754.965 + - uid: 41283 + components: + - type: MetaData + name: solution - tank + - type: Transform + parent: 41282 + - type: Solution + solution: + maxVol: 1500 + name: tank + reagents: + - data: [] + ReagentId: SpaceCleaner + Quantity: 1500 + - type: ContainedSolution + containerName: tank + container: 41282 - proto: AccessConfigurator entities: - uid: 12 @@ -19395,12 +19858,6 @@ entities: - type: InstantAction originalIconColor: '#FFFFFFFF' container: 24201 - - uid: 33860 - components: - - type: Transform - parent: 33859 - - type: InstantAction - container: 33859 - uid: 37254 components: - type: Transform @@ -19420,27 +19877,6 @@ entities: - type: InstantAction container: 37707 attachedEntity: 37707 - - uid: 40842 - components: - - type: Transform - parent: 40841 - - type: InstantAction - originalIconColor: '#FFFFFFFF' - container: 40841 - - uid: 40845 - components: - - type: Transform - parent: 40844 - - type: InstantAction - originalIconColor: '#FFFFFFFF' - container: 40844 - - uid: 40850 - components: - - type: Transform - parent: 40849 - - type: InstantAction - originalIconColor: '#FFFFFFFF' - container: 40849 - proto: AdvMopItem entities: - uid: 26247 @@ -19854,12 +20290,12 @@ entities: - 18085 - 810 - 18269 - - 22162 - 22006 - - 22163 - - 22005 - 18467 - 18454 + - 18788 + - 40984 + - 40985 - uid: 55 components: - type: Transform @@ -21856,6 +22292,11 @@ entities: - 34352 - 27021 - 40071 + - 41234 + - 39835 + - 41233 + - 41250 + - 41221 - uid: 40074 components: - type: Transform @@ -22058,6 +22499,68 @@ entities: - 21857 - 32588 - 21840 + - uid: 41014 + components: + - type: Transform + pos: 110.5,-37.5 + parent: 2 + - type: DeviceList + devices: + - 40960 + - 40988 + - 40991 + - 40992 + - 40986 + - 40987 + - 32729 + - 29048 + - 27324 + - 41015 + - uid: 41017 + components: + - type: Transform + pos: 105.5,-39.5 + parent: 2 + - type: DeviceList + devices: + - 32729 + - 29048 + - 27324 + - 18269 + - 25803 + - 6182 + - 26217 + - 22162 +- proto: AirAlarmAssembly + entities: + - uid: 39980 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 16.5,-21.5 + parent: 2 + - uid: 41251 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 8.5,-33.5 + parent: 2 + - uid: 41252 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 20.5,-44.5 + parent: 2 + - uid: 41253 + components: + - type: Transform + pos: 3.5,-47.5 + parent: 2 + - uid: 41254 + components: + - type: Transform + pos: -8.5,-42.5 + parent: 2 - proto: AirAlarmElectronics entities: - uid: 182 @@ -23172,6 +23675,18 @@ entities: rot: 3.141592653589793 rad pos: -5.5,-50.5 parent: 2 + - uid: 35882 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 131.5,-40.5 + parent: 2 + - uid: 39066 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 131.5,-38.5 + parent: 2 - proto: AirlockExternalAtmosphericsLocked entities: - uid: 388 @@ -23385,6 +23900,18 @@ entities: rot: -1.5707963267948966 rad pos: -73.5,-30.5 parent: 2 + - uid: 35928 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 113.5,-38.5 + parent: 2 + - uid: 37363 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 113.5,-40.5 + parent: 2 - proto: AirlockExternalGlassCargoLocked entities: - uid: 428 @@ -23535,6 +24062,11 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,-97.5 parent: 2 + - uid: 12957 + components: + - type: Transform + pos: 129.5,-41.5 + parent: 2 - uid: 19569 components: - type: Transform @@ -23546,6 +24078,41 @@ entities: - type: Transform pos: 0.5,-2.5 parent: 21045 + - uid: 25352 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 115.5,-37.5 + parent: 2 + - uid: 26063 + components: + - type: Transform + pos: 122.5,-41.5 + parent: 2 + - uid: 26896 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 129.5,-37.5 + parent: 2 + - uid: 35809 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 122.5,-37.5 + parent: 2 + - uid: 36840 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 133.5,-40.5 + parent: 2 + - uid: 36894 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 133.5,-38.5 + parent: 2 - proto: AirlockExternalLocked entities: - uid: 446 @@ -24439,12 +25006,6 @@ entities: rot: 1.5707963267948966 rad pos: 46.5,-27.5 parent: 2 - - uid: 572 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 103.5,-40.5 - parent: 2 - uid: 573 components: - type: Transform @@ -25179,20 +25740,40 @@ entities: - type: Transform pos: 6.5,-21.5 parent: 2 -- proto: AirlockMiningGlassLocked + - uid: 40940 + components: + - type: Transform + pos: 15.5,-46.5 + parent: 2 +- proto: AirlockMiningGlass entities: - uid: 1159 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -4.5,-48.5 + pos: 0.5,-45.5 parent: 2 - uid: 1161 components: - type: Transform - rot: 1.5707963267948966 rad + pos: -4.5,-48.5 + parent: 2 + - uid: 11629 + components: + - type: Transform pos: -2.5,-45.5 parent: 2 + - uid: 26267 + components: + - type: Transform + pos: -9.5,-44.5 + parent: 2 + - uid: 26439 + components: + - type: Transform + pos: -1.5,-43.5 + parent: 2 +- proto: AirlockMiningGlassLocked + entities: - uid: 5916 components: - type: Transform @@ -25215,29 +25796,16 @@ entities: rot: 1.5707963267948966 rad pos: -19.5,-42.5 parent: 2 - - uid: 30855 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -22.5,-43.5 - parent: 2 - - uid: 39084 - components: - - type: Transform - pos: -1.5,-43.5 - parent: 2 - - uid: 39085 + - uid: 29064 components: - type: Transform - pos: -9.5,-44.5 + pos: 17.5,-33.5 parent: 2 -- proto: AirlockMiningLocked - entities: - - uid: 11629 + - uid: 30855 components: - type: Transform - rot: 3.141592653589793 rad - pos: 0.5,-45.5 + rot: 1.5707963267948966 rad + pos: -22.5,-43.5 parent: 2 - proto: AirlockQuartermasterLocked entities: @@ -26931,6 +27499,15 @@ entities: deviceLists: - 40124 - 40123 + - uid: 41015 + components: + - type: Transform + pos: 122.5,-39.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - 41016 - proto: AltarBananium entities: - uid: 943 @@ -28223,11 +28800,6 @@ entities: - type: Transform pos: -62.5,-15.5 parent: 2 - - uid: 27383 - components: - - type: Transform - pos: 76.5,-3.5 - parent: 2 - uid: 30156 components: - type: Transform @@ -28343,6 +28915,11 @@ entities: rot: 3.141592653589793 rad pos: -8.5,-50.5 parent: 2 + - uid: 39809 + components: + - type: Transform + pos: 74.5,0.5 + parent: 2 - uid: 40217 components: - type: Transform @@ -28361,6 +28938,17 @@ entities: rot: 1.5707963267948966 rad pos: 49.5,11.5 parent: 2 + - uid: 40856 + components: + - type: Transform + pos: 111.5,-37.5 + parent: 2 + - uid: 40936 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 67.5,-3.5 + parent: 2 - proto: APCConstructed entities: - uid: 1120 @@ -28926,11 +29514,46 @@ entities: rot: 3.141592653589793 rad pos: 41.5,32.5 parent: 2 + - uid: 12956 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 122.5,-37.5 + parent: 2 + - uid: 24440 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 129.5,-37.5 + parent: 2 + - uid: 27607 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 133.5,-38.5 + parent: 2 + - uid: 28018 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 133.5,-40.5 + parent: 2 + - uid: 32730 + components: + - type: Transform + pos: 122.5,-41.5 + parent: 2 - uid: 32737 components: - type: Transform pos: 0.5,-2.5 parent: 21045 + - uid: 33857 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 115.5,-37.5 + parent: 2 - uid: 36882 components: - type: Transform @@ -29057,6 +29680,11 @@ entities: rot: 3.141592653589793 rad pos: 68.5,16.5 parent: 2 + - uid: 40838 + components: + - type: Transform + pos: 129.5,-41.5 + parent: 2 - proto: AtmosDeviceFanTiny entities: - uid: 1172 @@ -30654,6 +31282,13 @@ entities: - type: Transform pos: 91.5,-79.5 parent: 2 +- proto: AtmosFixInstantPlasmaFireMarker + entities: + - uid: 40948 + components: + - type: Transform + pos: 10.5,-13.5 + parent: 2 - proto: AtmosFixNitrogenMarker entities: - uid: 1505 @@ -31308,6 +31943,11 @@ entities: - type: Transform pos: 49.5,19.5 parent: 2 + - uid: 24061 + components: + - type: Transform + pos: -58.5,-22.5 + parent: 2 - uid: 30436 components: - type: Transform @@ -31505,6 +32145,11 @@ entities: rot: 1.5707963267948966 rad pos: 101.5,-49.5 parent: 2 + - uid: 18669 + components: + - type: Transform + pos: -58.5,-21.5 + parent: 2 - uid: 25065 components: - type: Transform @@ -31821,6 +32466,12 @@ entities: - type: Transform pos: -11.426215,-38.831028 parent: 2 + - uid: 41027 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: Bed entities: - uid: 1695 @@ -33120,6 +33771,18 @@ entities: linkedPorts: 38379: - DoorStatus: InputB + 38218: + - DoorStatus: Trigger + 38220: + - DoorStatus: Trigger + 38221: + - DoorStatus: Trigger + 38222: + - DoorStatus: Trigger + 38223: + - DoorStatus: Trigger + 38219: + - DoorStatus: Trigger - proto: BlastDoorOpen entities: - uid: 1867 @@ -33505,10 +34168,8 @@ entities: - uid: 5963 components: - type: Transform - parent: 26551 - - type: Physics - canCollide: False - - type: InsideEntityStorage + pos: 8.548469,-17.454145 + parent: 2 - proto: BluespaceBeaker entities: - uid: 37918 @@ -33843,14 +34504,6 @@ entities: - type: Transform pos: -38.56447,17.459621 parent: 2 -- proto: BookRandomStory - entities: - - uid: 24639 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 88.46837,-2.4302263 - parent: 2 - proto: BookScaf entities: - uid: 1933 @@ -33861,6 +34514,11 @@ entities: parent: 2 - proto: Bookshelf entities: + - uid: 723 + components: + - type: Transform + pos: 89.5,-2.5 + parent: 2 - uid: 1934 components: - type: Transform @@ -34223,15 +34881,14 @@ entities: - type: Transform pos: 39.485535,-35.582695 parent: 2 -- proto: BorgModuleRCD +- proto: BorgModuleSyndicateWeapon entities: - - uid: 1994 + - uid: 41151 components: - type: Transform - parent: 1993 + parent: 41150 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: BorgModuleTreatment entities: - uid: 1995 @@ -34336,11 +34993,6 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage - - uid: 38743 - components: - - type: Transform - pos: 2.5387268,-1.3212891 - parent: 38722 - proto: BoxCardboard entities: - uid: 2004 @@ -34558,12 +35210,6 @@ entities: rot: 3.141592653589793 rad pos: 66.53936,-37.409687 parent: 2 - - uid: 2034 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -4.486072,-80.35379 - parent: 2 - uid: 2040 components: - type: Transform @@ -34704,6 +35350,13 @@ entities: parent: 2 - proto: BoxLethalshot entities: + - uid: 33561 + components: + - type: Transform + parent: 11053 + - type: Physics + canCollide: False + - type: InsideEntityStorage - uid: 40500 components: - type: Transform @@ -35064,6 +35717,11 @@ entities: rot: -1.5707963267948966 rad pos: 45.5,3.5 parent: 2 + - type: DeviceLinkSource + linkedPorts: + 19525: + - Timer: Open + - Timer: AutoClose - uid: 18774 components: - type: Transform @@ -35076,28 +35734,57 @@ entities: rot: -1.5707963267948966 rad pos: 41.5,4.5 parent: 2 + - type: DeviceLinkSource + linkedPorts: + 815: + - Timer: Open + - Timer: AutoClose - uid: 19546 components: - type: Transform rot: -1.5707963267948966 rad pos: 41.5,1.5 parent: 2 + - type: DeviceLinkSource + linkedPorts: + 15533: + - Timer: Open + - Timer: AutoClose + 2820: + - Timer: Open + - Timer: AutoClose - uid: 19627 components: - type: Transform rot: -1.5707963267948966 rad pos: 45.5,0.5 parent: 2 + - type: DeviceLinkSource + linkedPorts: + 11078: + - Timer: Open + - Timer: AutoClose + 11080: + - Timer: Open + - Timer: AutoClose - uid: 36098 components: - type: Transform pos: 46.5,-10.5 parent: 2 + - type: DeviceLinkSource + linkedPorts: + 36798: + - Timer: Open - uid: 36099 components: - type: Transform pos: 46.5,-11.5 parent: 2 + - type: DeviceLinkSource + linkedPorts: + 36798: + - Timer: Open - uid: 37840 components: - type: Transform @@ -35240,6 +35927,11 @@ entities: - type: Transform pos: -17.529854,-32.515293 parent: 2 + - uid: 40954 + components: + - type: Transform + pos: -15.613848,-38.614536 + parent: 2 - proto: ButtonFrameCaution entities: - uid: 29002 @@ -57757,6 +58449,26 @@ entities: - type: Transform pos: 77.5,-8.5 parent: 2 + - uid: 24698 + components: + - type: Transform + pos: 72.5,-2.5 + parent: 2 + - uid: 24700 + components: + - type: Transform + pos: 67.5,-3.5 + parent: 2 + - uid: 24702 + components: + - type: Transform + pos: 68.5,-3.5 + parent: 2 + - uid: 24703 + components: + - type: Transform + pos: 69.5,-3.5 + parent: 2 - uid: 24783 components: - type: Transform @@ -57932,6 +58644,11 @@ entities: - type: Transform pos: 77.5,-9.5 parent: 2 + - uid: 27383 + components: + - type: Transform + pos: 71.5,-2.5 + parent: 2 - uid: 27430 components: - type: Transform @@ -58087,6 +58804,11 @@ entities: - type: Transform pos: 59.5,-12.5 parent: 2 + - uid: 30415 + components: + - type: Transform + pos: 70.5,-2.5 + parent: 2 - uid: 31431 components: - type: Transform @@ -58317,6 +59039,16 @@ entities: - type: Transform pos: 87.5,-9.5 parent: 2 + - uid: 31515 + components: + - type: Transform + pos: 73.5,-2.5 + parent: 2 + - uid: 31517 + components: + - type: Transform + pos: 69.5,-2.5 + parent: 2 - uid: 32762 components: - type: Transform @@ -61542,6 +62274,156 @@ entities: - type: Transform pos: 36.5,-24.5 parent: 2 + - uid: 40857 + components: + - type: Transform + pos: 111.5,-37.5 + parent: 2 + - uid: 40858 + components: + - type: Transform + pos: 111.5,-38.5 + parent: 2 + - uid: 40862 + components: + - type: Transform + pos: 112.5,-40.5 + parent: 2 + - uid: 40863 + components: + - type: Transform + pos: 113.5,-40.5 + parent: 2 + - uid: 40864 + components: + - type: Transform + pos: 114.5,-40.5 + parent: 2 + - uid: 40865 + components: + - type: Transform + pos: 115.5,-40.5 + parent: 2 + - uid: 40866 + components: + - type: Transform + pos: 116.5,-40.5 + parent: 2 + - uid: 40867 + components: + - type: Transform + pos: 117.5,-40.5 + parent: 2 + - uid: 40868 + components: + - type: Transform + pos: 118.5,-40.5 + parent: 2 + - uid: 40869 + components: + - type: Transform + pos: 119.5,-40.5 + parent: 2 + - uid: 40870 + components: + - type: Transform + pos: 120.5,-40.5 + parent: 2 + - uid: 40871 + components: + - type: Transform + pos: 121.5,-40.5 + parent: 2 + - uid: 40872 + components: + - type: Transform + pos: 122.5,-40.5 + parent: 2 + - uid: 40873 + components: + - type: Transform + pos: 123.5,-40.5 + parent: 2 + - uid: 40874 + components: + - type: Transform + pos: 124.5,-40.5 + parent: 2 + - uid: 40875 + components: + - type: Transform + pos: 125.5,-40.5 + parent: 2 + - uid: 40876 + components: + - type: Transform + pos: 126.5,-40.5 + parent: 2 + - uid: 40877 + components: + - type: Transform + pos: 127.5,-40.5 + parent: 2 + - uid: 40878 + components: + - type: Transform + pos: 128.5,-40.5 + parent: 2 + - uid: 40879 + components: + - type: Transform + pos: 129.5,-40.5 + parent: 2 + - uid: 40880 + components: + - type: Transform + pos: 130.5,-40.5 + parent: 2 + - uid: 40881 + components: + - type: Transform + pos: 131.5,-40.5 + parent: 2 + - uid: 40882 + components: + - type: Transform + pos: 132.5,-40.5 + parent: 2 + - uid: 40883 + components: + - type: Transform + pos: 110.5,-39.5 + parent: 2 + - uid: 40884 + components: + - type: Transform + pos: 110.5,-40.5 + parent: 2 + - uid: 40885 + components: + - type: Transform + pos: 110.5,-42.5 + parent: 2 + - uid: 40886 + components: + - type: Transform + pos: 110.5,-38.5 + parent: 2 + - uid: 40887 + components: + - type: Transform + pos: 110.5,-41.5 + parent: 2 + - uid: 40888 + components: + - type: Transform + pos: 112.5,-38.5 + parent: 2 + - uid: 40889 + components: + - type: Transform + pos: 112.5,-39.5 + parent: 2 - proto: CableApcStack entities: - uid: 7096 @@ -84250,61 +85132,16 @@ entities: - type: Transform pos: -57.5,-24.5 parent: 2 - - uid: 31088 - components: - - type: Transform - pos: 76.5,-3.5 - parent: 2 - uid: 31353 components: - type: Transform pos: -56.5,-24.5 parent: 2 - - uid: 31515 - components: - - type: Transform - pos: 76.5,-2.5 - parent: 2 - - uid: 31517 - components: - - type: Transform - pos: 76.5,-2.5 - parent: 2 - - uid: 31520 - components: - - type: Transform - pos: 75.5,-2.5 - parent: 2 - - uid: 31521 - components: - - type: Transform - pos: 74.5,-2.5 - parent: 2 - - uid: 31522 - components: - - type: Transform - pos: 72.5,-2.5 - parent: 2 - - uid: 31523 - components: - - type: Transform - pos: 71.5,-2.5 - parent: 2 - - uid: 31524 - components: - - type: Transform - pos: 70.5,-2.5 - parent: 2 - uid: 31527 components: - type: Transform pos: 69.5,-2.5 parent: 2 - - uid: 31528 - components: - - type: Transform - pos: 73.5,-2.5 - parent: 2 - uid: 31529 components: - type: Transform @@ -85635,6 +86472,96 @@ entities: - type: Transform pos: 49.5,-2.5 parent: 2 + - uid: 40913 + components: + - type: Transform + pos: 99.5,-40.5 + parent: 2 + - uid: 40924 + components: + - type: Transform + pos: 102.5,-40.5 + parent: 2 + - uid: 40937 + components: + - type: Transform + pos: 68.5,-3.5 + parent: 2 + - uid: 40938 + components: + - type: Transform + pos: 67.5,-3.5 + parent: 2 + - uid: 40989 + components: + - type: Transform + pos: 101.5,-40.5 + parent: 2 + - uid: 40990 + components: + - type: Transform + pos: 100.5,-40.5 + parent: 2 + - uid: 40993 + components: + - type: Transform + pos: 103.5,-40.5 + parent: 2 + - uid: 40994 + components: + - type: Transform + pos: 104.5,-40.5 + parent: 2 + - uid: 40995 + components: + - type: Transform + pos: 105.5,-40.5 + parent: 2 + - uid: 40996 + components: + - type: Transform + pos: 106.5,-40.5 + parent: 2 + - uid: 40997 + components: + - type: Transform + pos: 107.5,-40.5 + parent: 2 + - uid: 40998 + components: + - type: Transform + pos: 108.5,-40.5 + parent: 2 + - uid: 40999 + components: + - type: Transform + pos: 109.5,-40.5 + parent: 2 + - uid: 41000 + components: + - type: Transform + pos: 110.5,-40.5 + parent: 2 + - uid: 41001 + components: + - type: Transform + pos: 110.5,-39.5 + parent: 2 + - uid: 41002 + components: + - type: Transform + pos: 110.5,-38.5 + parent: 2 + - uid: 41003 + components: + - type: Transform + pos: 111.5,-38.5 + parent: 2 + - uid: 41004 + components: + - type: Transform + pos: 111.5,-37.5 + parent: 2 - proto: CableMVStack entities: - uid: 11581 @@ -85920,97 +86847,11 @@ entities: parent: 2 - proto: CandleBlackInfinite entities: - - uid: 37363 - components: - - type: Transform - pos: 57.462543,-42.64166 - parent: 2 - uid: 39055 components: - type: Transform pos: 35.231613,-71.270454 parent: 2 - - uid: 40858 - components: - - type: Transform - pos: 54.127293,-39.163063 - parent: 2 - - uid: 40859 - components: - - type: Transform - pos: 52.60565,-35.63659 - parent: 2 - - uid: 40860 - components: - - type: Transform - pos: 51.299168,-37.001534 - parent: 2 - - uid: 40861 - components: - - type: Transform - pos: 47.854973,-37.202545 - parent: 2 - - uid: 40863 - components: - - type: Transform - pos: 49.209415,-39.546295 - parent: 2 - - uid: 40864 - components: - - type: Transform - pos: 50.084415,-39.21817 - parent: 2 - - uid: 40874 - components: - - type: Transform - pos: 56.740093,-39.45239 - parent: 2 - - uid: 40878 - components: - - type: Transform - pos: 52.641758,-42.611305 - parent: 2 - - uid: 40879 - components: - - type: Transform - pos: 67.73448,-40.338665 - parent: 2 - - uid: 40880 - components: - - type: Transform - pos: 66.95323,-37.38554 - parent: 2 - - uid: 40917 - components: - - type: Transform - pos: -3.6000676,5.371558 - parent: 2 -- proto: CandleBlackSmall - entities: - - uid: 40855 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 56.050194,-39.637268 - parent: 2 - - uid: 40911 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 47.24944,-41.715393 - parent: 2 -- proto: CandleBlackSmallInfinite - entities: - - uid: 40857 - components: - - type: Transform - pos: 55.612694,-35.53318 - parent: 2 - - uid: 40918 - components: - - type: Transform - pos: -5.0531926,5.465308 - parent: 2 - proto: CandleBlueInfinite entities: - uid: 11635 @@ -86088,17 +86929,7 @@ entities: - uid: 39992 components: - type: Transform - pos: -36.6969,-31.748371 - parent: 2 - - uid: 39993 - components: - - type: Transform - pos: -38.766037,-48.400513 - parent: 2 - - uid: 39994 - components: - - type: Transform - pos: -40.000412,-61.24501 + pos: 31.505058,30.534025 parent: 2 - uid: 39995 components: @@ -86110,11 +86941,6 @@ entities: - type: Transform pos: -76.313,-42.024582 parent: 2 - - uid: 39997 - components: - - type: Transform - pos: 5.9691644,9.23184 - parent: 2 - uid: 40003 components: - type: Transform @@ -86125,26 +86951,6 @@ entities: - type: Transform pos: 34.25058,-71.582985 parent: 2 - - uid: 40905 - components: - - type: Transform - pos: 52.51863,-36.553467 - parent: 2 - - uid: 40906 - components: - - type: Transform - pos: 55.340027,-35.652214 - parent: 2 - - uid: 40907 - components: - - type: Transform - pos: 59.2328,-41.303467 - parent: 2 - - uid: 40908 - components: - - type: Transform - pos: 55.560925,-39.615967 - parent: 2 - proto: Cane entities: - uid: 2062 @@ -86202,6 +87008,16 @@ entities: - type: Transform pos: 12.504614,-24.44699 parent: 2 + - uid: 40944 + components: + - type: Transform + pos: 12.501594,-24.445663 + parent: 2 + - uid: 40945 + components: + - type: Transform + pos: 12.501594,-24.445663 + parent: 2 - proto: CannonBallGrapeshot entities: - uid: 26497 @@ -86764,6 +87580,53 @@ entities: rot: 3.141592653589793 rad pos: -80.5,-23.5 parent: 2 +- proto: CarpetCyan + entities: + - uid: 41124 + components: + - type: Transform + pos: -32.5,5.5 + parent: 2 + - uid: 41125 + components: + - type: Transform + pos: -32.5,7.5 + parent: 2 + - uid: 41136 + components: + - type: Transform + pos: -28.5,-0.5 + parent: 2 + - uid: 41139 + components: + - type: Transform + pos: -32.5,6.5 + parent: 2 + - uid: 41141 + components: + - type: Transform + pos: -29.5,-2.5 + parent: 2 + - uid: 41143 + components: + - type: Transform + pos: -28.5,-1.5 + parent: 2 + - uid: 41144 + components: + - type: Transform + pos: -29.5,-0.5 + parent: 2 + - uid: 41145 + components: + - type: Transform + pos: -29.5,-1.5 + parent: 2 + - uid: 41146 + components: + - type: Transform + pos: -28.5,-2.5 + parent: 2 - proto: CarpetGreen entities: - uid: 11747 @@ -87542,36 +88405,11 @@ entities: parent: 2 - proto: CarvedPumpkin entities: - - uid: 7148 - components: - - type: Transform - pos: -38.391434,-48.866783 - parent: 2 - - uid: 35881 - components: - - type: Transform - pos: -25.536427,-89.54314 - parent: 2 - uid: 40088 components: - type: Transform pos: -78.281494,-41.086143 parent: 2 - - uid: 40856 - components: - - type: Transform - pos: 54.701637,-39.06653 - parent: 2 - - uid: 40886 - components: - - type: Transform - pos: 64.53136,-42.53324 - parent: 2 - - uid: 40888 - components: - - type: Transform - pos: 69.371826,-36.578964 - parent: 2 - proto: CarvedPumpkinLarge entities: - uid: 36688 @@ -87579,163 +88417,23 @@ entities: - type: Transform pos: -31.484411,-98.339386 parent: 2 - - uid: 40869 - components: - - type: Transform - pos: 58.494213,-35.74645 - parent: 2 - - uid: 40881 - components: - - type: Transform - pos: 64.64073,-35.330116 - parent: 2 - - uid: 40895 - components: - - type: Transform - pos: 56.51484,1.6501288 - parent: 2 - proto: CarvedPumpkinSmall entities: - - uid: 1658 - components: - - type: Transform - pos: -29.479185,13.676671 - parent: 2 - - uid: 33867 - components: - - type: Transform - pos: -63.49374,-71.702446 - parent: 2 - - uid: 35882 - components: - - type: Transform - pos: -25.630177,-89.05876 - parent: 2 - - uid: 35883 - components: - - type: Transform - pos: -25.067677,-89.21501 - parent: 2 - - uid: 35884 - components: - - type: Transform - pos: -28.538267,-86.42217 - parent: 2 - - uid: 35885 - components: - - type: Transform - pos: -35.40756,-89.388756 - parent: 2 - - uid: 35902 - components: - - type: Transform - pos: -35.485683,-86.29228 - parent: 2 - - uid: 35903 - components: - - type: Transform - pos: -35.485683,-83.33916 - parent: 2 - - uid: 36747 - components: - - type: Transform - pos: 33.339794,-72.120605 - parent: 2 - - uid: 36901 - components: - - type: Transform - pos: -80.821144,-27.018604 - parent: 2 - - uid: 37657 - components: - - type: Transform - pos: 86.493164,-20.514278 - parent: 2 - uid: 37661 components: - type: Transform pos: 50.829235,-54.189037 parent: 2 - - uid: 37663 - components: - - type: Transform - pos: 31.490284,-11.588404 - parent: 2 - - uid: 37664 - components: - - type: Transform - pos: 31.490284,-13.338404 - parent: 2 - - uid: 40852 - components: - - type: Transform - pos: 51.618362,-35.42816 - parent: 2 - - uid: 40853 - components: - - type: Transform - pos: 50.915237,-36.725037 - parent: 2 - - uid: 40865 - components: - - type: Transform - pos: 50.41254,-39.733795 - parent: 2 - - uid: 40868 - components: - - type: Transform - pos: 58.337963,-36.575863 - parent: 2 - - uid: 40876 - components: - - type: Transform - pos: 56.56822,-39.73364 - parent: 2 - - uid: 40882 - components: - - type: Transform - pos: 64.53136,-36.142616 - parent: 2 - uid: 40890 components: - type: Transform pos: 61.57672,-37.85955 parent: 2 - - uid: 40892 - components: - - type: Transform - pos: 70.71687,-26.183344 - parent: 2 - - uid: 40893 - components: - - type: Transform - pos: 62.373127,-28.167719 - parent: 2 - - uid: 40894 - components: - - type: Transform - pos: 60.780464,0.71262884 - parent: 2 - uid: 40897 components: - type: Transform pos: 94.46736,-20.29567 parent: 2 - - uid: 40898 - components: - - type: Transform - pos: 81.527374,-27.509716 - parent: 2 - - uid: 40901 - components: - - type: Transform - pos: 94.506805,-42.392593 - parent: 2 - - uid: 40916 - components: - - type: Transform - pos: -5.4281926,5.527808 - parent: 2 - proto: Catwalk entities: - uid: 1547 @@ -93250,24 +93948,6 @@ entities: - type: Transform pos: -57.5,-86.5 parent: 2 - - uid: 12955 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 107.5,-40.5 - parent: 2 - - uid: 12956 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 106.5,-40.5 - parent: 2 - - uid: 12957 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 104.5,-40.5 - parent: 2 - uid: 12958 components: - type: Transform @@ -97105,11 +97785,6 @@ entities: - type: Transform pos: 113.5,-44.5 parent: 2 - - uid: 13810 - components: - - type: Transform - pos: 113.5,-43.5 - parent: 2 - uid: 13811 components: - type: Transform @@ -101150,6 +101825,32 @@ entities: - type: Transform pos: -6.2909193,-36.431015 parent: 2 + - uid: 41028 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False + - uid: 41033 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False +- proto: ChemistryEmptyBottle02 + entities: + - uid: 41034 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False + - uid: 41035 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: ChemistryEmptyBottle03 entities: - uid: 34236 @@ -101157,6 +101858,12 @@ entities: - type: Transform pos: -6.7127943,-36.41539 parent: 2 + - uid: 41032 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: ChemistryEmptyBottle04 entities: - uid: 34223 @@ -101165,6 +101872,12 @@ entities: rot: -1.5707963267948966 rad pos: -6.0601406,-36.2156 parent: 2 + - uid: 41031 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: ChemistryHotplate entities: - uid: 13379 @@ -101232,6 +101945,13 @@ entities: - type: Transform pos: 53.5,6.5 parent: 2 +- proto: ChlorineChemistryVial + entities: + - uid: 41121 + components: + - type: Transform + pos: -19.551924,-33.235367 + parent: 2 - proto: ChurchBell entities: - uid: 14217 @@ -102035,10 +102755,10 @@ entities: - type: Transform pos: 70.5,-6.5 parent: 2 - - uid: 40779 + - uid: 41115 components: - type: Transform - pos: 73.5,5.5 + pos: 75.5,5.5 parent: 2 - proto: ClosetFire entities: @@ -102624,8 +103344,8 @@ entities: immutable: False temperature: 293.1462 moles: - - 1.8744951 - - 7.051672 + - 1.8959498 + - 7.1323833 - 0 - 0 - 0 @@ -103038,16 +103758,6 @@ entities: - type: Transform pos: 76.5,-16.5 parent: 2 - - uid: 14461 - components: - - type: Transform - pos: 109.5,-40.5 - parent: 2 - - uid: 14462 - components: - - type: Transform - pos: 104.5,-42.5 - parent: 2 - uid: 14464 components: - type: Transform @@ -103285,6 +103995,24 @@ entities: - type: Transform pos: -10.5,-25.5 parent: 2 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.7459903 + - 6.568249 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - uid: 39462 components: - type: Transform @@ -103604,6 +104332,15 @@ entities: priority: 0 component: ClothingSpeedModifier title: null +- proto: ClothingBackpackDuffelCaptain + entities: + - uid: 37762 + components: + - type: Transform + parent: 33761 + - type: Physics + canCollide: False + - type: InsideEntityStorage - proto: ClothingBackpackDuffelSalvage entities: - uid: 14563 @@ -103699,6 +104436,13 @@ entities: - type: Transform pos: 9.508253,-1.3463131 parent: 2 +- proto: ClothingBeltMercWebbing + entities: + - uid: 27921 + components: + - type: Transform + pos: 10.473449,-22.354832 + parent: 2 - proto: ClothingBeltPlant entities: - uid: 40797 @@ -104575,85 +105319,6 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage - - uid: 33859 - components: - - type: Transform - pos: -59.447124,-10.126086 - parent: 2 - - type: HandheldLight - toggleActionEntity: 33860 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 33860 - - type: ActionsContainer - - uid: 40841 - components: - - type: Transform - parent: 40840 - - type: HandheldLight - toggleActionEntity: 40842 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 40842 - - type: Physics - canCollide: False - - type: ActionsContainer - - uid: 40844 - components: - - type: Transform - parent: 40843 - - type: HandheldLight - toggleActionEntity: 40845 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 40845 - - type: Physics - canCollide: False - - type: ActionsContainer - - uid: 40849 - components: - - type: Transform - parent: 40848 - - type: HandheldLight - toggleActionEntity: 40850 - - type: ContainerContainer - containers: - cell_slot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - actions: !type:Container - showEnts: False - occludes: True - ents: - - 40850 - - type: Physics - canCollide: False - - type: ActionsContainer - proto: ClothingHeadHatPwig entities: - uid: 14699 @@ -104792,42 +105457,16 @@ entities: - type: Transform pos: -1.4852774,27.497887 parent: 2 - - uid: 35796 - components: - - type: Transform - pos: -29.444256,-83.31749 - parent: 2 - - uid: 35798 - components: - - type: Transform - pos: -32.398327,-96.36438 - parent: 2 - - uid: 35799 - components: - - type: Transform - pos: -33.710827,-94.942505 - parent: 2 - uid: 35807 components: - type: Transform pos: -36.524727,-25.261938 parent: 2 - - uid: 35808 - components: - - type: Transform - pos: -38.300045,-5.516062 - parent: 2 - uid: 35811 components: - type: Transform pos: -42.784866,-86.21655 parent: 2 - - uid: 40838 - components: - - type: Transform - parent: 40837 - - type: Physics - canCollide: False - uid: 40922 components: - type: Transform @@ -104835,31 +105474,6 @@ entities: parent: 2 - proto: ClothingHeadHatWitch1 entities: - - uid: 35797 - components: - - type: Transform - pos: -32.835827,-94.442505 - parent: 2 - - uid: 35800 - components: - - type: Transform - pos: -29.443275,-89.21794 - parent: 2 - - uid: 35801 - components: - - type: Transform - pos: -29.67765,-89.40544 - parent: 2 - - uid: 35809 - components: - - type: Transform - pos: -38.050045,-5.234812 - parent: 2 - - uid: 35810 - components: - - type: Transform - pos: -44.384968,-24.564367 - parent: 2 - uid: 40923 components: - type: Transform @@ -104910,12 +105524,6 @@ entities: - type: Transform pos: 58.083214,-41.490364 parent: 2 - - uid: 40925 - components: - - type: Transform - parent: 40924 - - type: Physics - canCollide: False - proto: ClothingHeadHelmetERTLeader entities: - uid: 38157 @@ -105161,11 +105769,11 @@ entities: parent: 2 - proto: ClothingMaskGasCaptain entities: - - uid: 29048 + - uid: 13810 components: - type: Transform rot: 1.5707963267948966 rad - pos: 14.641165,-25.52749 + pos: 14.668036,-25.523985 parent: 2 - proto: ClothingMaskGasERT entities: @@ -105316,7 +105924,7 @@ entities: - uid: 1085 components: - type: Transform - pos: 10.4807,-22.383314 + pos: 10.469885,-22.367643 parent: 2 - proto: ClothingNeckCloakTrans entities: @@ -105356,7 +105964,7 @@ entities: - uid: 14750 components: - type: Transform - pos: 3.5384512,-62.515625 + pos: 3.5034523,-62.5625 parent: 2 - uid: 14776 components: @@ -105671,7 +106279,12 @@ entities: - uid: 37708 components: - type: Transform - pos: 60.531605,-13.427795 + pos: 60.556175,-13.448418 + parent: 2 + - uid: 41138 + components: + - type: Transform + pos: 60.431175,-13.401543 parent: 2 - proto: ClothingOuterArmorRiot entities: @@ -105821,14 +106434,6 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage -- proto: ClothingOuterCoatLab - entities: - - uid: 40926 - components: - - type: Transform - parent: 40924 - - type: Physics - canCollide: False - proto: ClothingOuterCoatLabSecurityMedic entities: - uid: 24413 @@ -105878,21 +106483,11 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage - - uid: 36753 - components: - - type: Transform - pos: -29.527227,14.537251 - parent: 2 - uid: 36756 components: - type: Transform pos: -57.54903,-40.19077 parent: 2 - - uid: 36757 - components: - - type: Transform - pos: -32.42985,-95.44581 - parent: 2 - uid: 36758 components: - type: Transform @@ -105904,16 +106499,6 @@ entities: parent: 40847 - type: Physics canCollide: False - - uid: 40913 - components: - - type: Transform - pos: 47.493504,-42.337532 - parent: 2 - - uid: 40914 - components: - - type: Transform - pos: 31.498363,-12.472814 - parent: 2 - proto: ClothingOuterHardsuitBrigmedic entities: - uid: 1758 @@ -106217,28 +106802,11 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage - - uid: 35788 - components: - - type: Transform - pos: -34.550198,-86.34874 - parent: 2 - - uid: 35805 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -67.39592,-13.610141 - parent: 2 - uid: 35806 components: - type: Transform pos: -84.49607,-25.376345 parent: 2 - - uid: 40839 - components: - - type: Transform - parent: 40837 - - type: Physics - canCollide: False - proto: ClothingOuterVestArmorMedSec entities: - uid: 16253 @@ -106564,6 +107132,15 @@ entities: - type: Transform pos: -18.035769,-27.723944 parent: 2 +- proto: ClothingUniformJumpskirtElegantMaid + entities: + - uid: 41122 + components: + - type: Transform + parent: 39987 + - type: Physics + canCollide: False + - type: InsideEntityStorage - proto: ClothingUniformJumpskirtLawyerBlue entities: - uid: 16714 @@ -106714,14 +107291,6 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage -- proto: ClothingUniformJumpsuitLawyerPurple - entities: - - uid: 40846 - components: - - type: Transform - parent: 40843 - - type: Physics - canCollide: False - proto: ClothingUniformJumpsuitMusician entities: - uid: 14416 @@ -107275,13 +107844,6 @@ entities: - type: Transform pos: 37.553635,-42.480568 parent: 2 -- proto: ComplexXenoArtifactItem - entities: - - uid: 25340 - components: - - type: Transform - pos: 0.4785049,-32.492924 - parent: 2 - proto: ComputerAlert entities: - uid: 15004 @@ -107374,6 +107936,12 @@ entities: parent: 2 - proto: ComputerBroken entities: + - uid: 14462 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 20.5,-21.5 + parent: 2 - uid: 15017 components: - type: Transform @@ -107386,18 +107954,6 @@ entities: rot: 1.5707963267948966 rad pos: 93.5,-51.5 parent: 2 - - uid: 18669 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 20.5,-21.5 - parent: 2 - - uid: 24061 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -11.5,-101.5 - parent: 2 - uid: 28510 components: - type: Transform @@ -107871,11 +108427,11 @@ entities: parent: 2 - proto: ComputerShuttleSalvage entities: - - uid: 6182 + - uid: 9303 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -11.5,-100.5 + rot: 1.5707963267948966 rad + pos: -9.5,-101.5 parent: 2 - proto: ComputerSolarControl entities: @@ -108714,11 +109270,6 @@ entities: - type: Transform pos: 32.5,-13.5 parent: 2 - - uid: 40078 - components: - - type: Transform - pos: 32.5,7.5 - parent: 2 - uid: 40081 components: - type: Transform @@ -108729,21 +109280,11 @@ entities: - type: Transform pos: -57.5,-36.5 parent: 2 - - uid: 40084 - components: - - type: Transform - pos: 7.5,23.5 - parent: 2 - uid: 40919 components: - type: Transform pos: -20.5,8.5 parent: 2 - - uid: 40920 - components: - - type: Transform - pos: -73.5,-41.5 - parent: 2 - proto: CrateContrabandStorageSecure entities: - uid: 2590 @@ -109092,6 +109633,16 @@ entities: - type: Transform pos: -71.5,-20.5 parent: 2 + - uid: 32760 + components: + - type: Transform + pos: 19.5,-62.5 + parent: 2 + - uid: 41119 + components: + - type: Transform + pos: -5.5,-65.5 + parent: 2 - proto: CrateFoodMRE entities: - uid: 15227 @@ -109105,8 +109656,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -109160,10 +109711,12 @@ entities: showEnts: False occludes: True ents: + - 40930 + - 40933 - 9276 - - 15230 - - 9704 - 22002 + - 9704 + - 15230 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -109324,8 +109877,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -109343,6 +109896,7 @@ entities: occludes: True ents: - 9347 + - 28869 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -109367,8 +109921,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.8856695 - - 7.0937095 + - 1.8968438 + - 7.1357465 - 0 - 0 - 0 @@ -109385,8 +109939,8 @@ entities: showEnts: False occludes: True ents: - - 1916 - 1915 + - 1916 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -109429,6 +109983,24 @@ entities: - type: Transform pos: -13.5,-27.5 parent: 2 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.8856695 + - 7.0937095 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - type: ContainerContainer containers: entity_storage: !type:Container @@ -109443,11 +110015,6 @@ entities: showEnts: False occludes: True ent: null - - uid: 33828 - components: - - type: Transform - pos: 19.5,-48.5 - parent: 2 - uid: 33829 components: - type: Transform @@ -109673,6 +110240,24 @@ entities: - type: Transform pos: -13.5,-29.5 parent: 2 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.7459903 + - 6.568249 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - proto: CratePirate entities: - uid: 15845 @@ -109686,8 +110271,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -109704,8 +110289,8 @@ entities: showEnts: False occludes: True ents: - - 15847 - 15846 + - 15847 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -110105,8 +110690,8 @@ entities: immutable: False temperature: 293.14755 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -110117,17 +110702,6 @@ entities: - 0 - 0 - 0 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 1994 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - uid: 24602 components: - type: Transform @@ -110273,21 +110847,6 @@ entities: - type: Transform pos: 28.5,29.5 parent: 2 - - uid: 40854 - components: - - type: Transform - pos: 52.5,-42.5 - parent: 2 - - uid: 40875 - components: - - type: Transform - pos: 52.5,-35.5 - parent: 2 - - uid: 40910 - components: - - type: Transform - pos: 53.5,-38.5 - parent: 2 - proto: CrateSurgery entities: - uid: 35789 @@ -110470,8 +111029,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -110531,24 +111090,40 @@ entities: ent: 6315 - type: Pullable prevFixedRotation: True - - uid: 28068 - components: - - type: Transform - pos: 10.5,-60.5 - parent: 2 - uid: 28069 components: - type: Transform pos: 10.5,-59.5 parent: 2 + - type: Lock + locked: False + - type: Fixtures + fixtures: + fix1: + shape: !type:PolygonShape + radius: 0.01 + vertices: + - -0.4,-0.4 + - 0.4,-0.4 + - 0.4,0.29 + - -0.4,0.29 + mask: + - Impassable + - HighImpassable + - LowImpassable + layer: + - BulletImpassable + - Opaque + density: 50 + hard: True + restitution: 0 + friction: 0.4 - type: EntityStorage air: volume: 200 immutable: False temperature: 293.1462 moles: - - 1.606311 - - 6.042789 - 0 - 0 - 0 @@ -110559,26 +111134,66 @@ entities: - 0 - 0 - 0 + - 0 + - 0 + open: True + removedMasks: 20 + - type: PlaceableSurface + isPlaceable: True - uid: 28076 components: - type: Transform pos: 14.5,-62.5 parent: 2 + - type: Lock + locked: False - uid: 28082 components: - type: Transform pos: 19.5,-53.5 parent: 2 + - type: Lock + locked: False + - type: Fixtures + fixtures: + fix1: + shape: !type:PolygonShape + radius: 0.01 + vertices: + - -0.4,-0.4 + - 0.4,-0.4 + - 0.4,0.29 + - -0.4,0.29 + mask: + - Impassable + - HighImpassable + - LowImpassable + layer: + - BulletImpassable + - Opaque + density: 50 + hard: True + restitution: 0 + friction: 0.4 + - type: EntityStorage + open: True + removedMasks: 20 + - type: PlaceableSurface + isPlaceable: True - uid: 28095 components: - type: Transform pos: 15.5,-56.5 parent: 2 + - type: Lock + locked: False - uid: 28112 components: - type: Transform pos: 14.5,-56.5 parent: 2 + - type: Lock + locked: False - uid: 28113 components: - type: Transform @@ -110691,21 +111306,6 @@ entities: - type: Transform pos: 30.5,30.5 parent: 2 - - uid: 40870 - components: - - type: Transform - pos: 55.5,-35.5 - parent: 2 - - uid: 40909 - components: - - type: Transform - pos: 57.5,-39.5 - parent: 2 - - uid: 40912 - components: - - type: Transform - pos: 47.5,-42.5 - parent: 2 - proto: CrayonBox entities: - uid: 14571 @@ -110818,6 +111418,13 @@ entities: - type: Transform pos: -51.312763,-0.015726864 parent: 2 + - uid: 28869 + components: + - type: Transform + parent: 920 + - type: Physics + canCollide: False + - type: InsideEntityStorage - proto: CrowbarRed entities: - uid: 15320 @@ -111056,7 +111663,7 @@ entities: - uid: 15349 components: - type: Transform - pos: -34.306686,-22.015776 + pos: -34.292515,-22.123524 parent: 2 - uid: 30767 components: @@ -111229,28 +111836,25 @@ entities: - uid: 11468 components: - type: Transform - parent: 17812 + parent: 27043 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: DartPurple entities: - uid: 11469 components: - type: Transform - parent: 17812 + parent: 27043 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: DartYellow entities: - uid: 11467 components: - type: Transform - parent: 17812 + parent: 27043 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: DefaultStationBeacon entities: - uid: 40048 @@ -112335,7 +112939,7 @@ entities: - type: MetaData name: котёл для зелий - type: Transform - pos: -36.549618,-29.070229 + pos: 28.448263,28.692951 parent: 2 - proto: DisposalBend entities: @@ -113558,6 +114162,12 @@ entities: rot: 1.5707963267948966 rad pos: 14.5,-77.5 parent: 2 + - uid: 16472 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -36.5,-28.5 + parent: 2 - uid: 16687 components: - type: Transform @@ -118082,12 +118692,6 @@ entities: rot: 1.5707963267948966 rad pos: -53.5,-28.5 parent: 2 - - uid: 16472 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -36.5,-28.5 - parent: 2 - uid: 16473 components: - type: Transform @@ -122254,6 +122858,12 @@ entities: rot: 3.141592653589793 rad pos: 2.5,-45.5 parent: 2 + - uid: 33863 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -37.5,-28.5 + parent: 2 - uid: 38205 components: - type: Transform @@ -123443,6 +124053,13 @@ entities: rot: 3.141592653589793 rad pos: 47.5,-8.5 parent: 2 +- proto: DisposalPipeBroken + entities: + - uid: 39085 + components: + - type: Transform + pos: 2.5,-44.5 + parent: 2 - proto: DisposalRouter entities: - uid: 17356 @@ -124023,6 +124640,12 @@ entities: rot: 3.141592653589793 rad pos: 2.5,-46.5 parent: 2 + - uid: 33862 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -38.5,-28.5 + parent: 2 - uid: 38215 components: - type: Transform @@ -124553,11 +125176,17 @@ entities: parent: 37887 - uid: 39556 components: + - type: MetaData + desc: Теперь и лифт для сверхбыстрого перемещения. Вау. + name: пневматический лифт - type: Transform pos: -27.5,-39.5 parent: 2 - uid: 39557 components: + - type: MetaData + desc: Теперь и лифт для сверхбыстрого перемещения. Вау. + name: пневматический лифт - type: Transform pos: -26.5,-39.5 parent: 2 @@ -124989,6 +125618,18 @@ entities: - type: Transform pos: -96.4395,-10.124379 parent: 2 + - uid: 41154 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False + - uid: 41160 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False - proto: DrinkBeerglass entities: - uid: 17596 @@ -125001,6 +125642,18 @@ entities: - type: Transform pos: -96.22075,-10.390004 parent: 2 + - uid: 41155 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False + - uid: 41156 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False - proto: DrinkBottleBeer entities: - uid: 9750 @@ -125024,7 +125677,7 @@ entities: - uid: 17599 components: - type: Transform - pos: 24.858665,4.8161297 + pos: 24.591486,4.718968 parent: 2 - proto: DrinkBottleNTCahors entities: @@ -125096,6 +125749,12 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage + - uid: 41157 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False - proto: DrinkColaCan entities: - uid: 17364 @@ -125146,6 +125805,20 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage +- proto: DrinkGlassCoupeShaped + entities: + - uid: 41158 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False + - uid: 41159 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False - proto: DrinkGoldenCup entities: - uid: 29575 @@ -125305,6 +125978,12 @@ entities: - type: Transform pos: 43.45974,-74.36939 parent: 2 + - uid: 24652 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False - proto: DrinkMugGreen entities: - uid: 17653 @@ -125467,6 +126146,13 @@ entities: - type: Transform pos: -59.220222,9.708474 parent: 2 +- proto: DrinkShakeEmpty + entities: + - uid: 36762 + components: + - type: Transform + pos: 28.419611,2.640843 + parent: 2 - proto: DrinkShaker entities: - uid: 17611 @@ -125491,8 +126177,9 @@ entities: - uid: 17675 components: - type: Transform - pos: 25.40554,4.656843 - parent: 2 + parent: 41152 + - type: Physics + canCollide: False - uid: 17676 components: - type: Transform @@ -125526,8 +126213,9 @@ entities: - uid: 17683 components: - type: Transform - pos: 25.21804,4.469343 - parent: 2 + parent: 41152 + - type: Physics + canCollide: False - proto: DrinkSingulo entities: - uid: 16869 @@ -125560,6 +126248,14 @@ entities: - type: Transform pos: -52.326286,-54.384033 parent: 2 +- proto: DrinkVermouthBottleFull + entities: + - uid: 41153 + components: + - type: Transform + parent: 41152 + - type: Physics + canCollide: False - proto: DrinkVodkaBottleFull entities: - uid: 17693 @@ -125693,6 +126389,16 @@ entities: - type: Transform pos: -1.5218987,-22.491896 parent: 2 + - uid: 30565 + components: + - type: MetaData + name: яйцо ёжика с планеты синего кефира + - type: Transform + rot: 3.141592653589793 rad + pos: 0.4938854,-32.51847 + parent: 2 + - type: StaticPrice + price: 8000 - proto: EmergencyLight entities: - uid: 60 @@ -126124,6 +126830,16 @@ entities: rot: -1.5707963267948966 rad pos: 60.5,-1.5 parent: 2 + - uid: 41011 + components: + - type: Transform + pos: 116.5,-38.5 + parent: 2 + - uid: 41012 + components: + - type: Transform + pos: 128.5,-38.5 + parent: 2 - proto: EmergencyRollerBed entities: - uid: 17784 @@ -126205,10 +126921,9 @@ entities: - uid: 17813 components: - type: Transform - parent: 17812 + parent: 27043 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: EpinephrineChemistryBottle entities: - uid: 2710 @@ -126231,7 +126946,7 @@ entities: - uid: 39738 components: - type: MetaData - name: одноразовый маркер спавна шкелета-пилата калибского моля + name: (DISABLE) одноразовый маркер спавна шкелета-пилата калибского моля - type: Transform pos: 10.5,-20.5 parent: 2 @@ -126244,6 +126959,8 @@ entities: - type: Transform pos: 4.5,-4.5 parent: 37887 + - type: DeviceLinkSink + invokeCounter: 1 - proto: ERTSpawnerJanitor entities: - uid: 34359 @@ -126255,6 +126972,15 @@ entities: parent: 2 - type: SpawnOnTrigger proto: ClothingOuterHardsuitMaxim + - uid: 40955 + components: + - type: MetaData + name: не слишком ли много спавнеров обр? хммммммммммм? + - type: Transform + pos: 4.5,-48.5 + parent: 2 + - type: SpawnOnTrigger + proto: SpaceMedipen - proto: ERTSpawnerLeader entities: - uid: 38219 @@ -126262,6 +126988,8 @@ entities: - type: Transform pos: -5.5,-6.5 parent: 37887 + - type: DeviceLinkSink + invokeCounter: 1 - proto: ERTSpawnerMedical entities: - uid: 38220 @@ -126269,6 +126997,8 @@ entities: - type: Transform pos: 4.5,-6.5 parent: 37887 + - type: DeviceLinkSink + invokeCounter: 1 - proto: ERTSpawnerSrcurity entities: - uid: 38221 @@ -126276,16 +127006,30 @@ entities: - type: Transform pos: 6.5,-4.5 parent: 37887 + - type: DeviceLinkSink + invokeCounter: 1 - uid: 38222 components: - type: Transform pos: 6.5,-5.5 parent: 37887 + - type: DeviceLinkSink + invokeCounter: 1 - uid: 38223 components: - type: Transform pos: 6.5,-6.5 parent: 37887 + - type: DeviceLinkSink + invokeCounter: 1 +- proto: EthanolChemistryBottle + entities: + - uid: 37184 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: ExGrenade entities: - uid: 37107 @@ -126573,11 +127317,6 @@ entities: - type: Transform pos: -59.5,-70.5 parent: 2 - - uid: 17883 - components: - - type: Transform - pos: -38.5,-27.5 - parent: 2 - uid: 17884 components: - type: Transform @@ -126645,6 +127384,13 @@ entities: - type: Transform pos: -40.5,17.5 parent: 2 +- proto: ExtradimensionalOrangeSeeds + entities: + - uid: 41088 + components: + - type: Transform + pos: -15.111454,-11.458054 + parent: 2 - proto: EZNutrientChemistryBottle entities: - uid: 40795 @@ -126743,7 +127489,7 @@ entities: - uid: 31579 components: - type: Transform - pos: 89.5,-2.5 + pos: 88.5,-2.5 parent: 2 - type: FaxMachine name: Перма @@ -127892,6 +128638,18 @@ entities: - 40125 - 40122 - 40121 + - uid: 41016 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 113.5,-41.5 + parent: 2 + - type: DeviceList + devices: + - 41015 + - 32729 + - 29048 + - 27324 - proto: FireAxeCabinetFilled entities: - uid: 5349 @@ -128727,6 +129485,15 @@ entities: - type: DeviceNetwork deviceLists: - 2712 + - uid: 6182 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 103.5,-42.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41017 - uid: 7784 components: - type: Transform @@ -130237,6 +131004,9 @@ entities: - type: Transform pos: 103.5,-40.5 parent: 2 + - type: DeviceNetwork + deviceLists: + - 41017 - uid: 18270 components: - type: Transform @@ -131418,6 +132188,37 @@ entities: - type: Transform pos: 26.5,-31.5 parent: 2 + - uid: 25803 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 103.5,-41.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41017 + - uid: 27324 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 109.5,-42.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - 41016 + - 41017 + - uid: 29048 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 109.5,-41.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - 41016 + - 41017 - uid: 32558 components: - type: Transform @@ -131427,6 +132228,17 @@ entities: - type: DeviceNetwork deviceLists: - 40436 + - uid: 32729 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 109.5,-40.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - 41016 + - 41017 - uid: 32744 components: - type: Transform @@ -132167,6 +132979,28 @@ entities: rot: 3.141592653589793 rad pos: -9.125405,13.363225 parent: 2 +- proto: FloorTileItemWoodLargeLight + entities: + - uid: 41473 + components: + - type: Transform + pos: 11.27867,-39.371506 + parent: 2 + - uid: 41474 + components: + - type: Transform + pos: 13.77867,-38.23088 + parent: 2 + - uid: 41475 + components: + - type: Transform + pos: 16.653671,-39.54338 + parent: 2 + - uid: 41477 + components: + - type: Transform + pos: 8.27867,-43.40281 + parent: 2 - proto: FloorWaterEntity entities: - uid: 25929 @@ -132533,11 +133367,6 @@ entities: - type: Transform pos: 5.5,-37.5 parent: 2 - - uid: 28011 - components: - - type: Transform - pos: 17.5,-33.5 - parent: 2 - uid: 28012 components: - type: Transform @@ -132548,11 +133377,6 @@ entities: - type: Transform pos: 16.5,-33.5 parent: 2 - - uid: 28014 - components: - - type: Transform - pos: 17.5,-32.5 - parent: 2 - uid: 28826 components: - type: Transform @@ -132598,6 +133422,16 @@ entities: - type: Transform pos: 14.5,-32.5 parent: 2 + - uid: 39084 + components: + - type: Transform + pos: 19.5,-33.5 + parent: 2 + - uid: 39735 + components: + - type: Transform + pos: 17.5,-33.5 + parent: 2 - uid: 40105 components: - type: Transform @@ -132955,6 +133789,12 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage + - uid: 17883 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False - uid: 18598 components: - type: Transform @@ -132965,6 +133805,98 @@ entities: - type: Transform pos: -55.325607,11.7430105 parent: 2 +- proto: FoodCondimentPacketAstrotame + entities: + - uid: 25075 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketBbq + entities: + - uid: 23773 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False + - uid: 34327 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketCornoil + entities: + - uid: 33756 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False + - uid: 34324 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketHorseradish + entities: + - uid: 28068 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketKetchup + entities: + - uid: 24650 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketMustard + entities: + - uid: 30611 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketPepper + entities: + - uid: 24659 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketSalt + entities: + - uid: 24651 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketSoy + entities: + - uid: 24639 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False +- proto: FoodCondimentPacketSugar + entities: + - uid: 25213 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False - proto: FoodCornTrash entities: - uid: 31083 @@ -133342,6 +134274,20 @@ entities: - type: Transform pos: -19.49841,6.615534 parent: 2 +- proto: FoodPlateSmall + entities: + - uid: 25340 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False + - uid: 25363 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False - proto: FoodPlateSmallPlastic entities: - uid: 27798 @@ -133377,18 +134323,6 @@ entities: - type: Transform pos: -17.269575,-95.48733 parent: 2 -- proto: FoodPumpkin - entities: - - uid: 27324 - components: - - type: Transform - pos: 56.090027,-35.85534 - parent: 2 - - uid: 40867 - components: - - type: Transform - pos: 59.50984,-35.685238 - parent: 2 - proto: FoodSaladAesir entities: - uid: 18658 @@ -133481,7 +134415,7 @@ entities: - uid: 40928 components: - type: Transform - pos: -36.473076,-31.098778 + pos: 29.473808,30.5809 parent: 2 - proto: FoodTartMime entities: @@ -133668,6 +134602,11 @@ entities: rot: 1.5707963267948966 rad pos: 31.5,-101.5 parent: 2 + - uid: 41472 + components: + - type: Transform + pos: -9.5,-53.5 + parent: 2 - proto: GasMinerOxygenStationLarge entities: - uid: 18698 @@ -133675,6 +134614,11 @@ entities: - type: Transform pos: 31.5,-98.5 parent: 2 + - uid: 41471 + components: + - type: Transform + pos: -2.5,-54.5 + parent: 2 - proto: GasMinerPlasma entities: - uid: 36697 @@ -133730,6 +134674,8 @@ entities: rot: 1.5707963267948966 rad pos: -3.5,-48.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - proto: GasMixerFlipped entities: - uid: 18706 @@ -134704,14 +135650,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' - - uid: 18788 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 102.5,-39.5 - parent: 2 - - type: AtmosPipeColor - color: '#0000FFFF' - uid: 18789 components: - type: Transform @@ -136489,6 +137427,11 @@ entities: parent: 21045 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 22005 + components: + - type: Transform + pos: 102.5,-39.5 + parent: 2 - uid: 22281 components: - type: Transform @@ -136800,6 +137743,8 @@ entities: rot: -1.5707963267948966 rad pos: -2.5,-48.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 37812 components: - type: Transform @@ -137034,17 +137979,412 @@ entities: rot: 3.141592653589793 rad pos: 5.5,-20.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39883 components: - type: Transform pos: 6.5,-20.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39886 + components: + - type: Transform + pos: 2.5,-14.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39896 + components: + - type: Transform + pos: -16.5,-46.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39915 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 18.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39918 components: - type: Transform rot: 3.141592653589793 rad pos: -14.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 40859 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 112.5,-40.5 + parent: 2 + - uid: 40861 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 112.5,-42.5 + parent: 2 + - uid: 40912 + components: + - type: Transform + pos: 127.5,-38.5 + parent: 2 + - uid: 40914 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 128.5,-40.5 + parent: 2 + - uid: 40981 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 110.5,-40.5 + parent: 2 + - uid: 40982 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 110.5,-38.5 + parent: 2 + - uid: 41166 + components: + - type: Transform + pos: 18.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41177 + components: + - type: Transform + pos: 10.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41179 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 10.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41203 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 18.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41213 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41226 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 19.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41229 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41242 + components: + - type: Transform + pos: 11.5,-15.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41264 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 1.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41294 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -16.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41308 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -16.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41327 + components: + - type: Transform + pos: -7.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41328 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -7.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41329 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41338 + components: + - type: Transform + pos: -14.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41339 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -18.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41356 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41366 + components: + - type: Transform + pos: -10.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41373 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -15.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41375 + components: + - type: Transform + pos: -5.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41387 + components: + - type: Transform + pos: -2.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41388 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -10.5,-13.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41389 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -3.5,-13.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41392 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -1.5,-14.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41393 + components: + - type: Transform + pos: -1.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41425 + components: + - type: Transform + pos: -10.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41426 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -17.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41427 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -17.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41428 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -18.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41454 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -5.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41455 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -5.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41480 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -4.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41481 + components: + - type: Transform + pos: -3.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41484 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -3.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41509 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 14.5,-60.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41510 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 6.5,-61.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41517 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 13.5,-60.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41553 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -18.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41564 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -11.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41573 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -3.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41574 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 2.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41580 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41581 + components: + - type: Transform + pos: -10.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - proto: GasPipeBroken entities: - uid: 39924 @@ -137319,6 +138659,13 @@ entities: parent: 37887 - type: AtmosPipeColor color: '#0000FFFF' + - uid: 39876 + components: + - type: Transform + pos: -13.5,-43.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 40472 components: - type: Transform @@ -137326,6 +138673,27 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 41272 + components: + - type: Transform + pos: -11.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41280 + components: + - type: Transform + pos: -10.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41479 + components: + - type: Transform + pos: -3.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - proto: GasPipeHalf entities: - uid: 39933 @@ -137334,12 +138702,16 @@ entities: rot: -1.5707963267948966 rad pos: 1.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39934 components: - type: Transform rot: 1.5707963267948966 rad pos: 2.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - proto: GasPipeStraight entities: - uid: 223 @@ -142201,14 +143573,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' - - uid: 19690 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 87.5,-41.5 - parent: 2 - - type: AtmosPipeColor - color: '#FF0000FF' - uid: 19691 components: - type: Transform @@ -156129,6 +157493,12 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 21695 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 88.5,-41.5 + parent: 2 - uid: 21858 components: - type: Transform @@ -157636,48 +159006,48 @@ entities: rot: 3.141592653589793 rad pos: -1.5,-48.5 parent: 2 - - uid: 34324 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -1.5,-47.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 34325 components: - type: Transform rot: 3.141592653589793 rad pos: -1.5,-46.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 34326 components: - type: Transform rot: 3.141592653589793 rad pos: -1.5,-45.5 parent: 2 - - uid: 34327 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -1.5,-44.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 34328 components: - type: Transform rot: 3.141592653589793 rad pos: -2.5,-47.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 34329 components: - type: Transform rot: 3.141592653589793 rad pos: -2.5,-46.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 34330 components: - type: Transform rot: 3.141592653589793 rad pos: -2.5,-45.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 34954 components: - type: Transform @@ -158315,6 +159685,13 @@ entities: parent: 37887 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 38651 + components: + - type: Transform + pos: -4.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 38844 components: - type: Transform @@ -158844,586 +160221,730 @@ entities: - type: Transform pos: 0.5,-47.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39822 components: - type: Transform pos: 0.5,-46.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39831 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 11.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39834 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39864 + components: + - type: Transform + pos: -16.5,-42.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39865 + components: + - type: Transform + pos: -16.5,-43.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39878 components: - type: Transform rot: 3.141592653589793 rad pos: 6.5,-14.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39879 components: - type: Transform rot: 3.141592653589793 rad pos: 6.5,-16.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39881 components: - type: Transform pos: 5.5,-18.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39884 components: - type: Transform pos: 6.5,-22.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39885 components: - type: Transform pos: 6.5,-23.5 parent: 2 - - uid: 39886 - components: - - type: Transform - pos: 6.5,-24.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39887 components: - type: Transform pos: 6.5,-25.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39888 components: - type: Transform - pos: 6.5,-26.5 + rot: 1.5707963267948966 rad + pos: -3.5,-29.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39889 components: - type: Transform pos: 6.5,-27.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39890 components: - type: Transform pos: 6.5,-28.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39891 components: - type: Transform pos: 6.5,-29.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39893 components: - type: Transform rot: 1.5707963267948966 rad pos: 8.5,-32.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39894 components: - type: Transform rot: 1.5707963267948966 rad pos: 10.5,-32.5 parent: 2 - - uid: 39895 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 11.5,-32.5 - parent: 2 - - uid: 39896 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 12.5,-32.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39897 components: - type: Transform rot: 1.5707963267948966 rad pos: -7.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39898 components: - type: Transform rot: 1.5707963267948966 rad pos: -6.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39899 components: - type: Transform rot: 1.5707963267948966 rad pos: -5.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39900 components: - type: Transform rot: 1.5707963267948966 rad pos: -4.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39901 components: - type: Transform rot: 1.5707963267948966 rad pos: -3.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39902 components: - type: Transform rot: 1.5707963267948966 rad pos: -2.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39904 components: - type: Transform rot: -1.5707963267948966 rad pos: -5.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39905 components: - type: Transform rot: -1.5707963267948966 rad pos: -6.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39906 components: - type: Transform rot: -1.5707963267948966 rad pos: -7.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39907 components: - type: Transform rot: -1.5707963267948966 rad pos: -8.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39908 components: - type: Transform rot: -1.5707963267948966 rad pos: -9.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39909 components: - type: Transform rot: -1.5707963267948966 rad pos: -10.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39910 components: - type: Transform rot: -1.5707963267948966 rad pos: -11.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39911 components: - type: Transform rot: -1.5707963267948966 rad pos: -12.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39913 components: - type: Transform rot: 3.141592653589793 rad pos: -14.5,-38.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39914 components: - type: Transform rot: 3.141592653589793 rad pos: -14.5,-39.5 parent: 2 - - uid: 39915 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -14.5,-40.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39916 components: - type: Transform rot: 3.141592653589793 rad pos: -14.5,-41.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39917 components: - type: Transform rot: 3.141592653589793 rad pos: -14.5,-42.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39919 components: - type: Transform rot: 1.5707963267948966 rad pos: -3.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39920 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -2.5,-43.5 + rot: -1.5707963267948966 rad + pos: 17.5,-54.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39921 components: - type: Transform rot: 1.5707963267948966 rad pos: -1.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39922 components: - type: Transform rot: 1.5707963267948966 rad pos: -0.5,-43.5 parent: 2 - - uid: 39923 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 0.5,-43.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39925 components: - type: Transform pos: 0.5,-45.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39926 components: - type: Transform rot: 1.5707963267948966 rad pos: 3.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39928 components: - type: Transform rot: 3.141592653589793 rad pos: 4.5,-42.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39929 components: - type: Transform rot: 3.141592653589793 rad pos: 4.5,-41.5 parent: 2 - - uid: 39930 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -1.5,-44.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39931 components: - type: Transform rot: 1.5707963267948966 rad - pos: -0.5,-44.5 + pos: -4.5,-35.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39932 components: - type: Transform rot: 1.5707963267948966 rad pos: 0.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39935 components: - type: Transform rot: 1.5707963267948966 rad pos: 3.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39936 components: - type: Transform rot: 1.5707963267948966 rad pos: 4.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39937 components: - type: Transform pos: 5.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39938 components: - type: Transform pos: 5.5,-42.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39939 components: - type: Transform pos: 5.5,-41.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39942 components: - type: Transform pos: 0.5,-48.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39943 components: - type: Transform pos: 0.5,-49.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39944 components: - type: Transform pos: 0.5,-50.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39945 components: - type: Transform pos: 0.5,-51.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39946 components: - type: Transform pos: 0.5,-52.5 parent: 2 - - uid: 39947 - components: - - type: Transform - pos: 0.5,-53.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39948 components: - type: Transform rot: -1.5707963267948966 rad pos: 13.5,-27.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39949 components: - type: Transform rot: -1.5707963267948966 rad pos: 14.5,-27.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39950 components: - type: Transform rot: -1.5707963267948966 rad pos: 13.5,-29.5 parent: 2 - - uid: 39951 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 14.5,-29.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39952 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 15.5,-29.5 + pos: 18.5,-42.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39953 components: - type: Transform rot: -1.5707963267948966 rad pos: 16.5,-29.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39954 components: - type: Transform rot: 3.141592653589793 rad pos: 18.5,-24.5 parent: 2 - - uid: 39955 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 18.5,-23.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39956 components: - type: Transform rot: 3.141592653589793 rad pos: 18.5,-22.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39957 components: - type: Transform - rot: 3.141592653589793 rad - pos: 18.5,-21.5 + rot: -1.5707963267948966 rad + pos: 16.5,-54.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39958 components: - type: Transform rot: 3.141592653589793 rad pos: 18.5,-20.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39959 components: - type: Transform rot: 3.141592653589793 rad pos: 18.5,-19.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39960 components: - type: Transform rot: 3.141592653589793 rad - pos: 18.5,-18.5 + pos: -12.5,-52.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39961 components: - type: Transform rot: 3.141592653589793 rad pos: 18.5,-17.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39962 components: - type: Transform rot: 3.141592653589793 rad pos: 18.5,-16.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39963 components: - type: Transform rot: 3.141592653589793 rad pos: 18.5,-15.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39964 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-15.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39965 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-16.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39966 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-17.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39967 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-18.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39968 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-19.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39969 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-20.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39970 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-21.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39971 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-22.5 parent: 2 - - uid: 39972 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 16.5,-23.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39973 components: - type: Transform - rot: 3.141592653589793 rad - pos: 16.5,-24.5 + rot: -1.5707963267948966 rad + pos: -8.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39974 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-25.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39975 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-26.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39976 components: - type: Transform rot: 3.141592653589793 rad pos: 14.5,-31.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39977 components: - type: Transform rot: 3.141592653589793 rad pos: 16.5,-31.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39978 components: - type: Transform rot: 1.5707963267948966 rad pos: -12.5,-32.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39979 components: - type: Transform rot: 1.5707963267948966 rad pos: -12.5,-33.5 parent: 2 - - uid: 39980 - components: - - type: Transform - pos: -17.5,-41.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39981 components: - type: Transform - pos: -17.5,-40.5 + pos: -16.5,-41.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39982 components: - type: Transform pos: -13.5,-44.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39983 components: - type: Transform pos: -13.5,-45.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39984 components: - type: Transform pos: -13.5,-46.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39985 components: - type: Transform pos: -13.5,-47.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39986 components: - type: Transform - pos: -13.5,-48.5 - parent: 2 - - uid: 39987 - components: - - type: Transform - pos: -12.5,-44.5 + pos: -14.5,-33.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39988 components: - type: Transform pos: -12.5,-45.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39989 components: - type: Transform pos: -12.5,-46.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39990 components: - type: Transform pos: -12.5,-47.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39991 components: - type: Transform pos: -12.5,-48.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 40402 components: - type: Transform @@ -159495,6 +161016,2592 @@ entities: - type: Transform pos: 87.5,-0.5 parent: 2 + - uid: 40860 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 111.5,-42.5 + parent: 2 + - uid: 40892 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 113.5,-40.5 + parent: 2 + - uid: 40893 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 114.5,-40.5 + parent: 2 + - uid: 40894 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 115.5,-40.5 + parent: 2 + - uid: 40895 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 116.5,-40.5 + parent: 2 + - uid: 40896 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 121.5,-40.5 + parent: 2 + - uid: 40898 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 118.5,-40.5 + parent: 2 + - uid: 40899 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 119.5,-40.5 + parent: 2 + - uid: 40900 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 120.5,-40.5 + parent: 2 + - uid: 40901 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 124.5,-40.5 + parent: 2 + - uid: 40905 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 122.5,-40.5 + parent: 2 + - uid: 40906 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 123.5,-40.5 + parent: 2 + - uid: 40907 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 123.5,-38.5 + parent: 2 + - uid: 40908 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 125.5,-40.5 + parent: 2 + - uid: 40909 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 126.5,-40.5 + parent: 2 + - uid: 40910 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 127.5,-40.5 + parent: 2 + - uid: 40911 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 120.5,-38.5 + parent: 2 + - uid: 40915 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 115.5,-38.5 + parent: 2 + - uid: 40916 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 126.5,-38.5 + parent: 2 + - uid: 40917 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 125.5,-38.5 + parent: 2 + - uid: 40918 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 124.5,-38.5 + parent: 2 + - uid: 40925 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 121.5,-38.5 + parent: 2 + - uid: 40926 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 122.5,-38.5 + parent: 2 + - uid: 40956 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 119.5,-38.5 + parent: 2 + - uid: 40957 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 118.5,-38.5 + parent: 2 + - uid: 40958 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 117.5,-38.5 + parent: 2 + - uid: 40961 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 114.5,-38.5 + parent: 2 + - uid: 40962 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 113.5,-38.5 + parent: 2 + - uid: 40963 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 112.5,-38.5 + parent: 2 + - uid: 40964 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 111.5,-38.5 + parent: 2 + - uid: 40965 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 110.5,-42.5 + parent: 2 + - uid: 40966 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 109.5,-42.5 + parent: 2 + - uid: 40967 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 108.5,-42.5 + parent: 2 + - uid: 40969 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 106.5,-42.5 + parent: 2 + - uid: 40970 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 105.5,-42.5 + parent: 2 + - uid: 40971 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 104.5,-42.5 + parent: 2 + - uid: 40972 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 103.5,-42.5 + parent: 2 + - uid: 40973 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 103.5,-40.5 + parent: 2 + - uid: 40974 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 104.5,-40.5 + parent: 2 + - uid: 40976 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 106.5,-40.5 + parent: 2 + - uid: 40977 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 107.5,-40.5 + parent: 2 + - uid: 40978 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 108.5,-40.5 + parent: 2 + - uid: 40979 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 109.5,-40.5 + parent: 2 + - uid: 41164 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 15.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41165 + components: + - type: Transform + pos: 6.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41172 + components: + - type: Transform + pos: 9.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41173 + components: + - type: Transform + pos: 9.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41175 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 8.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41178 + components: + - type: Transform + pos: 10.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41180 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 11.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41181 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 12.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41182 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 13.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41183 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 14.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41184 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 15.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41185 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 16.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41186 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 17.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41187 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 7.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41188 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 8.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41190 + components: + - type: Transform + pos: 9.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41191 + components: + - type: Transform + pos: 9.5,-42.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41192 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 10.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41193 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 11.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41194 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41195 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41196 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 14.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41197 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 15.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41198 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41199 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 17.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41200 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41201 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41202 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41206 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 2.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41207 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 3.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41208 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 17.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41210 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41212 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41215 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 17.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41216 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41218 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 16.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41219 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 16.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41222 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 17.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41223 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 18.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41224 + components: + - type: Transform + pos: 19.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41225 + components: + - type: Transform + pos: 19.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41227 + components: + - type: Transform + pos: 14.5,-30.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41228 + components: + - type: Transform + pos: 14.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41230 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 15.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41231 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 14.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41232 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41235 + components: + - type: Transform + pos: 11.5,-17.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41236 + components: + - type: Transform + pos: 11.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41237 + components: + - type: Transform + pos: 11.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41238 + components: + - type: Transform + pos: 11.5,-22.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41239 + components: + - type: Transform + pos: 11.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41241 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-16.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41244 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41245 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41246 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41248 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41256 + components: + - type: Transform + pos: -4.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41257 + components: + - type: Transform + pos: -4.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41258 + components: + - type: Transform + pos: -4.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41259 + components: + - type: Transform + pos: -4.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41260 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -2.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41261 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -1.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41262 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -0.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41263 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 0.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41265 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -4.5,-30.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41266 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -4.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41267 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -9.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41268 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -6.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41269 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -7.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41270 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -8.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41271 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -10.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41273 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -9.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41274 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -8.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41275 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -7.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41276 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -6.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41277 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -5.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41279 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -4.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41281 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -11.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41285 + components: + - type: Transform + pos: -2.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41286 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -10.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41287 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -9.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41288 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -11.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41289 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -13.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41290 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41291 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -15.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41292 + components: + - type: Transform + pos: -16.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41293 + components: + - type: Transform + pos: -16.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41296 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -12.5,-50.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41297 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -12.5,-51.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41298 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -13.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41299 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41300 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -15.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41301 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -16.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41302 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -17.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41303 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -18.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41304 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -19.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41309 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -18.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41310 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -17.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41311 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -16.5,-52.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41312 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -16.5,-51.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41313 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -16.5,-50.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41314 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -16.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41315 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -16.5,-47.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41317 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,-48.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41318 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -15.5,-48.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41319 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -13.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41320 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -13.5,-50.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41321 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41322 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41323 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41324 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41325 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -9.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41326 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -8.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41333 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -17.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41334 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -16.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41335 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -15.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41337 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -13.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41340 + components: + - type: Transform + pos: -14.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41341 + components: + - type: Transform + pos: -14.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41342 + components: + - type: Transform + pos: -14.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41345 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -16.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41346 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -15.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41347 + components: + - type: Transform + pos: -10.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41348 + components: + - type: Transform + pos: -10.5,-30.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41349 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -12.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41350 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -11.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41351 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -13.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41352 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41353 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -15.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41354 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -16.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41355 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -17.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41359 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41360 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41361 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41362 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41363 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -11.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41364 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -12.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41365 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -13.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41367 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41368 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -15.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41369 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -15.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41370 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -16.5,-22.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41371 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -17.5,-22.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41374 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -15.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41376 + components: + - type: Transform + pos: -5.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41377 + components: + - type: Transform + pos: -5.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41379 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -3.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41380 + components: + - type: Transform + pos: -2.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41381 + components: + - type: Transform + pos: -2.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41382 + components: + - type: Transform + pos: -2.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41383 + components: + - type: Transform + pos: -2.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41384 + components: + - type: Transform + pos: -2.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41394 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 1.5,-14.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41395 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 0.5,-14.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41396 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -0.5,-14.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41397 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -1.5,-13.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41398 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -1.5,-12.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41399 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -2.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41400 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -4.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41402 + components: + - type: Transform + pos: -3.5,-12.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41403 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -5.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41404 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -6.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41405 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -7.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41406 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -8.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41407 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -9.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41408 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -11.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41409 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -12.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41410 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -13.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41411 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41412 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -15.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41413 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -16.5,-10.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41414 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-12.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41415 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-13.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41416 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-14.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41417 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-15.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41418 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-16.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41419 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-17.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41420 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41421 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-19.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41422 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41423 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41429 + components: + - type: Transform + pos: -10.5,-12.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41433 + components: + - type: Transform + pos: 9.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41434 + components: + - type: Transform + pos: 9.5,-19.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41435 + components: + - type: Transform + pos: 9.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41436 + components: + - type: Transform + pos: 9.5,-17.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41437 + components: + - type: Transform + pos: 9.5,-16.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41438 + components: + - type: Transform + pos: 9.5,-15.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41439 + components: + - type: Transform + pos: 9.5,-14.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41440 + components: + - type: Transform + pos: 9.5,-13.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41441 + components: + - type: Transform + pos: 9.5,-22.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41442 + components: + - type: Transform + pos: 9.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41443 + components: + - type: Transform + pos: 9.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41444 + components: + - type: Transform + pos: 9.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41445 + components: + - type: Transform + pos: 9.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41446 + components: + - type: Transform + pos: 9.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41447 + components: + - type: Transform + pos: 9.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41448 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41449 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 11.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41450 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 10.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41456 + components: + - type: Transform + pos: -5.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41457 + components: + - type: Transform + pos: -5.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41458 + components: + - type: Transform + pos: -5.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41459 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -4.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41460 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -3.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41461 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -2.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41462 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -1.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41463 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -0.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41464 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 0.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41465 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 1.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41466 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 2.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41468 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 4.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41469 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 5.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41478 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -4.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41482 + components: + - type: Transform + pos: -3.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41483 + components: + - type: Transform + pos: -3.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41485 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -2.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41487 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -3.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41488 + components: + - type: Transform + pos: 0.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41489 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 15.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41491 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41492 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 12.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41493 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 11.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41494 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 10.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41495 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 9.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41496 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 8.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41497 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 7.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41499 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 5.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41500 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 4.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41501 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 3.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41502 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 2.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41503 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 1.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41504 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-55.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41505 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-56.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41506 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-57.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41507 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-58.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41508 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-59.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41511 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 6.5,-55.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41512 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 6.5,-56.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41513 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 6.5,-57.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41514 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 6.5,-58.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41515 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 6.5,-59.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41516 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 6.5,-60.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41522 + components: + - type: Transform + pos: -3.5,-17.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41523 + components: + - type: Transform + pos: -3.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41524 + components: + - type: Transform + pos: -3.5,-19.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41525 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -2.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41526 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -1.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41527 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -0.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41528 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 0.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41529 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 1.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41530 + components: + - type: Transform + pos: -10.5,-17.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41532 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -15.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41533 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -14.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41534 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -13.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41535 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -12.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41536 + components: + - type: Transform + pos: -11.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41539 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41540 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41541 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41543 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41544 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-30.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41545 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-31.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41546 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41547 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -13.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41548 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -12.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41549 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41550 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -17.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41554 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -15.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41555 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -13.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41556 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -14.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41557 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -15.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41558 + components: + - type: Transform + pos: -16.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41559 + components: + - type: Transform + pos: -16.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41560 + components: + - type: Transform + pos: -16.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41561 + components: + - type: Transform + pos: -16.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41562 + components: + - type: Transform + pos: -10.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41563 + components: + - type: Transform + pos: -10.5,-19.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41566 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -9.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41567 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -8.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41568 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -7.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41569 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -6.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41570 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -5.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41571 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -4.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41575 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41576 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41577 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41578 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-37.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41579 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41582 + components: + - type: Transform + pos: -0.5,-45.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41583 + components: + - type: Transform + pos: -0.5,-46.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41584 + components: + - type: Transform + pos: -0.5,-47.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41585 + components: + - type: Transform + pos: -0.5,-48.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41586 + components: + - type: Transform + pos: -0.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41587 + components: + - type: Transform + pos: -0.5,-50.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41588 + components: + - type: Transform + pos: -0.5,-51.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41589 + components: + - type: Transform + pos: -0.5,-52.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41590 + components: + - type: Transform + pos: -0.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41591 + components: + - type: Transform + pos: -0.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41592 + components: + - type: Transform + pos: -0.5,-55.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41593 + components: + - type: Transform + pos: -0.5,-56.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - proto: GasPipeTJunction entities: - uid: 277 @@ -159878,6 +163985,12 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 19690 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 87.5,-41.5 + parent: 2 - uid: 19807 components: - type: Transform @@ -160360,13 +164473,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' - - uid: 21695 - components: - - type: Transform - pos: 88.5,-41.5 - parent: 2 - - type: AtmosPipeColor - color: '#FF0000FF' - uid: 21696 components: - type: Transform @@ -161779,6 +165885,12 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 22163 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 102.5,-42.5 + parent: 2 - uid: 22292 components: - type: Transform @@ -162256,6 +166368,14 @@ entities: rot: 1.5707963267948966 rad pos: -3.5,-49.5 parent: 2 + - uid: 36715 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -1.5,-47.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 37809 components: - type: Transform @@ -162302,6 +166422,14 @@ entities: parent: 37887 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 38743 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 6.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 38863 components: - type: Transform @@ -162390,41 +166518,489 @@ entities: parent: 2 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 39826 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -4.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39837 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39838 + components: + - type: Transform + pos: -2.5,-43.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39839 + components: + - type: Transform + pos: 0.5,-43.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39843 + components: + - type: Transform + pos: -1.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39845 + components: + - type: Transform + pos: -0.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39846 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 0.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39847 + components: + - type: Transform + pos: 14.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39852 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 15.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39855 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 18.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39856 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 18.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39859 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 18.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39860 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39863 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 16.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39866 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -13.5,-48.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39867 + components: + - type: Transform + pos: -12.5,-44.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39877 components: - type: Transform rot: -1.5707963267948966 rad pos: 6.5,-15.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39880 components: - type: Transform rot: 1.5707963267948966 rad pos: 5.5,-19.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39892 components: - type: Transform rot: 3.141592653589793 rad pos: 9.5,-32.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39895 + components: + - type: Transform + pos: 3.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39903 components: - type: Transform pos: -4.5,-43.5 parent: 2 - - uid: 39912 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39923 components: - type: Transform - rot: 3.141592653589793 rad - pos: -13.5,-43.5 + rot: 1.5707963267948966 rad + pos: -14.5,-36.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39927 components: - type: Transform rot: 3.141592653589793 rad pos: 4.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39951 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39955 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 0.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 40891 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 112.5,-41.5 + parent: 2 + - uid: 40920 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 117.5,-40.5 + parent: 2 + - uid: 40959 + components: + - type: Transform + pos: 116.5,-38.5 + parent: 2 + - uid: 40968 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 107.5,-42.5 + parent: 2 + - uid: 40975 + components: + - type: Transform + pos: 105.5,-40.5 + parent: 2 + - uid: 40980 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 110.5,-39.5 + parent: 2 + - uid: 40983 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 102.5,-40.5 + parent: 2 + - uid: 41167 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -15.5,-22.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41174 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 7.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41176 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41189 + components: + - type: Transform + pos: 9.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41211 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 19.5,-26.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41220 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 16.5,-30.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41240 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 11.5,-19.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41243 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 11.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41247 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 11.5,-27.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41278 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -4.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41295 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -12.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41316 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -16.5,-48.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41330 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -10.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41336 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -14.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41358 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -10.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41372 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-22.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41378 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -5.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41401 + components: + - type: Transform + pos: -3.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41424 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -10.5,-11.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41432 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 9.5,-21.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41451 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41470 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 6.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41476 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -4.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41490 + components: + - type: Transform + pos: 14.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41498 + components: + - type: Transform + pos: 6.5,-54.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41537 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -11.5,-22.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41538 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -11.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41542 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -11.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41551 + components: + - type: Transform + pos: -16.5,-33.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41552 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -16.5,-38.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41565 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41572 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -3.5,-20.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - proto: GasPort entities: - uid: 18619 @@ -162882,17 +167458,23 @@ entities: rot: -1.5707963267948966 rad pos: 80.5,5.5 parent: 2 + - type: GasPressurePump + targetPressure: 200 - uid: 33209 components: - type: Transform rot: 1.5707963267948966 rad pos: 78.5,5.5 parent: 2 + - type: GasPressurePump + targetPressure: 200 - uid: 34309 components: - type: Transform pos: -1.5,-49.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 38291 components: - type: Transform @@ -163224,6 +167806,15 @@ entities: - 40453 - type: AtmosPipeColor color: '#0000FFFF' + - uid: 18788 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 101.5,-40.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 54 - uid: 19531 components: - type: Transform @@ -163441,13 +168032,6 @@ entities: parent: 2 - type: AtmosPipeColor color: '#0000FFFF' - - uid: 22005 - components: - - type: Transform - pos: 102.5,-38.5 - parent: 2 - - type: AtmosPipeColor - color: '#0000FFFF' - uid: 22006 components: - type: Transform @@ -164370,6 +168954,15 @@ entities: parent: 2 - type: AtmosPipeColor color: '#0000FFFF' + - uid: 26217 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 105.5,-41.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41017 - uid: 26761 components: - type: Transform @@ -164724,98 +169317,77 @@ entities: - type: Transform pos: -13.5,-42.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39854 components: - type: Transform rot: 1.5707963267948966 rad pos: -11.5,-13.5 parent: 2 - - uid: 39856 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 2.5,-15.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39857 components: - type: Transform rot: -1.5707963267948966 rad pos: 6.5,-19.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39858 components: - type: Transform rot: 1.5707963267948966 rad pos: 5.5,-26.5 parent: 2 - - uid: 39859 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -4.5,-29.5 - parent: 2 - - uid: 39860 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 3.5,-25.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39861 components: - type: Transform rot: -1.5707963267948966 rad pos: 5.5,-43.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39862 components: - type: Transform rot: 3.141592653589793 rad pos: -4.5,-44.5 parent: 2 - - uid: 39864 - components: - - type: Transform - pos: -17.5,-48.5 - parent: 2 - - uid: 39865 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -12.5,-52.5 - parent: 2 - - uid: 39866 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 1.5,-64.5 - parent: 2 - - uid: 39867 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: -19.5,-59.5 - parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39868 components: - type: Transform pos: 15.5,-28.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39869 components: - type: Transform pos: 19.5,-25.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39870 components: - type: Transform pos: 18.5,-14.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39871 components: - type: Transform rot: -1.5707963267948966 rad pos: 10.5,-21.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39872 components: - type: Transform @@ -164828,16 +169400,32 @@ entities: rot: -1.5707963267948966 rad pos: -6.5,-39.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 39940 components: - type: Transform - pos: -14.5,-37.5 + rot: 1.5707963267948966 rad + pos: -19.5,-22.5 parent: 2 - - uid: 39941 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39947 components: - type: Transform - pos: -18.5,-37.5 + rot: 1.5707963267948966 rad + pos: 15.5,-21.5 parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 39972 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -17.5,-46.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - uid: 40467 components: - type: Transform @@ -164892,6 +169480,234 @@ entities: - 40518 - type: AtmosPipeColor color: '#0000FFFF' + - uid: 40986 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 111.5,-39.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - uid: 40988 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 116.5,-39.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - uid: 40991 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 127.5,-39.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - uid: 41168 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-43.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41171 + components: + - type: Transform + pos: 18.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41204 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 1.5,-39.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41205 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 0.5,-35.5 + parent: 2 + - uid: 41209 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 15.5,-18.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41214 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 19.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41306 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -13.5,-51.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41307 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -19.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41331 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -9.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41332 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-32.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41343 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -13.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41344 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -17.5,-40.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41357 + components: + - type: Transform + pos: -18.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41385 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -2.5,-41.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41386 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -6.5,-35.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41390 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -2.5,-13.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41391 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 2.5,-15.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41430 + components: + - type: Transform + pos: -15.5,-19.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41431 + components: + - type: Transform + pos: 9.5,-12.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41452 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 8.5,-29.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41453 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -4.5,-28.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41467 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 3.5,-25.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41518 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 13.5,-61.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41519 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 5.5,-61.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41520 + components: + - type: Transform + pos: 18.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' + - uid: 41521 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 1.5,-53.5 + parent: 2 + - type: AtmosPipeColor + color: '#2A6478FF' - proto: GasVentScrubber entities: - uid: 273 @@ -165336,19 +170152,11 @@ entities: - uid: 22162 components: - type: Transform - rot: 3.141592653589793 rad - pos: 88.5,-42.5 - parent: 2 - - type: AtmosPipeColor - color: '#FF0000FF' - - uid: 22163 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 102.5,-42.5 + pos: 107.5,-41.5 parent: 2 - - type: AtmosPipeColor - color: '#FF0000FF' + - type: DeviceNetwork + deviceLists: + - 41017 - uid: 22164 components: - type: Transform @@ -166474,95 +171282,86 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,-39.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39824 components: - type: Transform rot: 1.5707963267948966 rad pos: -4.5,-40.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39825 components: - type: Transform rot: -1.5707963267948966 rad pos: -1.5,-39.5 parent: 2 - - uid: 39826 - components: - - type: Transform - pos: -2.5,-34.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39827 components: - type: Transform pos: 1.5,-28.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39828 components: - type: Transform pos: -4.5,-23.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39829 components: - type: Transform rot: -1.5707963267948966 rad pos: -10.5,-22.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39830 components: - type: Transform rot: 1.5707963267948966 rad pos: -14.5,-28.5 parent: 2 - - uid: 39831 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -15.5,-23.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39832 components: - type: Transform pos: -3.5,-16.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39833 components: - type: Transform pos: -10.5,-16.5 parent: 2 - - uid: 39834 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 2.5,-20.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39835 components: - type: Transform rot: 1.5707963267948966 rad pos: 10.5,-19.5 parent: 2 + - type: DeviceNetwork + deviceLists: + - 39739 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39836 components: - type: Transform pos: 16.5,-14.5 parent: 2 - - uid: 39837 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 15.5,-23.5 - parent: 2 - - uid: 39838 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 16.5,-30.5 - parent: 2 - - uid: 39839 - components: - - type: Transform - pos: 14.5,-37.5 - parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39840 components: - type: Transform @@ -166579,34 +171378,11 @@ entities: - type: Transform pos: 11.5,-58.5 parent: 2 - - uid: 39843 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 5.5,-61.5 - parent: 2 - uid: 39844 components: - type: Transform pos: -1.5,-56.5 parent: 2 - - uid: 39845 - components: - - type: Transform - pos: -16.5,-58.5 - parent: 2 - - uid: 39846 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -13.5,-53.5 - parent: 2 - - uid: 39847 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -19.5,-53.5 - parent: 2 - uid: 39848 components: - type: Transform @@ -166619,53 +171395,62 @@ entities: rot: 1.5707963267948966 rad pos: -2.5,-47.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39850 components: - type: Transform pos: 9.5,-31.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 39851 components: - type: Transform rot: 1.5707963267948966 rad pos: 5.5,-15.5 parent: 2 - - uid: 39852 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -7.5,-44.5 - parent: 2 - - uid: 39855 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39874 components: - type: Transform rot: 3.141592653589793 rad - pos: 10.5,-28.5 + pos: -10.5,-40.5 parent: 2 - - uid: 39863 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39875 components: - type: Transform rot: 3.141592653589793 rad - pos: -17.5,-42.5 + pos: -18.5,-34.5 parent: 2 - - uid: 39874 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39912 components: - type: Transform rot: 3.141592653589793 rad - pos: -10.5,-40.5 + pos: -12.5,-53.5 parent: 2 - - uid: 39875 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39930 components: - type: Transform - rot: 3.141592653589793 rad - pos: -18.5,-34.5 + rot: -1.5707963267948966 rad + pos: -14.5,-38.5 parent: 2 - - uid: 39876 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 39941 components: - type: Transform - rot: 3.141592653589793 rad - pos: -14.5,-34.5 + pos: 2.5,-20.5 parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - uid: 40466 components: - type: Transform @@ -166733,6 +171518,147 @@ entities: - 40518 - type: AtmosPipeColor color: '#FF0000FF' + - uid: 40960 + components: + - type: Transform + pos: 117.5,-39.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - uid: 40984 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 101.5,-42.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 54 + - uid: 40985 + components: + - type: Transform + pos: 87.5,-40.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 54 + - uid: 40987 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 111.5,-41.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - uid: 40992 + components: + - type: Transform + pos: 128.5,-39.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 41014 + - uid: 41169 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-43.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41170 + components: + - type: Transform + pos: 9.5,-36.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41217 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 15.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41221 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 17.5,-30.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 39739 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41233 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 10.5,-15.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 39739 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41234 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 10.5,-23.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 39739 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41250 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 11.5,-28.5 + parent: 2 + - type: DeviceNetwork + deviceLists: + - 39739 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41255 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 17.5,-24.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41305 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -20.5,-49.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41486 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -2.5,-34.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' + - uid: 41531 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -16.5,-23.5 + parent: 2 + - type: AtmosPipeColor + color: '#B7410EFF' - proto: GasVolumePump entities: - uid: 22272 @@ -166772,6 +171698,8 @@ entities: - type: Transform pos: 22.5,-22.5 parent: 2 + - type: Gateway + enabled: True - proto: Gauze entities: - uid: 32513 @@ -166896,6 +171824,23 @@ entities: - type: Transform pos: -8.5,-48.5 parent: 2 + - uid: 41282 + components: + - type: MetaData + name: резервуар космического очистителя + - type: Transform + pos: -0.49263692,-53.470585 + parent: 2 + - type: SolutionContainerManager + solutions: null + containers: + - tank + - type: Pullable + prevFixedRotation: True + - type: ContainerContainer + containers: + solution@tank: !type:ContainerSlot + ent: 41283 - proto: Girder entities: - uid: 2046 @@ -173180,30 +178125,6 @@ entities: rot: 3.141592653589793 rad pos: 115.5,-47.5 parent: 2 - - uid: 23533 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 113.5,-40.5 - parent: 2 - - uid: 23534 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 114.5,-40.5 - parent: 2 - - uid: 23535 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 111.5,-36.5 - parent: 2 - - uid: 23536 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 112.5,-37.5 - parent: 2 - uid: 23537 components: - type: Transform @@ -174464,6 +179385,102 @@ entities: - type: Transform pos: -3.5,2.5 parent: 21045 + - uid: 40839 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 117.5,-37.5 + parent: 2 + - uid: 40840 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 118.5,-37.5 + parent: 2 + - uid: 40841 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 119.5,-37.5 + parent: 2 + - uid: 40842 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 120.5,-37.5 + parent: 2 + - uid: 40843 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 117.5,-41.5 + parent: 2 + - uid: 40844 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 118.5,-41.5 + parent: 2 + - uid: 40845 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 119.5,-41.5 + parent: 2 + - uid: 40846 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 120.5,-41.5 + parent: 2 + - uid: 40848 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 124.5,-37.5 + parent: 2 + - uid: 40849 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 125.5,-37.5 + parent: 2 + - uid: 40850 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 126.5,-37.5 + parent: 2 + - uid: 40851 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 127.5,-37.5 + parent: 2 + - uid: 40852 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 124.5,-41.5 + parent: 2 + - uid: 40853 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 125.5,-41.5 + parent: 2 + - uid: 40854 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 126.5,-41.5 + parent: 2 + - uid: 40855 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 127.5,-41.5 + parent: 2 - proto: GrilleBroken entities: - uid: 23607 @@ -175313,18 +180330,6 @@ entities: rot: 3.141592653589793 rad pos: 111.5,-37.5 parent: 2 - - uid: 23772 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 111.5,-37.5 - parent: 2 - - uid: 23773 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 114.5,-41.5 - parent: 2 - uid: 23774 components: - type: Transform @@ -176107,8 +181112,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -176125,6 +181130,7 @@ entities: showEnts: False occludes: True ents: + - 33561 - 26494 paper_label: !type:ContainerSlot showEnts: False @@ -176235,8 +181241,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.8856695 - - 7.0937095 + - 1.8968438 + - 7.1357465 - 0 - 0 - 0 @@ -176253,7 +181259,7 @@ entities: showEnts: False occludes: True ents: - - 5963 + - 28011 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -176458,7 +181464,7 @@ entities: - uid: 816 components: - type: Transform - pos: 62.522564,-5.3907337 + pos: 62.341415,-4.6432304 parent: 2 - uid: 23931 components: @@ -176473,12 +181479,6 @@ entities: parent: 2 - proto: HandheldHealthAnalyzerUnpowered entities: - - uid: 23932 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -45.38652,-6.4244366 - parent: 2 - uid: 23935 components: - type: Transform @@ -176502,6 +181502,12 @@ entities: - type: Transform pos: 19.483318,-12.427057 parent: 2 + - uid: 41601 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -1.5011597,-6.9646606 + parent: 37887 - proto: HandheldStationMap entities: - uid: 23938 @@ -176532,6 +181538,11 @@ entities: - type: Transform pos: 66.536896,-26.568066 parent: 2 + - uid: 24171 + components: + - type: Transform + pos: 16.484941,-27.410738 + parent: 2 - proto: HandLabeler entities: - uid: 23944 @@ -176569,7 +181580,7 @@ entities: - uid: 23951 components: - type: Transform - pos: 31.522358,5.3364167 + pos: 31.546932,4.9642363 parent: 2 - proto: HeadBorgJanitor entities: @@ -176660,11 +181671,6 @@ entities: - type: Transform pos: -8.466255,25.443705 parent: 2 - - uid: 40915 - components: - - type: Transform - pos: -4.5531926,5.512183 - parent: 2 - proto: HeadVox entities: - uid: 23958 @@ -176918,6 +181924,9 @@ entities: entities: - uid: 9035 components: + - type: MetaData + desc: 'Не содержит взрывчатых веществ. «Благослови, Господи, сию ручную державу, да помоги мне исполнить мечты мои!». ' + name: церковная держава - type: Transform parent: 5 - type: Physics @@ -177108,6 +182117,14 @@ entities: - type: Transform pos: 74.5,-12.5 parent: 2 +- proto: HydrogenChemistryBottle + entities: + - uid: 41025 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: hydroponicsSoil entities: - uid: 24014 @@ -177443,10 +182460,9 @@ entities: - uid: 11464 components: - type: Transform - parent: 17812 + parent: 27043 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: IDComputerCircuitboard entities: - uid: 24052 @@ -177462,6 +182478,8 @@ entities: - type: Transform pos: -81.5,-24.5 parent: 2 + - type: IgniteOnCollide + fireStacks: 1 - proto: InflatableDoor entities: - uid: 3475 @@ -177785,6 +182803,8 @@ entities: rot: 3.141592653589793 rad pos: 15.484116,18.499334 parent: 2 + - type: WarpPoint + location: интелкарта - proto: IntercomAll entities: - uid: 24096 @@ -178177,6 +183197,57 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage +- proto: JetpackVoidFilled + entities: + - uid: 41595 + components: + - type: Transform + parent: 38162 + - type: Physics + canCollide: False + - type: InsideEntityStorage + - uid: 41596 + components: + - type: Transform + parent: 38168 + - type: Physics + canCollide: False + - type: InsideEntityStorage + - uid: 41597 + components: + - type: Transform + parent: 38174 + - type: Physics + canCollide: False + - type: InsideEntityStorage + - uid: 41598 + components: + - type: Transform + parent: 38180 + - type: Physics + canCollide: False + - type: InsideEntityStorage + - uid: 41599 + components: + - type: Transform + parent: 38186 + - type: Physics + canCollide: False + - type: InsideEntityStorage +- proto: Jug + entities: + - uid: 41029 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False + - uid: 41030 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: Jukebox entities: - uid: 24158 @@ -178683,7 +183754,7 @@ entities: - uid: 24217 components: - type: Transform - pos: -34.63365,-21.896847 + pos: -34.649292,-21.959995 parent: 2 - uid: 24218 components: @@ -178721,6 +183792,12 @@ entities: - type: Transform pos: -11.488715,-39.018528 parent: 2 + - uid: 41026 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: LauncherCreamPie entities: - uid: 18638 @@ -178735,6 +183812,13 @@ entities: - type: Transform pos: -48.498768,-108.43273 parent: 2 +- proto: LauncherSyringe + entities: + - uid: 35798 + components: + - type: Transform + pos: -45.56118,-6.307379 + parent: 2 - proto: LawyerPDA entities: - uid: 2106 @@ -178759,12 +183843,11 @@ entities: - uid: 17814 components: - type: Transform - parent: 17812 + parent: 27043 - type: Stack count: 5 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: LedLightBulb entities: - uid: 32736 @@ -178833,13 +183916,6 @@ entities: rot: 1.5707963267948966 rad pos: 107.40406,-71.27681 parent: 2 - - uid: 40791 - components: - - type: Transform - pos: 102.55585,-78.03824 - parent: 2 - - type: Stealth - - type: Emag - proto: LeftFootSkeleton entities: - uid: 24227 @@ -179029,15 +184105,6 @@ entities: lightEnergy: 1 - type: Physics canCollide: False - - uid: 25803 - components: - - type: Transform - parent: 25802 - - type: LightBulb - lightRadius: 2 - lightEnergy: 1 - - type: Physics - canCollide: False - uid: 25854 components: - type: Transform @@ -179489,6 +184556,22 @@ entities: - Pressed: Toggle 28286: - Pressed: Toggle + - uid: 41094 + components: + - type: MetaData + name: свет + - type: Transform + rot: 3.141592653589793 rad + pos: 36.5,-66.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 25652: + - Pressed: Toggle + 25492: + - Pressed: Toggle + 25493: + - Pressed: Toggle - proto: LockableButtonChemistry entities: - uid: 24257 @@ -179573,6 +184656,8 @@ entities: linkedPorts: 37909: - Pressed: Open + 31037: + - Pressed: On - proto: LockableButtonSalvage entities: - uid: 34261 @@ -179583,6 +184668,10 @@ entities: rot: 3.141592653589793 rad pos: 9.5,-51.5 parent: 2 + - type: AccessReader + access: + - - NuclearOperative + - - Salvage - type: DeviceLinkSource linkedPorts: 34357: @@ -179590,7 +184679,7 @@ entities: - uid: 34368 components: - type: MetaData - name: активация портала + name: начать синхронизацию - type: Transform rot: -1.5707963267948966 rad pos: 20.5,-23.5 @@ -179874,6 +184963,24 @@ entities: - type: Transform pos: -10.5,-26.5 parent: 2 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.7459903 + - 6.568249 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - proto: LockerBrigmedic entities: - uid: 16246 @@ -179919,6 +185026,47 @@ entities: - type: Transform pos: 16.5,16.5 parent: 2 +- proto: LockerChemistry + entities: + - uid: 39987 + components: + - type: Transform + anchored: True + pos: 3.5,-9.5 + parent: 2 + - type: Physics + bodyType: Static + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.7459903 + - 6.568249 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - type: ContainerContainer + containers: + entity_storage: !type:Container + showEnts: False + occludes: True + ents: + - 41122 + paper_label: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + - type: Pullable + prevFixedRotation: True - proto: LockerChemistryFilled entities: - uid: 24267 @@ -179926,6 +185074,24 @@ entities: - type: Transform pos: -38.5,-31.5 parent: 2 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.8856695 + - 7.0937095 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - proto: LockerChiefEngineerFilled entities: - uid: 24268 @@ -180132,8 +185298,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.8856695 - - 7.0937095 + - 1.8968438 + - 7.1357465 - 0 - 0 - 0 @@ -180152,9 +185318,9 @@ entities: showEnts: False occludes: True ents: - - 34905 - - 34906 - 34907 + - 34906 + - 34905 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -180362,6 +185528,24 @@ entities: - type: Transform pos: 52.5,-0.5 parent: 2 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14673 + moles: + - 1.7459903 + - 6.568249 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - uid: 16669 components: - type: Transform @@ -181468,8 +186652,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.8856695 - - 7.0937095 + - 1.8968438 + - 7.1357465 - 0 - 0 - 0 @@ -181480,6 +186664,17 @@ entities: - 0 - 0 - 0 + - type: ContainerContainer + containers: + entity_storage: !type:Container + showEnts: False + occludes: True + ents: + - 37762 + paper_label: !type:ContainerSlot + showEnts: False + occludes: True + ent: null - proto: LockerWallMedical entities: - uid: 37919 @@ -181529,8 +186724,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.8856695 - - 7.0937095 + - 1.8968438 + - 7.1357465 - 0 - 0 - 0 @@ -181541,26 +186736,6 @@ entities: - 0 - 0 - 0 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 17817 - - 11469 - - 17818 - - 17815 - - 17822 - - 17819 - - 17816 - - 17820 - - 17813 - - 17814 - - 17821 - - 11464 - - 11467 - - 11468 - uid: 38894 components: - type: Transform @@ -181815,6 +186990,11 @@ entities: - type: Transform pos: 14.5,-48.5 parent: 2 + - uid: 41117 + components: + - type: Transform + pos: -5.5,-54.5 + parent: 2 - proto: LootSpawnerMaterialsHighValueConstruction entities: - uid: 24364 @@ -182167,11 +187347,6 @@ entities: parent: 2 - proto: MachineFrameDestroyed entities: - - uid: 24408 - components: - - type: Transform - pos: -9.5,-101.5 - parent: 2 - uid: 24411 components: - type: Transform @@ -182189,12 +187364,10 @@ entities: - type: Transform pos: 64.55751,-19.446735 parent: 2 -- proto: MagazineBoxPistolPractice - entities: - - uid: 26439 + - uid: 28014 components: - type: Transform - pos: 8.491989,-22.413038 + pos: 8.563635,-22.442852 parent: 2 - proto: MagazineBoxRifle entities: @@ -182371,11 +187544,6 @@ entities: - type: Transform pos: 76.5,-18.5 parent: 2 - - uid: 24440 - components: - - type: Transform - pos: 104.5,-41.5 - parent: 2 - uid: 24441 components: - type: Transform @@ -182772,11 +187940,6 @@ entities: parent: 2 - proto: Mannequin entities: - - uid: 6191 - components: - - type: Transform - pos: 26.5,19.5 - parent: 2 - uid: 14704 components: - type: Transform @@ -182934,123 +188097,6 @@ entities: showEnts: False occludes: False ent: null - - uid: 40837 - components: - - type: Transform - pos: 67.5,10.5 - parent: 2 - - type: ContainerContainer - containers: - jumpsuit: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - outerClothing: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40839 - neck: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - mask: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - eyes: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - head: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40838 - suitstorage: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - back: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - - uid: 40840 - components: - - type: Transform - pos: 51.5,-27.5 - parent: 2 - - type: ContainerContainer - containers: - jumpsuit: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - outerClothing: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - neck: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - mask: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - eyes: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - head: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40841 - suitstorage: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - back: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - - uid: 40843 - components: - - type: Transform - pos: 67.5,8.5 - parent: 2 - - type: ContainerContainer - containers: - jumpsuit: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40846 - outerClothing: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - neck: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - mask: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - eyes: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - head: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40844 - suitstorage: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - back: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - uid: 40847 components: - type: Transform @@ -183090,84 +188136,6 @@ entities: showEnts: False occludes: False ent: null - - uid: 40848 - components: - - type: Transform - pos: -61.5,-54.5 - parent: 2 - - type: ContainerContainer - containers: - jumpsuit: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - outerClothing: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - neck: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - mask: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - eyes: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - head: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40849 - suitstorage: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - back: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - - uid: 40924 - components: - - type: Transform - pos: -41.5,-28.5 - parent: 2 - - type: ContainerContainer - containers: - jumpsuit: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - outerClothing: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40926 - neck: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - mask: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - eyes: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - head: !type:ContainerSlot - showEnts: False - occludes: False - ent: 40925 - suitstorage: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - back: !type:ContainerSlot - showEnts: False - occludes: False - ent: null - proto: MaterialBones1 entities: - uid: 24563 @@ -183761,13 +188729,6 @@ entities: - type: Transform pos: -20.588402,-21.946007 parent: 2 -- proto: MimanaSeeds - entities: - - uid: 29120 - components: - - type: Transform - pos: -15.128939,-11.420453 - parent: 2 - proto: MindShieldImplanter entities: - uid: 16256 @@ -183832,6 +188793,32 @@ entities: rot: -1.5707963267948966 rad pos: -7.5,-53.5 parent: 2 +- proto: MiniSyringe + entities: + - uid: 23932 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -45.40493,-6.401129 + parent: 2 + - uid: 35799 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -45.40493,-6.479254 + parent: 2 + - uid: 35800 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -45.40493,-6.541754 + parent: 2 + - uid: 35801 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -45.40493,-6.635504 + parent: 2 - proto: Mirror entities: - uid: 15848 @@ -183840,7 +188827,8 @@ entities: name: зеркальце - type: Transform anchored: False - pos: -14.358505,-27.562578 + rot: -1.5707963267948966 rad + pos: -14.092231,-27.466223 parent: 2 - type: Item inhandVisuals: {} @@ -183862,21 +188850,6 @@ entities: rot: -1.5707963267948966 rad pos: 79.5,-36.5 parent: 2 - - uid: 24650 - components: - - type: Transform - pos: -18.5,-76.5 - parent: 2 - - uid: 24651 - components: - - type: Transform - pos: -19.5,-76.5 - parent: 2 - - uid: 24652 - components: - - type: Transform - pos: -20.5,-76.5 - parent: 2 - uid: 24655 components: - type: Transform @@ -183900,17 +188873,18 @@ entities: rot: -1.5707963267948966 rad pos: -27.5,-92.5 parent: 2 - - uid: 24659 - components: - - type: Transform - pos: 44.5,26.5 - parent: 2 - uid: 24660 components: - type: Transform rot: -1.5707963267948966 rad pos: -34.5,-4.5 parent: 2 + - uid: 25802 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -20.5,-76.5 + parent: 2 - uid: 26149 components: - type: Transform @@ -183921,6 +188895,24 @@ entities: - type: Transform pos: 74.5,-9.5 parent: 2 + - uid: 34747 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -19.5,-76.5 + parent: 2 + - uid: 35797 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -18.5,-76.5 + parent: 2 + - uid: 41092 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 44.5,26.5 + parent: 2 - proto: MirrorShield entities: - uid: 24661 @@ -184185,36 +189177,16 @@ entities: - type: Transform pos: -69.5,-21.5 parent: 2 - - uid: 24698 - components: - - type: Transform - pos: -48.5,9.5 - parent: 2 - uid: 24699 components: - type: Transform pos: -33.5,-16.5 parent: 2 - - uid: 24700 - components: - - type: Transform - pos: -61.5,-53.5 - parent: 2 - uid: 24701 components: - type: Transform pos: -49.5,-93.5 parent: 2 - - uid: 24702 - components: - - type: Transform - pos: 29.5,-82.5 - parent: 2 - - uid: 24703 - components: - - type: Transform - pos: 68.5,-18.5 - parent: 2 - uid: 24704 components: - type: Transform @@ -184747,10 +189719,10 @@ entities: parent: 2 - proto: OpporozidoneBeakerSmall entities: - - uid: 26267 + - uid: 41037 components: - type: Transform - pos: -34.663376,-22.620335 + pos: -34.679024,-22.510044 parent: 2 - proto: OrangeSeeds entities: @@ -184807,15 +189779,19 @@ entities: - uid: 40930 components: - type: Transform - pos: -34.628925,-33.08758 - parent: 2 + parent: 15229 + - type: Physics + canCollide: False + - type: InsideEntityStorage - proto: OrganArachnidTongue entities: - uid: 40933 components: - type: Transform - pos: -34.503925,-28.665707 - parent: 2 + parent: 15229 + - type: Physics + canCollide: False + - type: InsideEntityStorage - proto: OrganDionaEyes entities: - uid: 40932 @@ -185383,22 +190359,6 @@ entities: - type: Transform pos: 47.37211,-1.281286 parent: 2 - - uid: 9303 - components: - - type: Transform - pos: -7.473937,-94.49083 - parent: 2 - - type: Paper - stampState: paper_stamp-qm - stampedBy: - - stampedColor: '#A23E3EFF' - stampedName: Секторальное Финансовое Управление - content: >+ - Уважаемые утилизаторы! - Так как ваш шаттл был уничтожен метеоритным дождём, вам рекомендуется найти запчасти для него в старой части станции, которая находится в центре. - - Реквизирование грузового шаттла для полётов на экспедиции СТРОГО ЗАПРЕЩЕНО! - - uid: 9416 components: - type: MetaData @@ -185450,7 +190410,7 @@ entities: - uid: 17815 components: - type: Transform - parent: 17812 + parent: 27043 - type: Paper stampState: paper_stamp-psychologist stampedBy: @@ -185459,7 +190419,6 @@ entities: content: "Медикаментозная терапия психических расстройств.\n\n \n Нарколепсия \n - эфедрин, дозировка 30 +диловен\n - дезоксиэфедрин - лучший выбор, дозировка 20 +диловен\n - этилоксиэфедрин, дозировка 10\n - дифенилметиламин, очень дорог, дозировка 5\n\nПриступы агрессии, обострения.\n \n - пакс - успокоительное, дозировка от 5\n - хлоральгидрат - снотворное, дозировка от 10\n - криптобиолин - дезориентирует больного\n\nПовреждения мозга\n \n - маннитол, действие до конца не изучено\n\nТревожность, дрожь, опьянение\n\n - псикодин, побочные эффекты в виде галлюцинаций\n - этилредоксразин - безопасный отрезвитель\n\nГаллюцинации\n\n - синаптизин, крайне токсичен, только с диловеном\n - галоперидол, также убирает дрожь, вызывает сонливость\n\nДепрессия, шизофрения\n\n - Импедризин, токсичен, только с диловеном\n - Космический мираж - безопасный галлюциноген\n - Счастье - вызывает повреждения мозга\n - ТГК - содержится в конопле\n - Токсин Майндбрекер, он же ЛСД. Действует дольше, чем мираж\n\n\n" - type: Physics canCollide: False - - type: InsideEntityStorage - uid: 21309 components: - type: Transform @@ -185487,6 +190446,32 @@ entities: rot: -1.5707963267948966 rad pos: 51.5769,10.190295 parent: 2 + - uid: 24408 + components: + - type: Transform + rot: 0.22689280275926285 rad + pos: -58.3819,-20.471714 + parent: 2 + - type: Paper + stampState: paper_stamp-clown + stampedBy: + - stampedColor: '#FF33CCFF' + stampedName: stamp-component-stamped-name-clown + content: >2- + + + Всем привет! Это клоун Бим-Бон!!! + + Я случайно взорвал клонирующую машину. Ну, вы там это, не серчайте =) + + Оставил вам немного [bold]Оппорозидона[/bold] и его рецепт в Крио комнате. Он довольно простой. + + + Откуда у меня Оппорозидон и как я узнал его рецепт? + + Всё очень просто! + + [head=2]ГЛУПЕНЬКИЙ ХОНК-ХОООНК!!![/head] - uid: 24764 components: - type: Transform @@ -185939,57 +190924,6 @@ entities: rot: -1.5707963267948966 rad pos: -28.527176,-113.35243 parent: 2 - - uid: 27043 - components: - - type: Transform - pos: -34.38595,-22.560871 - parent: 2 - - type: Paper - content: >- - Оппорозидон используется для регенерации гниющих тканей и мозгового вещества. - - Действует на мертвых существ, чья температура тела не более 150K. - - - [head=2]Рецепт Оппорозидона[/head] - - - [head=3]Оппорозидон[/head] - - [color=#E333A7]▣[/color] плазма [2] - - [color=#B50EE8]▣[/color] когнизин [1] - - [color=#32CD32]▣[/color] доксарубиксадон [1] - - [italic]Нагреть выше 400K[/italic] - - ▣ оппорозидон [3] - - - [color=#B50EE8]▣[/color] [bold]Когнизин[/bold] - - [bullet]карпотоксин [1] - - [bullet]сидерлак [1] - - [bullet]ацетон [1] - - [italic]Смешать[/italic] - - [bullet]когнизин [1] - - - [color=#32CD32]▣[/color] [bold]Доксарубиксадон[/bold] - - [bullet]криоксадон [1] - - [bullet]нестабильный мутаген [1] - - [italic]Смешать[/italic] - - [bullet]доксарубиксадон [2] - editingDisabled: True - uid: 32769 components: - type: Transform @@ -186087,32 +191021,57 @@ entities: rot: -1.5707963267948966 rad pos: 48.05109,10.41139 parent: 2 - - uid: 40936 + - uid: 41036 components: - type: Transform - rot: 0.22689280275926285 rad - pos: -58.408726,-20.519669 + pos: -34.366844,-22.718172 parent: 2 - type: Paper - stampState: paper_stamp-clown - stampedBy: - - stampedColor: '#FF33CCFF' - stampedName: stamp-component-stamped-name-clown - content: >2- + content: >- + Оппорозидон используется для регенерации гниющих тканей и мозгового вещества. + Действует на мертвых существ, чья температура тела не более 150K. - Всем привет! Это клоун Бим-Бон!!! - Я случайно взорвал клонирующую машину. Ну, вы там это, не серчайте =) + [head=2]Рецепт Оппорозидона[/head] - Оставил вам немного [bold]Оппорозидона[/bold] и его рецепт в Крио комнате. Он довольно простой. + [head=3]Оппорозидон[/head] - Откуда у меня Оппорозидон и как я узнал его рецепт? + [color=#E333A7]▣[/color] плазма [2] - Всё очень просто! + [color=#B50EE8]▣[/color] когнизин [1] - [head=2]ГЛУПЕНЬКИЙ ХОНК-ХОООНК!!![/head] + [color=#32CD32]▣[/color] доксарубиксадон [1] + + [italic]Нагреть выше 400K[/italic] + + ▣ оппорозидон [3] + + + [color=#B50EE8]▣[/color] [bold]Когнизин[/bold] + + [bullet]карпотоксин [1] + + [bullet]сидерлак [1] + + [bullet]ацетон [1] + + [italic]Смешать[/italic] + + [bullet]когнизин [1] + + + [color=#32CD32]▣[/color] [bold]Доксарубиксадон[/bold] + + [bullet]криоксадон [1] + + [bullet]нестабильный мутаген [1] + + [italic]Смешать[/italic] + + [bullet]доксарубиксадон [2] + editingDisabled: True - proto: PaperBin10 entities: - uid: 24922 @@ -186225,6 +191184,17 @@ entities: rot: -1.5707963267948966 rad pos: 7.63809,13.955755 parent: 2 + - uid: 40939 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 14.340697,-22.686184 + parent: 2 + - uid: 40953 + components: + - type: Transform + pos: 14.434447,-22.451809 + parent: 2 - proto: PaperCargoInvoice entities: - uid: 6313 @@ -186632,10 +191602,9 @@ entities: - uid: 17816 components: - type: Transform - parent: 17812 + parent: 27043 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: Pen entities: - uid: 9387 @@ -186875,6 +191844,14 @@ entities: - type: Transform pos: 2.49975,25.016228 parent: 2 +- proto: PhosphorusChemistryBottle + entities: + - uid: 40779 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: PianoInstrument entities: - uid: 25025 @@ -186962,10 +191939,33 @@ entities: - uid: 17817 components: - type: Transform - parent: 17812 + parent: 27043 + - type: Storage + storedItems: + 17821: + position: 0,0 + _rotation: South + 17819: + position: 1,0 + _rotation: South + 17820: + position: 2,0 + _rotation: South + 17818: + position: 3,0 + _rotation: South + - type: ContainerContainer + containers: + storagebase: !type:Container + showEnts: False + occludes: True + ents: + - 17821 + - 17819 + - 17820 + - 17818 - type: Physics canCollide: False - - type: InsideEntityStorage - uid: 17908 components: - type: Transform @@ -187056,31 +192056,27 @@ entities: - uid: 17818 components: - type: Transform - parent: 17812 + parent: 17817 - type: Physics canCollide: False - - type: InsideEntityStorage - uid: 17819 components: - type: Transform - parent: 17812 + parent: 17817 - type: Physics canCollide: False - - type: InsideEntityStorage - uid: 17820 components: - type: Transform - parent: 17812 + parent: 17817 - type: Physics canCollide: False - - type: InsideEntityStorage - uid: 17821 components: - type: Transform - parent: 17812 + parent: 17817 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: PinionAirlock entities: - uid: 36707 @@ -187115,11 +192111,23 @@ entities: - type: Transform pos: 3.5,-52.5 parent: 2 + - type: Door + secondsUntilStateChange: -20075.307 + state: Opening + - type: DeviceLinkSource + lastSignals: + DoorStatus: True - uid: 36706 components: - type: Transform pos: 2.5,-52.5 parent: 2 + - type: Door + secondsUntilStateChange: -20076.041 + state: Opening + - type: DeviceLinkSource + lastSignals: + DoorStatus: True - proto: PinpointerNuclear entities: - uid: 25047 @@ -187139,6 +192147,13 @@ entities: - type: Transform pos: 12.5,-13.5 parent: 2 +- proto: PirateHandyFlag + entities: + - uid: 39803 + components: + - type: Transform + pos: 10.70426,-24.148893 + parent: 2 - proto: PlasmaCanister entities: - uid: 1615 @@ -187249,6 +192264,12 @@ entities: - type: Transform pos: 19.5,-78.5 parent: 2 + - uid: 41093 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -36.5,-27.5 + parent: 2 - proto: PlasmaWindoorSecureChemistryLocked entities: - uid: 25074 @@ -187257,11 +192278,6 @@ entities: rot: 3.141592653589793 rad pos: -35.5,-35.5 parent: 2 - - uid: 25075 - components: - - type: Transform - pos: -37.5,-27.5 - parent: 2 - uid: 25076 components: - type: Transform @@ -187272,6 +192288,12 @@ entities: - type: Transform pos: -35.5,-27.5 parent: 2 + - uid: 41140 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -37.5,-28.5 + parent: 2 - proto: PlasmaWindoorSecureJanitorLocked entities: - uid: 15459 @@ -188219,10 +193241,11 @@ entities: parent: 2 - proto: PosterLegitSafetyEyeProtection entities: - - uid: 25213 + - uid: 41114 components: - type: Transform - pos: 47.5,-49.5 + rot: 3.141592653589793 rad + pos: 51.5,-49.5 parent: 2 - proto: PosterLegitSafetyMothEpi entities: @@ -188321,6 +193344,14 @@ entities: rot: 1.5707963267948966 rad pos: 35.5,-94.5 parent: 2 +- proto: PotassiumChemistryBottle + entities: + - uid: 41024 + components: + - type: Transform + parent: 37041 + - type: Physics + canCollide: False - proto: PottedPlant0 entities: - uid: 23336 @@ -188573,11 +193604,6 @@ entities: parent: 2 - proto: PottedPlant3 entities: - - uid: 723 - components: - - type: Transform - pos: 42.5,-15.5 - parent: 2 - uid: 25257 components: - type: Transform @@ -189119,11 +194145,6 @@ entities: - type: Transform pos: 102.5,-38.5 parent: 2 - - uid: 25352 - components: - - type: Transform - pos: 102.5,-42.5 - parent: 2 - uid: 25353 components: - type: Transform @@ -189262,12 +194283,6 @@ entities: - type: Transform pos: -53.5,13.5 parent: 2 - - uid: 25363 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: -44.5,-31.5 - parent: 2 - uid: 25364 components: - type: Transform @@ -189304,18 +194319,18 @@ entities: rot: 3.141592653589793 rad pos: 12.5,-80.5 parent: 2 - - uid: 36715 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: -36.5,-45.5 - parent: 2 - uid: 39083 components: - type: Transform rot: 1.5707963267948966 rad pos: 62.5,-25.5 parent: 2 + - uid: 41135 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 62.5,-5.5 + parent: 2 - proto: PowerCellSmall entities: - uid: 25370 @@ -189333,6 +194348,23 @@ entities: - type: Transform pos: -38.384167,-51.38693 parent: 2 +- proto: PoweredLEDLightPostSmall + entities: + - uid: 1658 + components: + - type: Transform + pos: 58.5,-40.5 + parent: 2 + - uid: 6194 + components: + - type: Transform + pos: 47.5,-41.5 + parent: 2 + - uid: 7148 + components: + - type: Transform + pos: 51.5,-36.5 + parent: 2 - proto: PoweredLEDSmallLight entities: - uid: 39580 @@ -191508,6 +196540,42 @@ entities: - type: Transform pos: 41.5,-3.5 parent: 2 + - uid: 41005 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 110.5,-39.5 + parent: 2 + - uid: 41006 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 114.5,-39.5 + parent: 2 + - uid: 41007 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 130.5,-39.5 + parent: 2 + - uid: 41008 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 107.5,-42.5 + parent: 2 + - uid: 41009 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 123.5,-40.5 + parent: 2 + - uid: 41010 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 121.5,-40.5 + parent: 2 - proto: PoweredlightBlue entities: - uid: 38414 @@ -191558,7 +196626,7 @@ entities: rot: 3.141592653589793 rad pos: 62.5,-13.5 parent: 2 - - uid: 28869 + - uid: 40951 components: - type: Transform rot: 1.5707963267948966 rad @@ -191790,22 +196858,6 @@ entities: rot: 1.5707963267948966 rad pos: 33.5,22.5 parent: 2 - - uid: 25802 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 109.5,-41.5 - parent: 2 - - type: ContainerContainer - containers: - light_bulb: !type:ContainerSlot - showEnts: False - occludes: True - ent: 25803 - - type: ApcPowerReceiver - powerLoad: 60 - - type: DamageOnInteract - isDamageActive: False - uid: 25853 components: - type: Transform @@ -192580,6 +197632,8 @@ entities: rot: 3.141592653589793 rad pos: 50.5,13.5 parent: 2 + - type: PoweredLight + on: False - uid: 38415 components: - type: Transform @@ -194260,6 +199314,23 @@ entities: rot: -1.5707963267948966 rad pos: 1.5,-71.5 parent: 2 + - uid: 40950 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 53.5,9.5 + parent: 2 + - uid: 41018 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 132.5,-38.5 + parent: 2 + - uid: 41019 + components: + - type: Transform + pos: 132.5,-40.5 + parent: 2 - proto: PoweredSmallLightEmpty entities: - uid: 26113 @@ -194462,31 +199533,6 @@ entities: parent: 2 - proto: PumpkinLantern entities: - - uid: 27607 - components: - - type: Transform - pos: 47.491894,-37.414314 - parent: 2 - - uid: 33854 - components: - - type: Transform - pos: 6.4967914,9.192127 - parent: 2 - - uid: 33857 - components: - - type: Transform - pos: -8.505173,1.8093472 - parent: 2 - - uid: 33861 - components: - - type: Transform - pos: -60.53104,-14.398785 - parent: 2 - - uid: 35928 - components: - - type: Transform - pos: -31.58833,-94.4379 - parent: 2 - uid: 36770 components: - type: Transform @@ -194497,110 +199543,13 @@ entities: - type: Transform pos: 29.810972,27.55408 parent: 2 - - uid: 36894 - components: - - type: Transform - pos: -81.18052,-27.487354 - parent: 2 - - uid: 40836 - components: - - type: Transform - pos: 58.509552,-5.4547396 - parent: 2 - - uid: 40866 - components: - - type: Transform - pos: 58.994213,-36.685238 - parent: 2 - - uid: 40885 - components: - - type: Transform - pos: 68.50011,-35.267616 - parent: 2 - - uid: 40889 - components: - - type: Transform - pos: 68.809326,-42.59459 - parent: 2 - - uid: 40899 - components: - - type: Transform - pos: 72.47531,-28.444202 - parent: 2 - - uid: 40900 - components: - - type: Transform - pos: 101.50751,-42.43947 - parent: 2 -- proto: PumpkinLanternLarge - entities: - - uid: 6194 - components: - - type: Transform - pos: 35.51585,-13.223363 - parent: 2 - - uid: 26126 - components: - - type: Transform - pos: 5.5524716,-100.31742 - parent: 2 - - uid: 27330 - components: - - type: Transform - pos: 51.696487,-36.039314 - parent: 2 - - uid: 33863 - components: - - type: Transform - pos: -68.51839,-13.3145485 - parent: 2 - - uid: 35814 - components: - - type: Transform - pos: -17.50094,-89.36105 - parent: 2 - - uid: 40851 - components: - - type: Transform - pos: -53.49596,-51.326927 - parent: 2 - - uid: 40871 - components: - - type: Transform - pos: 55.92143,-42.333187 - parent: 2 - - uid: 40896 - components: - - type: Transform - pos: 101.49568,-20.383839 - parent: 2 - proto: PumpkinLanternSmall entities: - - uid: 10801 - components: - - type: Transform - pos: -80.52427,-27.53423 - parent: 2 - uid: 11908 components: - type: Transform pos: 27.342222,27.475954 parent: 2 - - uid: 33862 - components: - - type: Transform - pos: -58.824303,-10.098261 - parent: 2 - - uid: 35919 - components: - - type: Transform - pos: -33.55708,-96.26602 - parent: 2 - - uid: 36746 - components: - - type: Transform - pos: 33.45923,-72.65762 - parent: 2 - uid: 36771 components: - type: Transform @@ -194616,61 +199565,6 @@ entities: - type: Transform pos: 32.826595,29.46033 parent: 2 - - uid: 36878 - components: - - type: Transform - pos: -31.477562,17.582691 - parent: 2 - - uid: 37351 - components: - - type: Transform - pos: 54.089714,-37.930534 - parent: 2 - - uid: 40823 - components: - - type: Transform - pos: 47.75752,-41.30494 - parent: 2 - - uid: 40862 - components: - - type: Transform - pos: 49.44379,-39.765045 - parent: 2 - - uid: 40872 - components: - - type: Transform - pos: 59.6986,-40.999264 - parent: 2 - - uid: 40873 - components: - - type: Transform - pos: 59.620476,-38.45239 - parent: 2 - - uid: 40877 - components: - - type: Transform - pos: 51.816105,-39.51611 - parent: 2 - - uid: 40883 - components: - - type: Transform - pos: 64.46886,-42.00199 - parent: 2 - - uid: 40884 - components: - - type: Transform - pos: 65.26573,-42.673866 - parent: 2 - - uid: 40887 - components: - - type: Transform - pos: 62.52808,-41.53209 - parent: 2 - - uid: 40891 - components: - - type: Transform - pos: 65.37312,-26.855219 - parent: 2 - proto: Rack entities: - uid: 1112 @@ -195279,12 +200173,6 @@ entities: - type: Transform pos: -38.5,14.5 parent: 2 - - uid: 26217 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 104.5,-41.5 - parent: 2 - uid: 26218 components: - type: Transform @@ -195812,6 +200700,13 @@ entities: - type: Transform pos: 2.7629585,2.780283 parent: 21045 +- proto: RadiumChemistryVial + entities: + - uid: 41120 + components: + - type: Transform + pos: -19.411299,-34.266617 + parent: 2 - proto: Railing entities: - uid: 2073 @@ -197739,10 +202634,11 @@ entities: parent: 2 - proto: RandomAnomalyInjectorSpawner entities: - - uid: 24171 + - uid: 33861 components: - type: Transform - pos: 14.5,-51.5 + rot: 1.5707963267948966 rad + pos: 13.5,-50.5 parent: 2 - proto: RandomArcade entities: @@ -199412,11 +204308,6 @@ entities: - type: Transform pos: 64.5,-25.5 parent: 2 - - uid: 26896 - components: - - type: Transform - pos: 87.5,-41.5 - parent: 2 - uid: 26897 components: - type: Transform @@ -200400,6 +205291,14 @@ entities: - type: Transform pos: -61.292084,-50.50443 parent: 2 +- proto: ReagentContainerMayo + entities: + - uid: 10944 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False - proto: ReagentGrinderIndustrial entities: - uid: 16835 @@ -200414,10 +205313,10 @@ entities: - type: Transform pos: -5.5,-35.5 parent: 2 - - uid: 39735 + - uid: 40941 components: - type: Transform - pos: -4.5,-41.5 + pos: -4.5,-39.5 parent: 2 - proto: Recycler entities: @@ -203910,11 +208809,71 @@ entities: - type: Transform pos: 54.5,22.5 parent: 2 + - uid: 35808 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 117.5,-37.5 + parent: 2 + - uid: 35810 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 126.5,-41.5 + parent: 2 + - uid: 35814 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 120.5,-37.5 + parent: 2 + - uid: 35884 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 127.5,-37.5 + parent: 2 + - uid: 35885 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 126.5,-37.5 + parent: 2 + - uid: 35902 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 125.5,-41.5 + parent: 2 + - uid: 35903 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 127.5,-41.5 + parent: 2 + - uid: 36753 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 118.5,-37.5 + parent: 2 - uid: 36885 components: - type: Transform pos: 51.5,-6.5 parent: 2 + - uid: 37663 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 124.5,-41.5 + parent: 2 + - uid: 37664 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 125.5,-37.5 + parent: 2 - uid: 37839 components: - type: Transform @@ -203931,6 +208890,42 @@ entities: - type: Transform pos: -1.5,-1.5 parent: 37887 + - uid: 39049 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 119.5,-37.5 + parent: 2 + - uid: 39053 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 124.5,-37.5 + parent: 2 + - uid: 39994 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 120.5,-41.5 + parent: 2 + - uid: 39997 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 117.5,-41.5 + parent: 2 + - uid: 40020 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 118.5,-41.5 + parent: 2 + - uid: 40078 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 119.5,-41.5 + parent: 2 - proto: ReinforcedWindowDiagonal entities: - uid: 27806 @@ -204225,6 +209220,14 @@ entities: - type: Transform pos: 83.284225,-9.363339 parent: 2 +- proto: RollingPin + entities: + - uid: 2034 + components: + - type: Transform + parent: 1994 + - type: Physics + canCollide: False - proto: RubberStampApproved entities: - uid: 22654 @@ -204334,30 +209337,25 @@ entities: - type: Transform pos: 4.5,-87.5 parent: 2 -- proto: SalvageMobSpawner - entities: - - uid: 26742 + - uid: 33828 components: - type: Transform - pos: 15.5,-25.5 + pos: 10.5,-60.5 parent: 2 - - uid: 29064 + - uid: 41118 components: - type: Transform - pos: 20.5,-22.5 + pos: 19.5,-49.5 parent: 2 -- proto: SalvageMobSpawner75 +- proto: SalvageMobSpawner entities: - - uid: 39803 - components: - - type: Transform - pos: 6.5,-29.5 - parent: 2 - - uid: 39804 + - uid: 26742 components: - type: Transform - pos: 3.5,-43.5 + pos: 15.5,-25.5 parent: 2 +- proto: SalvageMobSpawner75 + entities: - uid: 39805 components: - type: Transform @@ -204373,16 +209371,6 @@ entities: - type: Transform pos: 6.5,-14.5 parent: 2 - - uid: 39809 - components: - - type: Transform - pos: 19.5,-28.5 - parent: 2 - - uid: 40115 - components: - - type: Transform - pos: 13.5,-33.5 - parent: 2 - proto: SalvageSpawnerEquipment entities: - uid: 39621 @@ -204718,6 +209706,21 @@ entities: - type: Transform pos: -5.5,-28.5 parent: 2 + - uid: 40943 + components: + - type: Transform + pos: 5.5,-16.5 + parent: 2 + - uid: 40946 + components: + - type: Transform + pos: 6.5,-25.5 + parent: 2 + - uid: 40947 + components: + - type: Transform + pos: 11.5,-32.5 + parent: 2 - proto: SalvageSpawnerScrapValuable entities: - uid: 39641 @@ -204841,6 +209844,12 @@ entities: parent: 2 - proto: SalvageSpawnerTreasureValuable entities: + - uid: 26126 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 19.5,-45.5 + parent: 2 - uid: 26240 components: - type: Transform @@ -205580,6 +210589,38 @@ entities: - type: Transform pos: 101.5,-77.5 parent: 2 +- proto: ScreenTimer + entities: + - uid: 34754 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 77.5,-0.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 30485: + - Timer: Open + - uid: 35788 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 81.5,-0.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 30485: + - Timer: Open + - uid: 35796 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 85.5,-0.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 30485: + - Timer: Open - proto: Screwdriver entities: - uid: 27993 @@ -205722,12 +210763,6 @@ entities: rot: 3.141592653589793 rad pos: 58.048523,-42.430683 parent: 2 - - uid: 28018 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 50.17099,-37.01665 - parent: 2 - proto: ShadowTree04 entities: - uid: 40090 @@ -206541,6 +211576,61 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage +- proto: ShelfBar + entities: + - uid: 41152 + components: + - type: Transform + pos: 25.5,4.5 + parent: 2 + - type: Storage + storedItems: + 17683: + position: 0,0 + _rotation: South + 17675: + position: 1,0 + _rotation: South + 41153: + position: 2,3 + _rotation: South + 41154: + position: 1,3 + _rotation: South + 41155: + position: 4,0 + _rotation: South + 41156: + position: 5,0 + _rotation: South + 41157: + position: 4,3 + _rotation: South + 41158: + position: 2,0 + _rotation: South + 41159: + position: 3,0 + _rotation: South + 41160: + position: 0,3 + _rotation: South + - type: ContainerContainer + containers: + storagebase: !type:Container + showEnts: False + occludes: True + ents: + - 17683 + - 17675 + - 41154 + - 41155 + - 41156 + - 41153 + - 41158 + - 41159 + - 41157 + - 41160 - proto: ShelfChemistry entities: - uid: 34244 @@ -206548,6 +211638,242 @@ entities: - type: Transform pos: -2.5,-33.5 parent: 2 +- proto: ShelfChemistryChemistrySecure + entities: + - uid: 37041 + components: + - type: Transform + pos: -38.5,-27.5 + parent: 2 + - type: Storage + storedItems: + 37184: + position: 0,0 + _rotation: South + 40779: + position: 1,0 + _rotation: South + 41032: + position: 2,0 + _rotation: South + 41024: + position: 1,1 + _rotation: South + 41025: + position: 0,1 + _rotation: South + 41026: + position: 0,3 + _rotation: South + 41027: + position: 5,0 + _rotation: South + 41028: + position: 2,3 + _rotation: South + 41029: + position: 4,3 + _rotation: South + 41030: + position: 3,0 + _rotation: South + 41031: + position: 2,1 + _rotation: South + 41033: + position: 2,4 + _rotation: South + 41034: + position: 3,3 + _rotation: South + 41035: + position: 3,4 + _rotation: South + - type: ContainerContainer + containers: + storagebase: !type:Container + showEnts: False + occludes: True + ents: + - 37184 + - 41026 + - 41027 + - 41029 + - 41025 + - 41024 + - 41030 + - 41031 + - 40779 + - 41032 + - 41028 + - 41033 + - 41034 + - 41035 +- proto: ShelfKitchen + entities: + - uid: 1994 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 25.5,6.5 + parent: 2 + - type: Storage + storedItems: + 25363: + position: 0,0 + _rotation: South + 2034: + position: 2,0 + _rotation: South + 10944: + position: 0,3 + _rotation: South + 17883: + position: 5,3 + _rotation: South + 23773: + position: 3,0 + _rotation: South + 24659: + position: 4,1 + _rotation: South + 24651: + position: 3,1 + _rotation: South + 24652: + position: 5,0 + _rotation: South + 25075: + position: 2,3 + _rotation: South + 33756: + position: 3,3 + _rotation: South + 24650: + position: 4,0 + _rotation: South + 25340: + position: 0,1 + _rotation: North + 24639: + position: 1,3 + _rotation: South + 25213: + position: 4,3 + _rotation: South + 28068: + position: 2,4 + _rotation: South + 30611: + position: 4,4 + _rotation: South + 34324: + position: 1,4 + _rotation: South + 34327: + position: 3,4 + _rotation: South + - type: ContainerContainer + containers: + storagebase: !type:Container + showEnts: False + occludes: True + ents: + - 2034 + - 10944 + - 17883 + - 24652 + - 25340 + - 25363 + - 23773 + - 24650 + - 24651 + - 24659 + - 25075 + - 25213 + - 28068 + - 30611 + - 24639 + - 33756 + - 34324 + - 34327 +- proto: ShelfRGlass + entities: + - uid: 27043 + components: + - type: MetaData + name: препараты психолога + - type: Transform + rot: 3.141592653589793 rad + pos: -53.5,-50.5 + parent: 2 + - type: Storage + storedItems: + 17813: + position: 0,0 + _rotation: South + 17816: + position: 1,0 + _rotation: South + 17817: + position: 0,1 + _rotation: South + 11469: + position: 3,3 + _rotation: South + 11468: + position: 3,4 + _rotation: South + 17815: + position: 0,3 + _rotation: South + 11467: + position: 2,4 + _rotation: South + 11464: + position: 2,3 + _rotation: South + 17814: + position: 2,0 + _rotation: East + 17822: + position: 1,1 + _rotation: South + - type: ContainerContainer + containers: + storagebase: !type:Container + showEnts: False + occludes: True + ents: + - 17813 + - 17816 + - 17815 + - 11464 + - 17817 + - 11467 + - 17814 + - 11469 + - 11468 + - 17822 +- proto: ShelfRMetal + entities: + - uid: 41150 + components: + - type: Transform + pos: -81.5,-6.5 + parent: 2 + - type: Storage + storedItems: + 41151: + position: 0,0 + _rotation: East + - type: ContainerContainer + containers: + storagebase: !type:Container + showEnts: False + occludes: True + ents: + - 41151 - proto: ShellShotgunBeanbag entities: - uid: 2596 @@ -206646,15 +211972,15 @@ entities: - type: Transform pos: 10.5,-61.5 parent: 2 - - uid: 27921 + - uid: 27922 components: - type: Transform - pos: 18.5,-61.5 + pos: 18.5,-59.5 parent: 2 - - uid: 27922 + - uid: 40952 components: - type: Transform - pos: 18.5,-59.5 + pos: 18.5,-60.5 parent: 2 - proto: ShippingContainerConarex entities: @@ -207642,6 +212968,56 @@ entities: - type: Transform pos: 90.5,-7.5 parent: 2 + - uid: 41102 + components: + - type: Transform + pos: 35.5,-46.5 + parent: 2 + - uid: 41103 + components: + - type: Transform + pos: 35.5,-47.5 + parent: 2 + - uid: 41104 + components: + - type: Transform + pos: 35.5,-48.5 + parent: 2 + - uid: 41105 + components: + - type: Transform + pos: 35.5,-49.5 + parent: 2 + - uid: 41106 + components: + - type: Transform + pos: 41.5,-46.5 + parent: 2 + - uid: 41107 + components: + - type: Transform + pos: 41.5,-47.5 + parent: 2 + - uid: 41108 + components: + - type: Transform + pos: 41.5,-48.5 + parent: 2 + - uid: 41109 + components: + - type: Transform + pos: 46.5,-46.5 + parent: 2 + - uid: 41110 + components: + - type: Transform + pos: 46.5,-47.5 + parent: 2 + - uid: 41111 + components: + - type: Transform + pos: 46.5,-48.5 + parent: 2 - proto: ShuttersRadiationOpen entities: - uid: 28294 @@ -208226,10 +213602,35 @@ entities: - Pressed: Toggle 22088: - Pressed: Toggle + - uid: 41112 + components: + - type: MetaData + name: ставни + - type: Transform + pos: 39.5,-45.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 41107: + - Pressed: Toggle + 41106: + - Pressed: Toggle + 41108: + - Pressed: Toggle + 41102: + - Pressed: Toggle + 41103: + - Pressed: Toggle + 41104: + - Pressed: Toggle + 41105: + - Pressed: Toggle - proto: SignalButtonDirectional entities: - uid: 11902 components: + - type: MetaData + name: старт тира - type: Transform rot: -1.5707963267948966 rad pos: 61.5,8.5 @@ -208541,6 +213942,8 @@ entities: - Pressed: Toggle - uid: 28349 components: + - type: MetaData + name: гермозатворы - type: Transform rot: 3.141592653589793 rad pos: 45.5,-104.5 @@ -209059,6 +214462,44 @@ entities: - Pressed: Toggle 21242: - Pressed: Toggle + - uid: 33867 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 45.5,31.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 246: + - Pressed: DoorBolt + - uid: 39802 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 61.810246,8.501156 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 14078: + - Pressed: Off + 2889: + - Pressed: Off + 15176: + - Pressed: Off + 9728: + - Pressed: Off + 16244: + - Pressed: Off + 17414: + - Pressed: Off + 17426: + - Pressed: Off + 14063: + - Pressed: Off + 14233: + - Pressed: Off + 9937: + - Pressed: Off - uid: 40637 components: - type: MetaData @@ -209074,6 +214515,42 @@ entities: - Pressed: Toggle 40636: - Pressed: Toggle + - uid: 41089 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -36.5,-4.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 204: + - Pressed: DoorBolt + - uid: 41090 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -43.5,-88.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 203: + - Pressed: DoorBolt + - uid: 41113 + components: + - type: MetaData + name: ставни + - type: Transform + rot: 3.141592653589793 rad + pos: 47.5,-49.5 + parent: 2 + - type: DeviceLinkSource + linkedPorts: + 41109: + - Pressed: Toggle + 41110: + - Pressed: Toggle + 41111: + - Pressed: Toggle - proto: SignalTimer entities: - uid: 37709 @@ -209085,6 +214562,8 @@ entities: linkedPorts: 34359: - Timer: Trigger + 40955: + - Timer: Trigger - type: DeviceLinkSink invokeCounter: 1 missingComponents: @@ -209100,13 +214579,13 @@ entities: - type: DeviceLinkSource linkedPorts: 37912: - - Timer: Toggle + - Timer: Close 37913: - - Timer: Toggle + - Timer: Close 37915: - - Timer: Toggle + - Timer: Close 37914: - - Timer: Toggle + - Timer: Close 38218: - Timer: Trigger 38220: @@ -209120,11 +214599,13 @@ entities: 38219: - Timer: Trigger 37917: - - Timer: Toggle + - Timer: Close 37916: - - Timer: Toggle + - Timer: Close - type: DeviceLinkSink invokeCounter: 1 + missingComponents: + - ApcPowerReceiver - uid: 39736 components: - type: Transform @@ -209133,10 +214614,6 @@ entities: parent: 2 - type: SignalTimer delay: 1 - - type: DeviceLinkSource - linkedPorts: - 39738: - - Timer: Trigger - type: DeviceLinkSink invokeCounter: 1 missingComponents: @@ -212074,12 +217551,6 @@ entities: parent: 2 - proto: SolidSecretDoor entities: - - uid: 33561 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 15.5,-46.5 - parent: 2 - uid: 40103 components: - type: MetaData @@ -212330,13 +217801,23 @@ entities: - type: Transform pos: -2.5,-27.5 parent: 2 -- proto: SpawnMobCarpHolo - entities: - - uid: 30415 + - uid: 39804 components: - type: Transform - pos: -14.5,-12.5 + pos: 12.5,-33.5 parent: 2 + - uid: 40115 + components: + - type: Transform + pos: 6.5,-26.5 + parent: 2 + - uid: 40949 + components: + - type: Transform + pos: 17.5,-16.5 + parent: 2 +- proto: SpawnMobCarpHolo + entities: - uid: 40120 components: - type: Transform @@ -212349,11 +217830,6 @@ entities: - type: Transform pos: -22.5,-47.5 parent: 2 - - uid: 39802 - components: - - type: Transform - pos: -16.5,-49.5 - parent: 2 - proto: SpawnMobCatFloppa entities: - uid: 28855 @@ -212417,11 +217893,6 @@ entities: parent: 2 - proto: SpawnMobKangaroo entities: - - uid: 30435 - components: - - type: Transform - pos: -18.5,-22.5 - parent: 2 - uid: 30480 components: - type: Transform @@ -212465,6 +217936,50 @@ entities: - type: Transform pos: 22.5,9.5 parent: 2 +- proto: SpawnMobMouse + entities: + - uid: 31088 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -60.5,-53.5 + parent: 2 + - uid: 31520 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -48.5,9.5 + parent: 2 + - uid: 31521 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 29.5,-82.5 + parent: 2 + - uid: 31522 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 68.5,-18.5 + parent: 2 + - uid: 31523 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -17.5,9.5 + parent: 2 + - uid: 31524 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -51.5,18.5 + parent: 2 + - uid: 31528 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 68.5,-19.5 + parent: 2 - proto: SpawnMobOreCrab entities: - uid: 28867 @@ -213403,6 +218918,13 @@ entities: rot: 1.5707963267948966 rad pos: -67.44861,-6.764276 parent: 2 +- proto: SprayBottleSpaceCleaner + entities: + - uid: 41284 + components: + - type: Transform + pos: -15.147467,-50.176872 + parent: 2 - proto: SprayPainter entities: - uid: 29052 @@ -213465,6 +218987,18 @@ entities: - type: Transform pos: 0.5,-50.5 parent: 2 +- proto: StairWood + entities: + - uid: 41142 + components: + - type: Transform + pos: -29.5,2.5 + parent: 2 + - uid: 41147 + components: + - type: Transform + pos: -30.5,2.5 + parent: 2 - proto: StasisBed entities: - uid: 1739 @@ -213674,6 +219208,12 @@ entities: rot: -1.5707963267948966 rad pos: 46.5,-20.5 parent: 2 + - uid: 41013 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 113.5,-39.5 + parent: 2 - proto: StationMapAssembly entities: - uid: 32412 @@ -214570,8 +220110,8 @@ entities: immutable: False temperature: 293.1465 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -214589,10 +220129,11 @@ entities: occludes: True ents: - 38164 - - 38166 - - 38163 - - 38165 + - 41595 - 38167 + - 38165 + - 38163 + - 38166 - uid: 38168 components: - type: Transform @@ -214604,8 +220145,8 @@ entities: immutable: False temperature: 293.1465 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -214622,11 +220163,12 @@ entities: showEnts: False occludes: True ents: - - 38169 - - 38172 - - 38173 - - 38170 + - 41596 - 38171 + - 38170 + - 38173 + - 38172 + - 38169 - uid: 38174 components: - type: Transform @@ -214638,8 +220180,8 @@ entities: immutable: False temperature: 293.1465 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -214657,10 +220199,11 @@ entities: occludes: True ents: - 38176 - - 38179 - - 38178 - - 38175 + - 41597 - 38177 + - 38175 + - 38178 + - 38179 - uid: 38180 components: - type: Transform @@ -214672,8 +220215,8 @@ entities: immutable: False temperature: 293.1465 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -214690,11 +220233,12 @@ entities: showEnts: False occludes: True ents: - - 38184 - - 38185 - - 38183 - - 38182 + - 41598 - 38181 + - 38182 + - 38183 + - 38185 + - 38184 - uid: 38186 components: - type: Transform @@ -214706,8 +220250,8 @@ entities: immutable: False temperature: 293.1465 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -214724,11 +220268,12 @@ entities: showEnts: False occludes: True ents: - - 38191 - - 38187 - - 38190 - - 38188 - 38189 + - 38188 + - 38190 + - 38187 + - 38191 + - 41599 - uid: 38192 components: - type: Transform @@ -214998,15 +220543,10 @@ entities: parent: 2 - proto: SuitStorageEVAPrisoner entities: - - uid: 10944 - components: - - type: Transform - pos: 75.5,6.5 - parent: 2 - - uid: 32760 + - uid: 29120 components: - type: Transform - pos: 75.5,7.5 + pos: 73.5,5.5 parent: 2 - uid: 34409 components: @@ -215122,8 +220662,8 @@ entities: immutable: False temperature: 293.14676 moles: - - 1.8856691 - - 7.0937076 + - 1.8968438 + - 7.1357455 - 0 - 0 - 0 @@ -215148,6 +220688,21 @@ entities: - type: Transform pos: -3.5,13.5 parent: 2 + - uid: 41091 + components: + - type: Transform + pos: 62.5,13.5 + parent: 2 + - uid: 41097 + components: + - type: Transform + pos: 75.5,6.5 + parent: 2 + - uid: 41098 + components: + - type: Transform + pos: 75.5,7.5 + parent: 2 - proto: SuitStorageWarden entities: - uid: 9736 @@ -216176,17 +221731,6 @@ entities: - SurveillanceCameraGeneral nameSet: True id: Верфь - - uid: 40020 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 102.5,-41.5 - parent: 2 - - type: SurveillanceCamera - setupAvailableNetworks: - - SurveillanceCameraGeneral - nameSet: True - id: Лучшая камера в мире - uid: 40026 components: - type: Transform @@ -216239,6 +221783,37 @@ entities: - SurveillanceCameraGeneral nameSet: True id: Какой-то коридор + - uid: 41020 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 121.5,-38.5 + parent: 2 + - type: SurveillanceCamera + setupAvailableNetworks: + - SurveillanceCameraGeneral + nameSet: True + id: Стыковка ПРибытие + - uid: 41021 + components: + - type: Transform + pos: 128.5,-40.5 + parent: 2 + - type: SurveillanceCamera + setupAvailableNetworks: + - SurveillanceCameraGeneral + nameSet: True + id: Стыковка прибытие 2 + - uid: 41022 + components: + - type: Transform + pos: 105.5,-42.5 + parent: 2 + - type: SurveillanceCamera + setupAvailableNetworks: + - SurveillanceCameraGeneral + nameSet: True + id: 'Коридор к стыковке ' - proto: SurveillanceCameraMedical entities: - uid: 13037 @@ -217445,10 +223020,9 @@ entities: - uid: 17822 components: - type: Transform - parent: 17812 + parent: 27043 - type: Physics canCollide: False - - type: InsideEntityStorage - proto: SyringeInaprovaline entities: - uid: 29435 @@ -219335,6 +224909,12 @@ entities: - type: Transform pos: 4.5,-4.5 parent: 38722 + - uid: 41249 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 16.5,-27.5 + parent: 2 - proto: TableBrass entities: - uid: 26595 @@ -219589,12 +225169,6 @@ entities: - type: Transform pos: -11.5,-36.5 parent: 2 - - uid: 33756 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 16.5,-27.5 - parent: 2 - uid: 34211 components: - type: Transform @@ -219690,12 +225264,6 @@ entities: - type: Transform pos: -23.5,-102.5 parent: 2 - - uid: 30565 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 89.5,-2.5 - parent: 2 - proto: TableFancyBlack entities: - uid: 23988 @@ -223791,7 +229359,7 @@ entities: - uid: 40100 components: - type: Transform - pos: 24.446772,4.705287 + pos: 24.419611,4.656468 parent: 2 - proto: ToyFigurineBotanist entities: @@ -224472,6 +230040,8 @@ entities: - type: Transform pos: 20.550362,-13.380315 parent: 2 + - type: StaticPrice + price: 2000 - proto: TreasureDatadiskEncrypted entities: - uid: 30498 @@ -225603,11 +231173,10 @@ entities: - type: Transform pos: 50.5,6.5 parent: 2 - - uid: 30611 + - uid: 41594 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 31.5,8.5 + pos: 31.5,5.5 parent: 2 - proto: VendingMachineCuraDrobe entities: @@ -226059,6 +231628,12 @@ entities: rot: 3.141592653589793 rad pos: 5.5,-3.5 parent: 38722 + - uid: 41116 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 81.5,-11.5 + parent: 2 - proto: VendingMachineWinter entities: - uid: 30672 @@ -226412,6 +231987,12 @@ entities: - type: Transform pos: 3.5,-40.5 parent: 2 + - uid: 572 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 113.5,-43.5 + parent: 2 - uid: 650 components: - type: Transform @@ -227486,6 +233067,12 @@ entities: - type: Transform pos: 2.5,-5.5 parent: 2 + - uid: 6191 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 133.5,-39.5 + parent: 2 - uid: 6192 components: - type: Transform @@ -228218,6 +233805,12 @@ entities: - type: Transform pos: -59.5,-26.5 parent: 2 + - uid: 10801 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 132.5,-37.5 + parent: 2 - uid: 10803 components: - type: Transform @@ -228729,6 +234322,12 @@ entities: - type: Transform pos: 59.5,-17.5 parent: 2 + - uid: 12955 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 113.5,-42.5 + parent: 2 - uid: 12989 components: - type: Transform @@ -229097,6 +234696,12 @@ entities: - type: Transform pos: 52.5,-26.5 parent: 2 + - uid: 14461 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 110.5,-37.5 + parent: 2 - uid: 14472 components: - type: Transform @@ -230290,6 +235895,30 @@ entities: rot: 3.141592653589793 rad pos: 76.5,8.5 parent: 2 + - uid: 23533 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 132.5,-39.5 + parent: 2 + - uid: 23534 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 114.5,-37.5 + parent: 2 + - uid: 23535 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 111.5,-37.5 + parent: 2 + - uid: 23536 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 113.5,-37.5 + parent: 2 - uid: 23538 components: - type: Transform @@ -230373,6 +236002,12 @@ entities: - type: Transform pos: 87.5,-64.5 parent: 2 + - uid: 23772 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 112.5,-37.5 + parent: 2 - uid: 23852 components: - type: Transform @@ -230957,6 +236592,12 @@ entities: - type: Transform pos: -9.5,-34.5 parent: 2 + - uid: 27330 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 131.5,-39.5 + parent: 2 - uid: 27933 components: - type: Transform @@ -230990,6 +236631,11 @@ entities: rot: 1.5707963267948966 rad pos: -20.5,18.5 parent: 2 + - uid: 30435 + components: + - type: Transform + pos: 17.5,-32.5 + parent: 2 - uid: 30679 components: - type: Transform @@ -239114,30 +244760,6 @@ entities: rot: 3.141592653589793 rad pos: 90.5,-18.5 parent: 2 - - uid: 32729 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 110.5,-39.5 - parent: 2 - - uid: 32730 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 110.5,-40.5 - parent: 2 - - uid: 32731 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 110.5,-41.5 - parent: 2 - - uid: 32732 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 110.5,-42.5 - parent: 2 - uid: 32733 components: - type: Transform @@ -243280,12 +248902,36 @@ entities: - type: Transform pos: 48.5,-6.5 parent: 2 + - uid: 35805 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 116.5,-37.5 + parent: 2 + - uid: 35881 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 121.5,-37.5 + parent: 2 + - uid: 35883 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 123.5,-37.5 + parent: 2 - uid: 35909 components: - type: Transform rot: -1.5707963267948966 rad pos: 67.5,-13.5 parent: 2 + - uid: 35919 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 128.5,-37.5 + parent: 2 - uid: 35997 components: - type: Transform @@ -243326,12 +248972,66 @@ entities: rot: 3.141592653589793 rad pos: 42.5,13.5 parent: 2 + - uid: 36746 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 130.5,-37.5 + parent: 2 + - uid: 36747 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 131.5,-37.5 + parent: 2 + - uid: 36757 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 133.5,-37.5 + parent: 2 + - uid: 36878 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 133.5,-41.5 + parent: 2 + - uid: 36901 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 132.5,-41.5 + parent: 2 + - uid: 36956 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 131.5,-41.5 + parent: 2 + - uid: 37351 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 130.5,-41.5 + parent: 2 + - uid: 37657 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 128.5,-41.5 + parent: 2 - uid: 37704 components: - type: Transform rot: 3.141592653589793 rad pos: -8.5,-50.5 parent: 2 + - uid: 39052 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 123.5,-41.5 + parent: 2 - uid: 39078 components: - type: Transform @@ -243363,17 +249063,53 @@ entities: - type: Transform pos: -2.5,-9.5 parent: 2 + - uid: 39993 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 121.5,-41.5 + parent: 2 + - uid: 40084 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 116.5,-41.5 + parent: 2 - uid: 40665 components: - type: Transform rot: 1.5707963267948966 rad pos: 51.5,12.5 parent: 2 + - uid: 40791 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 115.5,-41.5 + parent: 2 - uid: 40807 components: - type: Transform pos: 82.5,-11.5 parent: 2 + - uid: 40823 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 114.5,-41.5 + parent: 2 + - uid: 40836 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 113.5,-41.5 + parent: 2 + - uid: 40837 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 113.5,-39.5 + parent: 2 - proto: WallReinforcedRust entities: - uid: 23114 @@ -248414,12 +254150,6 @@ entities: - type: Transform pos: 41.5,-65.5 parent: 2 - - uid: 34747 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 103.5,-42.5 - parent: 2 - uid: 34748 components: - type: Transform @@ -248451,12 +254181,6 @@ entities: - type: Transform pos: 89.5,-43.5 parent: 2 - - uid: 34754 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 103.5,-41.5 - parent: 2 - uid: 34755 components: - type: Transform @@ -257595,11 +263319,16 @@ entities: parent: 2 - proto: WallWeaponCapacitorRecharger entities: - - uid: 36762 + - uid: 41095 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -47.5,-33.5 + pos: 50.5,-2.5 + parent: 2 + - uid: 41137 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 54.5,-12.5 parent: 2 - proto: WantedListCartridge entities: @@ -257843,8 +263572,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.7459903 - - 6.568249 + - 1.8856695 + - 7.0937095 - 0 - 0 - 0 @@ -257861,8 +263590,8 @@ entities: showEnts: False occludes: True ents: - - 14916 - 14915 + - 14916 paper_label: !type:ContainerSlot showEnts: False occludes: True @@ -257878,8 +263607,8 @@ entities: immutable: False temperature: 293.14673 moles: - - 1.8856695 - - 7.0937095 + - 1.8968438 + - 7.1357465 - 0 - 0 - 0 @@ -258396,6 +264125,13 @@ entities: parent: 38722 - type: WarpPoint location: Шаттл ОБР + - uid: 41161 + components: + - type: Transform + pos: 0.5,0.5 + parent: 21045 + - type: WarpPoint + location: Шаттл СБ - proto: WarpPointBombing entities: - uid: 29271 @@ -258537,13 +264273,6 @@ entities: - type: Transform pos: -53.5,-3.5 parent: 2 -- proto: WaterTank - entities: - - uid: 36840 - components: - - type: Transform - pos: 109.5,-42.5 - parent: 2 - proto: WaterTankFull entities: - uid: 26788 @@ -258727,11 +264456,6 @@ entities: - type: Transform pos: 6.531067,-13.423157 parent: 37887 - - uid: 38651 - components: - - type: Transform - pos: -4.452469,-4.4048767 - parent: 37887 - proto: WeaponCapacitorRecharger entities: - uid: 14 @@ -258791,6 +264515,26 @@ entities: rot: 1.5707963267948966 rad pos: 6.5,2.5 parent: 38722 + - uid: 41096 + components: + - type: Transform + pos: -44.5,-31.5 + parent: 2 + - uid: 41100 + components: + - type: Transform + pos: -48.5,-50.5 + parent: 2 + - uid: 41148 + components: + - type: Transform + pos: 42.5,-15.5 + parent: 2 + - uid: 41149 + components: + - type: Transform + pos: -4.5,-80.5 + parent: 2 - proto: WeaponDisabler entities: - uid: 14759 @@ -258959,13 +264703,14 @@ entities: name: миниган биокод - type: Transform parent: 6311 + - type: StaticPrice + price: 10500 - type: Physics canCollide: False - type: InsideEntityStorage missingComponents: - Gun - BallisticAmmoProvider - - StaticPrice - DamageExaminable - Contraband - proto: WeaponPistolFlintlock @@ -258992,6 +264737,13 @@ entities: rot: 3.141592653589793 rad pos: 12.542126,-21.444609 parent: 2 +- proto: WeaponPulsePistol + entities: + - uid: 41600 + components: + - type: Transform + pos: -4.4610443,-4.4109497 + parent: 37887 - proto: WeaponRevolverMateba entities: - uid: 37690 @@ -259066,6 +264818,15 @@ entities: - type: Physics canCollide: False - type: InsideEntityStorage +- proto: WeaponShotgunEnforcer + entities: + - uid: 28011 + components: + - type: Transform + parent: 26551 + - type: Physics + canCollide: False + - type: InsideEntityStorage - proto: WeaponShotgunImprovised entities: - uid: 36915 @@ -259187,11 +264948,6 @@ entities: - type: Transform pos: 14.5,-27.5 parent: 2 - - uid: 37762 - components: - - type: Transform - pos: 17.5,-15.5 - parent: 2 - uid: 38658 components: - type: Transform @@ -259294,34 +265050,37 @@ entities: - type: Transform pos: -9.5,-15.5 parent: 37887 - - uid: 39049 - components: - - type: Transform - rot: -1.5707963267948966 rad - pos: 100.5,-74.5 - parent: 2 - uid: 39051 components: - type: Transform pos: 96.5,-86.5 parent: 2 - - uid: 39052 + - uid: 39054 components: - type: Transform - pos: 94.5,-78.5 + rot: 1.5707963267948966 rad + pos: 96.5,-74.5 parent: 2 - - uid: 39053 + - uid: 41023 components: - type: Transform + rot: -1.5707963267948966 rad pos: 102.5,-78.5 parent: 2 - - uid: 39054 +- proto: WeaponTurretNanoTrasen + entities: + - uid: 32731 + components: + - type: Transform + pos: 100.5,-74.5 + parent: 2 + - uid: 32732 components: - type: Transform rot: 1.5707963267948966 rad - pos: 96.5,-74.5 + pos: 94.5,-78.5 parent: 2 - - uid: 39066 + - uid: 33854 components: - type: Transform pos: 98.5,-66.5 @@ -259333,6 +265092,11 @@ entities: - type: Transform pos: -54.5,-70.5 parent: 2 + - uid: 40942 + components: + - type: Transform + pos: 17.5,-15.5 + parent: 2 - proto: WeaponWaterBlaster entities: - uid: 26441 @@ -259349,7 +265113,7 @@ entities: - type: MetaData name: ' супер-бластер' - type: Transform - pos: 12.459019,-19.686338 + pos: 12.61051,-18.631842 parent: 2 - proto: WeaponWaterPistol entities: @@ -259358,7 +265122,7 @@ entities: - type: MetaData name: импульсный пистолет - type: Transform - pos: 8.464001,-17.498634 + pos: 12.470344,-15.756947 parent: 2 - proto: WelderIndustrial entities: @@ -259481,11 +265245,6 @@ entities: - type: Transform pos: -14.5,12.5 parent: 2 - - uid: 36956 - components: - - type: Transform - pos: 108.5,-42.5 - parent: 2 - uid: 36958 components: - type: Transform @@ -260193,11 +265952,6 @@ entities: - type: Transform pos: 24.5,4.5 parent: 2 - - uid: 37041 - components: - - type: Transform - pos: 25.5,4.5 - parent: 2 - proto: WindoorClockwork entities: - uid: 25494 @@ -260479,6 +266233,9 @@ entities: rot: 1.5707963267948966 rad pos: -3.5,-39.5 parent: 2 + - type: AccessReader + access: + - - Medical - proto: WindoorSecureArmoryLocked entities: - uid: 3103 @@ -260526,7 +266283,7 @@ entities: rot: 1.5707963267948966 rad pos: 101.5,-78.5 parent: 2 - - uid: 26063 + - uid: 33859 components: - type: Transform pos: 102.5,-78.5 @@ -260790,6 +266547,22 @@ entities: rot: 3.141592653589793 rad pos: -5.5,13.5 parent: 2 + - uid: 41123 + components: + - type: Transform + pos: -36.5,-26.5 + parent: 2 + - uid: 41162 + components: + - type: Transform + pos: -35.5,-26.5 + parent: 2 + - uid: 41163 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -37.5,-27.5 + parent: 2 - proto: WindoorSecureNukeopLocked entities: - uid: 27026 @@ -262367,12 +268140,6 @@ entities: rot: 1.5707963267948966 rad pos: 31.5,-12.5 parent: 2 - - uid: 37184 - components: - - type: Transform - rot: 1.5707963267948966 rad - pos: 25.5,4.5 - parent: 2 - uid: 37185 components: - type: Transform @@ -263134,6 +268901,12 @@ entities: rot: 1.5707963267948966 rad pos: -43.5,-84.5 parent: 2 + - uid: 41101 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 24.5,4.5 + parent: 2 - proto: WindowFrostedDirectional entities: - uid: 2629 @@ -263733,6 +269506,12 @@ entities: rot: 3.141592653589793 rad pos: 78.5,5.5 parent: 2 + - uid: 33860 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 11.5,-2.5 + parent: 2 - uid: 33874 components: - type: Transform @@ -265905,6 +271684,14 @@ entities: - type: Transform pos: 48.5,-37.5 parent: 2 +- proto: WoodenBuckler + entities: + - uid: 41099 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 68.4214,-50.618374 + parent: 2 - proto: WoodenSupportWall entities: - uid: 23010 From 74980a162d1951c12d081494c2d12ca965a873e5 Mon Sep 17 00:00:00 2001 From: IanComradeBot <96892333+IanComradeBot@users.noreply.github.com> Date: Fri, 8 Nov 2024 22:23:16 +0000 Subject: [PATCH 110/112] Automatic changelog update --- Resources/Changelog/ChangelogSyndie.yml | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/Resources/Changelog/ChangelogSyndie.yml b/Resources/Changelog/ChangelogSyndie.yml index ce0e35fbb53..c7e4915dad1 100644 --- a/Resources/Changelog/ChangelogSyndie.yml +++ b/Resources/Changelog/ChangelogSyndie.yml @@ -1,17 +1,4 @@ Entries: -- author: Rinkashikachi - changes: - - message: "\u0443\u0431\u0440\u0430\u043B \u043B\u0438\u0448\u043D\u044E\u044E\ - \ \u042B \u0432 \u0441\u043B\u043E\u0432\u0435 \"\u0412\u044B\u0437\u0432\u0430\ - \u0442\u044C\"" - type: Remove - - message: "\u0443\u0431\u0440\u0430\u043B \u043B\u0438\u0448\u043D\u0438\u0435\ - \ escape \u0441\u0438\u043C\u0432\u043E\u043B\u044B \u0432 \u043E\u043F\u0438\ - \u0441\u0430\u043D\u0438\u0438 \u0448\u043A\u0430\u0444\u0447\u0438\u043A\u0430\ - \ \u0442\u043E\u043F\u043E\u0440\u0430" - type: Remove - id: 185 - time: '2022-07-19T08:47:29.0000000+00:00' - author: Morty changes: - message: "\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u044B \u0441\u043F\u0440\u0430\ @@ -4492,3 +4479,11 @@ id: 684 time: '2024-11-04T15:30:49.0000000+00:00' url: https://github.com/space-syndicate/space-station-14/pull/2735 +- author: Resoid + changes: + - message: "\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435 \u043A\u0430\ + \u0440\u0442\u044B Astra." + type: Tweak + id: 685 + time: '2024-11-08T22:20:45.0000000+00:00' + url: https://github.com/space-syndicate/space-station-14/pull/2753 From f05c5529c083e8490f74ae03becb5ddbb378adde Mon Sep 17 00:00:00 2001 From: Kill_Me_I_Noobs <118206719+Vonsant@users.noreply.github.com> Date: Sat, 9 Nov 2024 02:18:54 +0300 Subject: [PATCH 111/112] remove HyperLink (#2749) --- .../Corvax/HyperLink/HyperLinkSystem.cs | 21 ------------- .../Corvax/HyperLink/HyperLinkComponent.cs | 11 ------- .../Corvax/HyperLink/HyperLinkSystem.cs | 30 ------------------- .../Corvax/HyperLink/SharedHyperLinkSystem.cs | 15 ---------- Resources/Maps/corvax_paper.yml | 4 --- 5 files changed, 81 deletions(-) delete mode 100644 Content.Client/Corvax/HyperLink/HyperLinkSystem.cs delete mode 100644 Content.Server/Corvax/HyperLink/HyperLinkComponent.cs delete mode 100644 Content.Server/Corvax/HyperLink/HyperLinkSystem.cs delete mode 100644 Content.Shared/Corvax/HyperLink/SharedHyperLinkSystem.cs diff --git a/Content.Client/Corvax/HyperLink/HyperLinkSystem.cs b/Content.Client/Corvax/HyperLink/HyperLinkSystem.cs deleted file mode 100644 index 48e1fa4032b..00000000000 --- a/Content.Client/Corvax/HyperLink/HyperLinkSystem.cs +++ /dev/null @@ -1,21 +0,0 @@ -// Inspired by Nyanotrasen - -using Content.Shared.HyperLink; -using Robust.Client.UserInterface; - -namespace Content.Client.HyperLink; - -public sealed class HyperLinkSystem : EntitySystem -{ - public override void Initialize() - { - base.Initialize(); - SubscribeNetworkEvent(OnOpenURL); - } - - private void OnOpenURL(OpenURLEvent args) - { - var uriOpener = IoCManager.Resolve(); - uriOpener.OpenUri(args.URL); - } -} \ No newline at end of file diff --git a/Content.Server/Corvax/HyperLink/HyperLinkComponent.cs b/Content.Server/Corvax/HyperLink/HyperLinkComponent.cs deleted file mode 100644 index 21e827dce69..00000000000 --- a/Content.Server/Corvax/HyperLink/HyperLinkComponent.cs +++ /dev/null @@ -1,11 +0,0 @@ -// Inspired by Nyanotrasen - -namespace Content.Server.HyperLink; - -[RegisterComponent] -public sealed partial class HyperLinkComponent : Component -{ - [DataField("url")] - [ViewVariables(VVAccess.ReadWrite)] - public string URL = string.Empty; -} \ No newline at end of file diff --git a/Content.Server/Corvax/HyperLink/HyperLinkSystem.cs b/Content.Server/Corvax/HyperLink/HyperLinkSystem.cs deleted file mode 100644 index 6ef56d88a57..00000000000 --- a/Content.Server/Corvax/HyperLink/HyperLinkSystem.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Inspired by Nyanotrasen - -using Robust.Shared.Player; -using Content.Shared.Interaction; -using Content.Shared.HyperLink; - -namespace Content.Server.HyperLink; - -public sealed class HyperLinkSystem : EntitySystem -{ - public override void Initialize() - { - base.Initialize(); - SubscribeLocalEvent(OnActivate); - } - - private void OnActivate(EntityUid uid, HyperLinkComponent component, ActivateInWorldEvent args) - { - if (!TryComp(args.User, out var actor)) - return; - - OpenURL(actor.PlayerSession, component.URL); - } - - public void OpenURL(ICommonSession session, string url) - { - var ev = new OpenURLEvent(url); - RaiseNetworkEvent(ev, session.Channel); - } -} diff --git a/Content.Shared/Corvax/HyperLink/SharedHyperLinkSystem.cs b/Content.Shared/Corvax/HyperLink/SharedHyperLinkSystem.cs deleted file mode 100644 index 8c171cae59e..00000000000 --- a/Content.Shared/Corvax/HyperLink/SharedHyperLinkSystem.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Inspired by Nyanotrasen - -using Robust.Shared.Serialization; - -namespace Content.Shared.HyperLink; - -[Serializable, NetSerializable] -public sealed class OpenURLEvent : EntityEventArgs -{ - public string URL { get; } - public OpenURLEvent(string url) - { - URL = url; - } -} \ No newline at end of file diff --git a/Resources/Maps/corvax_paper.yml b/Resources/Maps/corvax_paper.yml index ae4d3e556c7..fb8de5942ac 100644 --- a/Resources/Maps/corvax_paper.yml +++ b/Resources/Maps/corvax_paper.yml @@ -25365,15 +25365,11 @@ entities: - type: Transform pos: 49.838795,21.556015 parent: 2 - - type: HyperLink - url: https://youtu.be/xvFZjo5PgG0 - uid: 22009 components: - type: Transform pos: 25.341877,25.460508 parent: 2 - - type: HyperLink - url: https://youtu.be/xvFZjo5PgG0 - proto: BookTemple entities: - uid: 1036 From e673a9d8b098c1805bcff68884dca28046adf25c Mon Sep 17 00:00:00 2001 From: IanComradeBot <96892333+IanComradeBot@users.noreply.github.com> Date: Fri, 8 Nov 2024 23:20:03 +0000 Subject: [PATCH 112/112] Automatic changelog update --- Resources/Changelog/ChangelogSyndie.yml | 29 ++++++++++++++++++------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/Resources/Changelog/ChangelogSyndie.yml b/Resources/Changelog/ChangelogSyndie.yml index c7e4915dad1..5e1d33d791e 100644 --- a/Resources/Changelog/ChangelogSyndie.yml +++ b/Resources/Changelog/ChangelogSyndie.yml @@ -1,12 +1,4 @@ Entries: -- author: Morty - changes: - - message: "\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u044B \u0441\u043F\u0440\u0430\ - \u0439\u0442\u044B \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0445 \u0441\ - \u0442\u0440\u0443\u043A\u0442\u0443\u0440" - type: Tweak - id: 186 - time: '2022-07-19T22:46:33.0000000+00:00' - author: Morty changes: - message: "\u0418\u0441\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u043E \u043E\u0442\ @@ -4487,3 +4479,24 @@ id: 685 time: '2024-11-08T22:20:45.0000000+00:00' url: https://github.com/space-syndicate/space-station-14/pull/2753 +- author: Vonsant + changes: + - message: "\u0423\u0434\u0430\u043B\u0435\u043D\u0430 \u0441\u0438\u0441\u0442\u0435\ + \u043C\u0430 HyperLink, \u043F\u043E\u0437\u0432\u043E\u043B\u044F\u0432\u0448\ + \u0430\u044F \u043E\u0442\u043A\u0440\u044B\u0432\u0430\u0442\u044C \u043B\u044E\ + \u0431\u0443\u044E \u0441\u0441\u044B\u043B\u043A\u0443 \u0432 \u0431\u0440\u0430\ + \u0443\u0437\u0435\u0440\u0435 \u043F\u0440\u0438 \u0430\u043A\u0442\u0438\u0432\ + \u0430\u0446\u0438\u0438 \u043F\u0440\u0435\u0434\u043C\u0435\u0442\u0430, \u0431\ + \u0435\u0437 \u043D\u0435\u043F\u043E\u0441\u0440\u0435\u0434\u0441\u0442\u0432\ + \u0435\u043D\u043D\u043E\u0433\u043E \u0440\u0430\u0437\u0440\u0435\u0448\u0435\ + \u043D\u0438\u044F \u043A\u043E\u043D\u0435\u0447\u043D\u043E\u0433\u043E \u043F\ + \u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F." + type: Remove + - message: "\u0423\u0434\u0430\u043B\u0435\u043D\u0430 \u0441\u0441\u044B\u043B\u043A\ + \u0430 \u043D\u0430 \u0440\u0438\u043A\u0440\u043E\u043B\u043B \u043F\u043E\ + \ \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443 HyperLink \u0441\ + \ \u043A\u0430\u0440\u0442\u044B Paper." + type: Remove + id: 686 + time: '2024-11-08T23:18:54.0000000+00:00' + url: https://github.com/space-syndicate/space-station-14/pull/2749