From ac93f3b9019fd9062b92895bc294ab3227a39927 Mon Sep 17 00:00:00 2001 From: PubliclyExecutedPig <152017811+PubliclyExecutedPig@users.noreply.github.com> Date: Thu, 7 Nov 2024 18:02:19 +0000 Subject: [PATCH 01/12] Update lobster.yml Signed-off-by: PubliclyExecutedPig <152017811+PubliclyExecutedPig@users.noreply.github.com> --- Resources/Prototypes/Maps/lobster.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/Maps/lobster.yml b/Resources/Prototypes/Maps/lobster.yml index 17cda32f30b..cfb1f62e3fe 100644 --- a/Resources/Prototypes/Maps/lobster.yml +++ b/Resources/Prototypes/Maps/lobster.yml @@ -19,7 +19,7 @@ #civilian Passenger: [ -1, -1 ] #command - StationAi: [1, 1 ] + StationAi: [ 1, 1 ] Captain: [ 1, 1 ] #engineering AtmosphericTechnician: [ 2, 3 ] From 12640e68e8f7a573edf65887d98228f7e5a06e9c Mon Sep 17 00:00:00 2001 From: PubliclyExecutedPig <152017811+PubliclyExecutedPig@users.noreply.github.com> Date: Thu, 7 Nov 2024 18:42:46 +0000 Subject: [PATCH 02/12] Update lobster.yml maybe will fix it idk Signed-off-by: PubliclyExecutedPig <152017811+PubliclyExecutedPig@users.noreply.github.com> --- Resources/Prototypes/Maps/lobster.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/Resources/Prototypes/Maps/lobster.yml b/Resources/Prototypes/Maps/lobster.yml index cfb1f62e3fe..28b86f0c36e 100644 --- a/Resources/Prototypes/Maps/lobster.yml +++ b/Resources/Prototypes/Maps/lobster.yml @@ -19,7 +19,6 @@ #civilian Passenger: [ -1, -1 ] #command - StationAi: [ 1, 1 ] Captain: [ 1, 1 ] #engineering AtmosphericTechnician: [ 2, 3 ] From c4e3a9264fca99b845f71f8c9d126c04901ad7c4 Mon Sep 17 00:00:00 2001 From: PubliclyExecutedPig <152017811+PubliclyExecutedPig@users.noreply.github.com> Date: Thu, 7 Nov 2024 19:03:11 +0000 Subject: [PATCH 03/12] Update lobster.yml reverting previous fix that didnt fix Signed-off-by: PubliclyExecutedPig <152017811+PubliclyExecutedPig@users.noreply.github.com> --- Resources/Prototypes/Maps/lobster.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/Resources/Prototypes/Maps/lobster.yml b/Resources/Prototypes/Maps/lobster.yml index 28b86f0c36e..6a962c63d9e 100644 --- a/Resources/Prototypes/Maps/lobster.yml +++ b/Resources/Prototypes/Maps/lobster.yml @@ -20,6 +20,7 @@ Passenger: [ -1, -1 ] #command Captain: [ 1, 1 ] + StationAi: [ 1, 1 ] #engineering AtmosphericTechnician: [ 2, 3 ] ChiefEngineer: [ 1, 1 ] From 81bfa51d3abae628c8d037714ca418f3ff9e0105 Mon Sep 17 00:00:00 2001 From: Milon Date: Thu, 7 Nov 2024 21:07:57 +0100 Subject: [PATCH 04/12] remove syndicats from the uplink (#2126) die --- .../Prototypes/Catalog/uplink_catalog.yml | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Resources/Prototypes/Catalog/uplink_catalog.yml b/Resources/Prototypes/Catalog/uplink_catalog.yml index 93c6998469d..587bbb65445 100644 --- a/Resources/Prototypes/Catalog/uplink_catalog.yml +++ b/Resources/Prototypes/Catalog/uplink_catalog.yml @@ -1231,19 +1231,19 @@ tags: - NukeOpsUplink -- type: listing - id: UplinkMobCatMicrobomb - name: uplink-mobcat-microbomb-name - description: uplink-mobcat-microbomb-desc - icon: { sprite: Objects/Devices/communication.rsi, state: old-radio-syndicat } - productEntity: ReinforcementRadioSyndicateSyndiCat - discountCategory: usualDiscounts - discountDownTo: - Telecrystal: 3 - cost: - Telecrystal: 6 - categories: - - UplinkAllies +#- type: listing # DeltaV - Remove syndicats +# id: UplinkMobCatMicrobomb +# name: uplink-mobcat-microbomb-name +# description: uplink-mobcat-microbomb-desc +# icon: { sprite: Objects/Devices/communication.rsi, state: old-radio-syndicat } +# productEntity: ReinforcementRadioSyndicateSyndiCat +# discountCategory: usualDiscounts +# discountDownTo: +# Telecrystal: 3 +# cost: +# Telecrystal: 6 +# categories: +# - UplinkAllies - type: listing id: UplinkSyndicatePersonalAI From 6508f8b6de033590b380efa2ca87196a9b1f0678 Mon Sep 17 00:00:00 2001 From: Delta-V bot <135767721+DeltaV-Bot@users.noreply.github.com> Date: Thu, 7 Nov 2024 21:08:16 +0100 Subject: [PATCH 05/12] Automatic changelog update --- Resources/Changelog/DeltaVChangelog.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/Resources/Changelog/DeltaVChangelog.yml b/Resources/Changelog/DeltaVChangelog.yml index b69b03f06e5..66fbd1d7196 100644 --- a/Resources/Changelog/DeltaVChangelog.yml +++ b/Resources/Changelog/DeltaVChangelog.yml @@ -1,10 +1,4 @@ Entries: -- author: FluffiestFloof - changes: - - message: Vulpkanin now have a decent amount of special helmet and mask sprites. - type: Tweak - id: 155 - time: '2023-12-06T08:16:15.0000000+00:00' - author: luringens changes: - message: Prisoners are back! @@ -3713,3 +3707,10 @@ id: 654 time: '2024-11-07T09:35:18.0000000+00:00' url: https://github.com/DeltaV-Station/Delta-v/pull/2111 +- author: MilonPL + changes: + - message: Removed syndicats from the uplink. + type: Remove + id: 655 + time: '2024-11-07T20:07:57.0000000+00:00' + url: https://github.com/DeltaV-Station/Delta-v/pull/2126 From 2620eb48a887d13481357c9ade6f5711920e7f14 Mon Sep 17 00:00:00 2001 From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Thu, 7 Nov 2024 20:09:25 +0000 Subject: [PATCH 06/12] upstream merge 2/11 (#2090) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix multiplying colors of differing nullabilities (#32991) * revert the temporary hack * Make atmos alert computer colors private variables (#32992) * Add flash reaction effect (#32377) add flash reaction effect * Automatic changelog update * Fix loneop spawnrate by reverting it to not use the shuttle event system. (#32942) Fix loneop spawnrate by reverting it to not use the custom shuttle event system. * Automatic changelog update * add atmosia to devmap (#32460) change * bowls now make drinking sounds (#32819) * Automatic changelog update * Add health analyzer unrevivability warning (#32636) * Add health analyzer unrevivability warning * Remove errornous comment * Automatic changelog update * Removed the name "Hujsak" (#32998) removed hujsak * fix pie throwing sound not playing (#33017) * Automatic changelog update * Fix TestSuicideByHeldItem and TestSuicideByHeldItemSpreadDamage (#33030) * make ai speak robotically (#33025) * Automatic changelog update * Extends the minimum round time for meteor swarm events (#32876) * adjusted minimum timers in meteorswarms.yml * Updated timer minimum from 20 to 15 minutes * Reduced minimum timer to 10 minutes as a result of other meteor changes --------- Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com> * Automatic changelog update * add StartDelay bool to actions (#33026) * add StartDelay bool to actions * forgot summary * Updated an incorrect sprite in the smite menu (#33043) changed the synth sprite used in the icon for the instrumentify smite out for the more accurate supersynth sprite * fix lava expeds (#33042) Co-authored-by: deltanedas <@deltanedas:kde.org> * Automatic changelog update * Fix separated game screen bumping (#33046) I don't really understand why RecordedSplitContainer exists but removing it looks identical and fixes the panel bumping occasionally. * Automatic changelog update * Fix: Make Plushie Damage Unexaminable (#33061) Set hidden to true * fix chameleon projector bot whitelist (#33055) fix * Various Vaugely Connected Sprite Updates™: Encryption Keys, Station Map, Brig Timer (#32786) * various resprites (encryption keys + signal screens + station map) * brig timer update * fixes n shit * Give proto-kinetic crushers, glaives, and daggers better inhands. Update the crusher and glaive icons. (#32212) * inhands * better inhands * indent * Automatic changelog update * Make the security belt contain more useful items by default (#32291) * replace tear gas and flashbang with holobarrier and sec radio * holobarrier-belt-fix * revert changes of 32291 * Automatic changelog update * Add 3 bottle boxes to nanomed plus (#33018) three bottle boxes in nanomed plus * Automatic changelog update * Nukie med bundle now costs 24 tc and contains a unique defibrillator (#32720) * a-few-injectors * comment * defib-ops-when * Automatic changelog update * 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> * Automatic changelog update * Add a spare bible to PietyVend (#32363) Update chapel.yml * Automatic changelog update * [#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 * Automatic changelog update * 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. * Automatic changelog update * Fixed spelling mistake in water blaster description. (#33087) Fixed minor spelling mistake * [#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> * Automatic changelog update * remove now duplicated nyano PlushieCarp tag * Fixes tailthump breaking positional audio by making it mono (#33092) * Automatic changelog update * 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: * Automatic changelog update * Lower in-round votekick requirements (#32953) Initial commit * Allow votekicks to be initiated in the lobby (#32528) Initial commit * Automatic changelog update * Fixes bolt lights of previously unpowered bolted doors (#33063) fix * Automatic changelog update * 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> * Automatic changelog update * Borgs can no longer see mindshield + AI can no longer toggle off seeing job icons (#33069) * :( * Removed the sprite + updated RSI * Automatic changelog update * Add CanLoad for biomes (#33050) CPUJob to come later. * 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. * Automatic changelog update * 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> * Give Nukies a Hand Labeler (#33053) * Add hand-labeler to nukie planet * Rearrange nukie chem table * 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> * Add cvars to votekick to customize requirements for the initiator. (#32490) * Automatic changelog update * 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 * Automatic changelog update * 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> * Automatic changelog update * Hasten handcraft gauze recipe & decrease techfab gauze cost (#32744) * med lathe gauze price reduction * gauze craft doafter time * 3 second doafter craft * Automatic changelog update * Service workers antagonist fix. (#31359) * add * Revert "add" This reverts commit 25da34b0fead5812fe5800c9bf5dd7b10ef48d7d. * antagonism allowed:tm: * Automatic changelog update * 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! * Automatic changelog update * 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 * Automatic changelog update * 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> * Automatic changelog update * Intercoms and Radios both pick up proximate speech (#32737) * Deduping of recent messages should consider the channel it's being sent to * rerun actions * Automatic changelog update * Adds headphones to loadouts (#33067) added headphones to trinkets * Automatic changelog update * Cardboard Box Capacity 4 -> 5 (#32743) * capacity upgrade * comment update * remove our duplicate pill whitelist * fix * remove broken crew monitor from dev map, how did it even get there --------- Signed-off-by: Brandon Li Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com> Co-authored-by: deltanedas <@deltanedas:kde.org> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: PJBot Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com> Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com> Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com> Co-authored-by: Saphire Lattice Co-authored-by: FluffMe <1780586+FluffMe@users.noreply.github.com> Co-authored-by: Theodore Lukin <66275205+pheenty@users.noreply.github.com> Co-authored-by: August Sun <45527070+august-sun@users.noreply.github.com> Co-authored-by: august-sun <45527070+august.sun@users.noreply.github.com> Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: Preston Smith <92108534+thetolbean@users.noreply.github.com> Co-authored-by: Milon Co-authored-by: Flareguy <78941145+Flareguy@users.noreply.github.com> Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com> Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com> Co-authored-by: Jarmer123 <148848017+Jarmer123@users.noreply.github.com> Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Co-authored-by: Justin Co-authored-by: SpaceLizard Co-authored-by: Psychpsyo Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com> Co-authored-by: deathride58 Co-authored-by: PopGamer46 Co-authored-by: RumiTiger <154005209+RumiTiger@users.noreply.github.com> Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Co-authored-by: Minemoder5000 Co-authored-by: UBlueberry <161545003+UBlueberry@users.noreply.github.com> Co-authored-by: Brandon Li <48413902+aspiringLich@users.noreply.github.com> Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com> Co-authored-by: Vasilis Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com> Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com> Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com> Co-authored-by: AftrLite <61218133+AftrLite@users.noreply.github.com> Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com> Co-authored-by: Centronias Co-authored-by: joshepvodka <86210200+joshepvodka@users.noreply.github.com> Co-authored-by: Scribbles0 <91828755+Scribbles0@users.noreply.github.com> --- .../AtmosAlertsComputerWindow.xaml.cs | 43 +- .../UI/HealthAnalyzerWindow.xaml | 3 +- .../UI/HealthAnalyzerWindow.xaml.cs | 25 +- Content.Client/Mapping/MappingScreen.xaml | 4 +- Content.Client/Mapping/MappingScreen.xaml.cs | 1 - .../Controls/RecordedSplitContainer.cs | 29 - .../Screens/SeparatedChatGameScreen.xaml | 6 +- .../Screens/SeparatedChatGameScreen.xaml.cs | 1 - Content.Client/Voting/UI/VoteCallMenu.xaml.cs | 14 +- Content.Client/Voting/VotingSystem.cs | 5 - .../Tests/Commands/SuicideCommandTests.cs | 8 +- .../Systems/AdminVerbSystem.Smites.cs | 2 +- .../Administration/Systems/AdminVerbSystem.cs | 29 +- .../Administration/Systems/BwoinkSystem.cs | 205 +- .../Ame/Components/AmeControllerComponent.cs | 2 +- .../Damage/Systems/ExaminableDamageSystem.cs | 2 +- Content.Server/Doors/Systems/DoorSystem.cs | 2 +- .../Effects/FlashReactionEffect.cs | 82 + Content.Server/Ghost/GhostSystem.cs | 9 +- Content.Server/Medical/CryoPodSystem.cs | 1 + .../Medical/HealthAnalyzerSystem.cs | 8 +- .../Nutrition/EntitySystems/CreamPieSystem.cs | 4 +- Content.Server/Parallax/BiomeSystem.cs | 14 +- .../Radio/EntitySystems/RadioDeviceSystem.cs | 11 +- .../Managers/VoteManager.DefaultVotes.cs | 15 +- Content.Server/Voting/VotingSystem.cs | 56 +- Content.Shared/Actions/BaseActionComponent.cs | 5 + Content.Shared/Actions/SharedActionsSystem.cs | 3 + Content.Shared/Bed/Sleep/SleepingSystem.cs | 3 - Content.Shared/CCVar/CCVars.cs | 34 +- .../CartridgeLoaderComponent.cs | 2 +- .../Components/ReactiveContainerComponent.cs | 21 + .../EntitySystems/ReactiveContainerSystem.cs | 53 + .../Containers/ItemSlot/ItemSlotsSystem.cs | 153 +- .../Inventory/InventorySystem.Equip.cs | 45 +- .../HealthAnalyzerScannedUserMessage.cs | 4 +- .../Audio/Machines/ame_fuelinjection.ogg | Bin 0 -> 29727 bytes Resources/Audio/Machines/attributions.yml | 5 + .../Voice/Reptilian/reptilian_tailthump.ogg | Bin 31956 -> 9215 bytes Resources/Changelog/Admin.yml | 23 + Resources/Changelog/Changelog.yml | 528 +- .../en-US/guidebook/chemistry/effects.ftl | 6 + .../components/inventory-component.ftl | 6 + .../janitorial/janitorial-slot-component.ftl | 3 +- .../components/health-analyzer-component.ftl | 3 +- .../Locale/en-US/store/uplink-catalog.ftl | 4 +- .../Locale/en-US/voting/ui/vote-call-menu.ftl | 4 +- .../Locale/en-US/window/window-component.ftl | 9 +- Resources/Maps/Nonstations/nukieplanet.yml | 9 +- Resources/Maps/Test/dev_map.yml | 9455 +++++++++++------ Resources/Prototypes/Actions/station_ai.yml | 19 +- Resources/Prototypes/Actions/types.yml | 2 + .../Catalog/Fills/Backpacks/duffelbag.yml | 16 +- .../Prototypes/Catalog/Fills/Items/belt.yml | 6 +- .../VendingMachines/Inventories/chapel.yml | 3 +- .../Inventories/dinnerware.yml | 1 + .../VendingMachines/Inventories/medical.yml | 1 + .../Prototypes/Catalog/uplink_catalog.yml | 4 +- Resources/Prototypes/Datasets/Names/last.yml | 1 - .../Entities/Clothing/Belt/belts.yml | 1 - .../Entities/Effects/chemistry_effects.yml | 13 + .../Random/Food_Drinks/food_baked_single.yml | 2 + .../Mobs/Cyborgs/base_borg_chassis.yml | 1 - .../Entities/Mobs/Player/admin_ghost.yml | 6 +- .../Entities/Mobs/Player/observer.yml | 1 + .../Entities/Mobs/Player/silicon.yml | 4 +- .../Objects/Consumable/Food/Baked/misc.yml | 95 +- .../Consumable/Food/Containers/bowl.yml | 4 + .../Consumable/Food/Containers/plate.yml | 24 + .../Objects/Devices/holoprojectors.yml | 1 + .../Entities/Objects/Devices/pda.yml | 77 +- .../Prototypes/Entities/Objects/Fun/toys.yml | 5 +- .../Objects/Specific/Cargo/cargo_pallet.yml | 2 - .../Objects/Specific/Medical/defib.yml | 66 + .../Objects/Specific/Medical/hypospray.yml | 97 +- .../Entities/Objects/Specific/chemistry.yml | 20 +- .../Objects/Specific/rehydrateable.yml | 5 +- .../Objects/Weapons/Guns/Basic/watergun.yml | 4 +- .../Entities/Objects/Weapons/Melee/mining.yml | 4 + .../Entities/Structures/Machines/lathe.yml | 1 + .../Structures/Piping/Atmospherics/miners.yml | 8 + .../Structures/Specific/Janitor/janicart.yml | 19 +- .../Structures/Storage/Closets/big_boxes.yml | 2 +- .../Entities/Structures/Wallmounts/timer.yml | 4 +- Resources/Prototypes/GameRules/events.yml | 3 +- .../Prototypes/GameRules/meteorswarms.yml | 4 +- .../Prototypes/GameRules/unknown_shuttles.yml | 7 +- .../Loadouts/Miscellaneous/trinkets.yml | 43 +- .../Prototypes/Loadouts/loadout_groups.yml | 1 + Resources/Prototypes/Nyanotrasen/tags.yml | 3 - .../Prototypes/Procedural/dungeon_configs.yml | 2 + .../Recipes/Cooking/meal_recipes.yml | 61 + .../Crafting/Graphs/improvised/gauze.yml | 2 +- .../Prototypes/Recipes/Lathes/botany.yml | 38 +- .../Prototypes/Recipes/Lathes/cooking.yml | 57 +- .../Prototypes/Recipes/Lathes/medical.yml | 82 +- Resources/Prototypes/Recipes/Lathes/tools.yml | 118 +- .../Recipes/Reactions/chemicals.yml | 17 +- .../Roles/Jobs/Civilian/service_worker.yml | 3 +- .../Shuttles/shuttle_incoming_event.yml | 5 - Resources/Prototypes/tags.yml | 3 + .../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 +- .../Actions/actions_ai.rsi/job_view.png | Bin 508 -> 0 bytes .../Actions/actions_ai.rsi/meta.json | 3 - .../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 .../encryption_keys.rsi/crypt_blue.png | Bin 505 -> 311 bytes .../encryption_keys.rsi/crypt_gold.png | Bin 501 -> 307 bytes .../encryption_keys.rsi/crypt_gray.png | Bin 509 -> 300 bytes .../encryption_keys.rsi/crypt_orange.png | Bin 507 -> 313 bytes .../Devices/encryption_keys.rsi/crypt_red.png | Bin 499 -> 286 bytes .../encryption_keys.rsi/crypt_rusted.png | Bin 636 -> 514 bytes .../encryption_keys.rsi/crypt_silver.png | Bin 512 -> 313 bytes .../Devices/encryption_keys.rsi/meta.json | 2 +- .../Objects/Devices/tablets.rsi/generic.png | Bin 271 -> 230 bytes .../Objects/Devices/tablets.rsi/meta.json | 27 +- .../Objects/Devices/tablets.rsi/tablet.png | Bin 348 -> 302 bytes .../Objects/Devices/tablets.rsi/tabletsol.png | Bin 414 -> 389 bytes .../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 .../Specific/Medical/defibsmall.rsi/icon.png | Bin 0 -> 300 bytes .../Medical/defibsmall.rsi/inhand-left.png | Bin 0 -> 294 bytes .../Medical/defibsmall.rsi/inhand-right.png | Bin 0 -> 300 bytes .../Specific/Medical/defibsmall.rsi/meta.json | 28 + .../Specific/Medical/defibsmall.rsi/ready.png | Bin 0 -> 178 bytes .../Medical/defibsmall.rsi/screen.png | Bin 0 -> 198 bytes .../Specific/Medical/defibsyndi.rsi/icon.png | Bin 0 -> 300 bytes .../Medical/defibsyndi.rsi/inhand-left.png | Bin 0 -> 290 bytes .../Medical/defibsyndi.rsi/inhand-right.png | Bin 0 -> 295 bytes .../Specific/Medical/defibsyndi.rsi/meta.json | 28 + .../Specific/Medical/defibsyndi.rsi/ready.png | Bin 0 -> 158 bytes .../Medical/defibsyndi.rsi/screen.png | Bin 0 -> 191 bytes .../Specific/Medical/medipen.rsi/dexpen.png | Bin 0 -> 286 bytes .../Medical/medipen.rsi/dexpen_empty.png | Bin 0 -> 311 bytes .../Specific/Medical/medipen.rsi/meta.json | 18 + .../Specific/Medical/medipen.rsi/punctpen.png | Bin 0 -> 286 bytes .../Medical/medipen.rsi/punctpen_empty.png | Bin 0 -> 311 bytes .../Specific/Medical/medipen.rsi/pyrapen.png | Bin 0 -> 286 bytes .../Medical/medipen.rsi/pyrapen_empty.png | Bin 0 -> 311 bytes .../Melee/crusher-inhands.rsi/inhand-left.png | Bin 0 -> 596 bytes .../crusher-inhands.rsi/inhand-right.png | Bin 0 -> 598 bytes .../Melee/crusher-inhands.rsi/meta.json | 27 + .../wielded-inhand-left.png | Bin 0 -> 599 bytes .../wielded-inhand-right.png | Bin 0 -> 601 bytes .../Weapons/Melee/crusher.rsi/icon.png | Bin 716 -> 431 bytes .../Weapons/Melee/crusher.rsi/inhand-left.png | Bin 655 -> 0 bytes .../Melee/crusher.rsi/inhand-right.png | Bin 637 -> 0 bytes .../Weapons/Melee/crusher.rsi/meta.json | 20 +- .../Melee/crusher.rsi/wielded-inhand-left.png | Bin 823 -> 0 bytes .../crusher.rsi/wielded-inhand-right.png | Bin 851 -> 0 bytes .../Melee/crusher_dagger.rsi/inhand-left.png | Bin 503 -> 362 bytes .../Melee/crusher_dagger.rsi/inhand-right.png | Bin 495 -> 361 bytes .../Melee/crusher_dagger.rsi/meta.json | 4 +- .../inhand-left.png | Bin 0 -> 611 bytes .../inhand-right.png | Bin 0 -> 620 bytes .../crusher_glaive-inhands.rsi/meta.json | 27 + .../wielded-inhand-left.png | Bin 0 -> 536 bytes .../wielded-inhand-right.png | Bin 0 -> 535 bytes .../Weapons/Melee/crusher_glaive.rsi/icon.png | Bin 618 -> 405 bytes .../Melee/crusher_glaive.rsi/inhand-left.png | Bin 576 -> 0 bytes .../Melee/crusher_glaive.rsi/inhand-right.png | Bin 568 -> 0 bytes .../Melee/crusher_glaive.rsi/meta.json | 20 +- .../wielded-inhand-left.png | Bin 567 -> 0 bytes .../wielded-inhand-right.png | Bin 520 -> 0 bytes .../Machines/station_map.rsi/meta.json | 2 +- .../Machines/station_map.rsi/station_map0.png | Bin 15417 -> 2926 bytes .../station_map.rsi/station_map_broken.png | Bin 16171 -> 609 bytes .../station_map.rsi/station_map_frame0.png | Bin 15800 -> 423 bytes .../station_map.rsi/station_map_frame1.png | Bin 16488 -> 642 bytes .../station_map.rsi/station_map_frame2.png | Bin 16277 -> 341 bytes .../Wallmounts/signalscreen.rsi/meta.json | 2 +- .../signalscreen.rsi/signalscreen.png | Bin 870 -> 286 bytes 186 files changed, 7865 insertions(+), 4401 deletions(-) delete mode 100644 Content.Client/UserInterface/Controls/RecordedSplitContainer.cs create mode 100644 Content.Server/EntityEffects/Effects/FlashReactionEffect.cs create mode 100644 Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs create mode 100644 Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs create mode 100644 Resources/Audio/Machines/ame_fuelinjection.ogg delete mode 100644 Resources/Textures/Interface/Actions/actions_ai.rsi/job_view.png 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 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%) create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/icon.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/meta.json create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/ready.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/screen.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/icon.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/meta.json create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/ready.png create mode 100644 Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/screen.png create mode 100644 Resources/Textures/Objects/Specific/Medical/medipen.rsi/dexpen.png create mode 100644 Resources/Textures/Objects/Specific/Medical/medipen.rsi/dexpen_empty.png create mode 100644 Resources/Textures/Objects/Specific/Medical/medipen.rsi/punctpen.png create mode 100644 Resources/Textures/Objects/Specific/Medical/medipen.rsi/punctpen_empty.png create mode 100644 Resources/Textures/Objects/Specific/Medical/medipen.rsi/pyrapen.png create mode 100644 Resources/Textures/Objects/Specific/Medical/medipen.rsi/pyrapen_empty.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/wielded-inhand-right.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher.rsi/inhand-left.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher.rsi/inhand-right.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher.rsi/wielded-inhand-left.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher.rsi/wielded-inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/meta.json create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/wielded-inhand-left.png create mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/wielded-inhand-right.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/inhand-left.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/inhand-right.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/wielded-inhand-left.png delete mode 100644 Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/wielded-inhand-right.png diff --git a/Content.Client/Atmos/Consoles/AtmosAlertsComputerWindow.xaml.cs b/Content.Client/Atmos/Consoles/AtmosAlertsComputerWindow.xaml.cs index 5416f73e709..81c9a409a3b 100644 --- a/Content.Client/Atmos/Consoles/AtmosAlertsComputerWindow.xaml.cs +++ b/Content.Client/Atmos/Consoles/AtmosAlertsComputerWindow.xaml.cs @@ -43,6 +43,18 @@ public sealed partial class AtmosAlertsComputerWindow : FancyWindow private const float SilencingDuration = 2.5f; + // Colors + private Color _wallColor = new Color(64, 64, 64); + private Color _tileColor = new Color(28, 28, 28); + private Color _monitorBlipColor = Color.Cyan; + private Color _untrackedEntColor = Color.DimGray; + private Color _regionBaseColor = new Color(154, 154, 154); + private Color _inactiveColor = StyleNano.DisabledFore; + private Color _statusTextColor = StyleNano.GoodGreenFore; + private Color _goodColor = Color.LimeGreen; + private Color _warningColor = new Color(255, 182, 72); + private Color _dangerColor = new Color(255, 67, 67); + public AtmosAlertsComputerWindow(AtmosAlertsComputerBoundUserInterface userInterface, EntityUid? owner) { RobustXamlLoader.Load(this); @@ -55,8 +67,8 @@ public AtmosAlertsComputerWindow(AtmosAlertsComputerBoundUserInterface userInter NavMap.Owner = _owner; // Set nav map colors - NavMap.WallColor = new Color(64, 64, 64); - NavMap.TileColor = Color.DimGray * NavMap.WallColor; + NavMap.WallColor = _wallColor; + NavMap.TileColor = _tileColor; // Set nav map grid uid var stationName = Loc.GetString("atmos-alerts-window-unknown-location"); @@ -214,7 +226,7 @@ public void UpdateUI(EntityCoordinates? consoleCoords, AtmosAlertsComputerEntry[ if (consoleCoords != null && consoleUid != null) { var texture = _spriteSystem.Frame0(new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_circle.png"))); - var blip = new NavMapBlip(consoleCoords.Value, texture, Color.Cyan, true, false); + var blip = new NavMapBlip(consoleCoords.Value, texture, _monitorBlipColor, true, false); NavMap.TrackedEntities[consoleUid.Value] = blip; } @@ -263,7 +275,7 @@ public void UpdateUI(EntityCoordinates? consoleCoords, AtmosAlertsComputerEntry[ VerticalAlignment = VAlignment.Center, }; - label.SetMarkup(Loc.GetString("atmos-alerts-window-no-active-alerts", ("color", StyleNano.GoodGreenFore.ToHexNoAlpha()))); + label.SetMarkup(Loc.GetString("atmos-alerts-window-no-active-alerts", ("color", _statusTextColor.ToHexNoAlpha()))); AlertsTable.AddChild(label); } @@ -292,7 +304,7 @@ public void UpdateUI(EntityCoordinates? consoleCoords, AtmosAlertsComputerEntry[ if (!TryGetSensorRegionColor(regionOwner, alarmState, out var regionColor)) continue; - regionOverlay.Color = regionColor.Value; + regionOverlay.Color = regionColor; var priority = (_trackedEntity == regionOwner) ? 999 : (int)alarmState; prioritizedRegionOverlays.Add(regionOverlay, priority); @@ -323,7 +335,7 @@ private void AddTrackedEntityToNavMap(AtmosAlertsDeviceNavMapData metaData, Atmo var coords = _entManager.GetCoordinates(metaData.NetCoordinates); if (_trackedEntity != null && _trackedEntity != metaData.NetEntity) - color *= Color.DimGray; + color *= _untrackedEntColor; var selectable = true; var blip = new NavMapBlip(coords, _spriteSystem.Frame0(texture), color, _trackedEntity == metaData.NetEntity, selectable); @@ -331,23 +343,20 @@ private void AddTrackedEntityToNavMap(AtmosAlertsDeviceNavMapData metaData, Atmo NavMap.TrackedEntities[metaData.NetEntity] = blip; } - private bool TryGetSensorRegionColor(NetEntity regionOwner, AtmosAlarmType alarmState, [NotNullWhen(true)] out Color? color) + private bool TryGetSensorRegionColor(NetEntity regionOwner, AtmosAlarmType alarmState, out Color color) { - color = null; + color = Color.White; var blip = GetBlipTexture(alarmState); if (blip == null) return false; - // DeltaV: fix client until upstream does // Color the region based on alarm state and entity tracking - var output = blip.Value.Item2 * new Color(154, 154, 154); + color = blip.Value.Item2 * _regionBaseColor; if (_trackedEntity != null && _trackedEntity != regionOwner) - output *= Color.DimGray; - - color = output; + color *= _untrackedEntColor; return true; } @@ -588,13 +597,13 @@ private AtmosAlarmType GetAlarmState(NetEntity netEntity) switch (alarmState) { case AtmosAlarmType.Invalid: - output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_circle.png")), StyleNano.DisabledFore); break; + output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_circle.png")), _inactiveColor); break; case AtmosAlarmType.Normal: - output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_circle.png")), Color.LimeGreen); break; + output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_circle.png")), _goodColor); break; case AtmosAlarmType.Warning: - output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_triangle.png")), new Color(255, 182, 72)); break; + output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_triangle.png")), _warningColor); break; case AtmosAlarmType.Danger: - output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_square.png")), new Color(255, 67, 67)); break; + output = (new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/NavMap/beveled_square.png")), _dangerColor); break; } return output; diff --git a/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml b/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml index 19d00a0bbf8..aae8785b1fe 100644 --- a/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml +++ b/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml @@ -47,8 +47,7 @@ - + diff --git a/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml.cs b/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml.cs index d61267d002c..fd3615d59f5 100644 --- a/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml.cs +++ b/Content.Client/HealthAnalyzer/UI/HealthAnalyzerWindow.xaml.cs @@ -110,18 +110,29 @@ public void Populate(HealthAnalyzerScannedUserMessage msg) // Alerts - AlertsDivider.Visible = msg.Bleeding == true; - AlertsContainer.Visible = msg.Bleeding == true; + var showAlerts = msg.Unrevivable == true || msg.Bleeding == true; - if (msg.Bleeding == true) - { + AlertsDivider.Visible = showAlerts; + AlertsContainer.Visible = showAlerts; + + if (showAlerts) AlertsContainer.DisposeAllChildren(); - AlertsContainer.AddChild(new Label + + if (msg.Unrevivable == true) + AlertsContainer.AddChild(new RichTextLabel + { + Text = Loc.GetString("health-analyzer-window-entity-unrevivable-text"), + Margin = new Thickness(0, 4), + MaxWidth = 300 + }); + + if (msg.Bleeding == true) + AlertsContainer.AddChild(new RichTextLabel { Text = Loc.GetString("health-analyzer-window-entity-bleeding-text"), - FontColorOverride = Color.Red, + Margin = new Thickness(0, 4), + MaxWidth = 300 }); - } // Damage Groups diff --git a/Content.Client/Mapping/MappingScreen.xaml b/Content.Client/Mapping/MappingScreen.xaml index 9cc3e734f0e..bad492e7e41 100644 --- a/Content.Client/Mapping/MappingScreen.xaml +++ b/Content.Client/Mapping/MappingScreen.xaml @@ -8,7 +8,7 @@ VerticalExpand="False" VerticalAlignment="Bottom" HorizontalAlignment="Center"> - @@ -82,5 +82,5 @@ - + diff --git a/Content.Client/Mapping/MappingScreen.xaml.cs b/Content.Client/Mapping/MappingScreen.xaml.cs index 46c0e51fad6..20e2528a440 100644 --- a/Content.Client/Mapping/MappingScreen.xaml.cs +++ b/Content.Client/Mapping/MappingScreen.xaml.cs @@ -197,7 +197,6 @@ private void RefreshList() public override void SetChatSize(Vector2 size) { - ScreenContainer.DesiredSplitCenter = size.X; ScreenContainer.ResizeMode = SplitContainer.SplitResizeMode.RespectChildrenMinSize; } diff --git a/Content.Client/UserInterface/Controls/RecordedSplitContainer.cs b/Content.Client/UserInterface/Controls/RecordedSplitContainer.cs deleted file mode 100644 index fd217bc7e86..00000000000 --- a/Content.Client/UserInterface/Controls/RecordedSplitContainer.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System.Numerics; -using Robust.Client.UserInterface.Controls; - -namespace Content.Client.UserInterface.Controls; - -/// -/// A split container that performs an action when the split resizing is finished. -/// -public sealed class RecordedSplitContainer : SplitContainer -{ - public double? DesiredSplitCenter; - - protected override Vector2 ArrangeOverride(Vector2 finalSize) - { - if (ResizeMode == SplitResizeMode.RespectChildrenMinSize - && DesiredSplitCenter != null - && !finalSize.Equals(Vector2.Zero)) - { - SplitFraction = (float) DesiredSplitCenter.Value; - - if (!Size.Equals(Vector2.Zero)) - { - DesiredSplitCenter = null; - } - } - - return base.ArrangeOverride(finalSize); - } -} diff --git a/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml b/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml index 7f1d1bcd5b1..653302fae4c 100644 --- a/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml +++ b/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml @@ -14,7 +14,7 @@ VerticalExpand="False" VerticalAlignment="Bottom" HorizontalAlignment="Center"> - + @@ -26,7 +26,7 @@ - + @@ -36,5 +36,5 @@ - + diff --git a/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml.cs b/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml.cs index e04d377d321..2892ca44254 100644 --- a/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml.cs +++ b/Content.Client/UserInterface/Screens/SeparatedChatGameScreen.xaml.cs @@ -40,7 +40,6 @@ private void ResizeActionContainer() public override void SetChatSize(Vector2 size) { - ScreenContainer.DesiredSplitCenter = size.X; ScreenContainer.ResizeMode = SplitContainer.SplitResizeMode.RespectChildrenMinSize; } } diff --git a/Content.Client/Voting/UI/VoteCallMenu.xaml.cs b/Content.Client/Voting/UI/VoteCallMenu.xaml.cs index c5746c24d79..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; @@ -62,7 +65,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()) { @@ -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.IntegrationTests/Tests/Commands/SuicideCommandTests.cs b/Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs index 696de8616e7..bc27d1e5950 100644 --- a/Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs +++ b/Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs @@ -168,7 +168,7 @@ await server.WaitAssertion(() => await pair.CleanReturnAsync(); } - /// + /// /// Run the suicide command in the console /// Should only ghost the player but not kill them /// @@ -241,6 +241,7 @@ public async Task TestSuicideByHeldItem() var mindSystem = entManager.System(); var mobStateSystem = entManager.System(); var transformSystem = entManager.System(); + var damageableSystem = entManager.System(); // We need to know the player and whether they can be hurt, killed, and whether they have a mind var player = playerMan.Sessions.First().AttachedEntity!.Value; @@ -276,6 +277,8 @@ await server.WaitPost(() => // and that all the damage is concentrated in the Slash category await server.WaitAssertion(() => { + // Heal all damage first (possible low pressure damage taken) + damageableSystem.SetAllDamage(player, damageableComp, 0); consoleHost.GetSessionShell(playerMan.Sessions.First()).ExecuteCommand("suicide"); var lethalDamageThreshold = mobThresholdsComp.Thresholds.Keys.Last(); @@ -313,6 +316,7 @@ public async Task TestSuicideByHeldItemSpreadDamage() var mindSystem = entManager.System(); var mobStateSystem = entManager.System(); var transformSystem = entManager.System(); + var damageableSystem = entManager.System(); // We need to know the player and whether they can be hurt, killed, and whether they have a mind var player = playerMan.Sessions.First().AttachedEntity!.Value; @@ -348,6 +352,8 @@ await server.WaitPost(() => // and that slash damage is split in half await server.WaitAssertion(() => { + // Heal all damage first (possible low pressure damage taken) + damageableSystem.SetAllDamage(player, damageableComp, 0); consoleHost.GetSessionShell(playerMan.Sessions.First()).ExecuteCommand("suicide"); var lethalDamageThreshold = mobThresholdsComp.Thresholds.Keys.Last(); diff --git a/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs b/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs index 78362390811..d57898d9d98 100644 --- a/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs +++ b/Content.Server/Administration/Systems/AdminVerbSystem.Smites.cs @@ -654,7 +654,7 @@ private void AddSmiteVerbs(GetVerbsEvent args) { Text = "admin-smite-become-mouse-name", Category = VerbCategory.Smite, - Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/Instruments/h_synthesizer.rsi"), "icon"), + Icon = new SpriteSpecifier.Rsi(new ("/Textures/Objects/Fun/Instruments/h_synthesizer.rsi"), "supersynth"), Act = () => { _polymorphSystem.PolymorphEntity(args.Target, "AdminInstrumentSmite"); 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"), }); 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.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/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/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); } } diff --git a/Content.Server/EntityEffects/Effects/FlashReactionEffect.cs b/Content.Server/EntityEffects/Effects/FlashReactionEffect.cs new file mode 100644 index 00000000000..fbf99e902d3 --- /dev/null +++ b/Content.Server/EntityEffects/Effects/FlashReactionEffect.cs @@ -0,0 +1,82 @@ +using Content.Shared.EntityEffects; +using Content.Server.Flash; +using Robust.Server.GameObjects; +using Robust.Shared.Audio; +using Robust.Shared.Prototypes; + +namespace Content.Server.EntityEffects.Effects; + +[DataDefinition] +public sealed partial class FlashReactionEffect : EntityEffect +{ + /// + /// Flash range per unit of reagent. + /// + [DataField] + public float RangePerUnit = 0.2f; + + /// + /// Maximum flash range. + /// + [DataField] + public float MaxRange = 10f; + + /// + /// How much to entities are slowed down. + /// + [DataField] + public float SlowTo = 0.5f; + + /// + /// The time entities will be flashed in seconds. + /// The default is chosen to be better than the hand flash so it is worth using it for grenades etc. + /// + [DataField] + public float Duration = 4f; + + /// + /// The prototype ID used for the visual effect. + /// + [DataField] + public EntProtoId? FlashEffectPrototype = "ReactionFlash"; + + /// + /// The sound the flash creates. + /// + [DataField] + public SoundSpecifier? Sound = new SoundPathSpecifier("/Audio/Weapons/flash.ogg"); + + protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys) + => Loc.GetString("reagent-effect-guidebook-flash-reaction-effect", ("chance", Probability)); + + public override void Effect(EntityEffectBaseArgs args) + { + var transform = args.EntityManager.GetComponent(args.TargetEntity); + var transformSystem = args.EntityManager.System(); + + var range = 1f; + + if (args is EntityEffectReagentArgs reagentArgs) + range = MathF.Min((float)(reagentArgs.Quantity * RangePerUnit), MaxRange); + + args.EntityManager.System().FlashArea( + args.TargetEntity, + null, + range, + Duration * 1000, + slowTo: SlowTo, + sound: Sound); + + if (FlashEffectPrototype == null) + return; + + var uid = args.EntityManager.SpawnEntity(FlashEffectPrototype, transformSystem.GetMapCoordinates(transform)); + transformSystem.AttachToGridOrMap(uid); + + if (!args.EntityManager.TryGetComponent(uid, out var pointLightComp)) + return; + var pointLightSystem = args.EntityManager.System(); + // PointLights with a radius lower than 1.1 are too small to be visible, so this is hardcoded + pointLightSystem.SetRadius(uid, MathF.Max(1.1f, range), pointLightComp); + } +} diff --git a/Content.Server/Ghost/GhostSystem.cs b/Content.Server/Ghost/GhostSystem.cs index 85fec0d7d1f..2f4269a05d0 100644 --- a/Content.Server/Ghost/GhostSystem.cs +++ b/Content.Server/Ghost/GhostSystem.cs @@ -213,14 +213,7 @@ private void SetCanSeeGhosts(EntityUid uid, bool canSee, EyeComponent? eyeCompon private void OnMapInit(EntityUid uid, GhostComponent component, MapInitEvent args) { - if (_actions.AddAction(uid, ref component.BooActionEntity, out var act, component.BooAction) - && act.UseDelay != null) - { - var start = _gameTiming.CurTime; - var end = start + act.UseDelay.Value; - _actions.SetCooldown(component.BooActionEntity.Value, start, end); - } - + _actions.AddAction(uid, ref component.BooActionEntity, component.BooAction); _actions.AddAction(uid, ref component.ToggleGhostHearingActionEntity, component.ToggleGhostHearingAction); _actions.AddAction(uid, ref component.ToggleLightingActionEntity, component.ToggleLightingAction); _actions.AddAction(uid, ref component.ToggleFoVActionEntity, component.ToggleFoVAction); diff --git a/Content.Server/Medical/CryoPodSystem.cs b/Content.Server/Medical/CryoPodSystem.cs index fc9ab081d26..15fe2a69cf9 100644 --- a/Content.Server/Medical/CryoPodSystem.cs +++ b/Content.Server/Medical/CryoPodSystem.cs @@ -201,6 +201,7 @@ private void OnActivateUI(Entity entity, ref AfterActivatableU ? bloodSolution.FillFraction : 0, null, + null, null )); } diff --git a/Content.Server/Medical/HealthAnalyzerSystem.cs b/Content.Server/Medical/HealthAnalyzerSystem.cs index 60a492a755f..90646725bb7 100644 --- a/Content.Server/Medical/HealthAnalyzerSystem.cs +++ b/Content.Server/Medical/HealthAnalyzerSystem.cs @@ -2,6 +2,7 @@ using Content.Server.Medical.Components; using Content.Server.PowerCell; using Content.Server.Temperature.Components; +using Content.Server.Traits.Assorted; using Content.Shared.Chemistry.EntitySystems; using Content.Shared.Damage; using Content.Shared.DoAfter; @@ -196,6 +197,7 @@ public void UpdateScannedUser(EntityUid healthAnalyzer, EntityUid target, bool s var bloodAmount = float.NaN; var bleeding = false; + var unrevivable = false; if (TryComp(target, out var bloodstream) && _solutionContainerSystem.ResolveSolution(target, bloodstream.BloodSolutionName, @@ -205,12 +207,16 @@ public void UpdateScannedUser(EntityUid healthAnalyzer, EntityUid target, bool s bleeding = bloodstream.BleedAmount > 0; } + if (HasComp(target)) + unrevivable = true; + _uiSystem.ServerSendUiMessage(healthAnalyzer, HealthAnalyzerUiKey.Key, new HealthAnalyzerScannedUserMessage( GetNetEntity(target), bodyTemperature, bloodAmount, scanMode, - bleeding + bleeding, + unrevivable )); } } diff --git a/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs b/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs index a8d75ac5f80..0a0839f35ff 100644 --- a/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs +++ b/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs @@ -40,7 +40,9 @@ public override void Initialize() protected override void SplattedCreamPie(EntityUid uid, CreamPieComponent creamPie) { - _audio.PlayPvs(_audio.GetSound(creamPie.Sound), uid, AudioParams.Default.WithVariation(0.125f)); + // The entity is deleted, so play the sound at its position rather than parenting + var coordinates = Transform(uid).Coordinates; + _audio.PlayPvs(_audio.GetSound(creamPie.Sound), coordinates, AudioParams.Default.WithVariation(0.125f)); if (EntityManager.TryGetComponent(uid, out FoodComponent? foodComp)) { 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; } 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); } } 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..5df1ce7c1f0 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; @@ -12,6 +13,7 @@ using Robust.Shared.Player; using Robust.Shared.Timing; using System.Threading.Tasks; +using Content.Shared.Players.PlayTimeTracking; namespace Content.Server.Voting; @@ -24,6 +26,8 @@ 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!; + [Dependency] private readonly ISharedPlaytimeManager _playtimeManager = default!; public override void Initialize() { @@ -34,8 +38,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 +49,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,22 +95,29 @@ 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 - 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/Actions/BaseActionComponent.cs b/Content.Shared/Actions/BaseActionComponent.cs index 01452bdc72e..c3aa6cc97ee 100644 --- a/Content.Shared/Actions/BaseActionComponent.cs +++ b/Content.Shared/Actions/BaseActionComponent.cs @@ -76,6 +76,11 @@ public abstract partial class BaseActionComponent : Component // TODO serialization public (TimeSpan Start, TimeSpan End)? Cooldown; + /// + /// If true, the action will have an initial cooldown applied upon addition. + /// + [DataField] public bool StartDelay = false; + /// /// Time interval between action uses. /// diff --git a/Content.Shared/Actions/SharedActionsSystem.cs b/Content.Shared/Actions/SharedActionsSystem.cs index 76b8a1b081b..fc6f0baf772 100644 --- a/Content.Shared/Actions/SharedActionsSystem.cs +++ b/Content.Shared/Actions/SharedActionsSystem.cs @@ -813,6 +813,9 @@ public bool AddActionDirect(EntityUid performer, if (action.AttachedEntity != null) RemoveAction(action.AttachedEntity.Value, actionId, action: action); + if (action.StartDelay && action.UseDelay != null) + SetCooldown(actionId, action.UseDelay.Value); + DebugTools.AssertOwner(performer, comp); comp ??= EnsureComp(performer); action.AttachedEntity = performer; diff --git a/Content.Shared/Bed/Sleep/SleepingSystem.cs b/Content.Shared/Bed/Sleep/SleepingSystem.cs index fa3bf704219..620ff96a757 100644 --- a/Content.Shared/Bed/Sleep/SleepingSystem.cs +++ b/Content.Shared/Bed/Sleep/SleepingSystem.cs @@ -130,9 +130,6 @@ private void OnMapInit(Entity ent, ref MapInitEvent args) RaiseLocalEvent(ent, ref ev); _blindableSystem.UpdateIsBlind(ent.Owner); _actionsSystem.AddAction(ent, ref ent.Comp.WakeAction, WakeActionId, ent); - - // TODO remove hardcoded time. - _actionsSystem.SetCooldown(ent.Comp.WakeAction, _gameTiming.CurTime, _gameTiming.CurTime + TimeSpan.FromSeconds(2f)); } private void OnSpeakAttempt(Entity ent, ref SpeakAttemptEvent args) diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index a8965aa93c4..c63fac2c474 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. /// @@ -1469,7 +1481,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. @@ -1477,6 +1489,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. /// @@ -1493,7 +1517,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. @@ -1537,6 +1561,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 */ 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/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/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs b/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs index f41fa2b22d2..fdd77e8e720 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; @@ -406,6 +467,7 @@ private static int SortEmpty(ItemSlot a, ItemSlot b) return 1; } + #endregion #region Eject @@ -425,7 +487,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); @@ -450,7 +512,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); } @@ -459,7 +523,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; @@ -481,8 +549,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; @@ -513,12 +585,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; } @@ -612,7 +688,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; @@ -671,7 +749,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. @@ -690,9 +768,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)) @@ -703,6 +783,7 @@ private void HandleButtonPressed(EntityUid uid, ItemSlotsComponent component, It else if (args.TryInsert && !slot.HasItem) TryInsertFromHand(uid, slot, args.Actor); } + #endregion /// 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/Content.Shared/MedicalScanner/HealthAnalyzerScannedUserMessage.cs b/Content.Shared/MedicalScanner/HealthAnalyzerScannedUserMessage.cs index 78f26ed5c02..08af1a36a7b 100644 --- a/Content.Shared/MedicalScanner/HealthAnalyzerScannedUserMessage.cs +++ b/Content.Shared/MedicalScanner/HealthAnalyzerScannedUserMessage.cs @@ -13,14 +13,16 @@ public sealed class HealthAnalyzerScannedUserMessage : BoundUserInterfaceMessage public float BloodLevel; public bool? ScanMode; public bool? Bleeding; + public bool? Unrevivable; - public HealthAnalyzerScannedUserMessage(NetEntity? targetEntity, float temperature, float bloodLevel, bool? scanMode, bool? bleeding) + public HealthAnalyzerScannedUserMessage(NetEntity? targetEntity, float temperature, float bloodLevel, bool? scanMode, bool? bleeding, bool? unrevivable) { TargetEntity = targetEntity; Temperature = temperature; BloodLevel = bloodLevel; ScanMode = scanMode; Bleeding = bleeding; + Unrevivable = unrevivable; } } 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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 Hm4W{O+Q|*_ literal 31956 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 + [1] Causes + *[other] cause + } a blinding flash + reagent-effect-guidebook-foam-area-reaction-effect = { $chance -> [1] Creates 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! +} 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/Locale/en-US/medical/components/health-analyzer-component.ftl b/Resources/Locale/en-US/medical/components/health-analyzer-component.ftl index fe1f92e9140..eb79358ecc2 100644 --- a/Resources/Locale/en-US/medical/components/health-analyzer-component.ftl +++ b/Resources/Locale/en-US/medical/components/health-analyzer-component.ftl @@ -15,7 +15,8 @@ health-analyzer-window-entity-damage-total-text = Total Damage: health-analyzer-window-damage-group-text = {$damageGroup}: {$amount} health-analyzer-window-damage-type-text = {$damageType}: {$amount} -health-analyzer-window-entity-bleeding-text = Patient is bleeding! +health-analyzer-window-entity-unrevivable-text = [color=red]Unique body composition detected! Patient can not be resuscitated by normal means![/color] +health-analyzer-window-entity-bleeding-text = [color=red]Patient is bleeding![/color] health-analyzer-window-scan-mode-text = Scan Mode: health-analyzer-window-scan-mode-active = Active diff --git a/Resources/Locale/en-US/store/uplink-catalog.ftl b/Resources/Locale/en-US/store/uplink-catalog.ftl index 3677efa38f1..9e83cbe64eb 100644 --- a/Resources/Locale/en-US/store/uplink-catalog.ftl +++ b/Resources/Locale/en-US/store/uplink-catalog.ftl @@ -218,8 +218,8 @@ uplink-chemistry-kit-desc = A starter kit for the aspiring chemist, includes tox uplink-knives-kit-name = Throwing Knives Kit uplink-knives-kit-desc = A set of 4 syndicate branded throwing knives, perfect for embedding into the body of your victims. -uplink-meds-bundle-name = Medical Bundle -uplink-meds-bundle-desc = All you need to get your comrades back in the fight: mainly a combat medkit, a defibrillator and three combat medipens. +uplink-meds-bundle-name = Interdyne Medical Bundle +uplink-meds-bundle-desc = An assortment of autoinjectors and premium medical equipment to cover for every possible situation. Contains an elite compact defibrillator that can be used as a weapon. uplink-ammo-bundle-name = Ammo Bundle uplink-ammo-bundle-desc = Reloading! Contains 4 magazines for the C-20r, 4 drums for the Bulldog, and 2 ammo boxes for the L6 SAW. 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..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,8 +25,8 @@ 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. + 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. ui-vote-abuse-warning = 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* + 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 diff --git a/Resources/Maps/Test/dev_map.yml b/Resources/Maps/Test/dev_map.yml index 9fab52cc293..e535f9e0114 100644 --- a/Resources/Maps/Test/dev_map.yml +++ b/Resources/Maps/Test/dev_map.yml @@ -36,11 +36,11 @@ entities: version: 6 0,-1: ind: 0,-1 - tiles: eQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAA + tiles: eQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAA version: 6 1,-1: ind: 1,-1 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAA + tiles: eQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAbAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAA version: 6 -2,0: ind: -2,0 @@ -68,12 +68,16 @@ entities: version: 6 0,-2: ind: 0,-2 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAA + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAA version: 6 -1,-2: ind: -1,-2 tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAA version: 6 + 1,-2: + ind: 1,-2 + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + version: 6 - type: Broadphase - type: Physics bodyStatus: InAir @@ -100,247 +104,301 @@ entities: data: tiles: -4,0: + 0: 65532 + -4,-1: 0: 65535 -4,1: - 0: 65535 + 0: 15 + 1: 65280 + -5,1: + 1: 52292 + -4,2: + 1: 8959 + -5,2: + 1: 204 + -4,3: + 1: 8738 + -4,4: + 1: 230 -3,0: - 0: 65535 + 0: 65524 -3,1: - 0: 65535 + 0: 3823 + -3,2: + 1: 35071 + -3,-1: + 0: 56797 -2,0: - 0: 65535 + 0: 65534 -2,1: - 0: 65535 + 0: 61167 + -3,3: + 1: 8 + -2,3: + 1: 15 -2,2: - 0: 65535 + 0: 3822 + -2,-1: + 0: 61166 -1,0: 0: 65535 -1,1: 0: 65535 -1,2: + 0: 53247 + -1,3: + 1: 1 + -1,-1: 0: 65535 - -4,-3: - 0: 61440 - -4,-2: + 0,0: 0: 65535 - -4,-1: + 0,1: 0: 65535 - -3,-3: - 0: 61440 - -3,-2: + 0,2: 0: 65535 - -3,-1: + -4,-2: 0: 65535 + -3,-2: + 0: 56829 + -2,-2: + 0: 3838 -2,-4: - 0: 65520 + 0: 60928 -2,-3: - 0: 65535 - -2,-2: - 0: 65535 - -2,-1: - 0: 65535 + 0: 61166 -1,-4: - 0: 65535 + 0: 65350 -1,-3: 0: 65535 -1,-2: + 0: 4095 + -1,-5: + 0: 16384 + 0,-4: + 0: 65299 + 0,-3: 0: 65535 - -1,-1: + 0,-2: + 0: 53247 + 0,-1: 0: 65535 0,4: - 0: 61183 + 1: 17 + 0: 3276 + 0,3: + 1: 4368 + 0: 52428 + -1,4: + 1: 240 0,5: - 0: 61166 + 0: 52428 0,6: 0: 14 1,4: + 0: 17759 + 1,3: 0: 65535 1,5: - 0: 65535 + 0: 58990 1,6: - 0: 65535 + 0: 26350 1,7: - 0: 15 + 0: 4 2,4: - 0: 65535 + 0: 65419 2,5: - 0: 65535 + 0: 45311 2,6: - 0: 4095 + 0: 187 + 2,3: + 0: 16383 3,4: - 0: 65535 + 0: 46011 3,5: - 0: 65535 + 0: 47295 3,6: - 0: 53247 - 3,7: - 0: 12 - 0,0: - 0: 65535 - 0,1: - 0: 65535 - 0,2: - 0: 65535 - 0,3: - 0: 65535 + 0: 35007 + 3,3: + 0: 8191 + 4,4: + 0: 12595 + 4,5: + 0: 13107 + 4,6: + 0: 13107 1,0: 0: 65535 - 1,1: - 0: 65535 1,2: + 0: 65520 + 1,-1: 0: 65535 - 1,3: - 0: 65535 + 1,1: + 0: 61166 + 2,2: + 0: 7632 2,0: - 0: 4369 1: 8738 - 2,2: - 0: 65535 - 2,3: - 0: 65535 - 3,0: - 0: 65535 + 2,1: + 1: 2 3,2: - 0: 65535 - 3,3: - 0: 65535 + 0: 36828 + 3,0: + 0: 36590 3,1: - 0: 61166 - 0,-4: - 0: 65527 - 0,-3: - 0: 65535 - 0,-2: + 0: 52428 + 3,-1: + 0: 35771 + 4,0: + 0: 8191 + 4,1: 0: 65535 - 0,-1: + 4,2: 0: 65535 + 4,3: + 0: 8191 + 0,-5: + 0: 4096 1,-4: - 0: 30576 + 0: 48008 1,-3: - 0: 65399 + 0: 65467 1,-2: - 0: 63359 - 1,-1: + 0: 3003 + 1,-5: + 0: 34952 + 2,-4: + 0: 45875 + 1: 1092 + 2: 2056 + 2,-3: 0: 65535 2,-2: - 0: 4096 - 1: 8738 + 0: 61439 + 2,-5: + 0: 65535 2,-1: - 0: 4369 - 1: 8738 - 3,-1: - 0: 65262 + 0: 3822 + 3,-4: + 0: 65535 + 3,-3: + 0: 65535 3,-2: - 0: 61152 + 0: 48063 + 3,-5: + 0: 65535 + 4,-4: + 0: 65535 + 4,-3: + 0: 65535 4,-2: - 0: 65520 + 0: 65311 4,-1: + 0: 8191 + 4,-5: 0: 65535 + 5,-4: + 0: 62451 + 2: 3084 + 5,-3: + 0: 62451 + 3: 12 + 4: 3072 5,-2: - 0: 65520 + 0: 65283 + 5: 12 5,-1: - 0: 65535 + 0: 36863 + 5,-5: + 0: 62451 + 2: 3084 + 5,0: + 0: 40959 + 6,-4: + 2: 257 + 0: 4112 + 1: 17476 + 6,-3: + 3: 1 + 0: 4112 + 4: 256 + 1: 17476 6,-2: - 0: 65520 + 5: 1 + 0: 47872 + 1: 4 6,-1: + 0: 7103 + 6,-5: + 0: 4112 + 1: 17476 + 2: 257 + 6,0: 0: 65535 7,-2: - 0: 65520 + 0: 65280 7,-1: - 0: 65535 + 0: 8191 + 7,0: + 0: 13107 + 8,-2: + 0: 13056 + 8,-1: + 0: 819 -5,0: - 0: 52428 - -5,-3: - 0: 32768 - -5,-2: - 0: 51336 + 1: 17476 -5,-1: - 0: 52428 - 4,0: - 0: 65535 - 4,1: - 0: 65535 - 4,2: - 0: 65535 - 4,3: - 0: 65535 - 5,0: - 0: 65535 + 1: 17476 + -5,-2: + 1: 16384 5,1: - 0: 65535 + 0: 48051 5,2: - 0: 65535 + 0: 7103 5,3: - 0: 65535 - 6,0: - 0: 65535 + 0: 4095 6,1: - 0: 65535 + 0: 65525 6,2: - 0: 65535 + 0: 4095 6,3: - 0: 63351 - 7,0: - 0: 30583 - 7,1: - 0: 4375 - 7,2: - 0: 4369 - 7,3: - 0: 4096 - 8,-2: - 0: 30576 - 8,-1: - 0: 30583 - 4,4: - 0: 30583 - 4,5: - 0: 30583 - 4,6: - 0: 30583 - 4,7: - 0: 7 - -4,2: - 0: 26367 - -1,3: - 0: 15 - 2,1: - 0: 4369 - 1: 2 - -5,1: - 0: 52428 - -4,3: - 0: 26222 - -3,3: - 0: 15 - -2,3: - 0: 15 - -4,4: - 0: 238 + 0: 626 -3,4: - 0: 255 + 1: 240 -2,4: - 0: 255 - -1,4: - 0: 255 - -5,2: - 0: 204 - -3,2: - 0: 35071 - 0,-5: - 0: 28672 - -1,-5: + 1: 240 + 1,-7: + 1: 192 + 0: 32768 + 1,-6: + 0: 34952 + 2,-7: + 1: 240 0: 61440 - 2,-3: - 1: 12834 - 2,-4: - 1: 61166 - 3,-4: - 1: 13107 - 2,-5: - 1: 57344 - 3,-5: - 1: 12288 + 2,-6: + 0: 65535 + 3,-7: + 1: 240 + 0: 61440 + 3,-6: + 0: 65535 + 4,-7: + 1: 240 + 0: 62976 + 4,-6: + 0: 65535 + 5,-7: + 1: 240 + 0: 61440 + 5,-6: + 0: 62451 + 2: 3084 + 6,-7: + 1: 17520 + 0: 4096 + 6,-6: + 2: 257 + 0: 4112 + 1: 17476 uniqueMixes: - volume: 2500 temperature: 293.15 @@ -357,6 +415,21 @@ entities: - 0 - 0 - 0 + - volume: 2500 + immutable: True + moles: + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 - volume: 2500 temperature: 293.15 moles: @@ -372,45 +445,102 @@ entities: - 0 - 0 - 0 - chunkSize: 4 - - type: GasTileOverlay - - type: BecomesStation - id: Dev - - type: SpreaderGrid - - type: GridPathfinding - - type: NavMap - - uid: 962 - components: - - type: MetaData - - type: Transform - - type: Map - - type: PhysicsMap - - type: GridTree - - type: MovedGrids - - type: Broadphase - - type: OccluderTree - - type: LoadedMap -- proto: AirAlarm - entities: - - uid: 800 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 1.5,-4.5 - parent: 179 - - type: DeviceList - devices: - - 801 -- proto: AirCanister - entities: - - uid: 458 - components: - - type: Transform - pos: 7.5,-0.5 - parent: 179 -- proto: Airlock - entities: - - uid: 48 + - volume: 2500 + temperature: 293.15 + moles: + - 0 + - 0 + - 0 + - 6666.982 + - 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 + - volume: 2500 + temperature: 293.15 + moles: + - 6666.982 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + chunkSize: 4 + - type: GasTileOverlay + - type: BecomesStation + id: Dev + - type: SpreaderGrid + - type: GridPathfinding + - type: NavMap + - uid: 962 + components: + - type: MetaData + - type: Transform + - type: Map + mapPaused: True + - type: PhysicsMap + - type: GridTree + - type: MovedGrids + - type: Broadphase + - type: OccluderTree + - type: LoadedMap +- proto: AirAlarm + entities: + - uid: 800 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 1.5,-4.5 + parent: 179 + - type: DeviceList + devices: + - 801 + - uid: 1556 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 10.5,-12.5 + parent: 179 +- proto: AirCanister + entities: + - uid: 1281 + components: + - type: Transform + pos: 12.5,-5.5 + parent: 179 + - uid: 1284 + components: + - type: Transform + pos: 13.5,-5.5 + parent: 179 +- proto: Airlock + entities: + - uid: 48 components: - type: Transform pos: 7.5,20.5 @@ -435,6 +565,32 @@ entities: - type: Transform pos: 6.5,28.5 parent: 179 +- proto: AirlockAtmospherics + entities: + - uid: 77 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 6.5,-8.5 + parent: 179 + - uid: 678 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 6.5,-9.5 + parent: 179 + - uid: 904 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 15.5,-6.5 + parent: 179 + - uid: 995 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 16.5,-6.5 + parent: 179 - proto: AirlockCargo entities: - uid: 87 @@ -481,16 +637,6 @@ entities: - type: Transform pos: 0.5,-14.5 parent: 179 - - uid: 255 - components: - - type: Transform - pos: 7.5,-8.5 - parent: 179 - - uid: 256 - components: - - type: Transform - pos: 5.5,-8.5 - parent: 179 - uid: 318 components: - type: Transform @@ -741,6 +887,23 @@ entities: rot: 3.141592653589793 rad pos: -0.5,-13.5 parent: 179 +- proto: AmmoniaCanister + entities: + - uid: 250 + components: + - type: Transform + pos: 9.5,-1.5 + parent: 179 + - uid: 251 + components: + - type: Transform + pos: 10.5,-1.5 + parent: 179 + - uid: 1317 + components: + - type: Transform + pos: 24.5,-19.5 + parent: 179 - proto: AnomalyLocator entities: - uid: 1086 @@ -795,3114 +958,2622 @@ entities: - type: Transform pos: 0.5,-16.5 parent: 179 -- proto: Autolathe - entities: - - uid: 1 + - uid: 1184 components: - type: Transform - pos: 12.5,21.5 + pos: 22.5,-16.5 parent: 179 - - uid: 94 + - uid: 1187 components: - type: Transform - pos: -4.5,-5.5 + pos: 22.5,-14.5 parent: 179 - - uid: 446 + - uid: 1200 components: - type: Transform - pos: -6.5,5.5 + pos: 22.5,-10.5 parent: 179 - - uid: 528 + - uid: 1201 components: - type: Transform - pos: -12.5,-7.5 + pos: 22.5,-12.5 parent: 179 - - uid: 531 + - uid: 1207 components: - type: Transform - pos: -13.5,-7.5 + pos: 22.5,-18.5 parent: 179 - - uid: 532 + - uid: 1220 components: - type: Transform - pos: -14.5,-7.5 + pos: 22.5,-8.5 parent: 179 -- proto: BaseUplinkRadioDebug - entities: - - uid: 732 + - uid: 1235 components: - type: Transform - pos: 0.6038008,7.5209107 + pos: 22.5,-20.5 parent: 179 -- proto: Basketball - entities: - - uid: 951 + - uid: 1238 components: - type: Transform - pos: -9.702013,9.68404 + pos: 22.5,-22.5 parent: 179 - - uid: 952 + - uid: 1260 components: - type: Transform - pos: -10.879096,9.579802 + rot: 3.141592653589793 rad + pos: 22.5,-24.5 parent: 179 -- proto: Beaker - entities: - - uid: 174 + - uid: 1335 components: - type: Transform - pos: 25.291822,10.667244 + rot: 3.141592653589793 rad + pos: 18.5,-25.5 parent: 179 - - uid: 175 + - uid: 1336 components: - type: Transform - pos: 24.541822,10.635994 + rot: 1.5707963267948966 rad + pos: 17.5,-25.5 parent: 179 - - uid: 176 + - uid: 1489 components: - type: Transform - pos: 26.416822,10.651619 + rot: -1.5707963267948966 rad + pos: 13.5,-12.5 parent: 179 - - uid: 324 + - uid: 1493 components: - type: Transform - pos: 4.718221,9.39097 + rot: -1.5707963267948966 rad + pos: 15.5,-14.5 parent: 179 - - uid: 735 + - uid: 1500 components: - type: Transform - pos: 4.739054,9.807927 + rot: -1.5707963267948966 rad + pos: 13.5,-16.5 parent: 179 - - uid: 920 + - uid: 1507 components: - type: Transform - pos: -4.293744,10.966518 + pos: 7.5,-19.5 parent: 179 - - uid: 950 + - uid: 1508 components: - type: Transform - pos: -4.293744,10.966518 + pos: 8.5,-19.5 parent: 179 -- proto: BikeHorn - entities: - - uid: 672 + - uid: 1509 components: - type: Transform - pos: 1.1246341,7.500063 + pos: 9.5,-19.5 parent: 179 -- proto: BlastDoor - entities: - - uid: 202 + - uid: 1510 components: - type: Transform - pos: -2.5,-14.5 + pos: 10.5,-19.5 parent: 179 - - uid: 697 + - uid: 1511 components: - type: Transform - pos: 1.5,-14.5 + pos: 11.5,-19.5 parent: 179 - - uid: 698 + - uid: 1512 components: - type: Transform - pos: 1.5,-16.5 + pos: 12.5,-19.5 parent: 179 - - uid: 984 + - uid: 1513 components: - type: Transform - pos: -2.5,-16.5 + pos: 13.5,-19.5 parent: 179 -- proto: BoozeDispenser - entities: - - uid: 752 + - uid: 1514 components: - type: Transform - pos: 7.5,12.5 + pos: 14.5,-19.5 parent: 179 -- proto: BoxBeaker - entities: - - uid: 280 + - uid: 1515 components: - type: Transform - pos: 5.163024,9.63072 + pos: 14.5,-20.5 parent: 179 -- proto: Brutepack - entities: - - uid: 150 + - uid: 1516 components: - type: Transform - pos: 18.601385,5.512907 + pos: 14.5,-21.5 parent: 179 - - uid: 151 + - uid: 1517 components: - type: Transform - pos: 18.476385,4.841032 + pos: 14.5,-22.5 parent: 179 -- proto: Bucket - entities: - - uid: 691 + - uid: 1518 components: - type: Transform - pos: 7.1447573,15.900927 + pos: 14.5,-23.5 parent: 179 -- proto: CableApcExtension - entities: - - uid: 15 + - uid: 1519 components: - type: Transform - pos: 5.5,15.5 + pos: 14.5,-24.5 parent: 179 - - uid: 23 +- proto: AtmosFixBlockerMarker + entities: + - uid: 1582 components: - type: Transform - pos: 3.5,15.5 + pos: 23.5,-13.5 parent: 179 - - uid: 58 + - uid: 1583 components: - type: Transform - pos: 8.5,15.5 + pos: 23.5,-15.5 parent: 179 - - uid: 90 + - uid: 1584 components: - type: Transform - pos: 4.5,15.5 + pos: 23.5,-17.5 parent: 179 - - uid: 281 + - uid: 1585 components: - type: Transform - pos: -13.5,4.5 + pos: 23.5,-19.5 parent: 179 - - uid: 389 + - uid: 1586 components: - type: Transform - pos: 7.5,15.5 + pos: 23.5,-21.5 parent: 179 - - uid: 453 + - uid: 1587 components: - type: Transform - pos: 6.5,15.5 + pos: 23.5,-23.5 parent: 179 - - uid: 736 + - uid: 1588 components: - type: Transform - pos: -2.5,9.5 + pos: 10.5,-14.5 parent: 179 - - uid: 760 + - uid: 1589 components: - type: Transform - pos: -2.5,10.5 + pos: 22.5,-13.5 parent: 179 - - uid: 761 + - uid: 1590 components: - type: Transform - pos: -15.5,5.5 + pos: 24.5,-13.5 parent: 179 - - uid: 763 + - uid: 1591 components: - type: Transform - pos: -2.5,11.5 + pos: 24.5,-15.5 parent: 179 - - uid: 764 + - uid: 1592 components: - type: Transform - pos: -1.5,11.5 + pos: 22.5,-15.5 parent: 179 - - uid: 765 + - uid: 1593 components: - type: Transform - pos: -7.5,0.5 + pos: 22.5,-17.5 parent: 179 - - uid: 766 + - uid: 1594 components: - type: Transform - pos: -0.5,11.5 + pos: 24.5,-17.5 parent: 179 - - uid: 767 + - uid: 1595 components: - type: Transform - pos: -3.5,10.5 + pos: 24.5,-19.5 parent: 179 - - uid: 768 + - uid: 1596 components: - type: Transform - pos: -4.5,10.5 + pos: 22.5,-19.5 parent: 179 - - uid: 769 + - uid: 1597 components: - type: Transform - pos: -5.5,10.5 + pos: 22.5,-21.5 parent: 179 - - uid: 770 + - uid: 1598 components: - type: Transform - pos: -6.5,10.5 + pos: 22.5,-23.5 parent: 179 - - uid: 771 + - uid: 1599 components: - type: Transform - pos: -2.5,8.5 + pos: 24.5,-23.5 parent: 179 - - uid: 772 + - uid: 1600 components: - type: Transform - pos: -2.5,7.5 + pos: 24.5,-21.5 parent: 179 - - uid: 773 + - uid: 1607 components: - type: Transform - pos: -2.5,6.5 + pos: 10.5,-15.5 parent: 179 - - uid: 774 + - uid: 1608 components: - type: Transform - pos: -2.5,5.5 + pos: 10.5,-13.5 parent: 179 - - uid: 775 + - uid: 1609 components: - type: Transform - pos: -3.5,5.5 + pos: 11.5,-13.5 parent: 179 - - uid: 776 + - uid: 1610 components: - type: Transform - pos: -4.5,5.5 + pos: 11.5,-15.5 parent: 179 - - uid: 777 +- proto: AtmosFixInstantPlasmaFireMarker + entities: + - uid: 1611 components: - type: Transform - pos: -5.5,5.5 + pos: 12.5,-15.5 parent: 179 - - uid: 778 + - uid: 1612 components: - type: Transform - pos: -6.5,5.5 + pos: 13.5,-15.5 parent: 179 - - uid: 779 + - uid: 1613 components: - type: Transform - pos: -6.5,4.5 + pos: 14.5,-15.5 parent: 179 - - uid: 780 + - uid: 1614 components: - type: Transform - pos: -7.5,4.5 + pos: 14.5,-14.5 parent: 179 - - uid: 781 + - uid: 1615 components: - type: Transform - pos: -8.5,4.5 + pos: 13.5,-14.5 parent: 179 - - uid: 782 + - uid: 1616 components: - type: Transform - pos: -9.5,4.5 + pos: 12.5,-14.5 parent: 179 - - uid: 783 + - uid: 1617 components: - type: Transform - pos: -10.5,4.5 + pos: 12.5,-13.5 parent: 179 - - uid: 784 + - uid: 1618 components: - type: Transform - pos: -11.5,4.5 + pos: 13.5,-13.5 parent: 179 - - uid: 785 + - uid: 1619 components: - type: Transform - pos: -12.5,4.5 + pos: 14.5,-13.5 parent: 179 - - uid: 786 +- proto: AtmosFixNitrogenMarker + entities: + - uid: 1579 components: - type: Transform - pos: -12.5,3.5 + pos: 23.5,-9.5 parent: 179 - - uid: 787 + - uid: 1603 components: - type: Transform - pos: -12.5,2.5 + pos: 22.5,-9.5 parent: 179 - - uid: 788 + - uid: 1604 components: - type: Transform - pos: -12.5,1.5 + pos: 24.5,-9.5 parent: 179 - - uid: 789 +- proto: AtmosFixOxygenMarker + entities: + - uid: 1580 components: - type: Transform - pos: -12.5,0.5 + pos: 23.5,-7.5 parent: 179 - - uid: 790 + - uid: 1605 components: - type: Transform - pos: -12.5,-0.5 + pos: 22.5,-7.5 parent: 179 - - uid: 791 + - uid: 1606 components: - type: Transform - pos: -2.5,4.5 + pos: 24.5,-7.5 parent: 179 - - uid: 792 +- proto: AtmosFixPlasmaMarker + entities: + - uid: 1581 components: - type: Transform - pos: -2.5,2.5 + pos: 23.5,-11.5 parent: 179 - - uid: 793 + - uid: 1601 components: - type: Transform - pos: -2.5,1.5 + pos: 22.5,-11.5 parent: 179 - - uid: 794 + - uid: 1602 components: - type: Transform - pos: -2.5,0.5 + pos: 24.5,-11.5 parent: 179 - - uid: 795 +- proto: Autolathe + entities: + - uid: 1 components: - type: Transform - pos: -2.5,3.5 + pos: 12.5,21.5 parent: 179 - - uid: 796 + - uid: 94 components: - type: Transform - pos: -2.5,-0.5 + pos: -4.5,-5.5 parent: 179 - - uid: 797 + - uid: 446 components: - type: Transform - pos: -2.5,-1.5 + pos: -6.5,5.5 parent: 179 - - uid: 798 + - uid: 528 components: - type: Transform - pos: -2.5,-2.5 + pos: -12.5,-7.5 parent: 179 - - uid: 799 + - uid: 531 components: - type: Transform - pos: -2.5,-3.5 + pos: -13.5,-7.5 parent: 179 - - uid: 802 + - uid: 532 components: - type: Transform - pos: -8.5,0.5 + pos: -14.5,-7.5 parent: 179 - - uid: 803 +- proto: BaseUplinkRadioDebug + entities: + - uid: 732 components: - type: Transform - pos: 2.5,-2.5 + pos: 0.6038008,7.5209107 parent: 179 - - uid: 804 +- proto: Basketball + entities: + - uid: 951 components: - type: Transform - pos: 2.5,-3.5 + pos: -9.702013,9.68404 parent: 179 - - uid: 805 + - uid: 952 components: - type: Transform - pos: -9.5,0.5 + pos: -10.879096,9.579802 parent: 179 - - uid: 806 +- proto: Beaker + entities: + - uid: 174 components: - type: Transform - pos: -10.5,0.5 + pos: 25.291822,10.667244 parent: 179 - - uid: 807 + - uid: 175 components: - type: Transform - pos: -14.5,0.5 + pos: 24.541822,10.635994 parent: 179 - - uid: 808 + - uid: 176 components: - type: Transform - pos: -11.5,0.5 + pos: 26.416822,10.651619 parent: 179 - - uid: 809 + - uid: 324 components: - type: Transform - pos: -15.5,0.5 + pos: 4.718221,9.39097 parent: 179 - - uid: 810 + - uid: 735 components: - type: Transform - pos: -15.5,0.5 + pos: 4.739054,9.807927 parent: 179 - - uid: 811 + - uid: 920 components: - type: Transform - pos: -16.5,0.5 + pos: -4.293744,10.966518 parent: 179 - - uid: 812 + - uid: 950 components: - type: Transform - pos: -16.5,5.5 + pos: -4.293744,10.966518 parent: 179 - - uid: 813 +- proto: BikeHorn + entities: + - uid: 672 components: - type: Transform - pos: -16.5,4.5 + pos: 1.1246341,7.500063 parent: 179 - - uid: 814 +- proto: BlastDoor + entities: + - uid: 202 components: - type: Transform - pos: -16.5,3.5 + pos: -2.5,-14.5 parent: 179 - - uid: 815 + - uid: 697 components: - type: Transform - pos: -16.5,2.5 + pos: 1.5,-14.5 parent: 179 - - uid: 816 + - uid: 698 components: - type: Transform - pos: -16.5,1.5 + pos: 1.5,-16.5 parent: 179 - - uid: 817 + - uid: 984 components: - type: Transform - pos: 7.5,5.5 + pos: -2.5,-16.5 parent: 179 - - uid: 818 + - uid: 1230 components: - type: Transform - pos: 7.5,7.5 + pos: 6.5,-20.5 parent: 179 - - uid: 819 + - uid: 1232 components: - type: Transform - pos: 7.5,8.5 + pos: 6.5,-17.5 parent: 179 - - uid: 820 + - type: DeviceLinkSink + invokeCounter: 2 + - uid: 1233 components: - type: Transform - pos: 7.5,9.5 + pos: 6.5,-16.5 parent: 179 - - uid: 821 + - type: DeviceLinkSink + invokeCounter: 2 + - uid: 1234 components: - type: Transform - pos: 8.5,9.5 + pos: 6.5,-15.5 parent: 179 - - uid: 822 + - type: DeviceLinkSink + invokeCounter: 2 + - uid: 1385 components: - type: Transform - pos: 6.5,9.5 + pos: 11.5,-14.5 parent: 179 - - uid: 823 +- proto: BoozeDispenser + entities: + - uid: 752 components: - type: Transform - pos: 5.5,9.5 + pos: 7.5,12.5 parent: 179 - - uid: 824 +- proto: BoxBeaker + entities: + - uid: 280 components: - type: Transform - pos: 4.5,9.5 + pos: 5.163024,9.63072 parent: 179 - - uid: 825 +- proto: Brutepack + entities: + - uid: 150 components: - type: Transform - pos: 8.5,10.5 + pos: 18.601385,5.512907 parent: 179 - - uid: 826 + - uid: 151 components: - type: Transform - pos: 8.5,11.5 + pos: 18.476385,4.841032 parent: 179 - - uid: 827 +- proto: Bucket + entities: + - uid: 691 components: - type: Transform - pos: 8.5,12.5 + pos: 7.1447573,15.900927 parent: 179 - - uid: 828 +- proto: ButtonFrameCautionSecurity + entities: + - uid: 1488 components: - type: Transform - pos: 7.5,12.5 + rot: 3.141592653589793 rad + pos: 14.5,-12.5 parent: 179 - - uid: 829 +- proto: CableApcExtension + entities: + - uid: 15 components: - type: Transform - pos: 7.5,11.5 + pos: 5.5,15.5 parent: 179 - - uid: 830 + - uid: 23 components: - type: Transform - pos: 2.5,-5.5 + pos: 3.5,15.5 parent: 179 - - uid: 831 + - uid: 58 components: - type: Transform - pos: 2.5,-4.5 + pos: 8.5,15.5 parent: 179 - - uid: 832 + - uid: 90 components: - type: Transform - pos: 1.5,-5.5 + pos: 4.5,15.5 parent: 179 - - uid: 833 + - uid: 281 components: - type: Transform - pos: 0.5,-5.5 + pos: -13.5,4.5 parent: 179 - - uid: 834 + - uid: 389 components: - type: Transform - pos: -0.5,-5.5 + pos: 7.5,15.5 parent: 179 - - uid: 835 + - uid: 453 components: - type: Transform - pos: -1.5,-5.5 + pos: 6.5,15.5 parent: 179 - - uid: 836 + - uid: 736 components: - type: Transform - pos: -2.5,-5.5 + pos: -2.5,9.5 parent: 179 - - uid: 837 + - uid: 760 components: - type: Transform - pos: -3.5,-5.5 + pos: -2.5,10.5 parent: 179 - - uid: 838 + - uid: 761 components: - type: Transform - pos: -4.5,-5.5 + pos: -15.5,5.5 parent: 179 - - uid: 839 + - uid: 763 components: - type: Transform - pos: 1.5,11.5 + pos: -2.5,11.5 parent: 179 - - uid: 840 + - uid: 764 components: - type: Transform - pos: 2.5,11.5 + pos: -1.5,11.5 parent: 179 - - uid: 841 + - uid: 765 components: - type: Transform - pos: 0.5,11.5 + pos: -7.5,0.5 parent: 179 - - uid: 842 + - uid: 766 components: - type: Transform - pos: 2.5,12.5 + pos: -0.5,11.5 parent: 179 - - uid: 843 + - uid: 767 components: - type: Transform - pos: 2.5,13.5 + pos: -3.5,10.5 parent: 179 - - uid: 844 + - uid: 768 components: - type: Transform - pos: 2.5,14.5 + pos: -4.5,10.5 parent: 179 - - uid: 845 + - uid: 769 components: - type: Transform - pos: 2.5,15.5 + pos: -5.5,10.5 parent: 179 - - uid: 853 + - uid: 770 components: - type: Transform - pos: -3.5,-3.5 + pos: -6.5,10.5 parent: 179 - - uid: 854 + - uid: 771 components: - type: Transform - pos: -4.5,-3.5 + pos: -2.5,8.5 parent: 179 - - uid: 855 + - uid: 772 components: - type: Transform - pos: -5.5,-3.5 + pos: -2.5,7.5 parent: 179 - - uid: 856 + - uid: 773 components: - type: Transform - pos: -6.5,-3.5 + pos: -2.5,6.5 parent: 179 - - uid: 857 + - uid: 774 components: - type: Transform - pos: -6.5,-2.5 + pos: -2.5,5.5 parent: 179 - - uid: 858 + - uid: 775 components: - type: Transform - pos: -6.5,-1.5 + pos: -3.5,5.5 parent: 179 - - uid: 859 + - uid: 776 components: - type: Transform - pos: -6.5,-0.5 + pos: -4.5,5.5 parent: 179 - - uid: 860 + - uid: 777 components: - type: Transform - pos: -6.5,0.5 + pos: -5.5,5.5 parent: 179 - - uid: 861 + - uid: 778 components: - type: Transform - pos: -6.5,1.5 + pos: -6.5,5.5 parent: 179 - - uid: 862 + - uid: 779 components: - type: Transform - pos: -6.5,2.5 + pos: -6.5,4.5 parent: 179 - - uid: 872 + - uid: 780 components: - type: Transform - pos: 7.5,6.5 + pos: -7.5,4.5 parent: 179 - - uid: 873 + - uid: 781 components: - type: Transform - pos: 8.5,21.5 + pos: -8.5,4.5 parent: 179 - - uid: 877 + - uid: 782 components: - type: Transform - pos: -6.5,3.5 + pos: -9.5,4.5 parent: 179 - - uid: 878 + - uid: 783 components: - type: Transform - pos: -2.5,-4.5 + pos: -10.5,4.5 parent: 179 - - uid: 879 + - uid: 784 components: - type: Transform - pos: -1.5,-4.5 + pos: -11.5,4.5 parent: 179 - - uid: 880 + - uid: 785 components: - type: Transform - pos: -0.5,-4.5 + pos: -12.5,4.5 parent: 179 - - uid: 881 + - uid: 786 components: - type: Transform - pos: 0.5,-4.5 + pos: -12.5,3.5 parent: 179 - - uid: 882 + - uid: 787 components: - type: Transform - pos: 1.5,-4.5 + pos: -12.5,2.5 parent: 179 - - uid: 883 + - uid: 788 components: - type: Transform - pos: 2.5,-4.5 + pos: -12.5,1.5 parent: 179 - - uid: 884 + - uid: 789 components: - type: Transform - pos: 3.5,-4.5 + pos: -12.5,0.5 parent: 179 - - uid: 885 + - uid: 790 components: - type: Transform - pos: 4.5,-4.5 + pos: -12.5,-0.5 parent: 179 - - uid: 886 + - uid: 791 components: - type: Transform - pos: 5.5,-4.5 + pos: -2.5,4.5 parent: 179 - - uid: 887 + - uid: 792 components: - type: Transform - pos: 6.5,-4.5 + pos: -2.5,2.5 parent: 179 - - uid: 888 + - uid: 793 components: - type: Transform - pos: 7.5,-4.5 + pos: -2.5,1.5 parent: 179 - - uid: 889 + - uid: 794 components: - type: Transform - pos: 8.5,-4.5 + pos: -2.5,0.5 parent: 179 - - uid: 890 + - uid: 795 components: - type: Transform - pos: 8.5,-3.5 + pos: -2.5,3.5 parent: 179 - - uid: 891 + - uid: 796 components: - type: Transform - pos: 8.5,-2.5 + pos: -2.5,-0.5 parent: 179 - - uid: 892 + - uid: 797 components: - type: Transform - pos: 8.5,-1.5 + pos: -2.5,-1.5 parent: 179 - - uid: 893 + - uid: 798 components: - type: Transform - pos: 8.5,-0.5 + pos: -2.5,-2.5 parent: 179 - - uid: 894 + - uid: 799 components: - type: Transform - pos: 8.5,0.5 + pos: -2.5,-3.5 parent: 179 - - uid: 895 + - uid: 802 components: - type: Transform - pos: 8.5,1.5 + pos: -8.5,0.5 parent: 179 - - uid: 896 + - uid: 803 components: - type: Transform - pos: 8.5,2.5 + pos: 2.5,-2.5 parent: 179 - - uid: 897 + - uid: 804 components: - type: Transform - pos: 8.5,3.5 + pos: 2.5,-3.5 parent: 179 - - uid: 898 + - uid: 805 components: - type: Transform - pos: 8.5,4.5 + pos: -9.5,0.5 parent: 179 - - uid: 899 + - uid: 806 components: - type: Transform - pos: 8.5,5.5 + pos: -10.5,0.5 parent: 179 - - uid: 900 + - uid: 807 components: - type: Transform - pos: -14.5,5.5 + pos: -14.5,0.5 parent: 179 - - uid: 905 + - uid: 808 components: - type: Transform - pos: -12.5,5.5 + pos: -11.5,0.5 parent: 179 - - uid: 906 + - uid: 809 components: - type: Transform - pos: -14.5,4.5 + pos: -15.5,0.5 parent: 179 - - uid: 908 + - uid: 810 components: - type: Transform - pos: -15.5,4.5 + pos: -15.5,0.5 parent: 179 - - uid: 909 + - uid: 811 components: - type: Transform - pos: 8.5,20.5 + pos: -16.5,0.5 parent: 179 - - uid: 970 + - uid: 812 components: - type: Transform - pos: 9.5,12.5 + pos: -16.5,5.5 parent: 179 - - uid: 971 + - uid: 813 components: - type: Transform - pos: 10.5,12.5 + pos: -16.5,4.5 parent: 179 - - uid: 972 + - uid: 814 components: - type: Transform - pos: 11.5,12.5 + pos: -16.5,3.5 parent: 179 - - uid: 973 + - uid: 815 components: - type: Transform - pos: 12.5,12.5 + pos: -16.5,2.5 parent: 179 - - uid: 974 + - uid: 816 components: - type: Transform - pos: 13.5,12.5 + pos: -16.5,1.5 parent: 179 - - uid: 1026 + - uid: 817 components: - type: Transform - pos: -5.5,-14.5 + pos: 7.5,5.5 parent: 179 - - uid: 1027 + - uid: 818 components: - type: Transform - pos: -5.5,-13.5 + pos: 7.5,7.5 parent: 179 - - uid: 1028 + - uid: 819 components: - type: Transform - pos: -5.5,-12.5 + pos: 7.5,8.5 parent: 179 - - uid: 1029 + - uid: 820 components: - type: Transform - pos: -4.5,-12.5 + pos: 7.5,9.5 parent: 179 - - uid: 1030 + - uid: 821 components: - type: Transform - pos: -3.5,-12.5 + pos: 8.5,9.5 parent: 179 - - uid: 1031 + - uid: 822 components: - type: Transform - pos: -2.5,-12.5 + pos: 6.5,9.5 parent: 179 - - uid: 1032 + - uid: 823 components: - type: Transform - pos: -1.5,-12.5 + pos: 5.5,9.5 parent: 179 - - uid: 1033 + - uid: 824 components: - type: Transform - pos: -0.5,-12.5 + pos: 4.5,9.5 parent: 179 - - uid: 1034 + - uid: 825 components: - type: Transform - pos: 0.5,-12.5 + pos: 8.5,10.5 parent: 179 - - uid: 1035 + - uid: 826 components: - type: Transform - pos: 1.5,-12.5 + pos: 8.5,11.5 parent: 179 - - uid: 1036 + - uid: 827 components: - type: Transform - pos: 2.5,-12.5 + pos: 8.5,12.5 parent: 179 - - uid: 1037 + - uid: 828 components: - type: Transform - pos: 3.5,-12.5 + pos: 7.5,12.5 parent: 179 - - uid: 1038 + - uid: 829 components: - type: Transform - pos: 0.5,-13.5 + pos: 7.5,11.5 parent: 179 - - uid: 1039 + - uid: 830 components: - type: Transform - pos: 0.5,-14.5 + pos: 2.5,-5.5 parent: 179 - - uid: 1040 + - uid: 831 components: - type: Transform - pos: 0.5,-15.5 + pos: 2.5,-4.5 parent: 179 - - uid: 1041 + - uid: 832 components: - type: Transform - pos: -1.5,-13.5 + pos: 1.5,-5.5 parent: 179 - - uid: 1042 + - uid: 833 components: - type: Transform - pos: -1.5,-14.5 + pos: 0.5,-5.5 parent: 179 - - uid: 1043 + - uid: 834 components: - type: Transform - pos: -1.5,-15.5 + pos: -0.5,-5.5 parent: 179 - - uid: 1044 + - uid: 835 components: - type: Transform - pos: 4.5,-12.5 + pos: -1.5,-5.5 parent: 179 - - uid: 1045 + - uid: 836 components: - type: Transform - pos: 4.5,-13.5 + pos: -2.5,-5.5 parent: 179 - - uid: 1051 + - uid: 837 components: - type: Transform - pos: 9.5,15.5 + pos: -3.5,-5.5 parent: 179 - - uid: 1052 + - uid: 838 components: - type: Transform - pos: 9.5,16.5 + pos: -4.5,-5.5 parent: 179 - - uid: 1053 + - uid: 839 components: - type: Transform - pos: 9.5,17.5 + pos: 1.5,11.5 parent: 179 - - uid: 1054 + - uid: 840 components: - type: Transform - pos: 9.5,18.5 + pos: 2.5,11.5 parent: 179 - - uid: 1055 + - uid: 841 components: - type: Transform - pos: 9.5,19.5 + pos: 0.5,11.5 parent: 179 - - uid: 1056 + - uid: 842 components: - type: Transform - pos: 9.5,20.5 + pos: 2.5,12.5 parent: 179 - - uid: 1057 + - uid: 843 components: - type: Transform - pos: 10.5,20.5 + pos: 2.5,13.5 parent: 179 - - uid: 1058 + - uid: 844 components: - type: Transform - pos: 11.5,20.5 + pos: 2.5,14.5 parent: 179 - - uid: 1059 + - uid: 845 components: - type: Transform - pos: 12.5,20.5 + pos: 2.5,15.5 parent: 179 - - uid: 1060 + - uid: 853 components: - type: Transform - pos: 13.5,20.5 + pos: -3.5,-3.5 parent: 179 - - uid: 1061 + - uid: 854 components: - type: Transform - pos: 14.5,20.5 + pos: -4.5,-3.5 parent: 179 - - uid: 1062 + - uid: 855 components: - type: Transform - pos: 15.5,20.5 + pos: -5.5,-3.5 parent: 179 - - uid: 1063 + - uid: 856 components: - type: Transform - pos: 16.5,20.5 + pos: -6.5,-3.5 parent: 179 - - uid: 1064 + - uid: 857 components: - type: Transform - pos: 16.5,21.5 + pos: -6.5,-2.5 parent: 179 - - uid: 1065 + - uid: 858 components: - type: Transform - pos: 16.5,22.5 + pos: -6.5,-1.5 parent: 179 - - uid: 1066 + - uid: 859 components: - type: Transform - pos: 16.5,23.5 + pos: -6.5,-0.5 parent: 179 - - uid: 1067 + - uid: 860 components: - type: Transform - pos: 16.5,24.5 + pos: -6.5,0.5 parent: 179 - - uid: 1068 + - uid: 861 components: - type: Transform - pos: 16.5,25.5 + pos: -6.5,1.5 parent: 179 - - uid: 1069 + - uid: 862 components: - type: Transform - pos: 16.5,26.5 + pos: -6.5,2.5 parent: 179 - - uid: 1070 + - uid: 872 components: - type: Transform - pos: 16.5,27.5 + pos: 7.5,6.5 parent: 179 - - uid: 1079 + - uid: 873 components: - type: Transform - pos: 15.5,24.5 + pos: 8.5,21.5 parent: 179 - - uid: 1080 + - uid: 877 components: - type: Transform - pos: 14.5,24.5 + pos: -6.5,3.5 parent: 179 - - uid: 1081 + - uid: 878 components: - type: Transform - pos: 13.5,24.5 + pos: -2.5,-4.5 parent: 179 - - uid: 1082 + - uid: 879 components: - type: Transform - pos: 12.5,24.5 + pos: -1.5,-4.5 parent: 179 - - uid: 1097 + - uid: 880 components: - type: Transform - pos: 8.5,14.5 + pos: -0.5,-4.5 parent: 179 - - uid: 1098 + - uid: 881 components: - type: Transform - pos: 8.5,13.5 + pos: 0.5,-4.5 parent: 179 - - uid: 1099 + - uid: 882 components: - type: Transform - pos: 9.5,13.5 + pos: 1.5,-4.5 parent: 179 - - uid: 1100 + - uid: 883 components: - type: Transform - pos: 10.5,13.5 + pos: 2.5,-4.5 parent: 179 - - uid: 1101 + - uid: 884 components: - type: Transform - pos: 11.5,13.5 + pos: 3.5,-4.5 parent: 179 - - uid: 1102 + - uid: 885 components: - type: Transform - pos: 12.5,13.5 + pos: 4.5,-4.5 parent: 179 - - uid: 1103 + - uid: 886 components: - type: Transform - pos: 13.5,13.5 + pos: 5.5,-4.5 parent: 179 - - uid: 1104 + - uid: 887 components: - type: Transform - pos: 14.5,13.5 + pos: 6.5,-4.5 parent: 179 - - uid: 1105 + - uid: 888 components: - type: Transform - pos: 15.5,13.5 + pos: 7.5,-4.5 parent: 179 - - uid: 1106 + - uid: 889 components: - type: Transform - pos: 16.5,13.5 + pos: 8.5,-4.5 parent: 179 - - uid: 1107 + - uid: 890 components: - type: Transform - pos: 17.5,13.5 + pos: 8.5,-3.5 parent: 179 - - uid: 1108 + - uid: 891 components: - type: Transform - pos: 18.5,13.5 + pos: 8.5,-2.5 parent: 179 - - uid: 1109 + - uid: 892 components: - type: Transform - pos: 19.5,13.5 + pos: 8.5,-1.5 parent: 179 - - uid: 1110 + - uid: 893 components: - type: Transform - pos: 20.5,13.5 + pos: 8.5,-0.5 parent: 179 - - uid: 1111 + - uid: 894 components: - type: Transform - pos: 21.5,13.5 + pos: 8.5,0.5 parent: 179 - - uid: 1112 + - uid: 895 components: - type: Transform - pos: 22.5,13.5 + pos: 8.5,1.5 parent: 179 - - uid: 1113 + - uid: 896 components: - type: Transform - pos: 23.5,13.5 + pos: 8.5,2.5 parent: 179 - - uid: 1114 + - uid: 897 components: - type: Transform - pos: 24.5,13.5 + pos: 8.5,3.5 parent: 179 - - uid: 1115 + - uid: 898 components: - type: Transform - pos: 25.5,13.5 + pos: 8.5,4.5 parent: 179 - - uid: 1116 + - uid: 899 components: - type: Transform - pos: 16.5,12.5 + pos: 8.5,5.5 parent: 179 - - uid: 1117 + - uid: 900 components: - type: Transform - pos: 16.5,11.5 + pos: -14.5,5.5 parent: 179 - - uid: 1118 + - uid: 905 components: - type: Transform - pos: 16.5,10.5 + pos: -12.5,5.5 parent: 179 - - uid: 1119 + - uid: 906 components: - type: Transform - pos: 16.5,9.5 + pos: -14.5,4.5 parent: 179 - - uid: 1120 + - uid: 908 components: - type: Transform - pos: 16.5,8.5 + pos: -15.5,4.5 parent: 179 - - uid: 1121 + - uid: 909 components: - type: Transform - pos: 16.5,7.5 + pos: 8.5,20.5 parent: 179 - - uid: 1122 + - uid: 970 components: - type: Transform - pos: 16.5,6.5 + pos: 9.5,12.5 parent: 179 - - uid: 1123 + - uid: 971 components: - type: Transform - pos: 16.5,5.5 + pos: 10.5,12.5 parent: 179 - - uid: 1124 + - uid: 972 components: - type: Transform - pos: 16.5,4.5 + pos: 11.5,12.5 parent: 179 - - uid: 1125 + - uid: 973 components: - type: Transform - pos: 16.5,3.5 + pos: 12.5,12.5 parent: 179 - - uid: 1126 + - uid: 974 components: - type: Transform - pos: 16.5,2.5 + pos: 13.5,12.5 parent: 179 - - uid: 1127 + - uid: 1026 components: - type: Transform - pos: 16.5,1.5 + pos: -5.5,-14.5 parent: 179 - - uid: 1128 + - uid: 1027 components: - type: Transform - pos: 16.5,0.5 + pos: -5.5,-13.5 parent: 179 - - uid: 1129 + - uid: 1028 components: - type: Transform - pos: 16.5,-0.5 + pos: -5.5,-12.5 parent: 179 - - uid: 1130 + - uid: 1029 components: - type: Transform - pos: 16.5,-1.5 + pos: -4.5,-12.5 parent: 179 - - uid: 1131 + - uid: 1030 components: - type: Transform - pos: 16.5,-2.5 + pos: -3.5,-12.5 parent: 179 - - uid: 1132 + - uid: 1031 components: - type: Transform - pos: 16.5,-3.5 + pos: -2.5,-12.5 parent: 179 - - uid: 1133 + - uid: 1032 components: - type: Transform - pos: 17.5,-3.5 + pos: -1.5,-12.5 parent: 179 - - uid: 1134 + - uid: 1033 components: - type: Transform - pos: 18.5,-3.5 + pos: -0.5,-12.5 parent: 179 - - uid: 1135 + - uid: 1034 components: - type: Transform - pos: 19.5,-3.5 + pos: 0.5,-12.5 parent: 179 - - uid: 1136 + - uid: 1035 components: - type: Transform - pos: 20.5,-3.5 + pos: 1.5,-12.5 parent: 179 - - uid: 1137 + - uid: 1036 components: - type: Transform - pos: 21.5,-3.5 + pos: 2.5,-12.5 parent: 179 - - uid: 1138 + - uid: 1037 components: - type: Transform - pos: 22.5,-3.5 + pos: 3.5,-12.5 parent: 179 - - uid: 1139 + - uid: 1038 components: - type: Transform - pos: 23.5,-3.5 + pos: 0.5,-13.5 parent: 179 - - uid: 1140 + - uid: 1039 components: - type: Transform - pos: 24.5,-3.5 + pos: 0.5,-14.5 parent: 179 - - uid: 1141 + - uid: 1040 components: - type: Transform - pos: 25.5,-3.5 + pos: 0.5,-15.5 parent: 179 - - uid: 1142 + - uid: 1041 components: - type: Transform - pos: 26.5,-3.5 + pos: -1.5,-13.5 parent: 179 - - uid: 1143 + - uid: 1042 components: - type: Transform - pos: 27.5,-3.5 + pos: -1.5,-14.5 parent: 179 - - uid: 1144 + - uid: 1043 components: - type: Transform - pos: 28.5,-3.5 + pos: -1.5,-15.5 parent: 179 - - uid: 1145 + - uid: 1044 components: - type: Transform - pos: 17.5,2.5 + pos: 4.5,-12.5 parent: 179 - - uid: 1146 + - uid: 1045 components: - type: Transform - pos: 18.5,2.5 + pos: 4.5,-13.5 parent: 179 - - uid: 1147 + - uid: 1051 components: - type: Transform - pos: 19.5,2.5 + pos: 9.5,15.5 parent: 179 - - uid: 1148 + - uid: 1052 components: - type: Transform - pos: 20.5,2.5 + pos: 9.5,16.5 parent: 179 - - uid: 1149 + - uid: 1053 components: - type: Transform - pos: 21.5,2.5 + pos: 9.5,17.5 parent: 179 - - uid: 1150 + - uid: 1054 components: - type: Transform - pos: 22.5,2.5 + pos: 9.5,18.5 parent: 179 - - uid: 1151 + - uid: 1055 components: - type: Transform - pos: 23.5,2.5 + pos: 9.5,19.5 parent: 179 - - uid: 1152 + - uid: 1056 components: - type: Transform - pos: 24.5,2.5 + pos: 9.5,20.5 parent: 179 - - uid: 1153 + - uid: 1057 components: - type: Transform - pos: 25.5,2.5 + pos: 10.5,20.5 parent: 179 - - uid: 1154 + - uid: 1058 components: - type: Transform - pos: 26.5,2.5 + pos: 11.5,20.5 parent: 179 - - uid: 1155 + - uid: 1059 components: - type: Transform - pos: 27.5,2.5 + pos: 12.5,20.5 parent: 179 - - uid: 1156 + - uid: 1060 components: - type: Transform - pos: 28.5,2.5 + pos: 13.5,20.5 parent: 179 - - uid: 1157 + - uid: 1061 components: - type: Transform - pos: 26.5,3.5 + pos: 14.5,20.5 parent: 179 - - uid: 1158 + - uid: 1062 components: - type: Transform - pos: 26.5,4.5 + pos: 15.5,20.5 parent: 179 - - uid: 1159 + - uid: 1063 components: - type: Transform - pos: 26.5,5.5 + pos: 16.5,20.5 parent: 179 - - uid: 1160 + - uid: 1064 components: - type: Transform - pos: 26.5,6.5 + pos: 16.5,21.5 parent: 179 - - uid: 1161 + - uid: 1065 components: - type: Transform - pos: 26.5,7.5 + pos: 16.5,22.5 parent: 179 - - uid: 1162 + - uid: 1066 components: - type: Transform - pos: 26.5,8.5 + pos: 16.5,23.5 parent: 179 - - uid: 1163 + - uid: 1067 components: - type: Transform - pos: 26.5,9.5 + pos: 16.5,24.5 parent: 179 - - uid: 1164 + - uid: 1068 components: - type: Transform - pos: 25.5,9.5 + pos: 16.5,25.5 parent: 179 - - uid: 1165 + - uid: 1069 components: - type: Transform - pos: 24.5,9.5 + pos: 16.5,26.5 parent: 179 - - uid: 1166 + - uid: 1070 components: - type: Transform - pos: 16.5,19.5 + pos: 16.5,27.5 parent: 179 - - uid: 1167 + - uid: 1079 components: - type: Transform - pos: 16.5,18.5 + pos: 15.5,24.5 parent: 179 - - uid: 1168 + - uid: 1080 components: - type: Transform - pos: 16.5,17.5 + pos: 14.5,24.5 parent: 179 - - uid: 1169 + - uid: 1081 components: - type: Transform - pos: 16.5,16.5 + pos: 13.5,24.5 parent: 179 - - uid: 1170 + - uid: 1082 components: - type: Transform - pos: 16.5,15.5 + pos: 12.5,24.5 parent: 179 - - uid: 1171 + - uid: 1097 components: - type: Transform - pos: 16.5,14.5 + pos: 8.5,14.5 parent: 179 - - uid: 1177 + - uid: 1098 components: - type: Transform - pos: 8.5,22.5 + pos: 8.5,13.5 parent: 179 - - uid: 1178 + - uid: 1099 components: - type: Transform - pos: 8.5,23.5 + pos: 9.5,13.5 parent: 179 - - uid: 1179 + - uid: 1100 components: - type: Transform - pos: 8.5,24.5 + pos: 10.5,13.5 parent: 179 - - uid: 1180 + - uid: 1101 components: - type: Transform - pos: 8.5,25.5 + pos: 11.5,13.5 parent: 179 -- proto: CableApcStack - entities: - - uid: 70 + - uid: 1102 components: - type: Transform - pos: 10.577456,21.424059 + pos: 12.5,13.5 parent: 179 - - uid: 183 + - uid: 1103 components: - type: Transform - pos: -6.6863613,7.351646 + pos: 13.5,13.5 parent: 179 - - uid: 351 + - uid: 1104 components: - type: Transform - pos: 10.561831,21.767809 + pos: 14.5,13.5 parent: 179 - - uid: 537 + - uid: 1105 components: - type: Transform - pos: -15.5,-0.5 + pos: 15.5,13.5 parent: 179 - - uid: 538 + - uid: 1106 components: - type: Transform - pos: -15.5,-0.5 + pos: 16.5,13.5 parent: 179 -- proto: CableHV - entities: - - uid: 1019 + - uid: 1107 components: - type: Transform - pos: -6.5,-13.5 + pos: 17.5,13.5 parent: 179 - - uid: 1020 + - uid: 1108 components: - type: Transform - pos: -6.5,-12.5 + pos: 18.5,13.5 parent: 179 - - uid: 1021 + - uid: 1109 components: - type: Transform - pos: -6.5,-11.5 + pos: 19.5,13.5 parent: 179 -- proto: CableHVStack - entities: - - uid: 184 + - uid: 1110 components: - type: Transform - pos: -6.665528,7.840053 + pos: 20.5,13.5 parent: 179 -- proto: CableMV - entities: - - uid: 1023 + - uid: 1111 components: - type: Transform - pos: -6.5,-13.5 + pos: 21.5,13.5 parent: 179 - - uid: 1024 + - uid: 1112 components: - type: Transform - pos: -5.5,-13.5 + pos: 22.5,13.5 parent: 179 - - uid: 1025 + - uid: 1113 components: - type: Transform - pos: -5.5,-14.5 + pos: 23.5,13.5 parent: 179 -- proto: CableMVStack - entities: - - uid: 325 + - uid: 1114 components: - type: Transform - pos: -6.665528,7.5601244 + pos: 24.5,13.5 parent: 179 -- proto: CableTerminal - entities: - - uid: 1022 + - uid: 1115 components: - type: Transform - pos: -6.5,-11.5 + pos: 25.5,13.5 parent: 179 -- proto: CapacitorStockPart - entities: - - uid: 296 + - uid: 1116 components: - type: Transform - pos: -4.3012447,8.817795 + pos: 16.5,12.5 parent: 179 - - uid: 700 + - uid: 1117 components: - type: Transform - pos: -3.8324947,8.786524 + pos: 16.5,11.5 parent: 179 - - uid: 701 + - uid: 1118 components: - type: Transform - pos: -3.2804112,8.786524 + pos: 16.5,10.5 parent: 179 - - uid: 704 + - uid: 1119 components: - type: Transform - pos: -4.8741612,8.817795 + pos: 16.5,9.5 parent: 179 -- proto: CaptainIDCard - entities: - - uid: 726 + - uid: 1120 components: - type: Transform - pos: 1.0820513,8.752605 + pos: 16.5,8.5 parent: 179 -- proto: CaptainSabre - entities: - - uid: 381 + - uid: 1121 components: - type: Transform - pos: -3.277628,-2.15838 + pos: 16.5,7.5 parent: 179 -- proto: Catwalk - entities: - - uid: 2 + - uid: 1122 components: - type: Transform - pos: 13.5,24.5 + pos: 16.5,6.5 parent: 179 - - uid: 7 + - uid: 1123 components: - type: Transform - pos: 6.5,24.5 + pos: 16.5,5.5 parent: 179 - - uid: 20 + - uid: 1124 components: - type: Transform - pos: 6.5,20.5 + pos: 16.5,4.5 parent: 179 - - uid: 120 + - uid: 1125 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,18.5 + pos: 16.5,3.5 parent: 179 - - uid: 246 + - uid: 1126 components: - type: Transform - pos: -6.5,-6.5 + pos: 16.5,2.5 parent: 179 - - uid: 247 + - uid: 1127 components: - type: Transform - pos: -8.5,-6.5 + pos: 16.5,1.5 parent: 179 - - uid: 252 + - uid: 1128 components: - type: Transform - pos: 4.5,-8.5 + pos: 16.5,0.5 parent: 179 - - uid: 269 + - uid: 1129 components: - type: Transform - pos: 12.5,10.5 + pos: 16.5,-0.5 parent: 179 - - uid: 286 + - uid: 1130 components: - type: Transform - pos: 2.5,-11.5 + pos: 16.5,-1.5 parent: 179 - - uid: 287 + - uid: 1131 components: - type: Transform - pos: -4.5,-11.5 + pos: 16.5,-2.5 parent: 179 - - uid: 308 + - uid: 1132 components: - type: Transform - pos: -2.5,-12.5 + pos: 16.5,-3.5 parent: 179 - - uid: 309 + - uid: 1133 components: - type: Transform - pos: 1.5,-12.5 + pos: 17.5,-3.5 parent: 179 - - uid: 333 + - uid: 1134 components: - type: Transform - pos: 4.5,-13.5 + pos: 18.5,-3.5 parent: 179 - - uid: 334 + - uid: 1135 components: - type: Transform - pos: -5.5,-13.5 + pos: 19.5,-3.5 parent: 179 - - uid: 345 + - uid: 1136 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,0.5 + pos: 20.5,-3.5 parent: 179 - - uid: 346 + - uid: 1137 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,1.5 + pos: 21.5,-3.5 parent: 179 - - uid: 347 + - uid: 1138 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,2.5 + pos: 22.5,-3.5 parent: 179 - - uid: 348 + - uid: 1139 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,3.5 + pos: 23.5,-3.5 parent: 179 - - uid: 349 + - uid: 1140 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,4.5 + pos: 24.5,-3.5 parent: 179 - - uid: 403 + - uid: 1141 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-0.5 + pos: 25.5,-3.5 parent: 179 - - uid: 404 + - uid: 1142 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-1.5 + pos: 26.5,-3.5 parent: 179 - - uid: 405 + - uid: 1143 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-2.5 + pos: 27.5,-3.5 parent: 179 - - uid: 406 + - uid: 1144 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-3.5 + pos: 28.5,-3.5 parent: 179 - - uid: 407 + - uid: 1145 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-4.5 + pos: 17.5,2.5 parent: 179 - - uid: 408 + - uid: 1146 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-5.5 + pos: 18.5,2.5 parent: 179 - - uid: 409 + - uid: 1147 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-6.5 + pos: 19.5,2.5 parent: 179 - - uid: 410 + - uid: 1148 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-7.5 + pos: 20.5,2.5 parent: 179 - - uid: 411 + - uid: 1149 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-8.5 + pos: 21.5,2.5 parent: 179 - - uid: 412 + - uid: 1150 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-9.5 + pos: 22.5,2.5 parent: 179 - - uid: 413 + - uid: 1151 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-10.5 + pos: 23.5,2.5 parent: 179 - - uid: 414 + - uid: 1152 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 9.5,-11.5 + pos: 24.5,2.5 parent: 179 - - uid: 415 + - uid: 1153 components: - type: Transform - anchored: False - rot: -1.5707963267949 rad - pos: 8.5,-8.5 + pos: 25.5,2.5 parent: 179 - - uid: 438 + - uid: 1154 components: - type: Transform - rot: 3.141592653589793 rad - pos: -9.5,-0.5 + pos: 26.5,2.5 parent: 179 - - uid: 442 + - uid: 1155 components: - type: Transform - pos: -9.5,8.5 + pos: 27.5,2.5 parent: 179 - - uid: 514 + - uid: 1156 components: - type: Transform - pos: -10.5,8.5 + pos: 28.5,2.5 parent: 179 - - uid: 541 + - uid: 1157 components: - type: Transform - pos: -11.5,-6.5 + pos: 26.5,3.5 parent: 179 - - uid: 542 + - uid: 1158 components: - type: Transform - pos: -9.5,-6.5 + pos: 26.5,4.5 parent: 179 - - uid: 695 + - uid: 1159 components: - type: Transform - rot: 3.141592653589793 rad - pos: -8.5,8.5 + pos: 26.5,5.5 parent: 179 -- proto: Chair - entities: - - uid: 580 + - uid: 1160 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,6.5 + pos: 26.5,6.5 parent: 179 - - uid: 581 + - uid: 1161 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,8.5 + pos: 26.5,7.5 parent: 179 - - uid: 582 + - uid: 1162 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,7.5 + pos: 26.5,8.5 parent: 179 -- proto: ChairOfficeDark - entities: - - uid: 380 + - uid: 1163 components: - type: Transform - rot: 3.1415926535897967 rad - pos: 0.5,-6.5 + pos: 26.5,9.5 parent: 179 -- proto: ChairOfficeLight - entities: - - uid: 576 + - uid: 1164 components: - type: Transform - rot: 4.71238898038469 rad - pos: 19.5,4.5 + pos: 25.5,9.5 parent: 179 - - uid: 577 + - uid: 1165 components: - type: Transform - rot: 3.141592653589793 rad - pos: 20.5,5.5 + pos: 24.5,9.5 parent: 179 - - uid: 578 + - uid: 1166 components: - type: Transform - rot: 4.71238898038469 rad - pos: 23.5,8.5 + pos: 16.5,19.5 parent: 179 - - uid: 579 + - uid: 1167 components: - type: Transform - pos: 24.5,5.5 + pos: 16.5,18.5 parent: 179 -- proto: ChemDispenser - entities: - - uid: 583 + - uid: 1168 components: - type: Transform - pos: 23.5,9.5 + pos: 16.5,17.5 parent: 179 - - type: ContainerContainer - containers: - ReagentDispenser-beaker: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - machine_board: !type:Container - showEnts: False - occludes: True - ents: [] - machine_parts: !type:Container - showEnts: False - occludes: True - ents: [] - beakerSlot: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - - uid: 750 + - uid: 1169 components: - type: Transform - pos: 7.5,11.5 + pos: 16.5,16.5 parent: 179 -- proto: ChemicalPayload - entities: - - uid: 432 + - uid: 1170 components: - type: Transform - pos: 6.4651074,9.828774 + pos: 16.5,15.5 parent: 179 -- proto: ChemMaster - entities: - - uid: 311 + - uid: 1171 components: - type: Transform - pos: 8.5,11.5 + pos: 16.5,14.5 parent: 179 -- proto: ChemMasterMachineCircuitboard - entities: - - uid: 718 + - uid: 1177 components: - type: Transform - pos: -4.5458,10.514079 + pos: 8.5,22.5 parent: 179 -- proto: CircuitImprinter - entities: - - uid: 332 + - uid: 1178 components: - type: Transform - pos: -6.5,4.5 + pos: 8.5,23.5 parent: 179 -- proto: ClosetEmergencyFilledRandom - entities: - - uid: 319 + - uid: 1179 components: - type: Transform - pos: 1.5,-10.5 + pos: 8.5,24.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - uid: 322 + - uid: 1180 components: - type: Transform - pos: 0.5,-10.5 + pos: 8.5,25.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: ClosetToolFilled - entities: - - uid: 524 + - uid: 1277 components: - type: Transform - pos: -11.5,-5.5 + pos: 4.5,-10.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - uid: 525 + - uid: 1282 components: - type: Transform - pos: -11.5,-4.5 + pos: 4.5,-11.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - uid: 526 + - uid: 1289 components: - type: Transform - pos: -11.5,-3.5 + pos: 5.5,-9.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - uid: 527 + - uid: 1292 components: - type: Transform - pos: -11.5,-2.5 + pos: 4.5,-9.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: ClothingBeltUtilityFilled - entities: - - uid: 427 + - uid: 1348 components: - type: Transform - pos: -1.895102,-10.33495 + pos: 6.5,-9.5 parent: 179 - - uid: 428 + - uid: 1349 components: - type: Transform - pos: -1.770102,-10.63182 + pos: 7.5,-9.5 parent: 179 -- proto: ClothingHandsGlovesColorYellow - entities: - - uid: 454 + - uid: 1350 components: - type: Transform - pos: -0.78741443,4.322194 + pos: 9.5,-9.5 parent: 179 -- proto: ClothingHeadHatWelding - entities: - - uid: 344 + - uid: 1351 components: - type: Transform - pos: 0.7198646,4.374314 + pos: 10.5,-9.5 parent: 179 -- proto: ClothingMaskBreath - entities: - - uid: 955 + - uid: 1352 components: - type: Transform - pos: -10.595239,6.1907988 + pos: 11.5,-9.5 parent: 179 -- proto: ClothingMaskGas - entities: - - uid: 425 + - uid: 1353 components: - type: Transform - pos: -0.2880585,-10.69432 + pos: 12.5,-9.5 parent: 179 -- proto: ClothingOuterHardsuitAtmos - entities: - - uid: 270 + - uid: 1354 components: - type: Transform - pos: -10.5426235,5.472399 + pos: 13.5,-9.5 parent: 179 -- proto: ClothingOuterVest - entities: - - uid: 426 + - uid: 1355 components: - type: Transform - pos: -0.9130585,-10.66307 + pos: 14.5,-9.5 parent: 179 -- proto: ClothingShoesBootsMag - entities: - - uid: 725 + - uid: 1356 components: - type: Transform - pos: 0.47880077,8.073378 + pos: 15.5,-9.5 parent: 179 -- proto: ClothingUniformJumpsuitEngineering - entities: - - uid: 424 + - uid: 1357 components: - type: Transform - pos: -0.6474335,-10.27245 + pos: 16.5,-9.5 parent: 179 -- proto: ClownPDA - entities: - - uid: 91 + - uid: 1358 components: - type: Transform - pos: -15.5,2.5 + pos: 17.5,-9.5 parent: 179 - - uid: 762 + - uid: 1359 components: - type: Transform - pos: -14.5,1.5 + pos: 18.5,-9.5 parent: 179 - - uid: 864 + - uid: 1360 components: - type: Transform - pos: -14.5,2.5 + pos: 19.5,-9.5 parent: 179 - - uid: 912 + - uid: 1361 components: - type: Transform - pos: -15.5,1.5 + pos: 20.5,-9.5 parent: 179 -- proto: ComputerAnalysisConsole - entities: - - uid: 1083 + - uid: 1362 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 15.5,23.5 + pos: 21.5,-9.5 parent: 179 - - type: DeviceLinkSource - linkedPorts: - 1078: - - ArtifactAnalyzerSender: ArtifactAnalyzerReceiver -- proto: ComputerCargoOrders - entities: - - uid: 326 + - uid: 1363 components: - type: Transform - pos: 0.5,-5.5 + pos: 8.5,-9.5 parent: 179 - - uid: 996 + - uid: 1364 components: - type: Transform - pos: -1.5,-11.5 + pos: 11.5,-8.5 parent: 179 -- proto: ComputerCargoShuttle - entities: - - uid: 995 + - uid: 1365 components: - type: Transform - pos: 0.5,-11.5 + pos: 11.5,-7.5 parent: 179 -- proto: ComputerMedicalRecords - entities: - - uid: 152 + - uid: 1366 components: - type: Transform - rot: 3.141592653589793 rad - pos: 22.5,-5.5 + pos: 11.5,-5.5 parent: 179 - - uid: 591 + - uid: 1367 components: - type: Transform - pos: 21.5,5.5 + pos: 11.5,-4.5 parent: 179 -- proto: ComputerResearchAndDevelopment - entities: - - uid: 88 + - uid: 1368 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 8.5,19.5 + pos: 11.5,-6.5 parent: 179 -- proto: ComputerShuttleCargo - entities: - - uid: 994 + - uid: 1369 components: - type: Transform - pos: -0.5,-11.5 + pos: 11.5,-3.5 parent: 179 -- proto: ComputerSurveillanceCameraMonitor - entities: - - uid: 1185 + - uid: 1370 components: - type: Transform - rot: 3.141592653589793 rad - pos: -8.5,1.5 + pos: 9.5,-16.5 parent: 179 -- proto: ComputerTechnologyDiskTerminal - entities: - - uid: 1088 + - uid: 1371 components: - type: Transform - pos: 13.5,16.5 + pos: 9.5,-22.5 parent: 179 -- proto: ConveyorBelt - entities: - - uid: 195 + - uid: 1372 components: - type: Transform - pos: -2.5,-15.5 + pos: 9.5,-21.5 parent: 179 - - uid: 259 + - uid: 1373 components: - type: Transform - rot: 3.141592653589793 rad - pos: 1.5,-14.5 + pos: 9.5,-10.5 parent: 179 - - uid: 463 + - uid: 1374 components: - type: Transform - rot: 3.141592653589793 rad - pos: 1.5,-16.5 + pos: 9.5,-20.5 parent: 179 - - uid: 677 + - uid: 1375 components: - type: Transform - pos: -2.5,-14.5 + pos: 9.5,-19.5 parent: 179 - - uid: 716 + - uid: 1376 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -1.5,11.5 + pos: 9.5,-18.5 parent: 179 - - uid: 720 + - uid: 1377 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -0.5,11.5 + pos: 9.5,-17.5 parent: 179 - - uid: 721 + - uid: 1378 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 0.5,11.5 + pos: 9.5,-15.5 parent: 179 - - uid: 985 + - uid: 1379 components: - type: Transform - rot: 3.141592653589793 rad - pos: 1.5,-13.5 + pos: 9.5,-11.5 parent: 179 - - uid: 989 + - uid: 1380 components: - type: Transform - rot: 3.141592653589793 rad - pos: 1.5,-15.5 + pos: 9.5,-14.5 parent: 179 - - uid: 990 + - uid: 1381 components: - type: Transform - pos: -2.5,-13.5 + pos: 9.5,-13.5 parent: 179 - - uid: 991 + - uid: 1382 components: - type: Transform - pos: -2.5,-16.5 + pos: 9.5,-12.5 parent: 179 -- proto: CrateEngineeringToolbox - entities: - - uid: 692 + - uid: 1383 components: - type: Transform - pos: -0.5,3.5 + pos: 10.5,-14.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: CrateGeneric - entities: - - uid: 266 + - uid: 1384 components: - type: Transform - pos: 5.5,-6.5 + pos: 11.5,-14.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: CrateHydroponicsSeeds - entities: - - uid: 754 + - uid: 1389 components: - type: Transform - pos: 2.5,12.5 + pos: 16.5,-14.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: CrateHydroponicsTools - entities: - - uid: 755 + - uid: 1390 components: - type: Transform - pos: 2.5,13.5 + pos: 17.5,-14.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: CrateMedical - entities: - - uid: 131 + - uid: 1391 components: - type: Transform - pos: 31.5,-1.5 + pos: 19.5,-14.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - uid: 132 + - uid: 1392 components: - type: Transform - pos: 32.5,-1.5 + pos: 20.5,-14.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: CrewMonitoringServer - entities: - - uid: 1183 + - uid: 1393 components: - type: Transform - pos: 9.5,25.5 + pos: 21.5,-14.5 parent: 179 -- proto: Crowbar - entities: - - uid: 147 + - uid: 1394 components: - type: Transform - pos: -2.172831,4.5306726 + pos: 22.5,-14.5 parent: 179 - - uid: 423 + - uid: 1395 components: - type: Transform - pos: -2.861032,-5.524786 + pos: 18.5,-14.5 parent: 179 -- proto: DebugBatteryDischarger - entities: - - uid: 711 + - uid: 1396 components: - type: Transform - pos: 0.5,-3.5 + pos: 22.5,-9.5 parent: 179 -- proto: DefaultStationBeaconAISatellite - entities: - - uid: 1198 + - uid: 1397 components: - type: Transform - pos: 11.5,-14.5 + pos: 10.5,-19.5 parent: 179 -- proto: DefaultStationBeaconBotany - entities: - - uid: 1193 + - uid: 1398 components: - type: Transform - pos: 3.5,15.5 + pos: 11.5,-19.5 parent: 179 -- proto: DefaultStationBeaconChemistry - entities: - - uid: 1195 + - uid: 1399 components: - type: Transform - pos: 7.5,10.5 + pos: 12.5,-19.5 parent: 179 -- proto: DefaultStationBeaconCommand - entities: - - uid: 1196 + - uid: 1400 components: - type: Transform - pos: 0.5,8.5 + pos: 13.5,-19.5 parent: 179 -- proto: DefaultStationBeaconGravGen - entities: - - uid: 1172 + - uid: 1401 components: - type: Transform - pos: 6.5,5.5 + pos: 14.5,-19.5 parent: 179 -- proto: DefaultStationBeaconMedical - entities: - - uid: 1173 + - uid: 1402 components: - type: Transform - pos: 19.5,5.5 + pos: 15.5,-19.5 parent: 179 -- proto: DefaultStationBeaconScience - entities: - - uid: 1194 + - uid: 1403 components: - type: Transform - pos: 12.5,20.5 + pos: 17.5,-19.5 parent: 179 -- proto: DefaultStationBeaconSecurity - entities: - - uid: 1197 + - uid: 1404 components: - type: Transform - pos: -14.5,17.5 + pos: 18.5,-19.5 parent: 179 -- proto: DefaultStationBeaconSupply - entities: - - uid: 1175 + - uid: 1405 components: - type: Transform - pos: -0.5,-11.5 + pos: 19.5,-19.5 parent: 179 -- proto: DefaultStationBeaconToolRoom - entities: - - uid: 1174 + - uid: 1406 components: - type: Transform - pos: -1.5,4.5 + pos: 20.5,-19.5 parent: 179 -- proto: DisposalPipe - entities: - - uid: 717 + - uid: 1407 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -0.5,10.5 + pos: 21.5,-19.5 parent: 179 -- proto: DisposalTrunk - entities: - - uid: 285 + - uid: 1408 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 0.5,10.5 + pos: 22.5,-19.5 parent: 179 - - uid: 715 + - uid: 1409 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -1.5,10.5 + pos: 16.5,-19.5 parent: 179 -- proto: DisposalUnit - entities: - - uid: 719 + - uid: 1410 components: - type: Transform - pos: -1.5,10.5 + pos: 9.5,-23.5 parent: 179 -- proto: DrinkBeerglass - entities: - - uid: 688 + - uid: 1411 components: - type: Transform - pos: 3.1981986,5.733985 + pos: 9.5,-24.5 parent: 179 -- proto: DrinkColaCan - entities: - - uid: 690 + - uid: 1412 components: - type: Transform - pos: 3.8231986,6.150942 + pos: 10.5,-24.5 parent: 179 -- proto: Dropper - entities: - - uid: 730 + - uid: 1413 components: - type: Transform - pos: 5.892191,9.4118185 + pos: 11.5,-24.5 parent: 179 -- proto: EmergencyOxygenTankFilled - entities: - - uid: 956 + - uid: 1414 components: - type: Transform - pos: -10.505015,6.711994 + pos: 12.5,-24.5 parent: 179 -- proto: ExGrenade - entities: - - uid: 433 + - uid: 1415 components: - type: Transform - pos: -3.7704864,-1.6163371 + pos: 13.5,-24.5 parent: 179 -- proto: ExplosivePayload - entities: - - uid: 668 + - uid: 1416 components: - type: Transform - pos: 6.829691,9.4118185 + pos: 14.5,-24.5 parent: 179 -- proto: FaxMachineCaptain - entities: - - uid: 967 + - uid: 1417 components: - type: Transform - pos: 9.5,12.5 + pos: 15.5,-24.5 parent: 179 -- proto: FaxMachineCentcom - entities: - - uid: 968 + - uid: 1418 components: - type: Transform - pos: 11.5,12.5 + pos: 16.5,-24.5 parent: 179 -- proto: FaxMachineSyndie - entities: - - uid: 969 + - uid: 1419 components: - type: Transform - pos: 13.5,12.5 + pos: 17.5,-24.5 parent: 179 -- proto: FireExtinguisher - entities: - - uid: 323 + - uid: 1420 components: - type: Transform - pos: -1.297692,-5.396082 + pos: 18.5,-24.5 parent: 179 - - uid: 868 + - uid: 1421 components: - type: Transform - pos: -14.5,-1.5 + pos: 19.5,-24.5 parent: 179 -- proto: FlashlightLantern - entities: - - uid: 421 + - uid: 1422 components: - type: Transform - pos: -1.934832,-5.154238 + pos: 20.5,-24.5 parent: 179 - - uid: 422 + - uid: 1423 components: - type: Transform - pos: 1.1350493,8.198464 + pos: 21.5,-24.5 parent: 179 -- proto: FloorLavaEntity - entities: - - uid: 134 + - uid: 1424 components: - type: Transform - pos: -13.5,-3.5 + pos: 22.5,-24.5 parent: 179 - - uid: 135 + - uid: 1502 components: - type: Transform - pos: -14.5,-3.5 + pos: 13.5,-14.5 parent: 179 - - uid: 141 + - uid: 1503 components: - type: Transform - pos: -13.5,-2.5 + pos: 12.5,-14.5 parent: 179 - - uid: 469 + - uid: 1504 components: - type: Transform - pos: -14.5,-2.5 + pos: 14.5,-14.5 parent: 179 -- proto: FloorWaterEntity - entities: - - uid: 136 + - uid: 1554 components: - type: Transform - pos: -12.5,-2.5 + pos: 15.5,-14.5 parent: 179 - - uid: 137 +- proto: CableApcStack + entities: + - uid: 70 components: - type: Transform - pos: -12.5,-3.5 + pos: 10.577456,21.424059 parent: 179 -- proto: FoodApple - entities: - - uid: 16 + - uid: 183 components: - type: Transform - pos: 3.9853282,16.430082 + pos: -6.6863613,7.351646 parent: 179 - - uid: 849 + - uid: 351 components: - type: Transform - pos: 3.7249117,16.242453 + pos: 10.561831,21.767809 parent: 179 - - uid: 866 + - uid: 537 components: - type: Transform - pos: 3.651995,16.55517 + pos: -15.5,-0.5 parent: 179 -- proto: FoodBurgerBacon - entities: - - uid: 689 + - uid: 538 components: - type: Transform - pos: 3.3844857,6.0702233 + pos: -15.5,-0.5 parent: 179 -- proto: FoodCarrot +- proto: CableHV entities: - - uid: 850 + - uid: 1019 components: - type: Transform - pos: 3.6023045,15.67151 + pos: -6.5,-13.5 parent: 179 - - uid: 851 + - uid: 1020 components: - type: Transform - pos: 3.620745,15.015423 + pos: -6.5,-12.5 parent: 179 - - uid: 863 + - uid: 1021 components: - type: Transform - pos: 3.620745,14.389988 + pos: -6.5,-11.5 parent: 179 -- proto: FoodPizzaPineapple +- proto: CableHVStack entities: - - uid: 687 + - uid: 184 components: - type: Transform - pos: 3.5215416,6.799056 + pos: -6.665528,7.840053 parent: 179 -- proto: GasAnalyzer +- proto: CableMV entities: - - uid: 876 + - uid: 1023 components: - type: Transform - pos: 4.4732866,-0.48882532 + pos: -6.5,-13.5 parent: 179 -- proto: GasFilter - entities: - - uid: 480 + - uid: 1024 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 3.5,-3.5 + pos: -5.5,-13.5 parent: 179 -- proto: GasMixer - entities: - - uid: 747 + - uid: 1025 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 3.5,-2.5 + pos: -5.5,-14.5 parent: 179 -- proto: GasOutletInjector +- proto: CableMVStack entities: - - uid: 429 + - uid: 325 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-1.5 + pos: -6.665528,7.5601244 parent: 179 -- proto: GasPipeBend +- proto: CableTerminal entities: - - uid: 727 + - uid: 1022 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 5.5,-0.5 + pos: -6.5,-11.5 parent: 179 -- proto: GasPipeFourway +- proto: CapacitorStockPart entities: - - uid: 728 + - uid: 296 components: - type: Transform - pos: 5.5,-1.5 + pos: -4.3012447,8.817795 parent: 179 -- proto: GasPipeStraight - entities: - - uid: 749 + - uid: 700 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 5.5,-3.5 + pos: -3.8324947,8.786524 parent: 179 -- proto: GasPipeTJunction - entities: - - uid: 748 + - uid: 701 components: - type: Transform - pos: 5.5,-2.5 + pos: -3.2804112,8.786524 parent: 179 -- proto: GasPort - entities: - - uid: 457 + - uid: 704 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-0.5 + pos: -4.8741612,8.817795 parent: 179 -- proto: GasPressurePump +- proto: CaptainIDCard entities: - - uid: 171 + - uid: 726 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-3.5 + pos: 1.0820513,8.752605 parent: 179 -- proto: GasValve +- proto: CaptainSabre entities: - - uid: 168 + - uid: 381 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-2.5 + pos: -3.277628,-2.15838 parent: 179 -- proto: GasVentPump +- proto: CarbonDioxideCanister entities: - - uid: 729 + - uid: 748 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-3.5 + pos: 13.5,-4.5 parent: 179 -- proto: GasVentScrubber - entities: - - uid: 452 + - uid: 749 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-2.5 + pos: 12.5,-4.5 parent: 179 -- proto: GasVolumePump - entities: - - uid: 160 + - uid: 1316 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-1.5 + pos: 24.5,-21.5 parent: 179 -- proto: GeigerCounter +- proto: Catwalk entities: - - uid: 759 + - uid: 2 components: - type: Transform - pos: 1.760596,4.5697265 + pos: 13.5,24.5 parent: 179 -- proto: GravityGenerator - entities: - - uid: 744 + - uid: 7 components: - type: Transform - pos: 6.5,6.5 + pos: 6.5,24.5 parent: 179 -- proto: Grille - entities: - - uid: 108 + - uid: 20 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,23.5 + pos: 6.5,20.5 parent: 179 - - uid: 986 + - uid: 120 components: - type: Transform - pos: -0.5,-16.5 + rot: -1.5707963267948966 rad + pos: 6.5,18.5 parent: 179 - - uid: 987 + - uid: 246 components: - type: Transform - pos: -0.5,-15.5 + pos: -6.5,-6.5 parent: 179 - - uid: 988 + - uid: 247 components: - type: Transform - pos: -0.5,-14.5 + pos: -8.5,-6.5 parent: 179 - - uid: 1007 + - uid: 252 components: - type: Transform - pos: -3.5,-16.5 + pos: 4.5,-8.5 parent: 179 - - uid: 1008 + - uid: 269 components: - type: Transform - pos: -3.5,-15.5 + pos: 12.5,10.5 parent: 179 - - uid: 1009 + - uid: 286 components: - type: Transform - pos: -3.5,-14.5 + pos: 2.5,-11.5 parent: 179 - - uid: 1010 + - uid: 287 components: - type: Transform - pos: 2.5,-16.5 + pos: -4.5,-11.5 parent: 179 - - uid: 1011 + - uid: 308 components: - type: Transform - pos: 2.5,-15.5 + pos: -2.5,-12.5 parent: 179 - - uid: 1012 + - uid: 309 components: - type: Transform - pos: 2.5,-14.5 + pos: 1.5,-12.5 parent: 179 - - uid: 1089 + - uid: 333 components: - type: Transform - pos: 8.5,17.5 + pos: 4.5,-13.5 parent: 179 - - uid: 1090 + - uid: 334 components: - type: Transform - pos: 9.5,17.5 + pos: -5.5,-13.5 parent: 179 - - uid: 1091 + - uid: 438 components: - type: Transform - pos: 10.5,17.5 + rot: 3.141592653589793 rad + pos: -9.5,-0.5 parent: 179 - - uid: 1092 + - uid: 442 components: - type: Transform - pos: 10.5,16.5 + pos: -9.5,8.5 parent: 179 -- proto: Handcuffs - entities: - - uid: 331 + - uid: 514 components: - type: Transform - pos: -3.5805476,0.74100244 + pos: -10.5,8.5 parent: 179 -- proto: HandheldCrewMonitor - entities: - - uid: 1184 + - uid: 541 components: - type: Transform - pos: 1.6819578,7.502847 + pos: -11.5,-6.5 parent: 179 -- proto: HandheldHealthAnalyzer - entities: - - uid: 513 + - uid: 542 components: - type: Transform - pos: -5.9808183,-3.6614444 + pos: -9.5,-6.5 parent: 179 -- proto: HoloFan + - uid: 695 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -8.5,8.5 + parent: 179 +- proto: Chair entities: - - uid: 142 + - uid: 580 components: - type: Transform - pos: -8.5,7.5 + rot: 1.5707963267948966 rad + pos: 14.5,6.5 parent: 179 - missingComponents: - - TimedDespawn - - uid: 901 + - uid: 581 components: - type: Transform - pos: -10.5,7.5 + rot: 1.5707963267948966 rad + pos: 14.5,8.5 parent: 179 - missingComponents: - - TimedDespawn - - uid: 902 + - uid: 582 components: - type: Transform - pos: -9.5,7.5 + rot: 1.5707963267948966 rad + pos: 14.5,7.5 parent: 179 - missingComponents: - - TimedDespawn -- proto: HolosignWetFloor +- proto: ChairOfficeDark entities: - - uid: 848 + - uid: 380 components: - type: Transform - pos: -13.5,2.5 + rot: 3.1415926535897967 rad + pos: 0.5,-6.5 parent: 179 - - type: Fixtures - fixtures: {} - missingComponents: - - TimedDespawn - - uid: 911 +- proto: ChairOfficeLight + entities: + - uid: 576 components: - type: Transform - pos: -13.5,1.5 + rot: 4.71238898038469 rad + pos: 19.5,4.5 parent: 179 - - type: Fixtures - fixtures: {} - missingComponents: - - TimedDespawn -- proto: hydroponicsTray - entities: - - uid: 756 + - uid: 577 components: - type: Transform - pos: 2.5,14.5 + rot: 3.141592653589793 rad + pos: 20.5,5.5 parent: 179 - - uid: 757 + - uid: 578 components: - type: Transform - pos: 2.5,15.5 + rot: 4.71238898038469 rad + pos: 23.5,8.5 parent: 179 -- proto: KitchenReagentGrinder - entities: - - uid: 731 + - uid: 579 components: - type: Transform - pos: 8.5,9.5 + pos: 24.5,5.5 parent: 179 -- proto: LargeBeaker +- proto: ChemDispenser entities: - - uid: 210 + - uid: 583 components: - type: Transform - pos: 4.3272614,9.338851 + pos: 23.5,9.5 parent: 179 - - uid: 253 + - type: ContainerContainer + containers: + ReagentDispenser-beaker: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + machine_board: !type:Container + showEnts: False + occludes: True + ents: [] + machine_parts: !type:Container + showEnts: False + occludes: True + ents: [] + beakerSlot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + - uid: 750 components: - type: Transform - pos: 23.494947,7.0422435 + pos: 7.5,11.5 parent: 179 - - uid: 402 +- proto: ChemicalPayload + entities: + - uid: 432 components: - type: Transform - pos: 23.510572,7.7141185 + pos: 6.4651074,9.828774 parent: 179 - - uid: 737 +- proto: ChemMaster + entities: + - uid: 311 components: - type: Transform - pos: 4.2969,9.828774 + pos: 8.5,11.5 parent: 179 -- proto: LedLightTube +- proto: ChemMasterMachineCircuitboard entities: - - uid: 481 + - uid: 718 components: - type: Transform - pos: -3.511025,-10.35149 + pos: -4.5458,10.514079 parent: 179 -- proto: LockerBotanistFilled +- proto: CircuitImprinter entities: - - uid: 869 + - uid: 332 components: - type: Transform - pos: 2.5,16.5 + pos: -6.5,4.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: LockerChemistry +- proto: ClosetEmergencyFilledRandom entities: - - uid: 127 + - uid: 349 components: - type: Transform - pos: 27.5,6.5 + pos: 1.5,-10.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: LockerChemistryFilled - entities: - - uid: 297 + - uid: 403 components: - type: Transform - pos: 7.5,9.5 + pos: 0.5,-10.5 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: LockerChiefEngineerFilled +- proto: ClosetToolFilled entities: - - uid: 447 + - uid: 524 components: - type: Transform - pos: 7.5,2.5 + pos: -11.5,-5.5 parent: 179 - type: EntityStorage air: @@ -3922,12 +3593,10 @@ entities: - 0 - 0 - 0 -- proto: LockerElectricalSuppliesFilled - entities: - - uid: 444 + - uid: 525 components: - type: Transform - pos: 7.5,3.5 + pos: -11.5,-4.5 parent: 179 - type: EntityStorage air: @@ -3947,12 +3616,10 @@ entities: - 0 - 0 - 0 -- proto: LockerEngineerFilled - entities: - - uid: 490 + - uid: 526 components: - type: Transform - pos: 7.5,4.5 + pos: -11.5,-3.5 parent: 179 - type: EntityStorage air: @@ -3972,12 +3639,10 @@ entities: - 0 - 0 - 0 -- proto: LockerMedical - entities: - - uid: 128 + - uid: 527 components: - type: Transform - pos: 27.5,5.5 + pos: -11.5,-2.5 parent: 179 - type: EntityStorage air: @@ -3997,111 +3662,248 @@ entities: - 0 - 0 - 0 - - uid: 129 +- proto: ClothingBeltChiefEngineerFilled + entities: + - uid: 1573 components: - type: Transform - pos: 29.5,-1.5 + pos: 1.3037996,-5.2961445 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - uid: 130 +- proto: ClothingBeltUtilityFilled + entities: + - uid: 427 components: - type: Transform - pos: 30.5,-1.5 + pos: -1.895102,-10.33495 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: LockerMedicalFilled - entities: - - uid: 865 + - uid: 428 components: - type: Transform - pos: -6.5,-3.5 + pos: -1.770102,-10.63182 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: LockerMedicineFilled +- proto: ClothingHandsGlovesColorYellow entities: - - uid: 562 + - uid: 454 components: - type: Transform - pos: -5.5,-3.5 + pos: -0.78741443,4.322194 parent: 179 - - type: EntityStorage - air: - volume: 200 - immutable: False - temperature: 293.14957 - moles: - - 2.9923203 - - 11.2568245 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 - - 0 -- proto: LockerSalvageSpecialistFilled +- proto: ClothingHeadHatWelding entities: - - uid: 493 + - uid: 344 components: - type: Transform - pos: -10.5,4.5 + pos: 0.7198646,4.374314 + parent: 179 +- proto: ClothingMaskBreath + entities: + - uid: 955 + components: + - type: Transform + pos: -10.595239,6.1907988 + parent: 179 +- proto: ClothingMaskGas + entities: + - uid: 425 + components: + - type: Transform + pos: -0.2880585,-10.69432 + parent: 179 +- proto: ClothingOuterHardsuitAtmos + entities: + - uid: 270 + components: + - type: Transform + pos: -10.5426235,5.472399 + parent: 179 +- proto: ClothingOuterVest + entities: + - uid: 426 + components: + - type: Transform + pos: -0.9130585,-10.66307 + parent: 179 +- proto: ClothingShoesBootsMag + entities: + - uid: 725 + components: + - type: Transform + pos: 0.47880077,8.073378 + parent: 179 +- proto: ClothingUniformJumpsuitEngineering + entities: + - uid: 424 + components: + - type: Transform + pos: -0.6474335,-10.27245 + parent: 179 +- proto: ClownPDA + entities: + - uid: 91 + components: + - type: Transform + pos: -15.5,2.5 + parent: 179 + - uid: 762 + components: + - type: Transform + pos: -14.5,1.5 + parent: 179 + - uid: 864 + components: + - type: Transform + pos: -14.5,2.5 + parent: 179 + - uid: 912 + components: + - type: Transform + pos: -15.5,1.5 + parent: 179 +- proto: ComputerAnalysisConsole + entities: + - uid: 1083 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 15.5,23.5 + parent: 179 + - type: DeviceLinkSource + linkedPorts: + 1078: + - ArtifactAnalyzerSender: ArtifactAnalyzerReceiver +- proto: ComputerCargoOrders + entities: + - uid: 326 + components: + - type: Transform + pos: 0.5,-5.5 + parent: 179 + - uid: 996 + components: + - type: Transform + pos: -1.5,-11.5 + parent: 179 +- proto: ComputerCargoShuttle + entities: + - uid: 404 + components: + - type: Transform + pos: 0.5,-11.5 + parent: 179 +- proto: ComputerMedicalRecords + entities: + - uid: 152 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 22.5,-5.5 + parent: 179 + - uid: 591 + components: + - type: Transform + pos: 21.5,5.5 + parent: 179 +- proto: ComputerResearchAndDevelopment + entities: + - uid: 88 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 8.5,19.5 + parent: 179 +- proto: ComputerShuttleCargo + entities: + - uid: 994 + components: + - type: Transform + pos: -0.5,-11.5 + parent: 179 +- proto: ComputerSurveillanceCameraMonitor + entities: + - uid: 1185 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -8.5,1.5 + parent: 179 +- proto: ComputerTechnologyDiskTerminal + entities: + - uid: 1088 + components: + - type: Transform + pos: 13.5,16.5 + parent: 179 +- proto: ConveyorBelt + entities: + - uid: 195 + components: + - type: Transform + pos: -2.5,-15.5 + parent: 179 + - uid: 259 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 1.5,-14.5 + parent: 179 + - uid: 463 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 1.5,-16.5 + parent: 179 + - uid: 677 + components: + - type: Transform + pos: -2.5,-14.5 + parent: 179 + - uid: 716 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -1.5,11.5 + parent: 179 + - uid: 720 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -0.5,11.5 + parent: 179 + - uid: 721 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 0.5,11.5 + parent: 179 + - uid: 985 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 1.5,-13.5 + parent: 179 + - uid: 989 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 1.5,-15.5 + parent: 179 + - uid: 990 + components: + - type: Transform + pos: -2.5,-13.5 + parent: 179 + - uid: 991 + components: + - type: Transform + pos: -2.5,-16.5 + parent: 179 +- proto: CrateEngineeringToolbox + entities: + - uid: 692 + components: + - type: Transform + pos: -0.5,3.5 parent: 179 - - type: Lock - locked: False - type: EntityStorage air: volume: 200 @@ -4120,12 +3922,12 @@ entities: - 0 - 0 - 0 -- proto: LockerWeldingSuppliesFilled +- proto: CrateHydroponicsSeeds entities: - - uid: 871 + - uid: 754 components: - type: Transform - pos: 7.5,1.5 + pos: 2.5,12.5 parent: 179 - type: EntityStorage air: @@ -4145,3490 +3947,6113 @@ entities: - 0 - 0 - 0 -- proto: MachineAnomalyGenerator +- proto: CrateHydroponicsTools + entities: + - uid: 755 + components: + - type: Transform + pos: 2.5,13.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: CrateMaterialSteel + entities: + - uid: 1258 + components: + - type: Transform + pos: 7.5,-11.5 + parent: 179 + - uid: 1293 + components: + - type: Transform + pos: 7.5,-10.5 + parent: 179 +- proto: CrateMedical + entities: + - uid: 131 + components: + - type: Transform + pos: 31.5,-1.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - uid: 132 + components: + - type: Transform + pos: 32.5,-1.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: CrewMonitoringServer + entities: + - uid: 1183 + components: + - type: Transform + pos: 9.5,25.5 + parent: 179 +- proto: Crowbar + entities: + - uid: 147 + components: + - type: Transform + pos: -2.172831,4.5306726 + parent: 179 + - uid: 423 + components: + - type: Transform + pos: -2.861032,-5.524786 + parent: 179 +- proto: DebugBatteryDischarger + entities: + - uid: 711 + components: + - type: Transform + pos: 0.5,-3.5 + parent: 179 +- proto: DebugGenerator + entities: + - uid: 490 + components: + - type: Transform + pos: -6.5,-11.5 + parent: 179 +- proto: DefaultStationBeaconAISatellite + entities: + - uid: 1198 + components: + - type: Transform + pos: 8.5,-10.5 + parent: 179 +- proto: DefaultStationBeaconBotany + entities: + - uid: 1193 + components: + - type: Transform + pos: 3.5,15.5 + parent: 179 +- proto: DefaultStationBeaconChemistry + entities: + - uid: 1195 + components: + - type: Transform + pos: 7.5,10.5 + parent: 179 +- proto: DefaultStationBeaconCommand + entities: + - uid: 1196 + components: + - type: Transform + pos: 0.5,8.5 + parent: 179 +- proto: DefaultStationBeaconGravGen + entities: + - uid: 1172 + components: + - type: Transform + pos: 6.5,5.5 + parent: 179 +- proto: DefaultStationBeaconMedical + entities: + - uid: 1173 + components: + - type: Transform + pos: 19.5,5.5 + parent: 179 +- proto: DefaultStationBeaconScience + entities: + - uid: 1194 + components: + - type: Transform + pos: 12.5,20.5 + parent: 179 +- proto: DefaultStationBeaconSecurity + entities: + - uid: 1197 + components: + - type: Transform + pos: -14.5,17.5 + parent: 179 +- proto: DefaultStationBeaconSupply + entities: + - uid: 1175 + components: + - type: Transform + pos: -0.5,-11.5 + parent: 179 +- proto: DefaultStationBeaconToolRoom + entities: + - uid: 1174 + components: + - type: Transform + pos: -1.5,4.5 + parent: 179 +- proto: DisposalPipe + entities: + - uid: 717 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -0.5,10.5 + parent: 179 +- proto: DisposalTrunk + entities: + - uid: 285 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 0.5,10.5 + parent: 179 + - uid: 715 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -1.5,10.5 + parent: 179 +- proto: DisposalUnit + entities: + - uid: 719 + components: + - type: Transform + pos: -1.5,10.5 + parent: 179 +- proto: DrinkBeerglass + entities: + - uid: 688 + components: + - type: Transform + pos: 3.1981986,5.733985 + parent: 179 +- proto: DrinkColaCan + entities: + - uid: 690 + components: + - type: Transform + pos: 3.8231986,6.150942 + parent: 179 +- proto: Dropper + entities: + - uid: 730 + components: + - type: Transform + pos: 5.892191,9.4118185 + parent: 179 +- proto: EmergencyOxygenTankFilled + entities: + - uid: 956 + components: + - type: Transform + pos: -10.505015,6.711994 + parent: 179 +- proto: ExGrenade + entities: + - uid: 433 + components: + - type: Transform + pos: -3.7704864,-1.6163371 + parent: 179 +- proto: ExplosivePayload + entities: + - uid: 668 + components: + - type: Transform + pos: 6.829691,9.4118185 + parent: 179 +- proto: FaxMachineCaptain + entities: + - uid: 967 + components: + - type: Transform + pos: 9.5,12.5 + parent: 179 +- proto: FaxMachineCentcom + entities: + - uid: 968 + components: + - type: Transform + pos: 11.5,12.5 + parent: 179 +- proto: FaxMachineSyndie + entities: + - uid: 969 + components: + - type: Transform + pos: 13.5,12.5 + parent: 179 +- proto: FireAxeCabinetFilled + entities: + - uid: 1574 + components: + - type: Transform + pos: 8.5,-4.5 + parent: 179 +- proto: FireExtinguisher + entities: + - uid: 323 + components: + - type: Transform + pos: -1.297692,-5.396082 + parent: 179 + - uid: 868 + components: + - type: Transform + pos: -14.5,-1.5 + parent: 179 +- proto: FlashlightLantern + entities: + - uid: 421 + components: + - type: Transform + pos: -1.934832,-5.154238 + parent: 179 + - uid: 422 + components: + - type: Transform + pos: 1.1350493,8.198464 + parent: 179 +- proto: FloorLavaEntity + entities: + - uid: 134 + components: + - type: Transform + pos: -13.5,-3.5 + parent: 179 + - uid: 135 + components: + - type: Transform + pos: -14.5,-3.5 + parent: 179 + - uid: 141 + components: + - type: Transform + pos: -13.5,-2.5 + parent: 179 + - uid: 469 + components: + - type: Transform + pos: -14.5,-2.5 + parent: 179 +- proto: FloorWaterEntity + entities: + - uid: 136 + components: + - type: Transform + pos: -12.5,-2.5 + parent: 179 + - uid: 137 + components: + - type: Transform + pos: -12.5,-3.5 + parent: 179 +- proto: FoodApple + entities: + - uid: 16 + components: + - type: Transform + pos: 3.9853282,16.430082 + parent: 179 + - uid: 849 + components: + - type: Transform + pos: 3.7249117,16.242453 + parent: 179 + - uid: 866 + components: + - type: Transform + pos: 3.651995,16.55517 + parent: 179 +- proto: FoodBurgerBacon + entities: + - uid: 689 + components: + - type: Transform + pos: 3.3844857,6.0702233 + parent: 179 +- proto: FoodCarrot + entities: + - uid: 850 + components: + - type: Transform + pos: 3.6023045,15.67151 + parent: 179 + - uid: 851 + components: + - type: Transform + pos: 3.620745,15.015423 + parent: 179 + - uid: 863 + components: + - type: Transform + pos: 3.620745,14.389988 + parent: 179 +- proto: FoodPizzaPineapple + entities: + - uid: 687 + components: + - type: Transform + pos: 3.5215416,6.799056 + parent: 179 +- proto: FrezonCanister + entities: + - uid: 1308 + components: + - type: Transform + pos: 9.5,-5.5 + parent: 179 + - uid: 1309 + components: + - type: Transform + pos: 10.5,-5.5 + parent: 179 + - uid: 1318 + components: + - type: Transform + pos: 24.5,-15.5 + parent: 179 +- proto: GasAnalyzer + entities: + - uid: 1571 + components: + - type: Transform + pos: 7.3675013,-6.725376 + parent: 179 +- proto: GasMinerAmmonia + entities: + - uid: 1204 + components: + - type: Transform + pos: 23.5,-19.5 + parent: 179 +- proto: GasMinerCarbonDioxide + entities: + - uid: 1205 + components: + - type: Transform + pos: 23.5,-21.5 + parent: 179 +- proto: GasMinerFrezon + entities: + - uid: 1223 + components: + - type: Transform + pos: 23.5,-15.5 + parent: 179 +- proto: GasMinerNitrogenStation + entities: + - uid: 1222 + components: + - type: Transform + pos: 23.5,-9.5 + parent: 179 +- proto: GasMinerNitrousOxide + entities: + - uid: 1225 + components: + - type: Transform + pos: 23.5,-17.5 + parent: 179 +- proto: GasMinerOxygenStation + entities: + - uid: 1199 + components: + - type: Transform + pos: 23.5,-7.5 + parent: 179 +- proto: GasMinerPlasma + entities: + - uid: 1221 + components: + - type: Transform + pos: 23.5,-11.5 + parent: 179 +- proto: GasMinerTritium + entities: + - uid: 1224 + components: + - type: Transform + pos: 23.5,-13.5 + parent: 179 +- proto: GasMinerWaterVapor + entities: + - uid: 1202 + components: + - type: Transform + pos: 23.5,-23.5 + parent: 179 +- proto: GasMixer + entities: + - uid: 1480 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 19.5,-9.5 + parent: 179 + - type: GasMixer + inletTwoConcentration: 0.20999998 + inletOneConcentration: 0.79 +- proto: GasOutletInjector + entities: + - uid: 406 + components: + - type: Transform + pos: 24.5,-21.5 + parent: 179 + - uid: 409 + components: + - type: Transform + pos: 24.5,-17.5 + parent: 179 + - uid: 410 + components: + - type: Transform + pos: 24.5,-23.5 + parent: 179 + - uid: 411 + components: + - type: Transform + pos: 24.5,-15.5 + parent: 179 + - uid: 413 + components: + - type: Transform + pos: 24.5,-11.5 + parent: 179 + - uid: 414 + components: + - type: Transform + pos: 24.5,-19.5 + parent: 179 + - uid: 429 + components: + - type: Transform + pos: 24.5,-7.5 + parent: 179 + - uid: 444 + components: + - type: Transform + pos: 24.5,-9.5 + parent: 179 + - uid: 447 + components: + - type: Transform + pos: 24.5,-13.5 + parent: 179 +- proto: GasPassiveVent + entities: + - uid: 1319 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-23.5 + parent: 179 + - uid: 1320 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-21.5 + parent: 179 + - uid: 1321 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-19.5 + parent: 179 + - uid: 1322 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-15.5 + parent: 179 + - uid: 1323 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-17.5 + parent: 179 + - uid: 1324 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-13.5 + parent: 179 + - uid: 1325 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-11.5 + parent: 179 + - uid: 1326 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-9.5 + parent: 179 + - uid: 1327 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 22.5,-7.5 + parent: 179 + - uid: 1544 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 17.5,-26.5 + parent: 179 +- proto: GasPipeBend + entities: + - uid: 407 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-16.5 + parent: 179 + - uid: 408 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-14.5 + parent: 179 + - uid: 412 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-8.5 + parent: 179 + - uid: 415 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-10.5 + parent: 179 + - uid: 418 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-12.5 + parent: 179 + - uid: 1439 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-18.5 + parent: 179 + - uid: 1440 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-20.5 + parent: 179 + - uid: 1441 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-22.5 + parent: 179 + - uid: 1442 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-24.5 + parent: 179 + - uid: 1482 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 18.5,-7.5 + parent: 179 + - uid: 1542 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 9.5,-9.5 + parent: 179 +- proto: GasPipeStraight + entities: + - uid: 1443 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-24.5 + parent: 179 + - uid: 1444 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-24.5 + parent: 179 + - uid: 1445 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-22.5 + parent: 179 + - uid: 1446 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-22.5 + parent: 179 + - uid: 1447 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-20.5 + parent: 179 + - uid: 1448 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-20.5 + parent: 179 + - uid: 1449 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-18.5 + parent: 179 + - uid: 1450 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-16.5 + parent: 179 + - uid: 1451 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-14.5 + parent: 179 + - uid: 1452 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-12.5 + parent: 179 + - uid: 1453 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-10.5 + parent: 179 + - uid: 1454 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 22.5,-8.5 + parent: 179 + - uid: 1455 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-8.5 + parent: 179 + - uid: 1456 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-10.5 + parent: 179 + - uid: 1457 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-12.5 + parent: 179 + - uid: 1458 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-14.5 + parent: 179 + - uid: 1460 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-16.5 + parent: 179 + - uid: 1461 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 23.5,-18.5 + parent: 179 + - uid: 1483 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 20.5,-7.5 + parent: 179 + - uid: 1484 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 19.5,-8.5 + parent: 179 + - uid: 1485 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-8.5 + parent: 179 + - uid: 1486 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 18.5,-9.5 + parent: 179 + - uid: 1487 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 18.5,-9.5 + parent: 179 + - uid: 1522 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-21.5 + parent: 179 + - uid: 1523 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-20.5 + parent: 179 + - uid: 1524 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-19.5 + parent: 179 + - uid: 1525 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-18.5 + parent: 179 + - uid: 1526 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-17.5 + parent: 179 + - uid: 1527 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-16.5 + parent: 179 + - uid: 1528 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-15.5 + parent: 179 + - uid: 1529 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-14.5 + parent: 179 + - uid: 1530 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-12.5 + parent: 179 + - uid: 1531 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-13.5 + parent: 179 + - uid: 1532 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-10.5 + parent: 179 + - uid: 1533 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-11.5 + parent: 179 + - uid: 1534 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 17.5,-9.5 + parent: 179 + - uid: 1535 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 16.5,-9.5 + parent: 179 + - uid: 1536 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 15.5,-9.5 + parent: 179 + - uid: 1537 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 14.5,-9.5 + parent: 179 + - uid: 1538 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 13.5,-9.5 + parent: 179 + - uid: 1539 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 12.5,-9.5 + parent: 179 + - uid: 1540 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 11.5,-9.5 + parent: 179 + - uid: 1541 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 10.5,-9.5 + parent: 179 + - uid: 1546 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 17.5,-25.5 + parent: 179 + - uid: 1547 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 12.5,-22.5 + parent: 179 + - uid: 1548 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 13.5,-22.5 + parent: 179 + - uid: 1549 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 14.5,-22.5 + parent: 179 + - uid: 1550 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 15.5,-22.5 + parent: 179 + - uid: 1551 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 16.5,-22.5 + parent: 179 + - uid: 1552 + components: + - type: Transform + pos: 17.5,-23.5 + parent: 179 +- proto: GasPipeTJunction + entities: + - uid: 1479 + components: + - type: Transform + pos: 20.5,-9.5 + parent: 179 + - uid: 1481 + components: + - type: Transform + pos: 19.5,-7.5 + parent: 179 + - uid: 1553 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 17.5,-22.5 + parent: 179 +- proto: GasPressurePump + entities: + - uid: 1459 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-7.5 + parent: 179 + - uid: 1462 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-9.5 + parent: 179 + - uid: 1463 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-11.5 + parent: 179 + - uid: 1464 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-13.5 + parent: 179 + - uid: 1465 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-15.5 + parent: 179 + - uid: 1466 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-17.5 + parent: 179 + - uid: 1467 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-19.5 + parent: 179 + - uid: 1468 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-21.5 + parent: 179 + - uid: 1469 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 21.5,-23.5 + parent: 179 + - uid: 1470 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-24.5 + parent: 179 + - uid: 1471 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-22.5 + parent: 179 + - uid: 1472 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-20.5 + parent: 179 + - uid: 1473 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-18.5 + parent: 179 + - uid: 1474 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-16.5 + parent: 179 + - uid: 1475 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-14.5 + parent: 179 + - uid: 1476 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-12.5 + parent: 179 + - uid: 1477 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-10.5 + parent: 179 + - uid: 1478 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 21.5,-8.5 + parent: 179 +- proto: GasThermoMachineFreezer + entities: + - uid: 480 + components: + - type: Transform + pos: 9.5,-7.5 + parent: 179 + - uid: 616 + components: + - type: Transform + pos: 10.5,-7.5 + parent: 179 +- proto: GasThermoMachineHeater + entities: + - uid: 483 + components: + - type: Transform + pos: 13.5,-7.5 + parent: 179 + - uid: 1568 + components: + - type: Transform + pos: 12.5,-7.5 + parent: 179 +- proto: GasValve + entities: + - uid: 1545 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 17.5,-24.5 + parent: 179 +- proto: GasVentPump + entities: + - uid: 1521 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-22.5 + parent: 179 +- proto: GasVentScrubber + entities: + - uid: 1543 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 11.5,-22.5 + parent: 179 +- proto: GeigerCounter + entities: + - uid: 759 + components: + - type: Transform + pos: 1.760596,4.5697265 + parent: 179 +- proto: GravityGenerator + entities: + - uid: 744 + components: + - type: Transform + pos: 6.5,6.5 + parent: 179 +- proto: Grille + entities: + - uid: 108 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 14.5,23.5 + parent: 179 + - uid: 986 + components: + - type: Transform + pos: -0.5,-16.5 + parent: 179 + - uid: 987 + components: + - type: Transform + pos: -0.5,-15.5 + parent: 179 + - uid: 988 + components: + - type: Transform + pos: -0.5,-14.5 + parent: 179 + - uid: 1007 + components: + - type: Transform + pos: -3.5,-16.5 + parent: 179 + - uid: 1008 + components: + - type: Transform + pos: -3.5,-15.5 + parent: 179 + - uid: 1009 + components: + - type: Transform + pos: -3.5,-14.5 + parent: 179 + - uid: 1010 + components: + - type: Transform + pos: 2.5,-16.5 + parent: 179 + - uid: 1011 + components: + - type: Transform + pos: 2.5,-15.5 + parent: 179 + - uid: 1012 + components: + - type: Transform + pos: 2.5,-14.5 + parent: 179 + - uid: 1089 + components: + - type: Transform + pos: 8.5,17.5 + parent: 179 + - uid: 1090 + components: + - type: Transform + pos: 9.5,17.5 + parent: 179 + - uid: 1091 + components: + - type: Transform + pos: 10.5,17.5 + parent: 179 + - uid: 1092 + components: + - type: Transform + pos: 10.5,16.5 + parent: 179 +- proto: Handcuffs + entities: + - uid: 331 + components: + - type: Transform + pos: -3.5805476,0.74100244 + parent: 179 +- proto: HandheldHealthAnalyzer + entities: + - uid: 513 + components: + - type: Transform + pos: -5.9808183,-3.6614444 + parent: 179 +- proto: HoloFan + entities: + - uid: 142 + components: + - type: Transform + pos: -8.5,7.5 + parent: 179 + - type: Fixtures + fixtures: {} + - type: Airtight + noAirWhenFullyAirBlocked: True + missingComponents: + - TimedDespawn + - uid: 901 + components: + - type: Transform + pos: -10.5,7.5 + parent: 179 + - type: Fixtures + fixtures: {} + - type: Airtight + noAirWhenFullyAirBlocked: True + missingComponents: + - TimedDespawn + - uid: 902 + components: + - type: Transform + pos: -9.5,7.5 + parent: 179 + - type: Fixtures + fixtures: {} + - type: Airtight + noAirWhenFullyAirBlocked: True + missingComponents: + - TimedDespawn +- proto: HolofanProjectorEmpty + entities: + - uid: 1569 + components: + - type: Transform + pos: 7.2439203,-7.545966 + parent: 179 +- proto: HolosignWetFloor + entities: + - uid: 848 + components: + - type: Transform + pos: -13.5,2.5 + parent: 179 + - type: Fixtures + fixtures: {} + missingComponents: + - TimedDespawn + - uid: 911 + components: + - type: Transform + pos: -13.5,1.5 + parent: 179 + - type: Fixtures + fixtures: {} + missingComponents: + - TimedDespawn +- proto: hydroponicsTray + entities: + - uid: 756 + components: + - type: Transform + pos: 2.5,14.5 + parent: 179 + - uid: 757 + components: + - type: Transform + pos: 2.5,15.5 + parent: 179 +- proto: Igniter + entities: + - uid: 728 + components: + - type: Transform + pos: 13.546334,-14.688479 + parent: 179 +- proto: KitchenReagentGrinder + entities: + - uid: 731 + components: + - type: Transform + pos: 8.5,9.5 + parent: 179 +- proto: LargeBeaker + entities: + - uid: 210 + components: + - type: Transform + pos: 4.3272614,9.338851 + parent: 179 + - uid: 253 + components: + - type: Transform + pos: 23.494947,7.0422435 + parent: 179 + - uid: 402 + components: + - type: Transform + pos: 23.510572,7.7141185 + parent: 179 + - uid: 737 + components: + - type: Transform + pos: 4.2969,9.828774 + parent: 179 +- proto: LedLightTube + entities: + - uid: 481 + components: + - type: Transform + pos: -3.511025,-10.35149 + parent: 179 +- proto: LockerAtmosphericsFilledHardsuit + entities: + - uid: 1278 + components: + - type: Transform + pos: 7.5,-12.5 + parent: 179 +- proto: LockerBotanistFilled + entities: + - uid: 869 + components: + - type: Transform + pos: 2.5,16.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: LockerChemistry + entities: + - uid: 127 + components: + - type: Transform + pos: 27.5,6.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: LockerChemistryFilled + entities: + - uid: 297 + components: + - type: Transform + pos: 7.5,9.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: LockerChiefEngineerFilledHardsuit + entities: + - uid: 1564 + components: + - type: Transform + pos: 7.5,-13.5 + parent: 179 +- proto: LockerElectricalSuppliesFilled + entities: + - uid: 405 + components: + - type: Transform + pos: 5.5,-6.5 + parent: 179 +- proto: LockerEngineerFilledHardsuit + entities: + - uid: 458 + components: + - type: Transform + pos: 5.5,-5.5 + parent: 179 +- proto: LockerMedical + entities: + - uid: 128 + components: + - type: Transform + pos: 27.5,5.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - uid: 129 + components: + - type: Transform + pos: 29.5,-1.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - uid: 130 + components: + - type: Transform + pos: 30.5,-1.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: LockerMedicalFilled + entities: + - uid: 865 + components: + - type: Transform + pos: -6.5,-3.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: LockerMedicineFilled + entities: + - uid: 562 + components: + - type: Transform + pos: -5.5,-3.5 + parent: 179 + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: LockerSalvageSpecialistFilled + entities: + - uid: 493 + components: + - type: Transform + pos: -10.5,4.5 + parent: 179 + - type: Lock + locked: False + - type: EntityStorage + air: + volume: 200 + immutable: False + temperature: 293.14957 + moles: + - 2.9923203 + - 11.2568245 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 +- proto: LockerWeldingSuppliesFilled + entities: + - uid: 457 + components: + - type: Transform + pos: 5.5,-7.5 + parent: 179 +- proto: MachineAnomalyGenerator + entities: + - uid: 1071 + components: + - type: Transform + pos: 16.5,25.5 + parent: 179 +- proto: MachineAnomalyVessel + entities: + - uid: 1087 + components: + - type: Transform + pos: 15.5,19.5 + parent: 179 +- proto: MachineArtifactAnalyzer + entities: + - uid: 1078 + components: + - type: Transform + pos: 12.5,24.5 + parent: 179 +- proto: MachineFrame + entities: + - uid: 533 + components: + - type: Transform + pos: -5.5,10.5 + parent: 179 +- proto: MedicalScanner + entities: + - uid: 592 + components: + - type: Transform + pos: 18.5,-1.5 + parent: 179 + - type: ContainerContainer + containers: + MedicalScanner-bodyContainer: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + machine_board: !type:Container + showEnts: False + occludes: True + ents: [] + machine_parts: !type:Container + showEnts: False + occludes: True + ents: [] + scanner-bodyContainer: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + - uid: 593 + components: + - type: Transform + pos: 18.5,-5.5 + parent: 179 + - type: ContainerContainer + containers: + MedicalScanner-bodyContainer: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + machine_board: !type:Container + showEnts: False + occludes: True + ents: [] + machine_parts: !type:Container + showEnts: False + occludes: True + ents: [] + scanner-bodyContainer: !type:ContainerSlot + showEnts: False + occludes: True + ent: null +- proto: MedkitFilled + entities: + - uid: 153 + components: + - type: Transform + pos: 13.632214,1.5673001 + parent: 179 + - uid: 154 + components: + - type: Transform + pos: 13.460339,0.6141751 + parent: 179 + - uid: 321 + components: + - type: Transform + pos: 3.8440318,4.425983 + parent: 179 +- proto: MicroManipulatorStockPart + entities: + - uid: 455 + components: + - type: Transform + pos: -6.337244,8.838643 + parent: 179 + - uid: 456 + components: + - type: Transform + pos: -5.920577,8.817795 + parent: 179 + - uid: 484 + components: + - type: Transform + pos: -5.5039105,8.838643 + parent: 179 + - uid: 712 + components: + - type: Transform + pos: -6.7434506,8.817795 + parent: 179 + - uid: 959 + components: + - type: Transform + pos: -4.752078,10.904018 + parent: 179 +- proto: ModularGrenade + entities: + - uid: 435 + components: + - type: Transform + pos: 6.829691,9.860046 + parent: 179 +- proto: MopBucket + entities: + - uid: 696 + components: + - type: Transform + pos: 7.5,16.5 + parent: 179 +- proto: MopItem + entities: + - uid: 328 + components: + - type: Transform + pos: 7.6382103,16.08618 + parent: 179 + - type: SolutionContainerManager + solutions: + absorbed: + temperature: 293.15 + canReact: True + maxVol: 50 + name: null + reagents: + - data: null + ReagentId: Water + Quantity: 25 +- proto: Multitool + entities: + - uid: 307 + components: + - type: Transform + pos: -1.249865,-10.43489 + parent: 179 + - uid: 430 + components: + - type: Transform + pos: -0.6298993,4.7431083 + parent: 179 + - type: NetworkConfigurator + devices: + 'UID: 31739': 801 +- proto: NitrogenCanister + entities: + - uid: 871 + components: + - type: Transform + pos: 9.5,-4.5 + parent: 179 + - uid: 876 + components: + - type: Transform + pos: 10.5,-4.5 + parent: 179 + - uid: 1315 + components: + - type: Transform + pos: 24.5,-9.5 + parent: 179 +- proto: NitrousOxideCanister + entities: + - uid: 617 + components: + - type: Transform + pos: 10.5,-3.5 + parent: 179 + - uid: 1302 + components: + - type: Transform + pos: 9.5,-3.5 + parent: 179 + - uid: 1314 + components: + - type: Transform + pos: 24.5,-17.5 + parent: 179 +- proto: Ointment + entities: + - uid: 148 + components: + - type: Transform + pos: 18.77326,6.653532 + parent: 179 + - uid: 149 + components: + - type: Transform + pos: 18.49201,6.059782 + parent: 179 +- proto: OxygenCanister + entities: + - uid: 747 + components: + - type: Transform + pos: 13.5,-3.5 + parent: 179 + - uid: 875 + components: + - type: Transform + pos: 12.5,-3.5 + parent: 179 + - uid: 1310 + components: + - type: Transform + pos: 24.5,-7.5 + parent: 179 +- proto: PaperBin10 + entities: + - uid: 977 + components: + - type: Transform + pos: 10.5,12.5 + parent: 179 +- proto: PartRodMetal + entities: + - uid: 133 + components: + - type: Transform + pos: -3.4717777,7.672426 + parent: 179 +- proto: Pen + entities: + - uid: 978 + components: + - type: Transform + pos: 10.893699,12.7794075 + parent: 179 + - uid: 979 + components: + - type: Transform + pos: 10.862433,12.602201 + parent: 179 +- proto: PlasmaCanister + entities: + - uid: 255 + components: + - type: Transform + pos: 10.5,-2.5 + parent: 179 + - uid: 256 + components: + - type: Transform + pos: 9.5,-2.5 + parent: 179 + - uid: 1311 + components: + - type: Transform + pos: 24.5,-11.5 + parent: 179 +- proto: PlasticFlapsAirtightClear + entities: + - uid: 997 + components: + - type: Transform + pos: -2.5,-16.5 + parent: 179 + - uid: 998 + components: + - type: Transform + pos: -2.5,-14.5 + parent: 179 + - uid: 999 + components: + - type: Transform + pos: 1.5,-16.5 + parent: 179 + - uid: 1000 + components: + - type: Transform + pos: 1.5,-14.5 + parent: 179 +- proto: PlayerStationAi + entities: + - uid: 14 + components: + - type: Transform + pos: -5.5,-5.5 + parent: 179 +- proto: PowerCellAntiqueProto + entities: + - uid: 1570 + components: + - type: Transform + pos: 7.5772533,-7.233466 + parent: 179 +- proto: PowerCellHigh + entities: + - uid: 567 + components: + - type: Transform + pos: -4.76583,8.265328 + parent: 179 +- proto: PowerCellHyper + entities: + - uid: 703 + components: + - type: Transform + pos: -4.3179135,8.275752 + parent: 179 +- proto: PowerCellMedium + entities: + - uid: 186 + components: + - type: Transform + pos: -2.67511,-10.351 + parent: 179 + - uid: 187 + components: + - type: Transform + pos: -2.55011,-10.6635 + parent: 179 + - uid: 360 + components: + - type: Transform + pos: -3.7970803,8.275752 + parent: 179 +- proto: PowerCellRecharger + entities: + - uid: 709 + components: + - type: Transform + pos: -1.5,-3.5 + parent: 179 +- proto: PowerCellSmall + entities: + - uid: 705 + components: + - type: Transform + pos: -3.3182633,8.234056 + parent: 179 +- proto: Poweredlight + entities: + - uid: 93 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 31.5,-5.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 249 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 16.5,-24.5 + parent: 179 + - uid: 536 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -11.5,-0.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 546 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 17.5,-5.5 + parent: 179 + - uid: 660 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 29.5,1.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 661 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 27.5,7.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 663 + components: + - type: Transform + pos: 22.5,2.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 666 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 2.5,23.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 670 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,18.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 673 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -11.5,-5.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 674 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -15.5,-5.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 675 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -15.5,-0.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 676 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -6.5,-10.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 681 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 23.5,-5.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 682 + components: + - type: Transform + pos: 13.5,2.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 683 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 17.5,4.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 1075 + components: + - type: Transform + pos: 16.5,27.5 + parent: 179 + - uid: 1076 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 15.5,22.5 + parent: 179 + - uid: 1425 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 9.5,-3.5 + parent: 179 + - uid: 1426 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 13.5,-3.5 + parent: 179 + - uid: 1427 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 7.5,-7.5 + parent: 179 + - uid: 1428 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 7.5,-14.5 + parent: 179 + - uid: 1429 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 7.5,-18.5 + parent: 179 + - uid: 1430 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 9.5,-24.5 + parent: 179 + - uid: 1431 + components: + - type: Transform + pos: 14.5,-7.5 + parent: 179 + - uid: 1432 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-23.5 + parent: 179 + - uid: 1433 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-19.5 + parent: 179 + - uid: 1434 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-15.5 + parent: 179 + - uid: 1435 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-11.5 + parent: 179 + - uid: 1436 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 24.5,-7.5 + parent: 179 + - uid: 1437 + components: + - type: Transform + pos: 19.5,-7.5 + parent: 179 +- proto: PoweredlightExterior + entities: + - uid: 1557 + components: + - type: Transform + pos: 16.5,-26.5 + parent: 179 +- proto: PoweredLightPostSmall + entities: + - uid: 1438 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 15.5,-17.5 + parent: 179 +- proto: PoweredSmallLight + entities: + - uid: 163 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 6.5,26.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 166 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 11.5,24.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 167 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 17.5,17.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 388 + components: + - type: Transform + pos: 0.5,-5.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 417 + components: + - type: Transform + pos: -4.5,-5.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 534 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: -9.5,-5.5 + parent: 179 + - type: ApcPowerReceiver + powerLoad: 0 + - uid: 727 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 5.5,-10.5 + parent: 179 +- proto: Protolathe + entities: + - uid: 12 + components: + - type: Transform + pos: 13.5,21.5 + parent: 179 + - uid: 384 + components: + - type: Transform + pos: -6.5,6.5 + parent: 179 +- proto: Railing + entities: + - uid: 665 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -15.5,9.5 + parent: 179 + - uid: 927 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,10.5 + parent: 179 + - uid: 928 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,11.5 + parent: 179 + - uid: 929 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,12.5 + parent: 179 + - uid: 930 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,13.5 + parent: 179 + - uid: 931 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,14.5 + parent: 179 + - uid: 932 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,15.5 + parent: 179 + - uid: 933 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: -14.5,16.5 + parent: 179 + - uid: 934 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -13.5,17.5 + parent: 179 + - uid: 935 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -12.5,17.5 + parent: 179 + - uid: 936 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -11.5,17.5 + parent: 179 + - uid: 937 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -10.5,17.5 + parent: 179 + - uid: 938 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -9.5,17.5 + parent: 179 + - uid: 939 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -8.5,17.5 + parent: 179 + - uid: 940 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -7.5,17.5 + parent: 179 + - uid: 941 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -6.5,17.5 + parent: 179 + - uid: 942 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -5.5,17.5 + parent: 179 + - uid: 943 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -4.5,17.5 + parent: 179 + - uid: 944 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -3.5,17.5 + parent: 179 + - uid: 945 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -2.5,17.5 + parent: 179 + - uid: 946 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -1.5,17.5 + parent: 179 + - uid: 947 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: -0.5,17.5 + parent: 179 + - uid: 948 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 0.5,17.5 + parent: 179 +- proto: RailingCornerSmall + entities: + - uid: 919 + components: + - type: Transform + pos: -14.5,9.5 + parent: 179 +- proto: RCDExperimental + entities: + - uid: 1575 + components: + - type: Transform + pos: 1.6787996,-5.6922684 + parent: 179 +- proto: ReinforcedWindow + entities: + - uid: 1084 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 14.5,23.5 + parent: 179 + - uid: 1093 + components: + - type: Transform + pos: 8.5,17.5 + parent: 179 + - uid: 1094 + components: + - type: Transform + pos: 9.5,17.5 + parent: 179 + - uid: 1095 + components: + - type: Transform + pos: 10.5,17.5 + parent: 179 + - uid: 1096 + components: + - type: Transform + pos: 10.5,16.5 + parent: 179 +- proto: ResearchAndDevelopmentServer + entities: + - uid: 17 + components: + - type: Transform + pos: 8.5,18.5 + parent: 179 +- proto: ResearchDiskDebug + entities: + - uid: 54 + components: + - type: Transform + pos: 9.532393,18.446417 + parent: 179 +- proto: RubberStampCaptain + entities: + - uid: 982 + components: + - type: Transform + pos: 12.800895,12.664745 + parent: 179 +- proto: RubberStampCentcom + entities: + - uid: 980 + components: + - type: Transform + pos: 12.186007,12.716865 + parent: 179 +- proto: RubberStampSyndicate + entities: + - uid: 981 + components: + - type: Transform + pos: 12.436131,12.550082 + parent: 179 +- proto: Screen + entities: + - uid: 1192 + components: + - type: Transform + pos: 4.5,-14.5 + parent: 179 +- proto: Screwdriver + entities: + - uid: 431 + components: + - type: Transform + pos: -1.235331,4.739151 + parent: 179 +- proto: SeedExtractor + entities: + - uid: 65 + components: + - type: Transform + pos: 2.5,17.5 + parent: 179 +- proto: SheetGlass + entities: + - uid: 354 + components: + - type: Transform + pos: 8.57603,21.566113 + parent: 179 + - uid: 479 + components: + - type: Transform + pos: -5.13758,7.5586076 + parent: 179 + - uid: 529 + components: + - type: Transform + pos: -15.5,-3.5 + parent: 179 + - uid: 564 + components: + - type: Transform + pos: -15.5,-1.5 + parent: 179 + - uid: 565 + components: + - type: Transform + pos: -15.5,-1.5 + parent: 179 + - uid: 566 + components: + - type: Transform + pos: -15.5,-3.5 + parent: 179 +- proto: SheetGlass1 + entities: + - uid: 960 + components: + - type: Transform + pos: -3.981244,10.799851 + parent: 179 +- proto: SheetPGlass + entities: + - uid: 416 + components: + - type: Transform + pos: -0.5,8.5 + parent: 179 +- proto: SheetPlasma + entities: + - uid: 1077 + components: + - type: Transform + pos: 17.485096,24.503635 + parent: 179 +- proto: SheetPlasteel + entities: + - uid: 478 + components: + - type: Transform + pos: -4.0129576,7.6107273 + parent: 179 +- proto: SheetPlastic + entities: + - uid: 79 + components: + - type: Transform + pos: 8.951309,21.511908 + parent: 179 + - uid: 181 + components: + - type: Transform + pos: -4.54383,7.579455 + parent: 179 +- proto: SheetRPGlass + entities: + - uid: 182 + components: + - type: Transform + pos: -0.5,7.5 + parent: 179 +- proto: SheetSteel + entities: + - uid: 205 + components: + - type: Transform + pos: -15.5,-5.5 + parent: 179 + - uid: 305 + components: + - type: Transform + pos: 9.435405,21.503613 + parent: 179 + - uid: 382 + components: + - type: Transform + pos: -15.5,-5.5 + parent: 179 + - uid: 473 + components: + - type: Transform + pos: -5.6834707,7.529523 + parent: 179 + - uid: 543 + components: + - type: Transform + pos: -15.5,-4.5 + parent: 179 + - uid: 544 + components: + - type: Transform + pos: -15.5,-4.5 + parent: 179 +- proto: SignalButton + entities: + - uid: 1013 + components: + - type: Transform + pos: -4.5,-14.5 + parent: 179 + - type: DeviceLinkSource + linkedPorts: + 202: + - Pressed: Toggle + 984: + - Pressed: Toggle + - uid: 1014 + components: + - type: Transform + pos: 3.5,-14.5 + parent: 179 + - type: DeviceLinkSource + linkedPorts: + 697: + - Pressed: Toggle + 698: + - Pressed: Toggle + - uid: 1560 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 14.5,-12.5 + parent: 179 + - type: DeviceLinkSource + linkedPorts: + 728: + - Pressed: Trigger +- proto: SignAtmos + entities: + - uid: 1301 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 6.5,-7.5 + parent: 179 + - uid: 1558 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 17.5,-6.5 + parent: 179 +- proto: SignCargoDock + entities: + - uid: 1046 + components: + - type: Transform + pos: 4.5,-4.5 + parent: 179 +- proto: SignCryogenics + entities: + - uid: 1298 + components: + - type: Transform + rot: -1.5707963267948966 rad + pos: 25.5,-15.5 + parent: 179 +- proto: SignDanger entities: - - uid: 1071 + - uid: 1203 components: - type: Transform - pos: 16.5,25.5 + rot: -1.5707963267948966 rad + pos: 25.5,-19.5 parent: 179 -- proto: MachineAnomalyVessel +- proto: SignFlammable entities: - - uid: 1087 + - uid: 1297 components: - type: Transform - pos: 15.5,19.5 + rot: -1.5707963267948966 rad + pos: 25.5,-13.5 parent: 179 -- proto: MachineArtifactAnalyzer - entities: - - uid: 1078 + - uid: 1299 components: - type: Transform - pos: 12.5,24.5 + rot: -1.5707963267948966 rad + pos: 25.5,-11.5 parent: 179 -- proto: MachineFrame +- proto: SignSpace entities: - - uid: 533 + - uid: 1291 components: - type: Transform - pos: -5.5,10.5 + pos: 6.5,-19.5 parent: 179 -- proto: MedicalScanner + - uid: 1555 + components: + - type: Transform + pos: 6.5,-14.5 + parent: 179 + - uid: 1563 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 19.5,-25.5 + parent: 179 +- proto: SmallLight entities: - - uid: 592 + - uid: 1048 components: - type: Transform - pos: 18.5,-1.5 + rot: 1.5707963267948966 rad + pos: -2.5,-15.5 parent: 179 - - type: ContainerContainer - containers: - MedicalScanner-bodyContainer: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - machine_board: !type:Container - showEnts: False - occludes: True - ents: [] - machine_parts: !type:Container - showEnts: False - occludes: True - ents: [] - scanner-bodyContainer: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - - uid: 593 + - uid: 1049 components: - type: Transform - pos: 18.5,-5.5 + rot: -1.5707963267948966 rad + pos: 1.5,-15.5 parent: 179 - - type: ContainerContainer - containers: - MedicalScanner-bodyContainer: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - machine_board: !type:Container - showEnts: False - occludes: True - ents: [] - machine_parts: !type:Container - showEnts: False - occludes: True - ents: [] - scanner-bodyContainer: !type:ContainerSlot - showEnts: False - occludes: True - ent: null -- proto: MedkitFilled +- proto: SMESBasic entities: - - uid: 153 + - uid: 1017 components: - type: Transform - pos: 13.632214,1.5673001 + pos: -6.5,-12.5 parent: 179 - - uid: 154 +- proto: SodaDispenser + entities: + - uid: 751 components: - type: Transform - pos: 13.460339,0.6141751 + pos: 8.5,12.5 parent: 179 - - uid: 321 +- proto: SpawnMobCorgiMouse + entities: + - uid: 1050 components: - type: Transform - pos: 3.8440318,4.425983 + pos: 3.5,8.5 parent: 179 -- proto: MicroManipulatorStockPart +- proto: SpawnMobCrabAtmos entities: - - uid: 455 + - uid: 729 components: - type: Transform - pos: -6.337244,8.838643 + pos: 15.5,-10.5 parent: 179 - - uid: 456 +- proto: SpawnMobHuman + entities: + - uid: 138 components: - type: Transform - pos: -5.920577,8.817795 + pos: -6.5,-0.5 parent: 179 - - uid: 484 + - uid: 139 components: - type: Transform - pos: -5.5039105,8.838643 + pos: -6.5,0.5 parent: 179 - - uid: 712 + - uid: 140 components: - type: Transform - pos: -6.7434506,8.817795 + pos: 3.5,7.5 parent: 179 - - uid: 959 +- proto: SpawnPointCaptain + entities: + - uid: 954 components: - type: Transform - pos: -4.752078,10.904018 + pos: -4.5,4.5 parent: 179 -- proto: ModularGrenade +- proto: SpawnPointLatejoin entities: - - uid: 435 + - uid: 961 components: - type: Transform - pos: 6.829691,9.860046 + pos: -3.5,3.5 parent: 179 -- proto: MopBucket +- proto: SpawnPointObserver entities: - - uid: 696 + - uid: 679 components: - type: Transform - pos: 7.5,16.5 + pos: -3.5,4.5 parent: 179 -- proto: MopItem +- proto: Spear entities: - - uid: 328 + - uid: 185 components: - type: Transform - pos: 7.6382103,16.08618 + pos: -3.4579864,-1.9811735 parent: 179 - - type: SolutionContainerManager - solutions: - absorbed: - temperature: 293.15 - canReact: True - maxVol: 50 - name: null - reagents: - - data: null - ReagentId: Water - Quantity: 25 -- proto: Multitool +- proto: SprayBottleWater entities: - - uid: 307 + - uid: 903 components: - type: Transform - pos: -1.249865,-10.43489 + pos: 6.985283,16.424004 parent: 179 - - uid: 430 +- proto: SprayPainter + entities: + - uid: 1572 components: - type: Transform - pos: -0.6298993,4.7431083 + pos: 7.5948057,-5.356733 parent: 179 - - type: NetworkConfigurator - devices: - 'UID: 31739': 801 -- proto: NitrogenCanister +- proto: Stimpack entities: - - uid: 459 + - uid: 462 components: - type: Transform - pos: 7.5,-1.5 + pos: 3.6877818,5.312015 parent: 179 -- proto: Ointment +- proto: Stool entities: - - uid: 148 + - uid: 383 components: - type: Transform - pos: 18.77326,6.653532 + pos: -1.5,-9.5 parent: 179 - - uid: 149 + - uid: 387 components: - type: Transform - pos: 18.49201,6.059782 + rot: 3.141592653589793 rad + pos: -2.5,-6.5 parent: 179 -- proto: OxygenCanister +- proto: StorageCanister entities: - - uid: 340 + - uid: 1285 components: - type: Transform - pos: 7.5,-3.5 + pos: 10.5,-6.5 parent: 179 -- proto: PaperBin10 + - uid: 1286 + components: + - type: Transform + pos: 9.5,-6.5 + parent: 179 + - uid: 1287 + components: + - type: Transform + pos: 12.5,-6.5 + parent: 179 + - uid: 1288 + components: + - type: Transform + pos: 13.5,-6.5 + parent: 179 +- proto: Stunbaton entities: - - uid: 977 + - uid: 434 components: - type: Transform - pos: 10.5,12.5 + pos: -3.1734612,-2.6066077 parent: 179 -- proto: PartRodMetal +- proto: SubstationBasic entities: - - uid: 133 + - uid: 1018 components: - type: Transform - pos: -3.4717777,7.672426 + pos: -6.5,-13.5 parent: 179 -- proto: Pen +- proto: SurveillanceCameraGeneral entities: - - uid: 978 + - uid: 1186 components: - type: Transform - pos: 10.893699,12.7794075 + rot: 3.141592653589793 rad + pos: -2.5,10.5 parent: 179 - - uid: 979 + - uid: 1188 components: - type: Transform - pos: 10.862433,12.602201 + rot: -1.5707963267948966 rad + pos: 15.5,21.5 parent: 179 -- proto: PlasmaCanister + - uid: 1190 + components: + - type: Transform + rot: 3.141592653589793 rad + pos: 27.5,10.5 + parent: 179 +- proto: SurveillanceCameraRouterGeneral entities: - - uid: 461 + - uid: 1189 components: - type: Transform - pos: 7.5,-2.5 + pos: 9.5,24.5 parent: 179 -- proto: PlasticFlapsAirtightClear +- proto: Syringe entities: - - uid: 997 + - uid: 460 components: - type: Transform - pos: -2.5,-16.5 + pos: 3.2502818,4.5823417 parent: 179 - - uid: 998 + - uid: 738 components: - type: Transform - pos: -2.5,-14.5 + pos: 5.767191,9.787079 parent: 179 - - uid: 999 +- proto: Table + entities: + - uid: 63 components: - type: Transform - pos: 1.5,-16.5 + pos: 9.5,21.5 parent: 179 - - uid: 1000 + - uid: 64 components: - type: Transform - pos: 1.5,-14.5 + pos: 10.5,21.5 parent: 179 -- proto: PlayerStationAi - entities: - - uid: 14 + - uid: 67 components: - type: Transform - pos: -5.5,-5.5 + pos: 8.5,21.5 parent: 179 -- proto: PortableGeneratorSuperPacman - entities: - - uid: 1016 + - uid: 76 components: - type: Transform - pos: -6.5,-11.5 + pos: 7.5,-7.5 parent: 179 -- proto: PowerCellHigh - entities: - - uid: 567 + - uid: 92 components: - type: Transform - pos: -4.76583,8.265328 + pos: 11.5,21.5 parent: 179 -- proto: PowerCellHyper - entities: - - uid: 703 + - uid: 143 components: - type: Transform - pos: -4.3179135,8.275752 + pos: 33.5,-3.5 parent: 179 -- proto: PowerCellMedium - entities: - - uid: 186 + - uid: 144 components: - type: Transform - pos: -2.67511,-10.351 + pos: 33.5,-2.5 parent: 179 - - uid: 187 + - uid: 145 components: - type: Transform - pos: -2.55011,-10.6635 + pos: 33.5,-1.5 parent: 179 - - uid: 360 + - uid: 161 components: - type: Transform - pos: -3.7970803,8.275752 + pos: 24.5,-5.5 parent: 179 -- proto: PowerCellRecharger - entities: - - uid: 709 + - uid: 162 components: - type: Transform - pos: -1.5,-3.5 + pos: 23.5,-5.5 parent: 179 -- proto: PowerCellSmall - entities: - - uid: 705 + - uid: 172 components: - type: Transform - pos: -3.3182633,8.234056 + rot: -1.5707963267948966 rad + pos: 4.5,9.5 parent: 179 -- proto: Poweredlight - entities: - - uid: 93 + - uid: 180 components: - type: Transform - rot: 3.141592653589793 rad - pos: 31.5,-5.5 + pos: -4.5,10.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 536 + - uid: 262 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -11.5,-0.5 + pos: -3.5,-5.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 660 + - uid: 263 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 29.5,1.5 + pos: -2.5,-5.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 661 + - uid: 264 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 27.5,7.5 + pos: -1.5,-5.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 663 + - uid: 265 components: - type: Transform - pos: 22.5,2.5 + pos: -0.5,-5.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 666 + - uid: 267 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 2.5,23.5 + pos: 23.5,5.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 670 + - uid: 268 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 13.5,18.5 + pos: 23.5,6.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 673 + - uid: 298 components: - type: Transform rot: -1.5707963267948966 rad - pos: -11.5,-5.5 + pos: 6.5,9.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 674 + - uid: 299 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -15.5,-5.5 + rot: -1.5707963267948966 rad + pos: 5.5,9.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 675 + - uid: 300 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -15.5,-0.5 + rot: -1.5707963267948966 rad + pos: 8.5,9.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 676 + - uid: 312 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -6.5,-10.5 + pos: -3.5,-10.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 678 + - uid: 313 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 7.5,-1.5 + pos: -2.5,-10.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 680 + - uid: 314 components: - type: Transform - rot: 3.141592653589793 rad - pos: 16.5,-5.5 + pos: -1.5,-10.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 681 + - uid: 315 components: - type: Transform - rot: 3.141592653589793 rad - pos: 23.5,-5.5 + pos: -0.5,-10.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 682 + - uid: 355 components: - type: Transform - pos: 13.5,2.5 + pos: -6.5,7.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 683 + - uid: 356 components: - type: Transform - rot: 3.141592653589793 rad - pos: 17.5,4.5 + pos: -5.5,7.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 1075 + - uid: 357 components: - type: Transform - pos: 16.5,27.5 + pos: -4.5,7.5 parent: 179 - - uid: 1076 + - uid: 358 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 15.5,22.5 + pos: -3.5,7.5 parent: 179 -- proto: PoweredSmallLight - entities: - - uid: 163 + - uid: 361 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,26.5 + pos: -0.5,7.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 166 + - uid: 362 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 11.5,24.5 + pos: 0.5,7.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 167 + - uid: 363 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 17.5,17.5 + pos: 1.5,7.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 388 + - uid: 366 components: - type: Transform - pos: 0.5,-5.5 + pos: -2.5,4.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 417 + - uid: 367 components: - type: Transform - pos: -4.5,-5.5 + pos: -1.5,4.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 483 + - uid: 368 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-9.5 + pos: -0.5,4.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 - - uid: 534 + - uid: 371 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -9.5,-5.5 + pos: 1.5,4.5 parent: 179 - - type: ApcPowerReceiver - powerLoad: 0 -- proto: Protolathe - entities: - - uid: 12 + - uid: 385 components: - type: Transform - pos: 13.5,21.5 + pos: -3.5,-2.5 parent: 179 - - uid: 384 + - uid: 386 components: - type: Transform - pos: -6.5,6.5 + pos: -3.5,-1.5 parent: 179 -- proto: Railing - entities: - - uid: 665 + - uid: 440 components: - type: Transform - rot: 3.141592653589793 rad - pos: -15.5,9.5 + pos: 0.5,4.5 parent: 179 - - uid: 927 + - uid: 445 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,10.5 + pos: -3.5,-0.5 parent: 179 - - uid: 928 + - uid: 448 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,11.5 + pos: 3.5,5.5 parent: 179 - - uid: 929 + - uid: 452 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,12.5 + pos: 1.5,-5.5 parent: 179 - - uid: 930 + - uid: 461 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,13.5 + pos: 7.5,-6.5 parent: 179 - - uid: 931 + - uid: 465 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,14.5 + pos: 1.5,8.5 parent: 179 - - uid: 932 + - uid: 466 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,15.5 + pos: 0.5,8.5 parent: 179 - - uid: 933 + - uid: 467 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,16.5 + pos: -3.5,8.5 parent: 179 - - uid: 934 + - uid: 468 components: - type: Transform - rot: 3.141592653589793 rad - pos: -13.5,17.5 + pos: -0.5,8.5 parent: 179 - - uid: 935 + - uid: 470 components: - type: Transform - rot: 3.141592653589793 rad - pos: -12.5,17.5 + pos: -6.5,8.5 parent: 179 - - uid: 936 + - uid: 471 components: - type: Transform - rot: 3.141592653589793 rad - pos: -11.5,17.5 + pos: -5.5,8.5 parent: 179 - - uid: 937 + - uid: 472 components: - type: Transform - rot: 3.141592653589793 rad - pos: -10.5,17.5 + pos: -4.5,8.5 parent: 179 - - uid: 938 + - uid: 515 components: - type: Transform - rot: 3.141592653589793 rad - pos: -9.5,17.5 + pos: -15.5,-5.5 parent: 179 - - uid: 939 + - uid: 516 components: - type: Transform - rot: 3.141592653589793 rad - pos: -8.5,17.5 + pos: -15.5,-1.5 parent: 179 - - uid: 940 + - uid: 520 components: - type: Transform - rot: 3.141592653589793 rad - pos: -7.5,17.5 + pos: -15.5,-0.5 parent: 179 - - uid: 941 + - uid: 559 components: - type: Transform - rot: 3.141592653589793 rad - pos: -6.5,17.5 + pos: -15.5,-4.5 parent: 179 - - uid: 942 + - uid: 560 components: - type: Transform - rot: 3.141592653589793 rad - pos: -5.5,17.5 + pos: -15.5,-3.5 parent: 179 - - uid: 943 + - uid: 568 components: - type: Transform - rot: 3.141592653589793 rad - pos: -4.5,17.5 + pos: 18.5,4.5 parent: 179 - - uid: 944 + - uid: 569 components: - type: Transform - rot: 3.141592653589793 rad - pos: -3.5,17.5 + pos: 21.5,6.5 parent: 179 - - uid: 945 + - uid: 570 components: - type: Transform - rot: 3.141592653589793 rad - pos: -2.5,17.5 + pos: 20.5,6.5 parent: 179 - - uid: 946 + - uid: 571 components: - type: Transform - rot: 3.141592653589793 rad - pos: -1.5,17.5 + pos: 18.5,6.5 parent: 179 - - uid: 947 + - uid: 572 components: - type: Transform - rot: 3.141592653589793 rad - pos: -0.5,17.5 + pos: 19.5,6.5 parent: 179 - - uid: 948 + - uid: 573 components: - type: Transform - rot: 3.141592653589793 rad - pos: 0.5,17.5 + pos: 18.5,5.5 parent: 179 -- proto: RailingCornerSmall - entities: - - uid: 919 + - uid: 574 components: - type: Transform - pos: -14.5,9.5 + pos: 22.5,8.5 parent: 179 -- proto: ReinforcedWindow - entities: - - uid: 1084 + - uid: 575 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 14.5,23.5 + pos: 24.5,4.5 parent: 179 - - uid: 1093 + - uid: 584 components: - type: Transform - pos: 8.5,17.5 + pos: 23.5,7.5 parent: 179 - - uid: 1094 + - uid: 586 components: - type: Transform - pos: 9.5,17.5 + pos: 25.5,10.5 parent: 179 - - uid: 1095 + - uid: 587 components: - type: Transform - pos: 10.5,17.5 + pos: 23.5,10.5 parent: 179 - - uid: 1096 + - uid: 588 components: - type: Transform - pos: 10.5,16.5 + pos: 24.5,10.5 parent: 179 -- proto: ResearchAndDevelopmentServer - entities: - - uid: 17 + - uid: 589 components: - type: Transform - pos: 8.5,18.5 + pos: 26.5,10.5 parent: 179 -- proto: ResearchDiskDebug - entities: - - uid: 54 + - uid: 590 components: - type: Transform - pos: 9.532393,18.446417 + pos: 27.5,10.5 parent: 179 -- proto: RubberStampCaptain - entities: - - uid: 982 + - uid: 594 components: - type: Transform - pos: 12.800895,12.664745 + pos: 13.5,2.5 parent: 179 -- proto: RubberStampCentcom - entities: - - uid: 980 + - uid: 595 components: - type: Transform - pos: 12.186007,12.716865 + pos: 13.5,0.5 parent: 179 -- proto: RubberStampSyndicate - entities: - - uid: 981 + - uid: 596 components: - type: Transform - pos: 12.436131,12.550082 + pos: 13.5,1.5 parent: 179 -- proto: Screen - entities: - - uid: 1192 + - uid: 684 components: - type: Transform - pos: 4.5,-14.5 + pos: -3.5,0.5 parent: 179 -- proto: Screwdriver - entities: - - uid: 431 + - uid: 685 components: - type: Transform - pos: -1.235331,4.739151 + pos: 3.5,4.5 parent: 179 -- proto: SeedExtractor - entities: - - uid: 65 + - uid: 686 components: - type: Transform - pos: 2.5,17.5 + pos: 3.5,6.5 parent: 179 -- proto: SheetGlass - entities: - - uid: 354 + - uid: 706 components: - type: Transform - pos: 8.57603,21.566113 + pos: -1.5,-3.5 parent: 179 - - uid: 479 + - uid: 707 components: - type: Transform - pos: -5.13758,7.5586076 + pos: -0.5,-3.5 parent: 179 - - uid: 529 + - uid: 710 components: - type: Transform - pos: -15.5,-3.5 + pos: 0.5,-3.5 parent: 179 - - uid: 564 + - uid: 1561 components: - type: Transform - pos: -15.5,-1.5 + pos: 7.5,-5.5 parent: 179 - - uid: 565 +- proto: TableGlass + entities: + - uid: 964 components: - type: Transform - pos: -15.5,-1.5 + pos: 9.5,12.5 parent: 179 - - uid: 566 + - uid: 965 components: - type: Transform - pos: -15.5,-3.5 + pos: 11.5,12.5 parent: 179 -- proto: SheetGlass1 - entities: - - uid: 960 + - uid: 966 components: - type: Transform - pos: -3.981244,10.799851 + pos: 13.5,12.5 parent: 179 -- proto: SheetPGlass - entities: - - uid: 416 + - uid: 975 components: - type: Transform - pos: -0.5,8.5 + pos: 10.5,12.5 parent: 179 -- proto: SheetPlasma - entities: - - uid: 1077 + - uid: 976 components: - type: Transform - pos: 17.485096,24.503635 + pos: 12.5,12.5 parent: 179 -- proto: SheetPlasteel +- proto: TargetClown entities: - - uid: 478 + - uid: 459 components: - type: Transform - pos: -4.0129576,7.6107273 + pos: 7.5,-0.5 parent: 179 -- proto: SheetPlastic +- proto: TargetHuman entities: - - uid: 79 + - uid: 159 components: - type: Transform - pos: 8.951309,21.511908 + pos: -6.5,-1.5 parent: 179 - - uid: 181 + - uid: 248 components: - type: Transform - pos: -4.54383,7.579455 + pos: 7.5,1.5 parent: 179 -- proto: SheetRPGlass +- proto: TargetSyndicate entities: - - uid: 182 + - uid: 613 components: - type: Transform - pos: -0.5,7.5 + pos: 7.5,-2.5 parent: 179 -- proto: SheetSteel +- proto: TegCenter entities: - - uid: 205 + - uid: 1576 components: - type: Transform - pos: -15.5,-5.5 + rot: 1.5707963267948966 rad + pos: 13.5,-18.5 parent: 179 - - uid: 305 +- proto: TegCirculator + entities: + - uid: 1577 components: - type: Transform - pos: 9.435405,21.503613 + pos: 14.5,-18.5 parent: 179 - - uid: 382 + - type: PointLight + color: '#FF3300FF' + - uid: 1578 components: - type: Transform - pos: -15.5,-5.5 + rot: 3.141592653589793 rad + pos: 12.5,-18.5 parent: 179 - - uid: 473 + - type: PointLight + color: '#FF3300FF' +- proto: TelecomServerFilled + entities: + - uid: 963 components: - type: Transform - pos: -5.6834707,7.529523 + pos: -3.5,10.5 parent: 179 - - uid: 543 +- proto: TimerTrigger + entities: + - uid: 482 components: - type: Transform - pos: -15.5,-4.5 + pos: 6.413024,9.39097 parent: 179 - - uid: 544 +- proto: ToolboxElectricalFilled + entities: + - uid: 365 components: - type: Transform - pos: -15.5,-4.5 + pos: 0.4993378,3.429311 parent: 179 -- proto: SignalButton - entities: - - uid: 1013 + - uid: 419 components: - type: Transform - pos: -4.5,-14.5 + pos: -0.8099712,-5.21454 parent: 179 - - type: DeviceLinkSource - linkedPorts: - 202: - - Pressed: Toggle - 984: - - Pressed: Toggle - - uid: 1014 + - uid: 420 components: - type: Transform - pos: 3.5,-14.5 + pos: -0.5597038,-5.679647 parent: 179 - - type: DeviceLinkSource - linkedPorts: - 697: - - Pressed: Toggle - 698: - - Pressed: Toggle -- proto: SignCargoDock +- proto: ToolboxMechanicalFilled entities: - - uid: 1046 + - uid: 364 components: - type: Transform - pos: 4.5,-4.5 + pos: 1.452203,3.4605832 parent: 179 -- proto: SmallLight +- proto: ToyRubberDuck entities: - - uid: 1048 + - uid: 723 components: - type: Transform - rot: 1.5707963267948966 rad - pos: -2.5,-15.5 + pos: -1.6653601,11.616664 parent: 179 - - uid: 1049 +- proto: trayScanner + entities: + - uid: 758 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 1.5,-15.5 + pos: 1.354346,4.548879 parent: 179 -- proto: SMESBasic +- proto: TritiumCanister entities: - - uid: 1017 + - uid: 254 components: - type: Transform - pos: -6.5,-12.5 + pos: 13.5,-2.5 parent: 179 -- proto: SodaDispenser - entities: - - uid: 751 + - uid: 619 components: - type: Transform - pos: 8.5,12.5 + pos: 12.5,-2.5 parent: 179 -- proto: SpawnMobHuman - entities: - - uid: 138 + - uid: 1312 components: - type: Transform - pos: -6.5,-0.5 + pos: 24.5,-13.5 parent: 179 - - uid: 139 +- proto: TwoWayLever + entities: + - uid: 699 components: - type: Transform - pos: -6.5,0.5 + pos: -3.5,-13.5 parent: 179 - - uid: 140 + - type: DeviceLinkSource + linkedPorts: + 990: + - Left: Forward + - Right: Reverse + - Middle: Off + 195: + - Left: Forward + - Right: Reverse + - Middle: Off + 991: + - Left: Forward + - Right: Reverse + - Middle: Off + - uid: 722 components: - type: Transform - pos: 3.5,7.5 + pos: 1.5,11.5 parent: 179 -- proto: SpawnMobCorgiMouse - entities: - - uid: 1050 + - type: DeviceLinkSource + linkedPorts: + 721: + - Left: Forward + - Right: Reverse + - Middle: Off + 720: + - Left: Forward + - Right: Reverse + - Middle: Off + 716: + - Left: Forward + - Right: Reverse + - Middle: Off + - uid: 983 components: - type: Transform - pos: 3.5,8.5 + pos: 2.5,-13.5 parent: 179 -- proto: SpawnPointCaptain - entities: - - uid: 954 + - type: DeviceLinkSource + linkedPorts: + 985: + - Left: Forward + - Right: Reverse + - Middle: Off + 259: + - Left: Forward + - Right: Reverse + - Middle: Off + 989: + - Left: Forward + - Right: Reverse + - Middle: Off + 463: + - Left: Forward + - Right: Reverse + - Middle: Off + - uid: 1290 components: - type: Transform - pos: -4.5,4.5 + pos: 7.5,-14.5 parent: 179 -- proto: SpawnPointLatejoin - entities: - - uid: 961 + - type: TwoWayLever + nextSignalLeft: True + - type: DeviceLinkSource + linkedPorts: + 1234: + - Left: Open + - Right: Open + - Middle: Close + 1233: + - Left: Open + - Right: Open + - Middle: Close + 1232: + - Left: Open + - Right: Open + - Middle: Close + 728: + - Left: Trigger + - Right: Trigger + - Middle: Trigger + - uid: 1499 + components: + - type: Transform + pos: 11.5,-12.5 + parent: 179 + - type: DeviceLinkSource + linkedPorts: + 1385: + - Left: Open + - Right: Open + - Middle: Close + - uid: 1520 components: - type: Transform - pos: -3.5,3.5 + pos: 7.5,-18.5 parent: 179 -- proto: SpawnPointObserver + - type: DeviceLinkSource + linkedPorts: + 1230: + - Left: Open + - Right: Open + - Middle: Close +- proto: UnfinishedMachineFrame entities: - - uid: 679 + - uid: 522 components: - type: Transform - pos: -3.5,4.5 + pos: -6.5,10.5 parent: 179 -- proto: Spear +- proto: UniformPrinter entities: - - uid: 185 + - uid: 443 components: - type: Transform - pos: -3.4579864,-1.9811735 + pos: -7.5,4.5 parent: 179 -- proto: SprayBottleWater +- proto: VendingMachineCigs entities: - - uid: 903 + - uid: 870 components: - type: Transform - pos: 6.985283,16.424004 + pos: -14.5,4.5 parent: 179 -- proto: Stimpack +- proto: VendingMachineEngivend entities: - - uid: 462 + - uid: 441 components: - type: Transform - pos: 3.6877818,5.312015 + pos: -11.5,4.5 parent: 179 -- proto: Stool - entities: - - uid: 383 + - uid: 523 components: - type: Transform - pos: -1.5,-9.5 + pos: -11.5,-1.5 parent: 179 - - uid: 387 + - uid: 1567 components: - type: Transform - rot: 3.141592653589793 rad - pos: -2.5,-6.5 + pos: 5.5,-11.5 parent: 179 -- proto: Stunbaton + - type: ActionGrant + actions: + - ActionVendingThrow + - ActionVendingThrow + - ActionVendingThrow + - ActionVendingThrow +- proto: VendingMachineMedical entities: - - uid: 434 + - uid: 156 components: - type: Transform - pos: -3.1734612,-2.6066077 + pos: 25.5,-5.5 parent: 179 -- proto: SubstationBasic - entities: - - uid: 1018 + - uid: 157 components: - type: Transform - pos: -6.5,-13.5 + pos: 27.5,-5.5 parent: 179 -- proto: SurveillanceCameraGeneral - entities: - - uid: 1186 + - uid: 158 components: - type: Transform - rot: 3.141592653589793 rad - pos: -2.5,10.5 + pos: 29.5,3.5 parent: 179 - - uid: 1188 + - uid: 521 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 15.5,21.5 + pos: -12.5,4.5 parent: 179 - - uid: 1190 +- proto: VendingMachineSalvage + entities: + - uid: 485 components: - type: Transform - rot: 3.141592653589793 rad - pos: 27.5,10.5 + pos: -15.5,4.5 parent: 179 -- proto: SurveillanceCameraRouterGeneral +- proto: VendingMachineSec entities: - - uid: 1189 + - uid: 874 components: - type: Transform - pos: 9.5,24.5 + pos: -13.5,4.5 parent: 179 -- proto: Syringe +- proto: VendingMachineTankDispenserEngineering entities: - - uid: 460 + - uid: 615 components: - type: Transform - pos: 3.2502818,4.5823417 + pos: 17.5,-7.5 parent: 179 - - uid: 738 +- proto: VendingMachineTankDispenserEVA + entities: + - uid: 614 components: - type: Transform - pos: 5.767191,9.787079 + pos: 14.5,-7.5 parent: 179 -- proto: Table +- proto: VendingMachineVendomat entities: - - uid: 63 + - uid: 1565 components: - type: Transform - pos: 9.5,21.5 + pos: 5.5,-12.5 parent: 179 - - uid: 64 +- proto: VendingMachineYouTool + entities: + - uid: 350 components: - type: Transform - pos: 10.5,21.5 + pos: -11.5,-0.5 parent: 179 - - uid: 67 + - uid: 1566 components: - type: Transform - pos: 8.5,21.5 + pos: 5.5,-10.5 parent: 179 - - uid: 92 + - type: ActionGrant + actions: + - ActionVendingThrow + - ActionVendingThrow + - ActionVendingThrow + - ActionVendingThrow +- proto: WallSolid + entities: + - uid: 3 components: - type: Transform - pos: 11.5,21.5 + pos: 1.5,18.5 parent: 179 - - uid: 143 + - uid: 4 components: - type: Transform - pos: 33.5,-3.5 + pos: 11.5,26.5 parent: 179 - - uid: 144 + - uid: 5 components: - type: Transform - pos: 33.5,-2.5 + pos: 18.5,24.5 parent: 179 - - uid: 145 + - uid: 6 components: - type: Transform - pos: 33.5,-1.5 + pos: 20.5,15.5 parent: 179 - - uid: 161 + - uid: 8 components: - type: Transform - pos: 24.5,-5.5 + pos: 14.5,19.5 parent: 179 - - uid: 162 + - uid: 9 components: - type: Transform - pos: 23.5,-5.5 + pos: 1.5,19.5 parent: 179 - - uid: 172 + - uid: 10 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,9.5 + pos: 18.5,26.5 parent: 179 - - uid: 180 + - uid: 11 components: - type: Transform - pos: -4.5,10.5 + pos: 13.5,26.5 parent: 179 - - uid: 262 + - uid: 13 components: - type: Transform - pos: -3.5,-5.5 + pos: 25.5,15.5 parent: 179 - - uid: 263 + - uid: 18 components: - type: Transform - pos: -2.5,-5.5 + pos: 4.5,26.5 parent: 179 - - uid: 264 + - uid: 19 components: - type: Transform - pos: -1.5,-5.5 + pos: 18.5,25.5 parent: 179 - - uid: 265 + - uid: 21 components: - type: Transform - pos: -0.5,-5.5 + pos: 10.5,26.5 parent: 179 - - uid: 267 + - uid: 22 components: - type: Transform - pos: 23.5,5.5 + pos: 26.5,15.5 parent: 179 - - uid: 268 + - uid: 25 components: - type: Transform - pos: 23.5,6.5 + pos: 1.5,21.5 parent: 179 - - uid: 298 + - uid: 27 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,9.5 + pos: 8.5,-0.5 parent: 179 - - uid: 299 + - uid: 28 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 5.5,9.5 + pos: 18.5,18.5 parent: 179 - - uid: 300 + - uid: 29 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 8.5,9.5 + pos: 18.5,21.5 parent: 179 - - uid: 312 + - uid: 30 components: - type: Transform - pos: -3.5,-10.5 + pos: 1.5,22.5 parent: 179 - - uid: 313 + - uid: 31 components: - type: Transform - pos: -2.5,-10.5 + pos: 1.5,20.5 parent: 179 - - uid: 314 + - uid: 32 components: - type: Transform - pos: -1.5,-10.5 + pos: 18.5,19.5 parent: 179 - - uid: 315 + - uid: 33 components: - type: Transform - pos: -0.5,-10.5 + pos: 23.5,15.5 parent: 179 - - uid: 355 + - uid: 34 components: - type: Transform - pos: -6.5,7.5 + pos: 12.5,22.5 parent: 179 - - uid: 356 + - uid: 35 components: - type: Transform - pos: -5.5,7.5 + pos: 27.5,15.5 parent: 179 - - uid: 357 + - uid: 36 components: - type: Transform - pos: -4.5,7.5 + pos: 7.5,22.5 parent: 179 - - uid: 358 + - uid: 37 components: - type: Transform - pos: -3.5,7.5 + pos: 14.5,22.5 parent: 179 - - uid: 361 + - uid: 38 components: - type: Transform - pos: -0.5,7.5 + pos: 10.5,23.5 parent: 179 - - uid: 362 + - uid: 39 components: - type: Transform - pos: 0.5,7.5 + pos: 10.5,24.5 parent: 179 - - uid: 363 + - uid: 40 components: - type: Transform - pos: 1.5,7.5 + pos: 8.5,26.5 parent: 179 - - uid: 366 + - uid: 41 components: - type: Transform - pos: -2.5,4.5 + pos: 10.5,25.5 parent: 179 - - uid: 367 + - uid: 42 components: - type: Transform - pos: -1.5,4.5 + pos: 18.5,22.5 parent: 179 - - uid: 368 + - uid: 43 components: - type: Transform - pos: -0.5,4.5 + pos: 14.5,27.5 parent: 179 - - uid: 371 + - uid: 44 components: - type: Transform - pos: 1.5,4.5 + pos: 14.5,26.5 parent: 179 - - uid: 385 + - uid: 45 components: - type: Transform - pos: -3.5,-2.5 + pos: 1.5,16.5 parent: 179 - - uid: 386 + - uid: 46 components: - type: Transform - pos: -3.5,-1.5 + pos: 18.5,27.5 parent: 179 - - uid: 440 + - uid: 49 components: - type: Transform - pos: 0.5,4.5 + pos: 7.5,28.5 parent: 179 - - uid: 445 + - uid: 50 components: - type: Transform - pos: -3.5,-0.5 + pos: 13.5,22.5 parent: 179 - - uid: 448 + - uid: 51 components: - type: Transform - pos: 3.5,5.5 + pos: 12.5,26.5 parent: 179 - - uid: 465 + - uid: 52 components: - type: Transform - pos: 1.5,8.5 + pos: 1.5,15.5 parent: 179 - - uid: 466 + - uid: 53 components: - type: Transform - pos: 0.5,8.5 + pos: 9.5,26.5 parent: 179 - - uid: 467 + - uid: 55 components: - type: Transform - pos: -3.5,8.5 + pos: 24.5,15.5 parent: 179 - - uid: 468 + - uid: 56 components: - type: Transform - pos: -0.5,8.5 + pos: 14.5,25.5 parent: 179 - - uid: 470 + - uid: 57 components: - type: Transform - pos: -6.5,8.5 + pos: 14.5,21.5 parent: 179 - - uid: 471 + - uid: 60 components: - type: Transform - pos: -5.5,8.5 + pos: 7.5,21.5 parent: 179 - - uid: 472 + - uid: 61 components: - type: Transform - pos: -4.5,8.5 + pos: 18.5,20.5 parent: 179 - - uid: 515 + - uid: 62 components: - type: Transform - pos: -15.5,-5.5 + pos: 18.5,23.5 parent: 179 - - uid: 516 + - uid: 66 components: - type: Transform - pos: -15.5,-1.5 + pos: 18.5,17.5 parent: 179 - - uid: 520 + - uid: 68 components: - type: Transform - pos: -15.5,-0.5 + pos: 18.5,28.5 parent: 179 - - uid: 559 + - uid: 69 components: - type: Transform - pos: -15.5,-4.5 + pos: 28.5,15.5 parent: 179 - - uid: 560 + - uid: 71 components: - type: Transform - pos: -15.5,-3.5 + pos: 11.5,22.5 parent: 179 - - uid: 568 + - uid: 72 components: - type: Transform - pos: 18.5,4.5 + pos: 1.5,17.5 parent: 179 - - uid: 569 + - uid: 73 components: - type: Transform - pos: 21.5,6.5 + pos: 14.5,28.5 parent: 179 - - uid: 570 + - uid: 74 components: - type: Transform - pos: 20.5,6.5 + pos: 10.5,22.5 parent: 179 - - uid: 571 + - uid: 75 components: - type: Transform - pos: 18.5,6.5 + pos: 9.5,22.5 parent: 179 - - uid: 572 + - uid: 78 components: - type: Transform - pos: 19.5,6.5 + pos: 21.5,15.5 parent: 179 - - uid: 573 + - uid: 80 components: - type: Transform - pos: 18.5,5.5 + pos: 18.5,16.5 parent: 179 - - uid: 574 + - uid: 81 components: - type: Transform - pos: 22.5,8.5 + pos: 18.5,15.5 parent: 179 - - uid: 575 + - uid: 82 components: - type: Transform - pos: 24.5,4.5 + pos: 14.5,18.5 parent: 179 - - uid: 584 + - uid: 83 components: - type: Transform - pos: 23.5,7.5 + pos: 4.5,28.5 parent: 179 - - uid: 586 + - uid: 84 components: - type: Transform - pos: 25.5,10.5 + pos: 7.5,26.5 parent: 179 - - uid: 587 + - uid: 85 components: - type: Transform - pos: 23.5,10.5 + pos: 1.5,23.5 parent: 179 - - uid: 588 + - uid: 86 components: - type: Transform - pos: 24.5,10.5 + pos: 17.5,15.5 parent: 179 - - uid: 589 + - uid: 89 components: - type: Transform - pos: 26.5,10.5 + pos: 22.5,15.5 parent: 179 - - uid: 590 + - uid: 95 components: - type: Transform - pos: 27.5,10.5 + pos: 8.5,22.5 parent: 179 - - uid: 594 + - uid: 96 components: - type: Transform - pos: 13.5,2.5 + pos: 7.5,27.5 parent: 179 - - uid: 595 + - uid: 98 components: - type: Transform - pos: 13.5,0.5 + pos: 4.5,25.5 parent: 179 - - uid: 596 + - uid: 99 components: - type: Transform - pos: 13.5,1.5 + pos: 17.5,18.5 parent: 179 - - uid: 684 + - uid: 100 components: - type: Transform - pos: -3.5,0.5 + pos: 19.5,15.5 parent: 179 - - uid: 685 + - uid: 101 components: - type: Transform - pos: 3.5,4.5 + pos: 4.5,27.5 parent: 179 - - uid: 686 + - uid: 103 components: - type: Transform - pos: 3.5,6.5 + pos: 14.5,17.5 parent: 179 - - uid: 706 + - uid: 104 components: - type: Transform - pos: -1.5,-3.5 + pos: 14.5,16.5 parent: 179 - - uid: 707 + - uid: 105 components: - type: Transform - pos: -0.5,-3.5 + pos: 15.5,15.5 parent: 179 - - uid: 710 + - uid: 106 components: - type: Transform - pos: 0.5,-3.5 + pos: 14.5,15.5 parent: 179 -- proto: TableGlass - entities: - - uid: 964 + - uid: 107 components: - type: Transform - pos: 9.5,12.5 + pos: 13.5,15.5 parent: 179 - - uid: 965 + - uid: 109 components: - type: Transform - pos: 11.5,12.5 + pos: 11.5,15.5 parent: 179 - - uid: 966 + - uid: 110 components: - type: Transform - pos: 13.5,12.5 + pos: 10.5,15.5 parent: 179 - - uid: 975 + - uid: 112 components: - type: Transform - pos: 10.5,12.5 + pos: 7.5,19.5 parent: 179 - - uid: 976 + - uid: 113 components: - type: Transform - pos: 12.5,12.5 + pos: 7.5,18.5 parent: 179 -- proto: TargetHuman - entities: - - uid: 159 + - uid: 114 components: - type: Transform - pos: -6.5,-1.5 + pos: 7.5,17.5 parent: 179 -- proto: TelecomServerFilled - entities: - - uid: 963 + - uid: 117 components: - type: Transform - pos: -3.5,10.5 + pos: 5.5,18.5 parent: 179 -- proto: TimerTrigger - entities: - - uid: 482 + - uid: 118 components: - type: Transform - pos: 6.413024,9.39097 + pos: 5.5,19.5 parent: 179 -- proto: ToolboxElectricalFilled - entities: - - uid: 365 + - uid: 121 components: - type: Transform - pos: 0.4993378,3.429311 + pos: 4.5,19.5 parent: 179 - - uid: 419 + - uid: 122 components: - type: Transform - pos: -0.8099712,-5.21454 + pos: 4.5,20.5 parent: 179 - - uid: 420 + - uid: 123 components: - type: Transform - pos: -0.5597038,-5.679647 + pos: 4.5,21.5 parent: 179 -- proto: ToolboxMechanicalFilled - entities: - - uid: 364 + - uid: 124 components: - type: Transform - pos: 1.452203,3.4605832 + pos: 4.5,22.5 parent: 179 -- proto: ToyRubberDuck - entities: - - uid: 723 + - uid: 125 components: - type: Transform - pos: -1.6653601,11.616664 + pos: 4.5,23.5 parent: 179 -- proto: trayScanner - entities: - - uid: 758 + - uid: 126 components: - type: Transform - pos: 1.354346,4.548879 + pos: 4.5,24.5 parent: 179 -- proto: TwoWayLever - entities: - - uid: 699 + - uid: 160 components: - type: Transform - pos: -3.5,-13.5 + rot: -1.5707963267948966 rad + pos: 11.5,-0.5 parent: 179 - - type: DeviceLinkSource - linkedPorts: - 990: - - Left: Forward - - Right: Reverse - - Middle: Off - 195: - - Left: Forward - - Right: Reverse - - Middle: Off - 991: - - Left: Forward - - Right: Reverse - - Middle: Off - - uid: 722 + - uid: 164 components: - type: Transform - pos: 1.5,11.5 + rot: 1.5707963267948966 rad + pos: 22.5,9.5 parent: 179 - - type: DeviceLinkSource - linkedPorts: - 721: - - Left: Forward - - Right: Reverse - - Middle: Off - 720: - - Left: Forward - - Right: Reverse - - Middle: Off - 716: - - Left: Forward - - Right: Reverse - - Middle: Off - - uid: 983 + - uid: 165 components: - type: Transform - pos: 2.5,-13.5 + pos: 8.5,2.5 parent: 179 - - type: DeviceLinkSource - linkedPorts: - 985: - - Left: Forward - - Right: Reverse - - Middle: Off - 259: - - Left: Forward - - Right: Reverse - - Middle: Off - 989: - - Left: Forward - - Right: Reverse - - Middle: Off - 463: - - Left: Forward - - Right: Reverse - - Middle: Off -- proto: UnfinishedMachineFrame - entities: - - uid: 522 + - uid: 168 components: - type: Transform - pos: -6.5,10.5 + rot: -1.5707963267948966 rad + pos: 10.5,-0.5 parent: 179 -- proto: UniformPrinter - entities: - - uid: 443 + - uid: 169 components: - type: Transform - pos: -7.5,4.5 + pos: 8.5,0.5 parent: 179 -- proto: VendingMachineCigs - entities: - - uid: 870 + - uid: 171 components: - type: Transform - pos: -14.5,4.5 + rot: -1.5707963267948966 rad + pos: 9.5,-0.5 parent: 179 -- proto: VendingMachineEngivend - entities: - - uid: 441 + - uid: 173 components: - type: Transform - pos: -11.5,4.5 + pos: 8.5,1.5 parent: 179 - - uid: 523 + - uid: 189 components: - type: Transform - pos: -11.5,-1.5 + pos: -7.5,0.5 parent: 179 -- proto: VendingMachineMedical - entities: - - uid: 156 + - uid: 190 components: - type: Transform - pos: 25.5,-5.5 + pos: -7.5,-0.5 parent: 179 - - uid: 157 + - uid: 191 components: - type: Transform - pos: 27.5,-5.5 + pos: -7.5,-1.5 parent: 179 - - uid: 158 + - uid: 192 components: - type: Transform - pos: 29.5,3.5 + pos: -7.5,-2.5 parent: 179 - - uid: 521 + - uid: 193 components: - type: Transform - pos: -12.5,4.5 + pos: -7.5,-3.5 parent: 179 -- proto: VendingMachineSalvage - entities: - - uid: 485 + - uid: 196 components: - type: Transform - pos: -15.5,4.5 + pos: 3.5,-14.5 parent: 179 -- proto: VendingMachineSec - entities: - - uid: 874 + - uid: 197 components: - type: Transform - pos: -13.5,4.5 + pos: 4.5,-14.5 parent: 179 -- proto: VendingMachineTankDispenserEVA - entities: - - uid: 875 + - uid: 198 components: - type: Transform - pos: 7.5,0.5 + pos: -7.5,-10.5 parent: 179 -- proto: VendingMachineYouTool - entities: - - uid: 350 + - uid: 199 components: - type: Transform - pos: -11.5,-0.5 + pos: -7.5,-11.5 parent: 179 -- proto: WallSolid - entities: - - uid: 3 + - uid: 200 components: - type: Transform - pos: 1.5,18.5 + pos: -7.5,-12.5 parent: 179 - - uid: 4 + - uid: 201 components: - type: Transform - pos: 11.5,26.5 + pos: -7.5,-13.5 parent: 179 - - uid: 5 + - uid: 208 components: - type: Transform - pos: 18.5,24.5 + pos: -7.5,-9.5 parent: 179 - - uid: 6 + - uid: 209 components: - type: Transform - pos: 20.5,15.5 + pos: -10.5,-7.5 parent: 179 - - uid: 8 + - uid: 211 components: - type: Transform - pos: 14.5,19.5 + pos: -10.5,-5.5 parent: 179 - - uid: 9 + - uid: 212 components: - type: Transform - pos: 1.5,19.5 + pos: -10.5,-4.5 parent: 179 - - uid: 10 + - uid: 213 components: - type: Transform - pos: 18.5,26.5 + pos: -10.5,-3.5 parent: 179 - - uid: 11 + - uid: 214 components: - type: Transform - pos: 13.5,26.5 + pos: -10.5,-2.5 parent: 179 - - uid: 13 + - uid: 215 components: - type: Transform - pos: 25.5,15.5 + pos: -10.5,-1.5 parent: 179 - - uid: 18 + - uid: 217 components: - type: Transform - pos: 4.5,26.5 + pos: 1.5,-4.5 parent: 179 - - uid: 19 + - uid: 218 components: - type: Transform - pos: 18.5,25.5 + pos: 0.5,-4.5 parent: 179 - - uid: 21 + - uid: 219 components: - type: Transform - pos: 10.5,26.5 + pos: -0.5,-4.5 parent: 179 - - uid: 22 + - uid: 220 components: - type: Transform - pos: 26.5,15.5 + pos: -1.5,-4.5 parent: 179 - - uid: 25 + - uid: 221 components: - type: Transform - pos: 1.5,21.5 + pos: -2.5,-4.5 parent: 179 - - uid: 27 + - uid: 222 components: - type: Transform - pos: 8.5,-0.5 + pos: -3.5,-4.5 parent: 179 - - uid: 28 + - uid: 223 components: - type: Transform - pos: 18.5,18.5 + pos: -4.5,-4.5 parent: 179 - - uid: 29 + - uid: 224 components: - type: Transform - pos: 18.5,21.5 + pos: -5.5,-4.5 parent: 179 - - uid: 30 + - uid: 225 components: - type: Transform - pos: 1.5,22.5 + pos: -6.5,-4.5 parent: 179 - - uid: 31 + - uid: 226 components: - type: Transform - pos: 1.5,20.5 + pos: 4.5,-4.5 parent: 179 - - uid: 32 + - uid: 227 components: - type: Transform - pos: 18.5,19.5 + pos: 5.5,-4.5 parent: 179 - - uid: 33 + - uid: 228 components: - type: Transform - pos: 23.5,15.5 + pos: 6.5,-4.5 parent: 179 - - uid: 34 + - uid: 229 components: - type: Transform - pos: 12.5,22.5 + pos: -7.5,-14.5 parent: 179 - - uid: 35 + - uid: 231 components: - type: Transform - pos: 27.5,15.5 + pos: -6.5,-14.5 parent: 179 - - uid: 36 + - uid: 232 components: - type: Transform - pos: 7.5,22.5 + pos: -5.5,-14.5 parent: 179 - - uid: 37 + - uid: 233 components: - type: Transform - pos: 14.5,22.5 + pos: -4.5,-14.5 parent: 179 - - uid: 38 + - uid: 234 components: - type: Transform - pos: 10.5,23.5 + pos: 6.5,-10.5 parent: 179 - - uid: 39 + - uid: 235 components: - type: Transform - pos: 10.5,24.5 + pos: 6.5,-11.5 parent: 179 - - uid: 40 + - uid: 236 components: - type: Transform - pos: 8.5,26.5 + pos: 6.5,-12.5 parent: 179 - - uid: 41 + - uid: 237 components: - type: Transform - pos: 10.5,25.5 + pos: 6.5,-13.5 parent: 179 - - uid: 42 + - uid: 238 components: - type: Transform - pos: 18.5,22.5 + pos: 6.5,-14.5 parent: 179 - - uid: 43 + - uid: 239 components: - type: Transform - pos: 14.5,27.5 + pos: 5.5,-14.5 parent: 179 - - uid: 44 + - uid: 240 components: - type: Transform - pos: 14.5,26.5 + pos: -7.5,-8.5 parent: 179 - - uid: 45 + - uid: 241 components: - type: Transform - pos: 1.5,16.5 + pos: -7.5,-7.5 parent: 179 - - uid: 46 + - uid: 242 components: - type: Transform - pos: 18.5,27.5 + pos: -8.5,-8.5 parent: 179 - - uid: 49 + - uid: 243 components: - type: Transform - pos: 7.5,28.5 + pos: -9.5,-8.5 parent: 179 - - uid: 50 + - uid: 244 components: - type: Transform - pos: 13.5,22.5 + pos: -10.5,-8.5 parent: 179 - - uid: 51 + - uid: 245 components: - type: Transform - pos: 12.5,26.5 + pos: -7.5,-5.5 parent: 179 - - uid: 52 + - uid: 260 components: - type: Transform - pos: 1.5,15.5 + pos: 6.5,-6.5 parent: 179 - - uid: 53 + - uid: 261 components: - type: Transform - pos: 9.5,26.5 + pos: 6.5,-5.5 parent: 179 - - uid: 55 + - uid: 266 components: - type: Transform - pos: 24.5,15.5 + pos: 8.5,-3.5 parent: 179 - - uid: 56 + - uid: 271 components: - type: Transform - pos: 14.5,25.5 + pos: 1.5,14.5 parent: 179 - - uid: 57 + - uid: 272 components: - type: Transform - pos: 14.5,21.5 + pos: 1.5,13.5 parent: 179 - - uid: 60 + - uid: 273 components: - type: Transform - pos: 7.5,21.5 + pos: 1.5,12.5 parent: 179 - - uid: 61 + - uid: 274 components: - type: Transform - pos: 18.5,20.5 + pos: -7.5,11.5 parent: 179 - - uid: 62 + - uid: 275 components: - type: Transform - pos: 18.5,23.5 + pos: -6.5,11.5 parent: 179 - - uid: 66 + - uid: 276 components: - type: Transform - pos: 18.5,17.5 + pos: -5.5,11.5 parent: 179 - - uid: 68 + - uid: 277 components: - type: Transform - pos: 18.5,28.5 + pos: -4.5,11.5 parent: 179 - - uid: 69 + - uid: 278 components: - type: Transform - pos: 28.5,15.5 + pos: -3.5,11.5 parent: 179 - - uid: 71 + - uid: 279 components: - type: Transform - pos: 11.5,22.5 + pos: -2.5,11.5 parent: 179 - - uid: 72 + - uid: 282 components: - type: Transform - pos: 1.5,17.5 + pos: -1.5,12.5 parent: 179 - - uid: 73 + - uid: 283 components: - type: Transform - pos: 14.5,28.5 + pos: -0.5,12.5 parent: 179 - - uid: 74 + - uid: 284 components: - type: Transform - pos: 10.5,22.5 + pos: 0.5,12.5 parent: 179 - - uid: 75 + - uid: 288 components: - type: Transform - pos: 9.5,22.5 + pos: 12.5,8.5 parent: 179 - - uid: 76 + - uid: 289 components: - type: Transform - pos: 8.5,-1.5 + pos: 11.5,8.5 parent: 179 - - uid: 77 + - uid: 290 components: - type: Transform - pos: 8.5,-2.5 + pos: 10.5,8.5 parent: 179 - - uid: 78 + - uid: 291 components: - type: Transform - pos: 21.5,15.5 + pos: 9.5,8.5 parent: 179 - - uid: 80 + - uid: 292 components: - type: Transform - pos: 18.5,16.5 + pos: 8.5,8.5 parent: 179 - - uid: 81 + - uid: 293 components: - type: Transform - pos: 18.5,15.5 + pos: 7.5,8.5 parent: 179 - - uid: 82 + - uid: 294 components: - type: Transform - pos: 14.5,18.5 + pos: 6.5,8.5 parent: 179 - - uid: 83 + - uid: 295 components: - type: Transform - pos: 4.5,28.5 + pos: 5.5,8.5 parent: 179 - - uid: 84 + - uid: 301 components: - type: Transform - pos: 7.5,26.5 + pos: 9.5,11.5 parent: 179 - - uid: 85 + - uid: 302 components: - type: Transform - pos: 1.5,23.5 + pos: 10.5,11.5 parent: 179 - - uid: 86 + - uid: 303 components: - type: Transform - pos: 17.5,15.5 + pos: 11.5,11.5 parent: 179 - - uid: 89 + - uid: 304 components: - type: Transform - pos: 22.5,15.5 + pos: 12.5,11.5 parent: 179 - - uid: 95 + - uid: 310 components: - type: Transform - pos: 8.5,22.5 + pos: 9.5,9.5 parent: 179 - - uid: 96 + - uid: 316 components: - type: Transform - pos: 7.5,27.5 + pos: -7.5,-4.5 parent: 179 - - uid: 97 + - uid: 317 components: - type: Transform - pos: 8.5,-3.5 + pos: 26.5,14.5 parent: 179 - - uid: 98 + - uid: 320 components: - type: Transform - pos: 4.5,25.5 + pos: 24.5,14.5 parent: 179 - - uid: 99 + - uid: 322 components: - type: Transform - pos: 17.5,18.5 + rot: -1.5707963267948966 rad + pos: 25.5,-11.5 parent: 179 - - uid: 100 + - uid: 329 components: - type: Transform - pos: 19.5,15.5 + pos: -11.5,5.5 parent: 179 - - uid: 101 + - uid: 335 components: - type: Transform - pos: 4.5,27.5 + pos: 13.5,11.5 parent: 179 - - uid: 103 + - uid: 336 components: - type: Transform - pos: 14.5,17.5 + pos: 14.5,11.5 parent: 179 - - uid: 104 + - uid: 337 components: - type: Transform - pos: 14.5,16.5 + pos: 13.5,9.5 parent: 179 - - uid: 105 + - uid: 338 components: - type: Transform - pos: 15.5,15.5 + pos: 13.5,8.5 parent: 179 - - uid: 106 + - uid: 339 components: - type: Transform - pos: 14.5,15.5 + pos: 13.5,7.5 parent: 179 - - uid: 107 + - uid: 341 components: - type: Transform - pos: 13.5,15.5 + pos: 24.5,12.5 parent: 179 - - uid: 109 + - uid: 342 components: - type: Transform - pos: 11.5,15.5 + pos: 26.5,12.5 parent: 179 - - uid: 110 + - uid: 346 components: - type: Transform - pos: 10.5,15.5 + rot: -1.5707963267948966 rad + pos: 25.5,-7.5 parent: 179 - - uid: 112 + - uid: 352 components: - type: Transform - pos: 7.5,19.5 + pos: 13.5,6.5 parent: 179 - - uid: 113 + - uid: 353 components: - type: Transform - pos: 7.5,18.5 + pos: 13.5,5.5 parent: 179 - - uid: 114 + - uid: 372 components: - type: Transform - pos: 7.5,17.5 + pos: 13.5,4.5 parent: 179 - - uid: 117 + - uid: 373 components: - type: Transform - pos: 5.5,18.5 + pos: 25.5,4.5 parent: 179 - - uid: 118 + - uid: 374 components: - type: Transform - pos: 5.5,19.5 + pos: 23.5,4.5 parent: 179 - - uid: 121 + - uid: 375 components: - type: Transform - pos: 4.5,19.5 + pos: 17.5,3.5 parent: 179 - - uid: 122 + - uid: 376 components: - type: Transform - pos: 4.5,20.5 + pos: -10.5,-0.5 parent: 179 - - uid: 123 + - uid: 377 components: - type: Transform - pos: 4.5,21.5 + pos: -10.5,0.5 parent: 179 - - uid: 124 + - uid: 379 components: - type: Transform - pos: 4.5,22.5 + pos: -8.5,0.5 parent: 179 - - uid: 125 + - uid: 390 components: - type: Transform - pos: 4.5,23.5 + pos: 18.5,3.5 parent: 179 - - uid: 126 + - uid: 391 components: - type: Transform - pos: 4.5,24.5 + pos: 19.5,3.5 parent: 179 - - uid: 164 + - uid: 392 components: - type: Transform - rot: 1.5707963267948966 rad - pos: 22.5,9.5 + pos: 21.5,3.5 parent: 179 - - uid: 165 + - uid: 393 components: - type: Transform - pos: 8.5,2.5 + pos: 22.5,3.5 parent: 179 - - uid: 169 + - uid: 394 components: - type: Transform - pos: 8.5,0.5 + pos: 22.5,4.5 parent: 179 - - uid: 173 + - uid: 395 components: - type: Transform - pos: 8.5,1.5 + pos: 22.5,5.5 parent: 179 - - uid: 189 + - uid: 396 components: - type: Transform - pos: -7.5,0.5 + pos: 22.5,6.5 parent: 179 - - uid: 190 + - uid: 397 components: - type: Transform - pos: -7.5,-0.5 + pos: 22.5,7.5 parent: 179 - - uid: 191 + - uid: 399 components: - type: Transform - pos: -7.5,-1.5 + pos: 22.5,10.5 parent: 179 - - uid: 192 + - uid: 400 components: - type: Transform - pos: -7.5,-2.5 + pos: 21.5,11.5 parent: 179 - - uid: 193 + - uid: 401 components: - type: Transform - pos: -7.5,-3.5 + pos: 22.5,11.5 parent: 179 - - uid: 196 + - uid: 439 components: - type: Transform - pos: 3.5,-14.5 + pos: -13.5,5.5 parent: 179 - - uid: 197 + - uid: 449 components: - type: Transform - pos: 4.5,-14.5 + pos: -16.5,2.5 parent: 179 - - uid: 198 + - uid: 450 components: - type: Transform - pos: -7.5,-10.5 + pos: -16.5,3.5 parent: 179 - - uid: 199 + - uid: 464 components: - type: Transform - pos: -7.5,-11.5 + pos: 4.5,8.5 parent: 179 - - uid: 200 + - uid: 474 components: - type: Transform - pos: -7.5,-12.5 + pos: -7.5,8.5 parent: 179 - - uid: 201 + - uid: 475 components: - type: Transform - pos: -7.5,-13.5 + pos: -7.5,7.5 parent: 179 - - uid: 208 + - uid: 476 components: - type: Transform - pos: -7.5,-9.5 + pos: -7.5,6.5 parent: 179 - - uid: 209 + - uid: 477 components: - type: Transform - pos: -10.5,-7.5 + pos: -7.5,5.5 parent: 179 - - uid: 211 + - uid: 486 components: - type: Transform - pos: -10.5,-5.5 + pos: -15.5,5.5 parent: 179 - - uid: 212 + - uid: 487 components: - type: Transform - pos: -10.5,-4.5 + pos: -16.5,4.5 parent: 179 - - uid: 213 + - uid: 488 components: - type: Transform - pos: -10.5,-3.5 + pos: 5.5,17.5 parent: 179 - - uid: 214 + - uid: 489 components: - type: Transform - pos: -10.5,-2.5 + pos: -11.5,0.5 parent: 179 - - uid: 215 + - uid: 491 components: - type: Transform - pos: -10.5,-1.5 + pos: -16.5,5.5 parent: 179 - - uid: 217 + - uid: 492 components: - type: Transform - pos: 1.5,-4.5 + pos: -14.5,5.5 parent: 179 - - uid: 218 + - uid: 494 components: - type: Transform - pos: 0.5,-4.5 + rot: -1.5707963267948966 rad + pos: -11.5,7.5 parent: 179 - - uid: 219 + - uid: 495 components: - type: Transform - pos: -0.5,-4.5 + pos: -12.5,5.5 parent: 179 - - uid: 220 + - uid: 496 components: - type: Transform - pos: -1.5,-4.5 + pos: -16.5,1.5 parent: 179 - - uid: 221 + - uid: 497 components: - type: Transform - pos: -2.5,-4.5 + pos: -16.5,0.5 parent: 179 - - uid: 222 + - uid: 498 components: - type: Transform - pos: -3.5,-4.5 + pos: -16.5,-0.5 parent: 179 - - uid: 223 + - uid: 499 components: - type: Transform - pos: -4.5,-4.5 + pos: -16.5,-1.5 parent: 179 - - uid: 224 + - uid: 500 components: - type: Transform - pos: -5.5,-4.5 + pos: -16.5,-2.5 parent: 179 - - uid: 225 + - uid: 501 components: - type: Transform - pos: -6.5,-4.5 + pos: -16.5,-3.5 parent: 179 - - uid: 226 + - uid: 502 components: - type: Transform - pos: 4.5,-4.5 + pos: -16.5,-4.5 parent: 179 - - uid: 227 + - uid: 503 components: - type: Transform - pos: 5.5,-4.5 + pos: -16.5,-5.5 parent: 179 - - uid: 228 + - uid: 504 components: - type: Transform - pos: 6.5,-4.5 + pos: -16.5,-6.5 parent: 179 - - uid: 229 + - uid: 505 components: - type: Transform - pos: -7.5,-14.5 + pos: -16.5,-7.5 parent: 179 - - uid: 231 + - uid: 506 components: - type: Transform - pos: -6.5,-14.5 + pos: -16.5,-8.5 parent: 179 - - uid: 232 + - uid: 507 components: - type: Transform - pos: -5.5,-14.5 + pos: -15.5,-8.5 parent: 179 - - uid: 233 + - uid: 508 components: - type: Transform - pos: -4.5,-14.5 + pos: -14.5,-8.5 parent: 179 - - uid: 234 + - uid: 509 components: - type: Transform - pos: 6.5,-10.5 + pos: -13.5,-8.5 parent: 179 - - uid: 235 + - uid: 510 components: - type: Transform - pos: 6.5,-11.5 + pos: -12.5,-8.5 parent: 179 - - uid: 236 + - uid: 511 components: - type: Transform - pos: 6.5,-12.5 + pos: -11.5,-8.5 parent: 179 - - uid: 237 + - uid: 517 components: - type: Transform - pos: 6.5,-13.5 + pos: 23.5,11.5 parent: 179 - - uid: 238 + - uid: 518 components: - type: Transform - pos: 6.5,-14.5 + pos: 24.5,11.5 parent: 179 - - uid: 239 + - uid: 519 components: - type: Transform - pos: 5.5,-14.5 + pos: 25.5,11.5 parent: 179 - - uid: 240 + - uid: 535 components: - type: Transform - pos: -7.5,-8.5 + pos: -15.5,0.5 parent: 179 - - uid: 241 + - uid: 539 components: - type: Transform - pos: -7.5,-7.5 + pos: 26.5,11.5 parent: 179 - - uid: 242 + - uid: 540 components: - type: Transform - pos: -8.5,-8.5 + pos: 27.5,11.5 parent: 179 - - uid: 243 + - uid: 545 components: - type: Transform - pos: -9.5,-8.5 + pos: 7.5,-4.5 parent: 179 - - uid: 244 + - uid: 547 components: - type: Transform - pos: -10.5,-8.5 + pos: 28.5,11.5 parent: 179 - - uid: 245 + - uid: 548 components: - type: Transform - pos: -7.5,-5.5 + pos: 28.5,10.5 parent: 179 - - uid: 248 + - uid: 549 components: - type: Transform - pos: 5.5,-7.5 + pos: 28.5,9.5 parent: 179 - - uid: 249 + - uid: 550 components: - type: Transform - pos: 5.5,-9.5 + pos: 28.5,8.5 parent: 179 - - uid: 250 + - uid: 551 components: - type: Transform - pos: 6.5,-9.5 + pos: 28.5,7.5 parent: 179 - - uid: 251 + - uid: 552 components: - type: Transform - pos: 6.5,-7.5 + pos: 28.5,6.5 parent: 179 - - uid: 254 + - uid: 553 components: - type: Transform - pos: 7.5,-9.5 + pos: 28.5,5.5 parent: 179 - - uid: 260 + - uid: 554 components: - type: Transform - pos: 6.5,-6.5 + pos: 26.5,-2.5 parent: 179 - - uid: 261 + - uid: 555 components: - type: Transform - pos: 6.5,-5.5 + pos: 26.5,-1.5 parent: 179 - - uid: 271 + - uid: 556 components: - type: Transform - pos: 1.5,14.5 + pos: 25.5,-0.5 parent: 179 - - uid: 272 + - uid: 557 components: - type: Transform - pos: 1.5,13.5 + pos: 26.5,-0.5 parent: 179 - - uid: 273 + - uid: 558 components: - type: Transform - pos: 1.5,12.5 + pos: 27.5,-0.5 parent: 179 - - uid: 274 + - uid: 561 components: - type: Transform - pos: -7.5,11.5 + pos: -14.5,0.5 parent: 179 - - uid: 275 + - uid: 585 components: - type: Transform - pos: -6.5,11.5 + pos: 9.5,10.5 parent: 179 - - uid: 276 + - uid: 597 components: - type: Transform - pos: -5.5,11.5 + pos: 22.5,-0.5 parent: 179 - - uid: 277 + - uid: 598 components: - type: Transform - pos: -4.5,11.5 + pos: 17.5,-0.5 parent: 179 - - uid: 278 + - uid: 599 components: - type: Transform - pos: -3.5,11.5 + pos: 18.5,-0.5 parent: 179 - - uid: 279 + - uid: 600 components: - type: Transform - pos: -2.5,11.5 + pos: 20.5,-0.5 parent: 179 - - uid: 282 + - uid: 601 components: - type: Transform - pos: -1.5,12.5 + pos: 21.5,-0.5 parent: 179 - - uid: 283 + - uid: 602 components: - type: Transform - pos: -0.5,12.5 + pos: 19.5,-0.5 parent: 179 - - uid: 284 + - uid: 603 components: - type: Transform - pos: 0.5,12.5 + pos: 14.5,3.5 parent: 179 - - uid: 288 + - uid: 604 components: - type: Transform - pos: 12.5,8.5 + pos: 13.5,3.5 parent: 179 - - uid: 289 + - uid: 605 components: - type: Transform - pos: 11.5,8.5 + pos: 12.5,3.5 parent: 179 - - uid: 290 + - uid: 606 components: - type: Transform - pos: 10.5,8.5 + pos: 12.5,2.5 parent: 179 - - uid: 291 + - uid: 607 components: - type: Transform - pos: 9.5,8.5 + pos: 12.5,1.5 parent: 179 - - uid: 292 + - uid: 608 components: - type: Transform - pos: 8.5,8.5 + pos: 12.5,0.5 parent: 179 - - uid: 293 + - uid: 609 components: - type: Transform - pos: 7.5,8.5 + pos: 12.5,-0.5 parent: 179 - - uid: 294 + - uid: 610 components: - type: Transform - pos: 6.5,8.5 + pos: 13.5,-0.5 parent: 179 - - uid: 295 + - uid: 611 components: - type: Transform - pos: 5.5,8.5 + pos: 14.5,-0.5 parent: 179 - - uid: 301 + - uid: 612 components: - type: Transform - pos: 9.5,11.5 + pos: 8.5,-2.5 parent: 179 - - uid: 302 + - uid: 618 components: - type: Transform - pos: 10.5,11.5 + pos: 14.5,-6.5 parent: 179 - - uid: 303 + - uid: 620 components: - type: Transform - pos: 11.5,11.5 + rot: -1.5707963267948966 rad + pos: 6.5,-7.5 parent: 179 - - uid: 304 + - uid: 621 components: - type: Transform - pos: 12.5,11.5 + pos: 17.5,-6.5 parent: 179 - - uid: 310 + - uid: 622 components: - type: Transform - pos: 9.5,9.5 + pos: 18.5,-6.5 parent: 179 - - uid: 316 + - uid: 623 components: - type: Transform - pos: -7.5,-4.5 + pos: 19.5,-6.5 parent: 179 - - uid: 317 + - uid: 624 components: - type: Transform - pos: 26.5,14.5 + pos: 20.5,-6.5 parent: 179 - - uid: 320 + - uid: 625 components: - type: Transform - pos: 24.5,14.5 + pos: 21.5,-6.5 parent: 179 - - uid: 329 + - uid: 626 components: - type: Transform - pos: -11.5,5.5 + pos: 22.5,-6.5 parent: 179 - - uid: 335 + - uid: 627 components: - type: Transform - pos: 13.5,11.5 + pos: 23.5,-6.5 parent: 179 - - uid: 336 + - uid: 628 components: - type: Transform - pos: 14.5,11.5 + pos: 24.5,-6.5 parent: 179 - - uid: 337 + - uid: 629 components: - type: Transform - pos: 13.5,9.5 + pos: 25.5,-6.5 parent: 179 - - uid: 338 + - uid: 630 components: - type: Transform - pos: 13.5,8.5 + pos: 26.5,-6.5 parent: 179 - - uid: 339 + - uid: 631 components: - type: Transform - pos: 13.5,7.5 + pos: 26.5,-5.5 parent: 179 - - uid: 341 + - uid: 632 components: - type: Transform - pos: 24.5,12.5 + pos: 26.5,-4.5 parent: 179 - - uid: 342 + - uid: 633 components: - type: Transform - pos: 26.5,12.5 + pos: 27.5,-6.5 parent: 179 - - uid: 352 + - uid: 634 components: - type: Transform - pos: 13.5,6.5 + pos: 28.5,-6.5 parent: 179 - - uid: 353 + - uid: 635 components: - type: Transform - pos: 13.5,5.5 + pos: 29.5,-6.5 parent: 179 - - uid: 372 + - uid: 636 components: - type: Transform - pos: 13.5,4.5 + pos: 30.5,-6.5 parent: 179 - - uid: 373 + - uid: 637 components: - type: Transform - pos: 25.5,4.5 + pos: 31.5,-6.5 parent: 179 - - uid: 374 + - uid: 638 components: - type: Transform - pos: 23.5,4.5 + pos: 32.5,-6.5 parent: 179 - - uid: 375 + - uid: 639 components: - type: Transform - pos: 17.5,3.5 + pos: 33.5,-6.5 parent: 179 - - uid: 376 + - uid: 640 components: - type: Transform - pos: -10.5,-0.5 + pos: 34.5,-6.5 parent: 179 - - uid: 377 + - uid: 641 components: - type: Transform - pos: -10.5,0.5 + pos: 34.5,-5.5 parent: 179 - - uid: 379 + - uid: 642 components: - type: Transform - pos: -8.5,0.5 + pos: 34.5,-4.5 parent: 179 - - uid: 390 + - uid: 643 components: - type: Transform - pos: 18.5,3.5 + pos: 34.5,-3.5 parent: 179 - - uid: 391 + - uid: 644 components: - type: Transform - pos: 19.5,3.5 + pos: 34.5,-2.5 parent: 179 - - uid: 392 + - uid: 645 components: - type: Transform - pos: 21.5,3.5 + pos: 34.5,-1.5 parent: 179 - - uid: 393 + - uid: 646 components: - type: Transform - pos: 22.5,3.5 + pos: 34.5,-0.5 parent: 179 - - uid: 394 + - uid: 647 components: - type: Transform - pos: 22.5,4.5 + pos: 33.5,-0.5 parent: 179 - - uid: 395 + - uid: 648 components: - type: Transform - pos: 22.5,5.5 + pos: 32.5,-0.5 parent: 179 - - uid: 396 + - uid: 649 components: - type: Transform - pos: 22.5,6.5 + pos: 31.5,-0.5 parent: 179 - - uid: 397 + - uid: 650 components: - type: Transform - pos: 22.5,7.5 + pos: 30.5,-0.5 parent: 179 - - uid: 399 + - uid: 651 components: - type: Transform - pos: 22.5,10.5 + pos: 29.5,-0.5 parent: 179 - - uid: 400 + - uid: 652 components: - type: Transform - pos: 21.5,11.5 + pos: 30.5,0.5 parent: 179 - - uid: 401 + - uid: 653 components: - type: Transform - pos: 22.5,11.5 + pos: 30.5,1.5 parent: 179 - - uid: 418 + - uid: 654 components: - type: Transform - pos: 7.5,-7.5 + pos: 30.5,2.5 parent: 179 - - uid: 439 + - uid: 655 components: - type: Transform - pos: -13.5,5.5 + pos: 30.5,3.5 parent: 179 - - uid: 449 + - uid: 656 components: - type: Transform - pos: -16.5,2.5 + pos: 30.5,4.5 parent: 179 - - uid: 450 + - uid: 657 components: - type: Transform - pos: -16.5,3.5 + pos: 29.5,4.5 parent: 179 - - uid: 464 + - uid: 658 components: - type: Transform - pos: 4.5,8.5 + pos: 28.5,4.5 parent: 179 - - uid: 474 + - uid: 659 components: - type: Transform - pos: -7.5,8.5 + pos: 27.5,4.5 parent: 179 - - uid: 475 + - uid: 680 components: - type: Transform - pos: -7.5,7.5 + pos: 8.5,-1.5 parent: 179 - - uid: 476 + - uid: 702 components: - type: Transform - pos: -7.5,6.5 + rot: -1.5707963267948966 rad + pos: -11.5,6.5 parent: 179 - - uid: 477 + - uid: 713 components: - type: Transform - pos: -7.5,5.5 + pos: -7.5,9.5 parent: 179 - - uid: 486 + - uid: 714 components: - type: Transform - pos: -15.5,5.5 + pos: -7.5,10.5 parent: 179 - - uid: 487 + - uid: 724 components: - type: Transform - pos: -16.5,4.5 + pos: -2.5,12.5 parent: 179 - - uid: 488 + - uid: 733 components: - type: Transform - pos: 5.5,17.5 + pos: 4.5,5.5 parent: 179 - - uid: 489 + - uid: 734 components: - type: Transform - pos: -11.5,0.5 + pos: 4.5,4.5 parent: 179 - - uid: 491 + - uid: 739 components: - type: Transform - pos: -16.5,5.5 + pos: 8.5,7.5 parent: 179 - - uid: 492 + - uid: 740 components: - type: Transform - pos: -14.5,5.5 + pos: 8.5,6.5 parent: 179 - - uid: 494 + - uid: 741 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -11.5,7.5 + pos: 8.5,5.5 parent: 179 - - uid: 495 + - uid: 742 components: - type: Transform - pos: -12.5,5.5 + pos: 8.5,4.5 parent: 179 - - uid: 496 + - uid: 743 components: - type: Transform - pos: -16.5,1.5 + pos: 8.5,3.5 parent: 179 - - uid: 497 + - uid: 745 components: - type: Transform - pos: -16.5,0.5 + pos: 4.5,7.5 parent: 179 - - uid: 498 + - uid: 746 components: - type: Transform - pos: -16.5,-0.5 + pos: 4.5,6.5 parent: 179 - - uid: 499 + - uid: 846 components: - type: Transform - pos: -16.5,-1.5 + pos: 2.5,19.5 parent: 179 - - uid: 500 + - uid: 847 components: - type: Transform - pos: -16.5,-2.5 + pos: 3.5,19.5 parent: 179 - - uid: 501 + - uid: 925 components: - type: Transform - pos: -16.5,-3.5 + rot: -1.5707963267948966 rad + pos: -14.5,17.5 parent: 179 - - uid: 502 + - uid: 958 components: - type: Transform - pos: -16.5,-4.5 + rot: 3.141592653589793 rad + pos: 15.5,18.5 parent: 179 - - uid: 503 + - uid: 1016 components: - type: Transform - pos: -16.5,-5.5 + rot: -1.5707963267948966 rad + pos: 25.5,-9.5 parent: 179 - - uid: 504 + - uid: 1072 components: - type: Transform - pos: -16.5,-6.5 + pos: 15.5,28.5 parent: 179 - - uid: 505 + - uid: 1073 components: - type: Transform - pos: -16.5,-7.5 + pos: 16.5,28.5 parent: 179 - - uid: 506 + - uid: 1074 components: - type: Transform - pos: -16.5,-8.5 + pos: 17.5,28.5 parent: 179 - - uid: 507 + - uid: 1176 components: - type: Transform - pos: -15.5,-8.5 + rot: -1.5707963267948966 rad + pos: 25.5,-10.5 parent: 179 - - uid: 508 + - uid: 1181 components: - type: Transform - pos: -14.5,-8.5 + pos: 5.5,28.5 parent: 179 - - uid: 509 + - uid: 1206 components: - type: Transform - pos: -13.5,-8.5 + rot: -1.5707963267948966 rad + pos: 25.5,-12.5 parent: 179 - - uid: 510 + - uid: 1209 components: - type: Transform - pos: -12.5,-8.5 + rot: -1.5707963267948966 rad + pos: 25.5,-8.5 parent: 179 - - uid: 511 + - uid: 1210 components: - type: Transform - pos: -11.5,-8.5 + rot: -1.5707963267948966 rad + pos: 25.5,-17.5 parent: 179 - - uid: 517 + - uid: 1211 components: - type: Transform - pos: 23.5,11.5 + rot: -1.5707963267948966 rad + pos: 25.5,-15.5 parent: 179 - - uid: 518 + - uid: 1212 components: - type: Transform - pos: 24.5,11.5 + rot: -1.5707963267948966 rad + pos: 25.5,-19.5 parent: 179 - - uid: 519 + - uid: 1213 components: - type: Transform - pos: 25.5,11.5 + rot: -1.5707963267948966 rad + pos: 25.5,-18.5 parent: 179 - - uid: 535 + - uid: 1214 components: - type: Transform - pos: -15.5,0.5 + rot: -1.5707963267948966 rad + pos: 25.5,-22.5 parent: 179 - - uid: 539 + - uid: 1215 components: - type: Transform - pos: 26.5,11.5 + rot: -1.5707963267948966 rad + pos: 25.5,-20.5 parent: 179 - - uid: 540 + - uid: 1216 components: - type: Transform - pos: 27.5,11.5 + rot: -1.5707963267948966 rad + pos: 25.5,-21.5 parent: 179 - - uid: 545 + - uid: 1217 components: - type: Transform - pos: 7.5,-4.5 + rot: -1.5707963267948966 rad + pos: 25.5,-13.5 parent: 179 - - uid: 546 + - uid: 1218 components: - type: Transform - pos: 8.5,-4.5 + rot: -1.5707963267948966 rad + pos: 25.5,-14.5 parent: 179 - - uid: 547 + - uid: 1219 components: - type: Transform - pos: 28.5,11.5 + rot: -1.5707963267948966 rad + pos: 25.5,-16.5 parent: 179 - - uid: 548 + - uid: 1226 components: - type: Transform - pos: 28.5,10.5 + pos: 6.5,-22.5 parent: 179 - - uid: 549 + - uid: 1228 components: - type: Transform - pos: 28.5,9.5 + pos: 6.5,-21.5 parent: 179 - - uid: 550 + - uid: 1229 components: - type: Transform - pos: 28.5,8.5 + rot: -1.5707963267948966 rad + pos: 6.5,-19.5 parent: 179 - - uid: 551 + - uid: 1231 components: - type: Transform - pos: 28.5,7.5 + rot: -1.5707963267948966 rad + pos: 6.5,-18.5 parent: 179 - - uid: 552 + - uid: 1263 components: - type: Transform - pos: 28.5,6.5 + pos: 6.5,-23.5 parent: 179 - - uid: 553 + - uid: 1272 components: - type: Transform - pos: 28.5,5.5 + pos: 6.5,-24.5 parent: 179 - - uid: 554 + - uid: 1294 components: - type: Transform - pos: 26.5,-2.5 + pos: 25.5,-24.5 parent: 179 - - uid: 555 + - uid: 1295 components: - type: Transform - pos: 26.5,-1.5 + pos: 25.5,-23.5 parent: 179 - - uid: 556 + - uid: 1303 components: - type: Transform - pos: 25.5,-0.5 + rot: 3.141592653589793 rad + pos: 14.5,-1.5 parent: 179 - - uid: 557 + - uid: 1304 components: - type: Transform - pos: 26.5,-0.5 + rot: 3.141592653589793 rad + pos: 14.5,-2.5 parent: 179 - - uid: 558 + - uid: 1305 components: - type: Transform - pos: 27.5,-0.5 + rot: 3.141592653589793 rad + pos: 14.5,-3.5 parent: 179 - - uid: 561 + - uid: 1306 components: - type: Transform - pos: -14.5,0.5 + rot: 3.141592653589793 rad + pos: 14.5,-4.5 parent: 179 - - uid: 585 + - uid: 1307 components: - type: Transform - pos: 9.5,10.5 + rot: 3.141592653589793 rad + pos: 14.5,-5.5 parent: 179 - - uid: 597 + - uid: 1328 components: - type: Transform - pos: 22.5,-0.5 + pos: 25.5,-25.5 parent: 179 - - uid: 598 + - uid: 1329 components: - type: Transform - pos: 17.5,-0.5 + pos: 24.5,-25.5 parent: 179 - - uid: 599 + - uid: 1330 components: - type: Transform - pos: 18.5,-0.5 + pos: 23.5,-25.5 parent: 179 - - uid: 600 + - uid: 1331 components: - type: Transform - pos: 20.5,-0.5 + pos: 22.5,-25.5 parent: 179 - - uid: 601 + - uid: 1332 components: - type: Transform - pos: 21.5,-0.5 + pos: 21.5,-25.5 parent: 179 - - uid: 602 + - uid: 1333 components: - type: Transform - pos: 19.5,-0.5 + pos: 20.5,-25.5 parent: 179 - - uid: 603 + - uid: 1334 components: - type: Transform - pos: 14.5,3.5 + pos: 19.5,-25.5 parent: 179 - - uid: 604 + - uid: 1337 components: - type: Transform - pos: 13.5,3.5 + pos: 16.5,-25.5 parent: 179 - - uid: 605 + - uid: 1338 components: - type: Transform - pos: 12.5,3.5 + pos: 15.5,-25.5 parent: 179 - - uid: 606 + - uid: 1339 components: - type: Transform - pos: 12.5,2.5 + pos: 14.5,-25.5 parent: 179 - - uid: 607 + - uid: 1340 components: - type: Transform - pos: 12.5,1.5 + pos: 12.5,-25.5 parent: 179 - - uid: 608 + - uid: 1341 components: - type: Transform - pos: 12.5,0.5 + pos: 11.5,-25.5 parent: 179 - - uid: 609 + - uid: 1342 components: - type: Transform - pos: 12.5,-0.5 + pos: 10.5,-25.5 parent: 179 - - uid: 610 + - uid: 1343 components: - type: Transform - pos: 13.5,-0.5 + pos: 9.5,-25.5 parent: 179 - - uid: 611 + - uid: 1344 components: - type: Transform - pos: 14.5,-0.5 + pos: 8.5,-25.5 parent: 179 - - uid: 612 + - uid: 1345 components: - type: Transform - pos: 13.5,-1.5 + pos: 7.5,-25.5 parent: 179 - - uid: 613 + - uid: 1346 components: - type: Transform - pos: 13.5,-6.5 + pos: 6.5,-25.5 parent: 179 - - uid: 614 + - uid: 1347 components: - type: Transform - pos: 13.5,-5.5 + pos: 13.5,-25.5 parent: 179 - - uid: 615 + - uid: 1506 components: - type: Transform - pos: 13.5,-4.5 + pos: 10.5,-12.5 parent: 179 - - uid: 616 + - uid: 1559 components: - type: Transform - pos: 13.5,-3.5 + pos: 8.5,-4.5 parent: 179 - - uid: 617 +- proto: WarningCO2 + entities: + - uid: 1300 components: - type: Transform - pos: 13.5,-2.5 + rot: -1.5707963267948966 rad + pos: 25.5,-21.5 parent: 179 - - uid: 618 +- proto: WarningN2 + entities: + - uid: 1208 components: - type: Transform - pos: 14.5,-6.5 + rot: -1.5707963267948966 rad + pos: 25.5,-9.5 parent: 179 - - uid: 619 +- proto: WarningN2O + entities: + - uid: 1296 components: - type: Transform - pos: 15.5,-6.5 + rot: -1.5707963267948966 rad + pos: 25.5,-17.5 parent: 179 - - uid: 620 +- proto: WarningO2 + entities: + - uid: 1227 components: - type: Transform - pos: 16.5,-6.5 + rot: -1.5707963267948966 rad + pos: 25.5,-7.5 parent: 179 - - uid: 621 +- proto: WaterTankFull + entities: + - uid: 115 components: - type: Transform - pos: 17.5,-6.5 + pos: 4.5,18.5 parent: 179 - - uid: 622 + - uid: 694 components: - type: Transform - pos: 18.5,-6.5 + pos: -2.5,3.5 parent: 179 - - uid: 623 +- proto: WaterVaporCanister + entities: + - uid: 97 components: - type: Transform - pos: 19.5,-6.5 + pos: 12.5,-1.5 parent: 179 - - uid: 624 + - uid: 319 components: - type: Transform - pos: 20.5,-6.5 + pos: 13.5,-1.5 parent: 179 - - uid: 625 + - uid: 1313 components: - type: Transform - pos: 21.5,-6.5 + pos: 24.5,-23.5 parent: 179 - - uid: 626 +- proto: WeaponCapacitorRecharger + entities: + - uid: 708 components: - type: Transform - pos: 22.5,-6.5 + pos: -0.5,-3.5 parent: 179 - - uid: 627 +- proto: WeaponLaserCarbine + entities: + - uid: 188 components: - type: Transform - pos: 23.5,-6.5 + pos: -3.5226438,-0.45543313 parent: 179 - - uid: 628 +- proto: WeaponLauncherMultipleRocket + entities: + - uid: 671 components: - type: Transform - pos: 24.5,-6.5 + pos: -13.195735,9.730438 parent: 179 - - uid: 629 +- proto: WeaponLauncherRocket + entities: + - uid: 436 components: - type: Transform - pos: 25.5,-6.5 + pos: -3.478273,-1.1611286 parent: 179 - - uid: 630 +- proto: WeaponRifleAk + entities: + - uid: 437 components: - type: Transform - pos: 26.5,-6.5 + pos: -3.5018106,0.24183923 parent: 179 - - uid: 631 + - uid: 949 components: - type: Transform - pos: 26.5,-5.5 + pos: -12.238617,9.081488 parent: 179 - - uid: 632 +- proto: WelderExperimental + entities: + - uid: 343 components: - type: Transform - pos: 26.5,-4.5 + pos: 0.6895334,4.7183027 parent: 179 - - uid: 633 +- proto: WeldingFuelTankFull + entities: + - uid: 693 components: - type: Transform - pos: 27.5,-6.5 + pos: -1.5,3.5 parent: 179 - - uid: 634 +- proto: Window + entities: + - uid: 111 components: - type: Transform - pos: 28.5,-6.5 + pos: -0.5,-15.5 parent: 179 - - uid: 635 + - uid: 194 components: - type: Transform - pos: 29.5,-6.5 + pos: -0.5,-16.5 parent: 179 - - uid: 636 + - uid: 230 components: - type: Transform - pos: 30.5,-6.5 + pos: -0.5,-14.5 parent: 179 - - uid: 637 + - uid: 1001 components: - type: Transform - pos: 31.5,-6.5 + pos: -3.5,-16.5 parent: 179 - - uid: 638 + - uid: 1002 components: - type: Transform - pos: 32.5,-6.5 + pos: -3.5,-15.5 parent: 179 - - uid: 639 + - uid: 1003 components: - type: Transform - pos: 33.5,-6.5 + pos: -3.5,-14.5 parent: 179 - - uid: 640 + - uid: 1004 components: - type: Transform - pos: 34.5,-6.5 + pos: 2.5,-16.5 parent: 179 - - uid: 641 + - uid: 1005 components: - type: Transform - pos: 34.5,-5.5 + pos: 2.5,-15.5 parent: 179 - - uid: 642 + - uid: 1006 components: - type: Transform - pos: 34.5,-4.5 + pos: 2.5,-14.5 parent: 179 - - uid: 643 +- proto: WindowReinforcedDirectional + entities: + - uid: 340 components: - type: Transform - pos: 34.5,-3.5 + rot: 1.5707963267948966 rad + pos: 21.5,-7.5 parent: 179 - - uid: 644 + - uid: 345 components: - type: Transform - pos: 34.5,-2.5 + rot: 3.141592653589793 rad + pos: 24.5,-8.5 parent: 179 - - uid: 645 + - uid: 347 components: - type: Transform - pos: 34.5,-1.5 + pos: 24.5,-22.5 parent: 179 - - uid: 646 + - uid: 348 components: - type: Transform - pos: 34.5,-0.5 + rot: 3.141592653589793 rad + pos: 23.5,-8.5 parent: 179 - - uid: 647 + - uid: 1236 components: - type: Transform - pos: 33.5,-0.5 + pos: 23.5,-8.5 parent: 179 - - uid: 648 + - uid: 1237 components: - type: Transform - pos: 32.5,-0.5 + pos: 24.5,-8.5 parent: 179 - - uid: 649 + - uid: 1239 components: - type: Transform - pos: 31.5,-0.5 + rot: 3.141592653589793 rad + pos: 23.5,-10.5 parent: 179 - - uid: 650 + - uid: 1240 components: - type: Transform - pos: 30.5,-0.5 + rot: 3.141592653589793 rad + pos: 24.5,-10.5 parent: 179 - - uid: 651 + - uid: 1241 components: - type: Transform - pos: 29.5,-0.5 + rot: 1.5707963267948966 rad + pos: 21.5,-9.5 parent: 179 - - uid: 652 + - uid: 1242 components: - type: Transform - pos: 30.5,0.5 + rot: 1.5707963267948966 rad + pos: 21.5,-11.5 parent: 179 - - uid: 653 + - uid: 1243 components: - type: Transform - pos: 30.5,1.5 + rot: 1.5707963267948966 rad + pos: 21.5,-13.5 parent: 179 - - uid: 654 + - uid: 1244 components: - type: Transform - pos: 30.5,2.5 + rot: 1.5707963267948966 rad + pos: 21.5,-15.5 parent: 179 - - uid: 655 + - uid: 1245 components: - type: Transform - pos: 30.5,3.5 + rot: 1.5707963267948966 rad + pos: 21.5,-17.5 parent: 179 - - uid: 656 + - uid: 1246 components: - type: Transform - pos: 30.5,4.5 + rot: 1.5707963267948966 rad + pos: 21.5,-19.5 parent: 179 - - uid: 657 + - uid: 1247 components: - type: Transform - pos: 29.5,4.5 + rot: 3.141592653589793 rad + pos: 23.5,-22.5 parent: 179 - - uid: 658 + - uid: 1248 components: - type: Transform - pos: 28.5,4.5 + rot: 1.5707963267948966 rad + pos: 21.5,-21.5 parent: 179 - - uid: 659 + - uid: 1249 components: - type: Transform - pos: 27.5,4.5 + pos: 23.5,-10.5 parent: 179 - - uid: 702 + - uid: 1250 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -11.5,6.5 + pos: 24.5,-10.5 parent: 179 - - uid: 713 + - uid: 1251 components: - type: Transform - pos: -7.5,9.5 + pos: 24.5,-12.5 parent: 179 - - uid: 714 + - uid: 1252 components: - type: Transform - pos: -7.5,10.5 + pos: 24.5,-14.5 parent: 179 - - uid: 724 + - uid: 1253 components: - type: Transform - pos: -2.5,12.5 + pos: 24.5,-16.5 parent: 179 - - uid: 733 + - uid: 1254 components: - type: Transform - pos: 4.5,5.5 + pos: 24.5,-18.5 parent: 179 - - uid: 734 + - uid: 1255 components: - type: Transform - pos: 4.5,4.5 + pos: 24.5,-20.5 parent: 179 - - uid: 739 + - uid: 1256 components: - type: Transform - pos: 8.5,7.5 + pos: 23.5,-20.5 parent: 179 - - uid: 740 + - uid: 1257 components: - type: Transform - pos: 8.5,6.5 + pos: 23.5,-18.5 parent: 179 - - uid: 741 + - uid: 1259 components: - type: Transform - pos: 8.5,5.5 + rot: 3.141592653589793 rad + pos: 23.5,-24.5 parent: 179 - - uid: 742 + - uid: 1261 components: - type: Transform - pos: 8.5,4.5 + pos: 23.5,-16.5 parent: 179 - - uid: 743 + - uid: 1262 components: - type: Transform - pos: 8.5,3.5 + pos: 23.5,-14.5 parent: 179 - - uid: 745 + - uid: 1264 components: - type: Transform - pos: 4.5,7.5 + rot: 3.141592653589793 rad + pos: 24.5,-22.5 parent: 179 - - uid: 746 + - uid: 1265 components: - type: Transform - pos: 4.5,6.5 + pos: 23.5,-12.5 parent: 179 - - uid: 846 + - uid: 1266 components: - type: Transform - pos: 2.5,19.5 + pos: 23.5,-22.5 parent: 179 - - uid: 847 + - uid: 1267 components: - type: Transform - pos: 3.5,19.5 + rot: 3.141592653589793 rad + pos: 23.5,-12.5 parent: 179 - - uid: 925 + - uid: 1268 components: - type: Transform - rot: -1.5707963267948966 rad - pos: -14.5,17.5 + rot: 3.141592653589793 rad + pos: 24.5,-12.5 parent: 179 - - uid: 958 + - uid: 1269 components: - type: Transform rot: 3.141592653589793 rad - pos: 15.5,18.5 + pos: 24.5,-14.5 parent: 179 - - uid: 1072 + - uid: 1270 components: - type: Transform - pos: 15.5,28.5 + rot: 3.141592653589793 rad + pos: 23.5,-14.5 parent: 179 - - uid: 1073 + - uid: 1271 components: - type: Transform - pos: 16.5,28.5 + rot: 1.5707963267948966 rad + pos: 21.5,-23.5 parent: 179 - - uid: 1074 + - uid: 1273 components: - type: Transform - pos: 17.5,28.5 + rot: 3.141592653589793 rad + pos: 23.5,-16.5 parent: 179 - - uid: 1181 + - uid: 1274 components: - type: Transform - pos: 5.5,28.5 + rot: 3.141592653589793 rad + pos: 24.5,-16.5 parent: 179 -- proto: WaterTankFull - entities: - - uid: 115 + - uid: 1275 components: - type: Transform - pos: 4.5,18.5 + rot: 3.141592653589793 rad + pos: 24.5,-18.5 parent: 179 - - uid: 694 + - uid: 1276 components: - type: Transform - pos: -2.5,3.5 + rot: 3.141592653589793 rad + pos: 23.5,-18.5 parent: 179 -- proto: WeaponCapacitorRecharger - entities: - - uid: 708 + - uid: 1279 components: - type: Transform - pos: -0.5,-3.5 + rot: 3.141592653589793 rad + pos: 23.5,-20.5 parent: 179 -- proto: WeaponLaserCarbine - entities: - - uid: 188 + - uid: 1280 components: - type: Transform - pos: -3.5226438,-0.45543313 + rot: 3.141592653589793 rad + pos: 24.5,-20.5 parent: 179 -- proto: WeaponLauncherMultipleRocket - entities: - - uid: 671 + - uid: 1283 components: - type: Transform - pos: -13.195735,9.730438 + rot: 3.141592653589793 rad + pos: 24.5,-24.5 parent: 179 -- proto: WeaponLauncherRocket - entities: - - uid: 436 + - uid: 1386 components: - type: Transform - pos: -3.478273,-1.1611286 + rot: 1.5707963267948966 rad + pos: 11.5,-15.5 parent: 179 -- proto: WeaponRifleAk - entities: - - uid: 437 + - uid: 1387 components: - type: Transform - pos: -3.5018106,0.24183923 + rot: 1.5707963267948966 rad + pos: 11.5,-13.5 parent: 179 - - uid: 949 + - uid: 1388 components: - type: Transform - pos: -12.238617,9.081488 + pos: 12.5,-12.5 parent: 179 -- proto: WelderExperimental - entities: - - uid: 343 + - uid: 1490 components: - type: Transform - pos: 0.6895334,4.7183027 + rot: -1.5707963267948966 rad + pos: 15.5,-15.5 parent: 179 -- proto: WeldingFuelTankFull - entities: - - uid: 693 + - uid: 1491 components: - type: Transform - pos: -1.5,3.5 + rot: 1.5707963267948966 rad + pos: 9.5,-14.5 parent: 179 -- proto: Window - entities: - - uid: 111 + - uid: 1492 components: - type: Transform - pos: -0.5,-15.5 + rot: 3.141592653589793 rad + pos: 11.5,-16.5 parent: 179 - - uid: 194 + - uid: 1494 components: - type: Transform - pos: -0.5,-16.5 + rot: -1.5707963267948966 rad + pos: 15.5,-13.5 parent: 179 - - uid: 230 + - uid: 1495 components: - type: Transform - pos: -0.5,-14.5 + rot: 3.141592653589793 rad + pos: 10.5,-16.5 parent: 179 - - uid: 1001 + - uid: 1496 components: - type: Transform - pos: -3.5,-16.5 + pos: 11.5,-12.5 parent: 179 - - uid: 1002 + - uid: 1497 components: - type: Transform - pos: -3.5,-15.5 + rot: 3.141592653589793 rad + pos: 14.5,-16.5 parent: 179 - - uid: 1003 + - uid: 1498 components: - type: Transform - pos: -3.5,-14.5 + rot: 1.5707963267948966 rad + pos: 9.5,-15.5 parent: 179 - - uid: 1004 + - uid: 1501 components: - type: Transform - pos: 2.5,-16.5 + rot: 3.141592653589793 rad + pos: 12.5,-16.5 parent: 179 - - uid: 1005 + - uid: 1505 components: - type: Transform - pos: 2.5,-15.5 + rot: 1.5707963267948966 rad + pos: 9.5,-13.5 parent: 179 - - uid: 1006 + - uid: 1562 components: - type: Transform - pos: 2.5,-14.5 + pos: 14.5,-12.5 parent: 179 - proto: Wirecutter entities: 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/Actions/types.yml b/Resources/Prototypes/Actions/types.yml index 5430a3f005a..d80e36bde1f 100644 --- a/Resources/Prototypes/Actions/types.yml +++ b/Resources/Prototypes/Actions/types.yml @@ -280,6 +280,8 @@ checkCanInteract: false checkConsciousness: false event: !type:WakeActionEvent + startDelay: true + useDelay: 2 - type: entity id: ActionActivateHonkImplant diff --git a/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml index 48619d09389..52ab1dae962 100644 --- a/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/duffelbag.yml @@ -302,13 +302,19 @@ components: - type: StorageFill contents: + - id: DefibrillatorSyndicate - id: MedkitCombatFilled - - id: Defibrillator + amount: 4 + - id: Tourniquet + amount: 4 - id: CombatMedipen - amount: 3 - - id: ClothingHandsGlovesNitrile - - id: SyringeTranexamicAcid - - id: SyringeHyronalin + amount: 4 + - id: PunctAutoInjector + amount: 4 + - id: PyraAutoInjector + amount: 4 + - id: AirlossAutoInjector + amount: 4 - type: entity parent: ClothingBackpackDuffelSyndicateBundle diff --git a/Resources/Prototypes/Catalog/Fills/Items/belt.yml b/Resources/Prototypes/Catalog/Fills/Items/belt.yml index e0aaf0c835c..519de0d169f 100644 --- a/Resources/Prototypes/Catalog/Fills/Items/belt.yml +++ b/Resources/Prototypes/Catalog/Fills/Items/belt.yml @@ -46,10 +46,12 @@ table: !type:AllSelector children: - id: Stunbaton - - id: GrenadeFlashBang - - id: TearGasGrenade + - id: GrenadeFlashBang # DeltaV: revert upstream #32291 + - id: TearGasGrenade # DeltaV - id: Handcuffs - id: Handcuffs + #- id: HoloprojectorSecurity # DeltaV + #- id: RadioHandheldSecurity # DeltaV - type: entity id: ClothingBeltSecurityFilled diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml index 6c1c8d5d72a..9b0ca383ae3 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/chapel.yml @@ -20,7 +20,8 @@ BoxCandle: 2 BoxCandleSmall: 2 Urn: 5 - SilverRing: 2 # Delta-V (Isn't the stuff above also deltav??) + Bible: 1 + SilverRing: 2 # Delta-V RingBox: 2 # Delta-V emaggedInventory: ClothingOuterArmorCult: 1 diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml index dda9b4647d7..5051caf8555 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/Catalog/VendingMachines/Inventories/medical.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/medical.yml index 9fe0f028b13..9e7c72a46cd 100644 --- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/medical.yml +++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/medical.yml @@ -7,6 +7,7 @@ Bloodpack: 5 EpinephrineChemistryBottle: 3 Syringe: 5 + BoxBottle: 3 Portafib: 1 # DeltaV - Add Portafibs, see Prototypes/DeltaV/Entities/Objects/Devices/Medical/portafib.yml ClothingEyesHudMedical: 2 ClothingEyesEyepatchHudMedical: 2 diff --git a/Resources/Prototypes/Catalog/uplink_catalog.yml b/Resources/Prototypes/Catalog/uplink_catalog.yml index 587bbb65445..0f44be58f07 100644 --- a/Resources/Prototypes/Catalog/uplink_catalog.yml +++ b/Resources/Prototypes/Catalog/uplink_catalog.yml @@ -699,9 +699,9 @@ productEntity: ClothingBackpackDuffelSyndicateMedicalBundleFilled discountCategory: rareDiscounts discountDownTo: - Telecrystal: 12 + Telecrystal: 16 cost: - Telecrystal: 20 + Telecrystal: 24 categories: - UplinkChemicals conditions: diff --git a/Resources/Prototypes/Datasets/Names/last.yml b/Resources/Prototypes/Datasets/Names/last.yml index 8cc544afd67..2f952f957a0 100644 --- a/Resources/Prototypes/Datasets/Names/last.yml +++ b/Resources/Prototypes/Datasets/Names/last.yml @@ -219,7 +219,6 @@ - Howe - Huey - Hughes - - Hujsak - Hunt - Hunter - Hussain diff --git a/Resources/Prototypes/Entities/Clothing/Belt/belts.yml b/Resources/Prototypes/Entities/Clothing/Belt/belts.yml index 17bd290d72a..5b0fc165163 100644 --- a/Resources/Prototypes/Entities/Clothing/Belt/belts.yml +++ b/Resources/Prototypes/Entities/Clothing/Belt/belts.yml @@ -495,7 +495,6 @@ - CartridgeAmmo - DoorRemote - Whistle - - HolosignProjector - BalloonPopper - type: ItemMapper # DeltaV - adjust for DeltaV sprites. mapLayers: diff --git a/Resources/Prototypes/Entities/Effects/chemistry_effects.yml b/Resources/Prototypes/Entities/Effects/chemistry_effects.yml index 59fa1b0d1a6..8784ed77cec 100644 --- a/Resources/Prototypes/Entities/Effects/chemistry_effects.yml +++ b/Resources/Prototypes/Entities/Effects/chemistry_effects.yml @@ -222,3 +222,16 @@ state: metal_foam-north - map: [ "enum.EdgeLayer.West" ] state: metal_foam-west + +- type: entity + id: ReactionFlash + categories: [ HideSpawnMenu ] + components: + - type: PointLight + enabled: true + radius: 2 + energy: 8 + - type: LightFade + duration: 0.5 + - type: TimedDespawn + lifetime: 0.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 99093b25574..ea943bc85b2 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/Mobs/Cyborgs/base_borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml index b4cee6b0915..2ec028c0208 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml @@ -289,7 +289,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 fc4f9efdd52..48ed10b6181 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/admin_ghost.yml @@ -133,7 +133,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 @@ -157,7 +157,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 @@ -169,5 +169,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/observer.yml b/Resources/Prototypes/Entities/Mobs/Player/observer.yml index 9208d4c8a98..cc8ed53c01b 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/observer.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/observer.yml @@ -84,6 +84,7 @@ icon: Interface/Actions/scream.png checkCanInteract: false event: !type:BooActionEvent + startDelay: true useDelay: 120 - type: entity diff --git a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml index 9f7e206c249..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 @@ -70,6 +69,9 @@ canShuttle: false title: comms-console-announcement-title-station-ai color: "#2ed2fd" + - type: Speech + speechVerb: Robotic + - type: ShowJobIcons - type: entity id: AiHeldIntellicard diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml index e68ede7a3c9..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 diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/bowl.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/bowl.yml index 40cb141af78..ffccf07ab64 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/bowl.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Containers/bowl.yml @@ -21,6 +21,10 @@ visible: false - type: MixableSolution solution: food + - type: Drink + solution: food + useSound: + path: /Audio/Items/drink.ogg - type: DamageOnLand damage: types: 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/Objects/Devices/holoprojectors.yml b/Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml index 0c8b539c590..0df74d80d6a 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml @@ -121,6 +121,7 @@ - type: Tag tags: - HolofanProjector + - SecBeltEquip - type: StaticPrice price: 50 diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml index f065fd6faae..75fc55f21c5 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml @@ -730,6 +730,14 @@ accentHColor: "#447987" - type: Icon state: pda-hos + - type: CartridgeLoader + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - CrimeAssistCartridge # DeltaV + - SecWatchCartridge # DeltaV: SecWatch replaces WantedList + - LogProbeCartridge - type: entity parent: BaseSecurityPDA @@ -778,6 +786,16 @@ borderColor: "#00842e" - type: Icon state: pda-centcom + - type: CartridgeLoader + uiKey: enum.PdaUiKey.Key + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - MedTekCartridge + - SecWatchCartridge # DeltaV: SecWatch replaces WantedList + - LogProbeCartridge + - AstroNavCartridge - type: entity parent: CentcomPDA @@ -799,6 +817,9 @@ - NotekeeperCartridge - NewsReaderCartridge - LogProbeCartridge + - SecWatchCartridge # DeltaV: SecWatch replaces WantedList + - MedTekCartridge + - AstroNavCartridge - StockTradingCartridge # Delta-V - type: entity @@ -893,14 +914,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 @@ -918,6 +931,16 @@ accentVColor: "#447987" - type: Icon state: pda-ert + - type: CartridgeLoader + uiKey: enum.PdaUiKey.Key + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - MedTekCartridge + - SecWatchCartridge # DeltaV: SecWatch replaces WantedList + - LogProbeCartridge + - AstroNavCartridge - type: entity parent: ERTLeaderPDA @@ -958,14 +981,6 @@ components: - type: Pda id: ERTMedicIDCard - - type: CartridgeLoader - uiKey: enum.PdaUiKey.Key - preinstalled: - - CrewManifestCartridge - - NotekeeperCartridge - - NewsReaderCartridge - - MedTekCartridge - - SecWatchCartridge # DeltaV: SecWatch replaces wantedList - type: entity parent: ERTLeaderPDA @@ -1073,6 +1088,14 @@ borderColor: "#774705" - type: Icon state: pda-detective + - type: CartridgeLoader + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - CrimeAssistCartridge # DeltaV + - SecWatchCartridge # DeltaV: SecWatch replaces WantedList + - LogProbeCartridge - type: entity parent: BaseMedicalPDA @@ -1089,14 +1112,14 @@ accentVColor: "#d7d7d0" - type: Icon state: pda-brigmedic - - type: CartridgeLoader # DeltaV - Crime Assist + SecWatch, increased diskSpace by 2 to fit them - diskSpace: 7 + - type: CartridgeLoader preinstalled: - - CrewManifestCartridge - - NotekeeperCartridge - - NewsReaderCartridge - - CrimeAssistCartridge - - SecWatchCartridge + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReaderCartridge + - CrimeAssistCartridge # DeltaV + - SecWatchCartridge # DeltaV: SecWatch replaces WantedList + - MedTekCartridge - type: entity parent: ClownPDA @@ -1213,11 +1236,3 @@ preinstalled: - NotekeeperCartridge - MedTekCartridge - cartridgeSlot: - priority: -1 - name: Cartridge - ejectSound: /Audio/Machines/id_swipe.ogg - insertSound: /Audio/Machines/id_insert.ogg - whitelist: - components: - - Cartridge diff --git a/Resources/Prototypes/Entities/Objects/Fun/toys.yml b/Resources/Prototypes/Entities/Objects/Fun/toys.yml index 73678920339..e68b47c3c76 100644 --- a/Resources/Prototypes/Entities/Objects/Fun/toys.yml +++ b/Resources/Prototypes/Entities/Objects/Fun/toys.yml @@ -35,6 +35,7 @@ damage: types: Blunt: 0 + hidden: true - type: PhysicalComposition materialComposition: Cloth: 100 @@ -600,7 +601,9 @@ animation: WeaponArcBite # Rrrr! - type: Tag tags: - - PlushieCarp # DeltaV - fish labeler craft + - Payload + - ClothMade + - PlushieCarp - type: entity parent: PlushieCarp 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 diff --git a/Resources/Prototypes/Entities/Objects/Specific/Medical/defib.yml b/Resources/Prototypes/Entities/Objects/Specific/Medical/defib.yml index 69c106efab1..fb0f3d52c68 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Medical/defib.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Medical/defib.yml @@ -71,3 +71,69 @@ id: DefibrillatorOneHandedUnpowered parent: BaseDefibrillator suffix: One-Handed, Unpowered + +- type: entity + id: DefibrillatorCompact # This should be a research item at some point + parent: [ BaseDefibrillator, PowerCellSlotMediumItem ] + name: compact defibrillator + description: Now in fun size! + components: + - type: Sprite + sprite: Objects/Specific/Medical/defibsmall.rsi + layers: + - state: icon + - state: screen + map: [ "enum.ToggleVisuals.Layer" ] + visible: false + shader: unshaded + - state: ready + map: ["enum.PowerDeviceVisualLayers.Powered"] + shader: unshaded + - type: Item + size: Normal + - type: ToggleCellDraw + - type: PowerCellDraw + useRate: 100 + - type: Defibrillator + zapHeal: + types: + Asphyxiation: -40 + doAfterDuration: 6 + - type: DoAfter + - type: UseDelay + +- type: entity + id: DefibrillatorSyndicate + parent: DefibrillatorCompact + name: interdyne defibrillator + description: Doubles as a self-defense weapon against war-crime inclined tiders. + components: + - type: Sprite + sprite: Objects/Specific/Medical/defibsyndi.rsi + layers: + - state: icon + - state: screen + map: [ "enum.ToggleVisuals.Layer" ] + visible: false + shader: unshaded + - state: ready + map: ["enum.PowerDeviceVisualLayers.Powered"] + shader: unshaded + - type: MeleeWeapon + damage: + types: + Blunt: 8 + - type: ItemToggleMeleeWeapon + activatedSoundOnHit: + path: /Audio/Items/Defib/defib_zap.ogg + params: + variation: 0.250 + activatedSoundOnHitNoDamage: + path: /Audio/Items/Defib/defib_zap.ogg + params: + variation: 0.250 + volume: -10 + activatedDamage: + types: + Blunt: 8 + Shock: 16 diff --git a/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml b/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml index c81af6e1280..93eeef2073c 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml @@ -271,7 +271,6 @@ transferAmount: 20 onlyAffectsMobs: false injectOnly: true - - type: SolutionContainerManager solutions: pen: @@ -284,6 +283,102 @@ - type: Tag tags: [] +- type: entity + name: puncturase auto-injector + parent: ChemicalMedipen + id: PunctAutoInjector + description: A rapid dose of puncturase and tranexamic acid, intended for combat applications. + components: + - type: Sprite + sprite: Objects/Specific/Medical/medipen.rsi + layers: + - state: punctpen + map: ["enum.SolutionContainerLayers.Fill"] + - type: SolutionContainerVisuals + maxFillLevels: 1 + changeColor: false + emptySpriteName: punctpen_empty + - type: Hypospray + solutionName: pen + transferAmount: 15 + onlyAffectsMobs: false + injectOnly: true + - type: SolutionContainerManager + solutions: + pen: + maxVol: 15 + reagents: + - ReagentId: Puncturase + Quantity: 10 + - ReagentId: TranexamicAcid + Quantity: 5 + - type: Tag + tags: [] + +- type: entity + name: pyrazine auto-injector + parent: ChemicalMedipen + id: PyraAutoInjector + description: A rapid dose of pyrazine and dermaline, intended for combat applications. + components: + - type: Sprite + sprite: Objects/Specific/Medical/medipen.rsi + layers: + - state: pyrapen + map: ["enum.SolutionContainerLayers.Fill"] + - type: SolutionContainerVisuals + maxFillLevels: 1 + changeColor: false + emptySpriteName: pyrapen_empty + - type: Hypospray + solutionName: pen + transferAmount: 20 + onlyAffectsMobs: false + injectOnly: true + - type: SolutionContainerManager + solutions: + pen: + maxVol: 20 + reagents: + - ReagentId: Pyrazine + Quantity: 10 + - ReagentId: Dermaline + Quantity: 10 + - type: Tag + tags: [] + +- type: entity + name: airloss auto-injector + parent: ChemicalMedipen + id: AirlossAutoInjector + description: A rapid dose of saline and dexalin plus, intended to get someone up quickly. + components: + - type: Sprite + sprite: Objects/Specific/Medical/medipen.rsi + layers: + - state: dexpen + map: ["enum.SolutionContainerLayers.Fill"] + - type: SolutionContainerVisuals + maxFillLevels: 1 + changeColor: false + emptySpriteName: dexpen_empty + - type: Hypospray + solutionName: pen + transferAmount: 40 + onlyAffectsMobs: false + injectOnly: true + - type: SolutionContainerManager + solutions: + pen: + maxVol: 40 + reagents: + - ReagentId: Saline + Quantity: 20 + - ReagentId: DexalinPlus + Quantity: 20 + - type: Tag + tags: [] + - type: entity name: space medipen parent: ChemicalMedipen diff --git a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml index 4c31d700905..bc3e1a84436 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/chemistry.yml @@ -550,12 +550,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 @@ -568,6 +564,12 @@ solution: food - !type:DoActsBehavior acts: [ "Destruction" ] + - type: SolutionSpiker + sourceSolution: food + - type: Extractable + grindableSolutionName: food + - type: StaticPrice + price: 0 - type: Tag tags: - Pill @@ -588,9 +590,6 @@ tags: - PillCanister - type: Storage - whitelist: # DeltaV - Remove the ability to store anything other than pills in pill canisters - tags: - - Pill grid: - 0,0,4,1 quickInsert: true @@ -598,4 +597,7 @@ areaInsertRadius: 1 storageInsertSound: /Audio/Effects/pill_insert.ogg storageRemoveSound: /Audio/Effects/pill_remove.ogg + whitelist: + tags: + - Pill - type: Dumpable diff --git a/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml b/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml index c114b57615e..72404d0ad70 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/rehydrateable.yml @@ -209,8 +209,9 @@ handle: false sound: path: /Audio/Effects/bite.ogg - - type: Tag - tags: [] # DeltaV - remove PlushieCarp tag to prevent wasting + - type: Tag # DeltaV - remove PlushieCarp and ClothMade tag to prevent wasting/eating + tags: + - Payload - type: entity #why is this all redefined down here as a parent of base object instead of just being parented to monkeycube?? TODO: Fix this shit parent: BaseItem 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 diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/mining.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/mining.yml index 23506610b32..3b2fd4893b3 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Melee/mining.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/mining.yml @@ -153,6 +153,7 @@ - type: GunRequiresWield - type: Item size: Ginormous + sprite: Objects/Weapons/Melee/crusher-inhands.rsi - type: DisarmMalus - type: Prying @@ -195,3 +196,6 @@ - type: Tag tags: - Pickaxe + - type: Item + size: Ginormous + sprite: Objects/Weapons/Melee/crusher_glaive-inhands.rsi diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index 30967c955fd..f6f58803ed4 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/Entities/Structures/Piping/Atmospherics/miners.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/miners.yml index 71e171fc50d..5562715fdb2 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/miners.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/miners.yml @@ -113,6 +113,14 @@ - type: GasMiner spawnGas: Tritium +- type: entity + name: frezon gas miner + parent: GasMinerBase + id: GasMinerFrezon + components: + - type: GasMiner + spawnGas: Frezon + - type: entity name: water vapor gas miner parent: GasMinerBase 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/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 diff --git a/Resources/Prototypes/Entities/Structures/Wallmounts/timer.yml b/Resources/Prototypes/Entities/Structures/Wallmounts/timer.yml index cd81687ec1e..dc781106785 100644 --- a/Resources/Prototypes/Entities/Structures/Wallmounts/timer.yml +++ b/Resources/Prototypes/Entities/Structures/Wallmounts/timer.yml @@ -64,8 +64,8 @@ canEditLabel: true - type: TextScreenVisuals color: FloralWhite - textOffset: 0,8 - timerOffset: 0,8 + textOffset: 0,6 + timerOffset: 0,6 textLength: 5 rows: 1 - type: Sprite diff --git a/Resources/Prototypes/GameRules/events.yml b/Resources/Prototypes/GameRules/events.yml index cd60ecd70e0..58453cb8363 100644 --- a/Resources/Prototypes/GameRules/events.yml +++ b/Resources/Prototypes/GameRules/events.yml @@ -39,6 +39,7 @@ - id: RevenantSpawn - id: SleeperAgents - id: ZombieOutbreak + - id: LoneOpsSpawn - type: entity id: BaseStationEvent @@ -457,7 +458,7 @@ duration: 1 - type: RuleGrids - type: LoadMapRule - preloadedGrid: ShuttleStriker + mapPath: /Maps/Shuttles/ShuttleEvent/striker.yml - type: NukeopsRule roundEndBehavior: Nothing - type: AntagSelection diff --git a/Resources/Prototypes/GameRules/meteorswarms.yml b/Resources/Prototypes/GameRules/meteorswarms.yml index 935843257ff..95f9985b6a2 100644 --- a/Resources/Prototypes/GameRules/meteorswarms.yml +++ b/Resources/Prototypes/GameRules/meteorswarms.yml @@ -57,7 +57,7 @@ components: - type: GameRule - type: BasicStationEventScheduler - minimumTimeUntilFirstEvent: 300 # 5 min + minimumTimeUntilFirstEvent: 600 # 10 min minMaxEventTiming: min: 750 # 12.5 min max: 930 # 17.5 min @@ -70,7 +70,7 @@ components: - type: GameRule - type: BasicStationEventScheduler - minimumTimeUntilFirstEvent: 300 # 5 min + minimumTimeUntilFirstEvent: 600 # 10 min minMaxEventTiming: min: 750 # 12.5 min max: 930 # 17.5 min diff --git a/Resources/Prototypes/GameRules/unknown_shuttles.yml b/Resources/Prototypes/GameRules/unknown_shuttles.yml index cde980debf5..c2962e25072 100644 --- a/Resources/Prototypes/GameRules/unknown_shuttles.yml +++ b/Resources/Prototypes/GameRules/unknown_shuttles.yml @@ -20,7 +20,6 @@ #- id: UnknownShuttleMeatZone #- id: UnknownShuttleMicroshuttle #- id: UnknownShuttleSpacebus - #- id: UnknownShuttleInstigator # DeltaV - remove random ops - type: entityTable id: UnknownShuttlesFreelanceTable @@ -33,10 +32,10 @@ - type: entityTable id: UnknownShuttlesHostileTable table: !type:AllSelector # we need to pass a list of rules, since rules have further restrictions to consider via StationEventComp - children: - - id: LoneOpsSpawn + children: [] # DeltaV: empty list to remove instigator + #- id: UnknownShuttleInstigator # DeltaV: remove random ops -# Shuttle Game Rules +# Shuttle Game Rules - type: entity abstract: true diff --git a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml index fc4e689084f..a6b106953da 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: Logistics # DeltaV: Logistics replaces 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: Epistemics # DeltaV: Epistemics replaces 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: + back: - TowelColorMime diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index afd513e4e8c..8ae7c622e3b 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 diff --git a/Resources/Prototypes/Nyanotrasen/tags.yml b/Resources/Prototypes/Nyanotrasen/tags.yml index ff3b901b1cc..54f39b7b6ef 100644 --- a/Resources/Prototypes/Nyanotrasen/tags.yml +++ b/Resources/Prototypes/Nyanotrasen/tags.yml @@ -12,6 +12,3 @@ - type: Tag id: NormalityCrystal - -- type: Tag - id: PlushieCarp diff --git a/Resources/Prototypes/Procedural/dungeon_configs.yml b/Resources/Prototypes/Procedural/dungeon_configs.yml index b55d5a9e697..d75581bbc2b 100644 --- a/Resources/Prototypes/Procedural/dungeon_configs.yml +++ b/Resources/Prototypes/Procedural/dungeon_configs.yml @@ -127,6 +127,8 @@ Junction: BaseAirlock WallMounts: ScienceLabsWalls Window: BaseWindow + tiles: + FallbackTile: FloorDark whitelists: Rooms: tags: 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/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/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 577d8299dab..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 @@ -98,6 +94,13 @@ materials: Steel: 100 +- type: latheRecipe + parent: FoodPlateTin + id: FoodPlateMuffinTin + result: FoodPlateMuffinTin + materials: + Steel: 50 + - type: latheRecipe id: FoodKebabSkewer result: FoodKebabSkewer diff --git a/Resources/Prototypes/Recipes/Lathes/medical.yml b/Resources/Prototypes/Recipes/Lathes/medical.yml index f4c0da5de79..5fce880c7de 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 @@ -75,7 +70,7 @@ result: Gauze1 completetime: 1 materials: - Cloth: 200 + Cloth: 100 # lathe more efficient than handcrafting - type: latheRecipe id: HandheldCrewMonitor @@ -150,66 +145,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 @@ -229,20 +209,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 diff --git a/Resources/Prototypes/Recipes/Reactions/chemicals.yml b/Resources/Prototypes/Recipes/Reactions/chemicals.yml index 537a792e859..78fdfec7c9a 100644 --- a/Resources/Prototypes/Recipes/Reactions/chemicals.yml +++ b/Resources/Prototypes/Recipes/Reactions/chemicals.yml @@ -81,7 +81,7 @@ amount: 1 Sulfur: amount: 1 - Oxygen: + Oxygen: amount: 2 products: SulfuricAcid: 3 @@ -205,6 +205,20 @@ energyConsumption: 12500 duration: 15 +- type: reaction + id: Flash + impact: High + priority: 20 + reactants: + Aluminium: + amount: 1 + Potassium: + amount: 1 + Sulfur: + amount: 1 + effects: + - !type:FlashReactionEffect + - type: reaction id: TableSalt minTemp: 370 @@ -501,3 +515,4 @@ amount: 1 products: Tazinide: 1 + diff --git a/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml b/Resources/Prototypes/Roles/Jobs/Civilian/service_worker.yml index 93a62876a72..12f5097c7f1 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: true # DeltaV - Can be antagonist access: - Service - Maintenance diff --git a/Resources/Prototypes/Shuttles/shuttle_incoming_event.yml b/Resources/Prototypes/Shuttles/shuttle_incoming_event.yml index a5269a73dae..1703e0c6980 100644 --- a/Resources/Prototypes/Shuttles/shuttle_incoming_event.yml +++ b/Resources/Prototypes/Shuttles/shuttle_incoming_event.yml @@ -1,8 +1,3 @@ -- type: preloadedGrid - id: ShuttleStriker - path: /Maps/Shuttles/ShuttleEvent/striker.yml - copies: 2 - - type: preloadedGrid id: ShuttleCargoLost path: /Maps/Shuttles/ShuttleEvent/lost_cargo.yml diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index 1c02d7f3d03..fdf9de78d18 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/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. + + + 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+Oj9RMnPfIKP)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 diff --git a/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_blue.png b/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_blue.png index a1b463f7896d5d6b8c2fc4300c01a8871c3de454..45e0c9755e4f077515ab8cf0b41d4bb1d3c4715d 100644 GIT binary patch delta 271 zcmey#yq#%+Vf{x>7srr@*5m{U*2M`TJxz>kJt`~yp3fF)3P1SVINQT?vI%>{mw4qB zFI*Oic|O}T;Q<315VS2XU-xM0_80q)6)XyPZNITk;U;7M^0r6e6ZXzh`P@;)u-=p7 zaACIuo84pqHnTw2HCc6g_wk2w`|`6e3UB25QIp2|cw6zFBlVJ}&bhAHc*MHly2_LK z&+A{hto-}^v-DS42W^8_43jo1GBYb}<)6W9=ew^xbdG*_=Qpt4!`q6#Sv+Mqb2#%g zL-)UIp0oQ4PCCBeSI>OH5Mld4W7*uq+m>-``iswNlpNbC6VxLO_8b$)4b&00bPKu6{1-oD!MY&A?g#R1Xw^(G1KB7@?|x z<}6@>t5#URj9`OwespsD1Ee?$JR*x37)-B#Fk@WmQx2e@Os0!}2#^L^2nGT`QUi!V zGzhO=Skd?!NSAxMIEF-UCM8I)E><*OR^<2O8w$=de+VwRB%aY;A z;c6Nnz^|H&6im|F7ez>j`A!gPf3@pdeJR^5(zkXXF0P zzpnCR|AutUFrG=wD;Za+UW#}$wbzQllEuNXm;16R*FSmlU;Vt7Re2knl3s^YuaOY* zQkeDQit7@u84njIsI_E1V~F_1%xbS8av^hujjxPDibJoKG;iZY0f{O_U_6FKJS{!I Ryd7vYgQu&X%Q~loCIBPRh=~9I diff --git a/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_gold.png b/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_gold.png index 641a4c22153e4c61e72b9fd9e842a708bdca640e..53b97f4c783c567aae26c9f93716597ed2d440f5 100644 GIT binary patch delta 267 zcmey$yqRf&Vf|ZA7srr@*5m{U*2M`TJxz>kJt`~y%4h0yg&+L1dA+CUWE1v3^%tFQ zICKh4I+Ln+kdX%j{^!XY*8czBm7jUB%gOpAS;tMxGi0wloch1I!Q^vCnZuHe8qA0P zrt(ZYwumRvZ&JinpWEMM)``uM<6u%tlHKsze*iukfWe1rbQ ztd;K=q8bC)C(PlMln_{1dqC#H?REUCEnY8Fx@Dd4^X7G)ZJ(xZJSA)QdsZUnTG@u} zb~D%}Tl+|}%e;&|asUVtgpVBB@K#2@dHTh4ky-B#RtNP+gFVK?1_BIczB{~8>G)#B P00f?{el9HQoD!M<8Y&A?g#R1Xw^(G1KB7@?|x z<}6@>t5#URj9`OwespsD1Ee?$JR*x37)-B#Fk@WmQx2e@Os0!}2#^L^2nGT`QUi!V zGzc$VznJqRkk0pXaSVyzOiGYoU94yz#RMcmoE{XcyjP!OaP|-Lra%9?<^KHmU%x>) z^AX1c=6`Y=N*#`UEGw7pQm$eWJvhx>s{7yZc8CbG!?b_)c`Rl!;ZY7{DpzG0j0#?d zR4S1Y`z_h0bn|KX)o5r!Uo zOW2l7^GNOtH+#kKM1Xx6a)we zA2KOs(E0t>KJQEY>yY37UzqsJQ{z)GTHrRdx9va%2hU!hza6(MiwK!KWd_J0p00i_ I>zopr01_yI%K!iX diff --git a/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_gray.png b/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_gray.png index 47d410736e70e9c8254247ce1db5374f4db03e73..8f905fb9a88cd0f8feae32d63cf1a5317969637e 100644 GIT binary patch delta 259 zcmV+e0sQ{`1FQm&F@NSsL_t(oh3%C+3IZ_@MnA<;Td~{D0|+)US}h1R-oSte9>cwY zrC7}sEcOIb2*O@r*=`Fv4-gxF5Hy>hi_JU;3CYLs2q6O~ilY3PMnKjQkuxA7p*6z< zn7J}!j0vjS3J?GQ0#}mYFR8=SY&|zV^cV27HJJi~bgSB1BR2Hd7SE zBYS%fl{9??M5K{s9q+7fU2g#*vgh{FJNt8ix=?}Oe*k#C_P+`AhU>TcY&A?g#R1Xw^(G1KB7@?|x z<}6@>t5#URj9`OwespsD1Ee?$JR*x37)-B#Fk@WmQx2e@Os0!}2#^L^2nGT`QUi!V zGzhO>ChGbKNLPEhIEF-UCM8I)E><*l_1XCjee;m1>?;-Tv+^Wp!Fi}ljdv;SYbcrn7z zqc4q*;b+F{km^M;4yE^-c}z@9Sbq1-5MWrTdQA{$Im7?|FD;(U05bAH&PYyB5R#CR z`WL^W;31MJd`sAtO!G+Y3^#kl@I-)t)l|=Cx(0`4%pZB_W!_Q@%Vz!G=9mhy?U^FO zrUrp!k$NlEuKmk@=zqWT-}_cq<(k`0UOvKjB>hIL`_5pLiGxM2P#idTB)7}A-j(uaWmAH&mZq2c8 z4E~lhb^xS4ID}o&8d6tmB*8qA65-WnUm31G`^q40^^4&w2RjB0lOF}6U=)l3QUCxl XW>a1!R>=_n015yANkvXXu0mjf%#?U| literal 507 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}6{!)PX}-P; zT0k}j0}G=R11m@g5Zf_I!`W_(8Vt-}aV7?a_DlvAs2V>Y&A?g#R1Xw^(G1KB7@?|x z<}6@>t5#URj9`OwespsD1Ee?$JR*x37)-B#Fk@WmQx2e@Os0!}2#^L^2nGT`QUi!V zGzhP|C{$Vkq^mq#977^FlM*CY7b_Y_F#(AXr-YU2hwGCJ&i-NE^yhn*#Gi_2%Nr9- z3RzAt>fidxku*WsF>B?!j-ucWW(N~Ho+1^Gd1`z=>hEy8*?o8Cs{b1kBQ!1^VN{UM zotx!9g?Yuh>Ise8k|t;{{1lq~-Z5!|0K-bvYl1+#8UFuYSd}afWaNQdk({6)bfe4g zPyNMp-|K-c_zyHJ!q9_n3EPrs9?6~IX0I5Y2r#gk>iJC9;LwcuBQL$oTS~(`^+&#R zNSkQ$lMFc~1#XVSSx=cF_WZZc`%?cp_e T;_+|YAUAlr`njxgN@xNA=(CAd diff --git a/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_red.png b/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_red.png index d30341b1422ba957935c3067f3e8b2d494c241fc..14b22cf14a4163d8c3cc7a205a2f9da62e4bb9da 100644 GIT binary patch delta 245 zcmey&JdbIDVf_tH7srr@*5m{U*2M`TJxz>kJt`~y`ZF7Q7B|eCDe36C+;6VZ$rv#q znFAp3;pJuZJ)hFj(s+R4zx>xIdz2mMl{WuyDmx=%LW-OxpM~W|{^pPgDu*v^&);~; zott}diX}4;2yk!0o;8o-6&pRcy&3&Bu p!RS|ylemAKXICNE2Z3ORGBEi1m^;jnZDeNv0#8>zmvv4FO#qGaY}Wt) literal 499 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}6{!)PX}-P; zT0k}j0}G=R11m@g5Zf_I!`W_(8Vt-}aV7?a_DlvAs2V>Y&A?g#R1Xw^(G1KB7@?|x z<}6@>t5#URj9`OwespsD1Ee?$JR*x37)-B#Fk@WmQx2e@Os0!}2#^L^2nGT`QUi!V zGzc$sJFo_%xzN+aF(iUBDM5mDv7&(#6OagTatI3gWN)XVp}{e2`OJEUX|rd}e0cQU zy?a}VSxzuYNlCF7o|w4c!h$M~1|C++1Sx6hIG!M9WA;Dxd0*<~FEEDh+_^Dng3MVN z2ChqMgWq-*FefvK& zFK>;63VRT9koS^}N3^9&8HzX>nxw>+d5g5HG5^=kds&s&hxymNeXhLPY$q?;usDbb z95Ol0YGh>e-|@%)!o~lim)}ahU{E>BqTvUR^{OHh7B}aFj#dVSo#M(#P2qKmfL1ej My85}Sb4q9e09mksl>h($ diff --git a/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_rusted.png b/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_rusted.png index ce82c248db8d03f5ce27802e954258c56294475e..8223bcca8fa87d56495186ceba1cd934457725f1 100644 GIT binary patch delta 476 zcmV<20VDqW1cC&RFn^LR_hNiU@kouD=ljMo(4L2 zpXH9{9=<&91Mm01#l^+tKjV=a-iLY>pK8n#+%F^csd?mpp)J1^;@M3UPqn{Hp;; zJ9iFH>ITHO;Lp=(t*_KgD@f>ElidL)i^vKRIe%|xAHC3zfY9*fy-TCH$f|>u z94(@BI*n3_?)okOdJ132cY&A?g#R1Xw^(G1KB7@?|x z<}6@>t5#URj9`OwespsD1Ee?$JR*x37)-B#Fk@WmQx2e@Os0!}2#^L^2nGT`QUi!V zGzh<1u=vAYAid4g#W5s;GburWb+Mv>6cdmLaZ)fm@Yep!+O01G|7Uj>|G$3inv+2X zuZVLPbFjCmRN9X-r(XQuJvAkw zAh4*D*`e=-)m6Fu%seIs_!jJX@5m-4CDp{s&T79-fZ=4L6T^~e5$-^DGyMO*Wz{;6 zPd9^nker|(Bq1gBFMdbC!+L4v-v1XbUX0k-+shll>!CaGn9zEjXAI`Wp=+i!%eacO z^Tcputo##iu~1HiRl&WXhWqe>fX2?oD-v4Wmle1g+L|siTzE9$&`}MG&3PZ|1=uWC znAvvynszvd>qLRAsAq-74YsL&-H$nxPH^$)7HF_!a%q-f;>rr>XfQOA)^M8~)9?oD yxBR(T|K;bhS@tXoYA0_QT9`SVbb6Mw<&;$V2jLF&n diff --git a/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_silver.png b/Resources/Textures/Objects/Devices/encryption_keys.rsi/crypt_silver.png index c31a743f473e0440a89cf06984930634deb7f86b..03e2960779226fb6ab002f96db054f4443615009 100644 GIT binary patch delta 273 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/inhand-left.png b/Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..42d319843d99564a585539451cff12800025cf70 GIT binary patch literal 294 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!7>k44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O_~O1^9%x9yxO4#fulk#l_PXZ^*Cj2MQNeOKbpAY$ZW{!T&*kVe|ea`+*{y z1s;*b3=DjSK$uZf!>a)(*zM`!7!u+B_L?JKg94As#chZFuFsjZ%zK)>jWPdTrno`*JZ|Rep$&$73=)fGe>69! z7GPvDVq!^Q;W%M%VRI^b|E)Lc*yFhV=;Xg+53HZSQBo_!@#43Fz=jv$jSZpu-+U6_ fS9-vHV2-(;f#2(u9ZM2{&SLO%^>bP0l+XkK5Uy%& literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/inhand-right.png b/Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..a2317f7facec9ebb7460963a2fae389595bfbf02 GIT binary patch literal 300 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!7>k44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O_~O1^9%x9yxO4#fulk#l_PXZ^*Cj2MQNeOKbpAY$ZW{!T&*kVe|ea`+*{y z1s;*b3=DjSK$uZf!>a)(IMLI^F(ktM?KN+{0}3200SObM~ZKLOQ zMg|9Fh6XkUhO!lvI6;>1s;*b3=DjSL74G){)!Z!pu4AwV@QO1vIOhm1d*PmKm#tfgAUAY8oojw zW_|ej|8n$u$t71=Bon@DW6IlfCaLL?3S-G>$1fTP^=%pn2@DLuPlPtbiW}?z8p+`4 L>gTe~DWM4f3t%-Y literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/screen.png b/Resources/Textures/Objects/Specific/Medical/defibsmall.rsi/screen.png new file mode 100644 index 0000000000000000000000000000000000000000..1a2ac1cdec93e592dcf259277ebf800e1bcc406f GIT binary patch literal 198 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCikh0(?ST#hiWh;xij|9svqmD75+tQdbh>7ySSKe+CDwm0y5-&H|6fVg?4j z!ywFfJby(BP|(=Z#WBRfKRH2-!A;cRzzQag1>2d}I2t}FFti>&!NSxNAjdLcSwo{B j%ZG?Y-X0FtGiMlT`?*hL74ez^wKI6S`njxgN@xNAS7bM8 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/icon.png b/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..69c4e441de03015ad7ab1cd7fda81e35e63e1fa6 GIT binary patch literal 300 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCiji0(?ST1q1|ygoM=9)wQ&=jE#*I6&33l8G({Z-)qFT3xUThWz(_XSP z8PDB(gLg$^cm7VsRexpfAJAc6s~A>o=_uk}o$z?h{E19D3>%Nk44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O`212l#}zYH4X18ygD=2`MTn0>zlCg=&EmYe|q_@P8m+_`QuU7%0G5;1OBO zz`%D9gc)~C%zg_L?DlkV42f`md(Dxr#em28qQ#eg>2j_~)8#Xc=B2FH+FIveW^(Pg zgh7B|!h%B%Z+2G%&D=G8y`zHir?`D-(icAX?RN065ocS%7IU4E!8wGbo_RAnP-)Tu zhocRRT+GI|%RXeRd0Dj}>_K|w4*8V-j!Fh!Jrxq(H9H(|-p|cq^YykK|3?M3e+&_? Z*@bu6>)e|8%oXS?22WQ%mvv4FO#nAuVsroi literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/inhand-right.png b/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..c30877c534e5fb585fd2ac7319483ebd6d4297bd GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!7>k44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O`212l#}zYH4X18ygD=2`MTn0>zlCg=&EmYe|q_@P8m+_`QuU7%0G5;1OBO zz`%D9gc)~C%zg_LoZ#u=7!u+B_L?`>0Rs+}faA~prRzCm&FW{o96K|zb7lX8-l?Aq zSvVp%1U6VGv|ll13%z1AojpKsZK_^6!>!zY2F5=}Wf+7Gl=?cn5>$L7zq>?=iA4vZ z!N);oo&T|QQ!)-G>iYPyL`U7WdSk?Nu||W(!A73bcEfD*g<|h{_Wt!h_Nt_HnbQMy b2TgPSpY}S3`(ri$-NxYQ>gTe~DWM4fD1Bat literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/meta.json b/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/meta.json new file mode 100644 index 00000000000..441fd4f5feb --- /dev/null +++ b/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/meta.json @@ -0,0 +1,28 @@ +{ + "version": 1, + "license": "CC0-1.0", + "copyright": "Created by EmoGarbage404 (github) for Space Staiton 14 and modified by alzore_(Discord)", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "ready" + }, + { + "name": "screen" + } + ] +} diff --git a/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/ready.png b/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/ready.png new file mode 100644 index 0000000000000000000000000000000000000000..e5a8065eadc06d555fc09d7e309e6b57a08342e0 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSK$uZf!>a)(Xzc0Y7!u+B_Uvv>1_cr318??EPLBND7~a9m yaY(jBL{o_2fw!$>?$bB3?(H~Vew~HkkJ`)+eL{tDJOv^^?F^o-elF{r5}E+i0WDep literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/screen.png b/Resources/Textures/Objects/Specific/Medical/defibsyndi.rsi/screen.png new file mode 100644 index 0000000000000000000000000000000000000000..0c7a26a2a5eda1c3b5cd730138d9d6fdcc07eef0 GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSK$uZf!>a)(7~<*T7!u*0EWx@sL8PZC(16SBpoRpivYdfa z=AuS@=ELn-)2+opNLIZ?x;Ff{&p zEl{QY9K$W?giABqW)yI4nrD=7QU8>HcP!IM-?g=OexX#nb2rPSjFr1(pM{DS|Z0ER1fW-J6saTa()7Bet#3xY6XeMwPPjwzXhKo6MDkV9f(>wLuyM>xy}Kvd8^NxEKhqD%m;J>gQu&X%Q~loCIFxseuDr2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/medipen.rsi/meta.json b/Resources/Textures/Objects/Specific/Medical/medipen.rsi/meta.json index 8e9f54f1d06..8872f25f52c 100644 --- a/Resources/Textures/Objects/Specific/Medical/medipen.rsi/meta.json +++ b/Resources/Textures/Objects/Specific/Medical/medipen.rsi/meta.json @@ -96,6 +96,24 @@ }, { "name": "medipen-inhand-right" + }, + { + "name": "punctpen" + }, + { + "name": "punctpen_empty" + }, + { + "name": "pyrapen" + }, + { + "name": "pyrapen_empty" + }, + { + "name": "dexpen" + }, + { + "name": "dexpen_empty" } ] } diff --git a/Resources/Textures/Objects/Specific/Medical/medipen.rsi/punctpen.png b/Resources/Textures/Objects/Specific/Medical/medipen.rsi/punctpen.png new file mode 100644 index 0000000000000000000000000000000000000000..fa529e8d189535e042a31cca590cddc3ada837e8 GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCikd1AIbUkME0JvSi7wUAvaewfgX40uX%o@ZsLIDy82tSLzimU%uQ>p|)ek zj>g7DppNtTZ+-$P{*oZS;QuIq;mVyE3xQIc1s;*b3=G_YAk0{w5%bXG_!3+0q3T9MhO@7PYHO(GM)5YTYKkM8q4{zgnj%jdfOdM_AnS!S^%wL N@O1TaS?83{1OUM_a?1b! literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/medipen.rsi/punctpen_empty.png b/Resources/Textures/Objects/Specific/Medical/medipen.rsi/punctpen_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..4bd9cd4858379faae8933ea2fd38884f95a7428a GIT binary patch literal 311 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCikd1AIbUkME29@M6NUxmHV-EZMPR$F5zwCQO*{;lqb}*Q&g|z5gpJUcP*} zv9YnCLJg>+bM;MLAjMx2Gh-o8inG8YvY3H^TM&d9>r>(<0tG8PT^vI! z{NMJS7CIon!@xPU;>iE{Jl{RHoR2L%{_fz6tsN`b|1J0&na~qCZkkfe9T3Tr)0oPFt{BqG+}$e-NLwz%A}iM-_f5Rh@T;;VO<6dz8-LVzVvZ q?ZB;{ToIP_JS#u2&vg!X&0BrmWO>@NU_PK57(8A5T-G@yGywnxT!1A2 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Specific/Medical/medipen.rsi/pyrapen.png b/Resources/Textures/Objects/Specific/Medical/medipen.rsi/pyrapen.png new file mode 100644 index 0000000000000000000000000000000000000000..fee075cc3bef3ea8eea9fc2f5fd7e1d7f39c7e2a GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCikd1AIbUk1vT`vSi7wUAvYwS$()L0SG>P_;7D;mC|pSEAFVdQ&MBb@0F)$g8vpKsU_yrh*Nh9D(-!QOD4K1`AH-)ZaEtrXQH7sMRp%XIxQe629;Gw5*lf#p pJ8VM%xNb!1@J z*w6hZkrl|-3h)VWRaI5Bx3@1XWe5!oHINawdGltj=zqrl_jTDAW*Qr>U%!4wziol9 zDp0xZ6VVJH#a9yK7yKU?Ft{GLa{?&CS>O>_3{-Fggc+x5^GO38Fw@h;F{C2y?X81F zhYWaF0yGUDO!)P`emmFIgYCznmQLV1{BG&Dgg4?sJ4%-RE#^>YU|@m~4cnPIwwe8` z(Eqk;nV#0hh>~lXQTmhDdc{ut&#DyFrMv&fm+d#QgHEkxSR0e?TEY>axjp-%wX0Rt8R2L?tc@!@5| bwSA0zXH3)Ixu}-|V~)Yo)z4*}Q$iB}1E=jS literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..75934554bfae3c552bf228829cc2f6e6018c4ef8 GIT binary patch literal 598 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD`S&F%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl|-3h)VWEiGlRx3^bSRSgXdy?OJdfs6p-|NFV3|JScyKhxM)myMyoS9M3f zEl_!McA5u};wuUA3;vG`7+eqBIRTX6Ebxdd1}ZoL!i-b3`J{mknC@@dvo=`7-K!|`<3H+ zAXe{S@=5ReI{Z6X%B44OR#>_!gjUx76H;JWw8dQi@1!iRx1au4JM8gz^yt6yf~S$Y z&hTw$JsG<|bPe+*=fjZ;rUo-id|p#fX3~(o?^;bjCu79Z{fAYzNcEdBAK2V~VBg#| z-UsZyFN}Sr`n^FE;bctKgLsBjwe`xIw(oy^J#fdp@8(7(%@tz4{ literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/meta.json new file mode 100644 index 00000000000..c634ba82a37 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "by alzore_ (discord) based on the proto-kinetic crusher", + "size": { + "x": 64, + "y": 64 + }, + "states": [ + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "wielded-inhand-left", + "directions": 4 + }, + { + "name": "wielded-inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/wielded-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..e8e9a267ff2eb9b55ab0083fedda98514671c026 GIT binary patch literal 599 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD`S&F%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl`{3-AeXwYRrdQ&S5K4OLZDHINY~D`O}vWnlb&KUeg>E*ry4W8tQ$9O ztY5$W=FOWs`fUq*Re@U7EZ4sUQbHv`e!>6I0mGyH`-OnAoCO|{#S9F5M?jcysy3fA z&_O+(E{-7;ac^&(oYt%$;u@%QM9nPp-~aPsGtwtB=xIcrd~!!n(dI^zap33aAdjE` z4u&hfQcH`uZP(skuC;V&q}i==I%l1o7?PJnnjKrh@UAp>*0mD7s@^~4nsaAwTlfA` zad-NqTU&Z7Z>y^DGWKreW)MDNyaQ)msJG=smIc6;3ej<$=- zzWnk_c)VV|id{`QbDB@eErti18ByGf#(BU}aCTahto-s-bNaWw_grVk7_-Z5LX0fy zmD0=W$~l&3D_3tVaS^`Hc-QQ-EK_;?1NE;i+jFkIJ04m3XaB#Qou~Q!r0wV5wyXNu ztvR9d-yHZ@UH|Ua%d3G0mQ20$|6j-4I9c|d@I1jK;m7+Ec9nE1?6l&WvHq@-$67na g8Z{)h)JPhfuNRXtcKKl&6ao_WboFyt=akR{0DdU&umAu6 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/wielded-inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher-inhands.rsi/wielded-inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..4ef9c388d62a58017b13116d133dc50fddcd07b8 GIT binary patch literal 601 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD`S&F%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl`{3-AeXRZ~;5x3^bSRSgXdHINa|Wn;({{m=OSerYK~SsBAjW8teZD) zu3x|Y#*G_0`fUq*Re@SBJviJAq=ZU>{DS|Z1BOTY_X`1KISV`@iy0XBj({-ZRBb+K zpo986T^vIy;@;jmTXe{Phb3W+MyDd@mG}QQ-8eR7%h6A}cn+t2cS>6Far*q|5)OGj zMiv1F1{C4~v&D|0gyW^LA?_P@FbW>g(rovzVpyf%uvJEBBSX>o8H+BjxhH?Reyhx0 z|JG#7+~<}KpO)^LlPGa4xaZttuiwwQmK+MUtX}dhW**a{%jfL3?^rX@wbW5AZ|R0_ zX(8_p?AtNt1k>Ai?KO98KB&f+7q0T#RvfwFX^no&X(w$31eRO`$)!e&{ z?9%gOZ?L{;i#rrLXL29^CHv&^Bp{Tp{V9{BBq f9F+2GEd{Ln(nh=Ut=>%nMi+yptDnm{r-UW|*iG%| literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/icon.png b/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/icon.png index d9b6ca8157b74b5484b09fb1baecec7238373cd2..1df2bf438850dfc03a279ea0ce8dc98c3f672207 100644 GIT binary patch delta 396 zcmX@Zx}JH0WIZzj1B1(wu46!ou{g-xiDBJ2nU_EgOS+@4BLl<6e(pbstU$hHfKQ04 zs;a8Jy?uJRNoZ(jX(>ZiR@Tj%Hw|P2az+2|=(kKKNMNS1 zae=QYQ1@vY88#p#ToU9L{2v)`fjJDDYVUANR1~jgc;M;c7-Hc+chXzFCIcSVX!R)z z!*2ezU$b4dTVC7v^RB>r}xHnqnbOpT%4Y2-v$iL~h=KUjbXc zbGJ8rt^c5Zu>7~7@0|QS!h7VkeP3_+%-^_2{`2RMe|iZgj`2pOJg!Y3}>% z$FaBMmTr9TKk!I-ho%L0Rf=xw`Tc!U|J&yLpwo5&Z8A*DZ64??VQg;@l&f99 i%Jcubf^&qIrhm_UE4e`K>l1;&!QkoY=d#Wzp$Pz#hOkQj delta 703 zcmV;w0zmz*1Iz`G8Gi-<0047(dh`GQ010qNS#tmY4#WTe4#WYKD-Ig~00MqVL_t(| zoW+;FOB-Pr$Dcr|OpdWg37%T$jy;A;B;$8+FA2>AHr8NGWu;R@Ka zw{=9NlXETn&40}M-UTenir_Gy3urswFJBOCt?baZjamAU|AV(VEFr^@Kso>kd@uh?T$t2?<24oZ)DHCX)$f1^_RWN&=2;EICNDs+{4= zALhCfkgHeW2rs$2;1KOtzz}c zg$zb?aDU$de&HNQ;76?)qFy z0d?9Tp$?r+f;x;=fNv)G9?uWF+h_%*;^bb}hiSdo*bWP>7065*4&Z~vGqSP;aV`%F z-XtKyuWzM7h2IiT;kcT0GgMs(;D^ND0Sw$}UpV2O0B5~8OxFHE-{4IGSZ?BMc4GF6 leF zuUPAy97`kTtg-ka8sz`M%R{yP%-)Fw=lETGOzym&E}ehK(mkP%gQ3`kVTLl(0U1Gt zXB`X%?ko+KN(^TN8Ljw&bj0S)HZu6blym!>qO*#SfdtPSx5W?H>|*Pfp9)o(8M!`^ zypXkZ&dr>*XUApMr)P7XxWaOwm@{G;>*~9%OFwhpQ3_TO3s`^s?)Q%sJw{C`i#WxM zsMW^%wfA^#xyQ*iccHIF_=Oiw??~>|zgWGw*uUKM`L9aVRiB zbl$eydv~opx9a)^)r;K_{UmTu^pgP#N@!pP)bS36%YT`y`tw~Fc>8{_wrT8~Um9BK z^F>)g(4jfI?p$GErPEg@cBzYZ`x9IomKOK7m(7!6_mPRqwr>(-yrP~E`7`%qjC$f< zjzUAFhI11-Kg2ct5)4}{y6Bszgx~}I^{Y2zE|OQA#t^!nKdS1FYSG=$*tvf>Tv8bC z{i?mvcu2tNm!QZ(rbXA@|84eeuKgwW=RUV+!HZwDLS)z4*}Q$iB}St=AX diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/inhand-right.png deleted file mode 100644 index dcf606531ba187e61220fa6fa327c4490e1d29fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 637 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|S%3 zr;B4q#hkaZ_GcXm5IJUlP`zNnq}YjG2UkXCYjU)1b3SI*7@}G7<{Ep!ipdw27icso zOxaadB0YY8H!<`6Cg{cKsEk9*)uRpzT62FwmOrJ2bZ|(QLn;-aD^DZuHYt(`kRmLq7%}?w< zbJ2QVRek*7)!LIM9lTpUx5b|E-o)#z;f80w=vGf@w>$j8ul>*8(v$lv><`4|%SqYk z9&G;h*?jtMFA2N3Hx6HC-K8I<=O6xsrS`lZym}Cp|ZET;-V~XTo_vpMh2K z3^)TKM_1wHyv8N3^K}(g&STulch!Aq&$`wdH=`UT*)p#UJ3Y^DdB(o8A8OusIQ-dv z52)(pJjP${yKcR+_*}yr{_%Rh%7gvYY!eH1GyQjZ<5a+ zP%CEr%Fxn#k;|j_e8W0+g`NY!3uZr>*QoJZ59*&k3=L8i5*n{>UI(Tp22WQ%mvv4F FO#mFS8wLOX diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/meta.json index 2d91fb460be..8a70dbd998c 100644 --- a/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "https://github.com/Citadel-Station-13/Citadel-Station-13-RP/blob/817e7c1f225876b45891e3f06908e6d032f0a8bc/icons/obj/mining.dmi", + "copyright": "https://github.com/Citadel-Station-13/Citadel-Station-13-RP/blob/817e7c1f225876b45891e3f06908e6d032f0a8bc/icons/obj/mining.dmi and modified by alzore_ (discord)", "size": { "x": 32, "y": 32 @@ -21,22 +21,6 @@ 0.3 ] ] - }, - { - "name": "inhand-left", - "directions": 4 - }, - { - "name": "inhand-right", - "directions": 4 - }, - { - "name": "wielded-inhand-left", - "directions": 4 - }, - { - "name": "wielded-inhand-right", - "directions": 4 } ] -} \ No newline at end of file +} diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/crusher.rsi/wielded-inhand-left.png deleted file mode 100644 index 6b55e43f72e5bc32ecda58186c6fc39ada252bcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 823 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|V1b zPZ!6KiaBp*9qbkglsUfNDWK$Ln1_p%M7Ln)8qwX`gT#7TGY&RS`OUs%EvuyW1>J9A z5>Grc^jYUxRjydesyK?8%WK+zHjlq zpNG>;_3K_Rc+1(J=V zY|b#}-s<#Ms0Bx$B8T{aUjAMer8jQ^6aGGapEpUoL+Wtc znU#3%&)enie!E<+6v^S1_;#j2&YJgP-~;PlX{9gr6n?VW$N8hRU`dl)?~&%696Nuq zyJRlea3Rj7BH)B#KwuN2XI_)XVpXNc7CEn|Ac2ohT#waCr&-U=n|-$|ywh0z#+yGk z=9<5^HlCe&zeUl~i@~E$h+)!VmWC%9j0)&nGe)6wzfC)D2B+=%PZ@hjGW}&*8@n ziZ-sfnRCl!wQg+UQFZCxQ|x)9HqPGJy<^XZPdAu9 zq}E9B=LM`{&Jxy^*G%qA;BuI`aph+n(?ElKso7fJ-`~r+CH1;&_qNT!cNMmlTPqau zO0To_4c=O~p3OeuzvSEb{%06fyAf5e#%^RAvrpIa%dzNK})dqMc&bZtBPw+&g{*GCU&2t6kUvMlE*&R21 z?rT*8ofbI}$J<~3sQp;)^uqCG==wtwWKNS%G}%0G|-o z^mLP(H*cz{s)mM!W@TmV=(jEKRkgRb2g)n2bz2FfI7@>3g8xGSL$H5^&_qS?dWOTE zE{-7)?r*1^=4(~panaoO>wmn?RV9vKp`^Sbaa-xE6EX!yS^jl!$0+Q0u)XO($yyVe zqxZNA0}l$dAD3A2XH`>a%7!wpe`YUkBy+C%lX_w0ae}0f zJ&=CzC-;J3Gi#c>Lf2X2epcp3>zbKZ|2~fMs9wL{p(${mHrM6-7alQ*8yL@DrBFMs UYqR46pf?#jUHx3vIVCg!0Ey3o(*OVf delta 488 zcmaFG^qqNvWIY=L1H-D!!h1l9v%n*=n1O-s2naJy)#j6CU|?M7>EaktG3V_qdoSid zf#V;kwT0MT#u!3m)?SwPSM%V37Ow|KfdK@9V2py?VP@fy>FDVcWx`gqSD zbqZjAVPqrD>?pe6{D&A}MVBlFe*ewCo@aO2oVVsbZ^*RQH)}cDhPd2@m&?9?i1}Rh z`KYh$?D)rTQ+4bA=_~R%l$U+|XT4DVWO4Zdu1;nT{&l5l&*j?^Y}gw<$}k)&W{^0~ zh|b~oc|2+Tq1#-$q@PUvG2wRBLDsvxe7>KpS=6^mzbTq#a_Hn+w%eCtX02lMu=_Mc ztck1P%ZE8^O%@Eft^4htv_D@Wc!V*db7!KCU1;0$SsW~OY1wNw$<)^EmHxWzx~kib z`aQCxeW$V;j>+v`tNZ1}*^iO+VmI2Ky;u8U`FIWEH|b9~J2V;;;o%4h)W3{x_r1F( U@P}zHFftiDUHx3vIVCg!0EK1OLI3~& diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_dagger.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher_dagger.rsi/inhand-right.png index cce061bab2933eef43d0399aa85e5c6a4a3fe57d..ae6e01f4a50fd3ab86113959a90076dd0f11a240 100644 GIT binary patch delta 325 zcmaFQ{E}&cWFj*I1H;_yjcNS%G}%0G|-o zn>TN!r<;U^hN`NnW@TmV=(jEKRkgRb2g+~UdUPF-;w%aB3;quU48i^tLK79m>lqGt zx;TbJxWAotTB=2X!_9E_hkyPyD}Gq6m~u-e?chz9Q}t^^nf4uFQRA5Lz?{k9xPI}D ziYkGex}y*NOk@4s)%eMp`x?)j{-z9$^O6?xSvVf_NAxgjo@Dy9XmYpWKEKmV-7+zD z&dUSqmAErfodQ0&Zs_9l5in@vWK#PP>=-%gx6og{i{C!onf{`@W10E++Ri%W71h6g zN;}_O^JHy`=KLT!h*-T9r|oTjDj*k_w7_kQ(NF9~jao_Q=!7jN#Kyi9AO z)|2+or`D&QZ`b=0QIYsXBgab6#cluI5S2eNYWG>M3B=8?_S?&Y=}sg^H?#`w5_{-- zpuV|9?|QZ1h4uSye-U(QDrRi|`h91M-dRi058;YMT8gR`!Vk3eC{AHfXNqYzZ<&yw zdmy~RIligiYwJ`7$qWCE##b~?EGR90wVM%xNb!1@J z*w6hZkrl|-4e$wZy?OIyX(>ZiR+hcJy{f9JfsDZV_3Lv*|1UP)GBJwBn_&*9@xN>L4LZB39fk$L90|Va?5N4dJ%_j|X#1c;z$B>G+ zx3|vb9aa!vNsykV@=x>q{~brQ+TSXk?g?GqWmL==#!z3jBX!xY^MVcxj4T2WqM@9{ zCcfxd<_*(gUq*$k?@vx>uzV^oL0J0%L-8iY0}+hO8_NDq%42*m%}Y39e~S~tnkhg2 z#a>wU)mz2lz^T86JO1}SC`@PJS@70o$A3kOInx=YZJm;7Q#;Ema(W#j3!BdCCcEid zch*|)ac$TWA`vkCPW$5qhSN7W8vdFd*p|~aUnfoP2b)=qyU_>5C7bKNI?Aw2_-?l# zsO*ITLqpA{zuTKHy9Y8b6fUY`kE*yU$)Mc8z{H_|oyccD@Jx7jP{RhB2hJj#5)LtP z9~8S-SP}xjv_V1ynATv>;Q#T!m8rmeh0OzIan1yWAh{2Y-7F90B~%_@*AYsXE%cO8 zeu)PITUo4 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..6949718a597117c697fe0311b2475cd2fa75e5f9 GIT binary patch literal 620 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD`S&F%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl|-4e$wZy?OIyR#sMNDTBSey{f9}`t|D#WCR%h-_I5OKhxM)myIDbG_=51 zbw|G~P)A$j^7lZBza+>n_&*9@xN>L4LZB39fk$L90|Va?5N4dJ%_j|X#9B`m$B>G+ zx3^9g9ai9B4M-N5bi?%j|D6+q&G;rYu-z%Cdha!}@W{txb>ENEL9T~``K%W1#Wqhl z3JU$6t~hgXCd2z=CMJP#>HNLUHFX8z%pY_)5_=Nz=gj@jRKc}w zyCM_U_UyWU+6}C~OOqLD(r^BhRPYPt_^$f*#muL2ho;C*XSUeFBT(S~ac5V3TN55b3?N`pb^-D|H7Ya={|99(_cM4ZZ zMW6kPiYgb#+SOHDue;WoLp1j3&i%8F$+i?lr@mXiJePeTo5H!jy(VuJrbufS*K6xq za~wT)>(2fOuVh<<8n*1LSG;P?!Fr&0;)8UCf7z?f-e8E@YxZ3~^}eIW(wT>ZE3$hR z9@mzT=YG(;w>i&{;qG;hBN7dMubEqGzL*zyAv^WKe&(ba24AI;*2fFyDu84>UHx3v IIVCg!00hGL3IG5A literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/meta.json new file mode 100644 index 00000000000..c6fb3d12d8e --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/meta.json @@ -0,0 +1,27 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "by alzore_ (discord) based on the proto-kinetic crusher glaive", + "size": { + "x": 64, + "y": 64 + }, + "states": [ + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "wielded-inhand-left", + "directions": 4 + }, + { + "name": "wielded-inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/wielded-inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..330b936fb254e39bad9b220d6dd9c291e9aecaca GIT binary patch literal 536 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD`S&F%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl|-3h)VWRaI3jEoCr}5n%j(KUeg>E*rzmn>W|5UvF=3KhxMaG&FQaziol9 zDp2{&g6ai8imxQdFZe$)U~oNf=LArOv%n*=7^vU~2s2LA=930GAlB2xF{C2y?X9zA z%?bi-4+VLZ)_$+wotkhdOUfeXt*6-g?VdkoKJ3(MUZc+kGz0}aux0!tzsBqG-!~JK z&&BFrShjSpZ-ktmP_MLlx%WxtUfp?Jv)#V0xmot+xuu2gt=&4Ob&p9Dl^A|8P?`Q_ z(S9%CXE$$$oLjfnpT+mqbT=U|LWJSHn(-I z-ER9Ha%uM zE?-DeeYbOhvF*=w+X_v$^449;W;s1+y}%mz{qLDgHm|&v=p7jQxvE#8_L=$zN$dGe zEBDzqUc1`-Yts4a965V0KCI*mH@Eiwe{ib&=s#s3bzDt3<%K(=|0#D;b8_p?l2 Tq-;pM2a@n~^>bP0l+XkK8o$z0 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/wielded-inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive-inhands.rsi/wielded-inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..2d1a481266dd20b91a96205758635bf8bde856e9 GIT binary patch literal 535 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD`S&F%}28J29*~C-V}>VM%xNb!1@J z*w6hZkrl|-3h)VWRaI3rkP#>?Wzc0~$QAw1`2W7Wy?tnC=uBhd_3PK)ym@m+ziol9 zDp2`B(*+qoimxQdFZe$)U~oNf=LArOv%n*=7^vU~2s2LA=930GAjZ?hF{C2y?X8PN zO$Gw34}Du%GAjRH&n@d*>gTy>h3xT}|6^8k?mn#^Clnbk12hE%9FS&w67Thwfz#1W zC-t#LbmO#Xy>(Gji_WU5^CWL@{rSlvOz@cElv4ZSpH*IEZ&@-$@3P6u5Z^h^k7oT# zoB2G$^k&qyZ%4ZR6htR&+OB)ir1D)(WY+cbO+FW%+}gBRJ(OkY-TSvw6;F#rUkS?M zTXyZ=?o;1#x7-ZZeRJX-R0`bOnj@#7F6XdnDk>MyTGoyya&p<9P1CSN@w?ri@!Ae zZsVVgH}CFc{=lvituRc8-OqSsx|s=! Rxzl-&jHj!g%Q~loCIDCo)Z_pF literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/icon.png b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/icon.png index 980af14aa86c025fc1be958d55d6902884cca2ab..e22b636f3da9e25706672b73b822daca1573690b 100644 GIT binary patch delta 370 zcmaFGGL?CPWIZzj1B1(wu46!ou{g-xiDBJ2nU_EgOS+@4BLl<6e(pbstU$hHfKQ0) z&6_vV(@pH{?bokgUs}qbs;Zimm1Q6!5E>eqEBb#&zb(VOt&IQgAKwz8%f>KKNMNS1 zae=QYQ1_BG9ic!0&^HP)!yNls3=~~aLm)iF~q{Zc7nH9vjPu;=xntG z%clO8-}W%rF?mL>{<($|BJ3)eY{fl!g4wK}x$iAjsFYy2xmZ>tzm{picPj>`H+#5_ z{BAh=n&I!Rw`c8H5~FK>Hui8al=q*08G7K&lL^7qwcIo8c>>zcm?r!)ivMHk@!Ikh zwoa#KLi+Rb)^D);+bu?uAJa- z5orN}MY@#I<14%_AhMAkfPP-|4gN@gUN`!4 qflJLV{)0f{wDVO!(=^{&-kATOhZR63qbJA!0000O*Na%yE`C^QR2~SwcEO%BNIOqM^1B{ct9&bqU~?)#)yjc zjSqLPYnIr+RiJk0?~@7-rhR!!kIr&gJclPy!p7}Ke#Gs1yR-_GTQ?s_WZ4T{%m1GC z_b0D~kszSo5;iszrfRoV4GY_9^-p+H6j z8BqpIYK{ieieDTSzXWfvCS09SRXZg#BaHFN!@FODJQIW)rXMVfylxtKcEVzj^GXc$ zcZznZ@a8XE=d_vQ0at#Z>Khi8wcV}^=@s2mH_Ya4x^`GeA#6Uw(eE!B1vs8RVtF8^ zalZIN?wT2@2d=#j&S?0Qd*XxGgKO{4OGdYSf9qwb@!-nW-^o8#izmL?%g#DyS6#hM x@LrDKid-g5*7A=(?}~31pV1ABoDT61%&+gsBy#kg{Rd1E44$rjF6*2UngEgz_AdYc diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/inhand-right.png deleted file mode 100644 index e2d24c9ee8af39cd2379d386af1a2122da0879fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 568 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|VnL zPZ!6KiaBp*`DZmdh#cGRAa2_z@_mwCaifw*i_=S2Ce^*3kJI!n`G&FPKQP;|?u(e2 zztO>EStjQ^((nCle8NAo^M1aJddfZC8OlrtWCR(WbubvXvou&LF`N-(47R@U{`=LU zoiPUj)i@*8Ul)~mp2cX_qP|XO!Qp%}=^Zscg%`8B1U~VtNSeaHHD9IE{9)%orWzi9 z9wtN0ib?D#2|8RDISk%#5%bax^ z^2+@C%PT^cmOnH-?(=o(hU)qiW%KVZkgm~vP_cady!Za+_qM29NO=9>%e_plA2NGR zR{H&PW&wICp^t;1*o6VjzsFc-tP-EG`rUyQ440#yU6~(rY86W|Q_fZH8`Bb88hUk$ zU$rlDoVBd<|F(ZC=jj}Hwr=CJf|^X%Ln(~gwx5|Tlu>@mWHRfSK>Y=(H*UOBl%(# zl-kb&mX&SsV(jUMX3?q`=_m>gTe~DWM4f Dl|1t* diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/meta.json index 2d91fb460be..8a70dbd998c 100644 --- a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/meta.json +++ b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "https://github.com/Citadel-Station-13/Citadel-Station-13-RP/blob/817e7c1f225876b45891e3f06908e6d032f0a8bc/icons/obj/mining.dmi", + "copyright": "https://github.com/Citadel-Station-13/Citadel-Station-13-RP/blob/817e7c1f225876b45891e3f06908e6d032f0a8bc/icons/obj/mining.dmi and modified by alzore_ (discord)", "size": { "x": 32, "y": 32 @@ -21,22 +21,6 @@ 0.3 ] ] - }, - { - "name": "inhand-left", - "directions": 4 - }, - { - "name": "inhand-right", - "directions": 4 - }, - { - "name": "wielded-inhand-left", - "directions": 4 - }, - { - "name": "wielded-inhand-right", - "directions": 4 } ] -} \ No newline at end of file +} diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/wielded-inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/wielded-inhand-left.png deleted file mode 100644 index ce6c530f30cbc37d39d8a17ab069a3a9c60f73a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 567 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|Vnr zPZ!6KiaBp*?e{wrAacxJnB6=!MImolqJr92MxH*sJ{xu^aruKsHMp7AA9!&n#l)_` zmxnpgHR;tO=@?5D@!M6=JEz$nF0bQ$yZ1uz`SsJwEYhW)tYDb1n8~4!i@{Qh0gclT z%AR2&b<8ww{q>7kTLV^K-L}DT4%4A#+v4KVmd&T9UwM>cG}SA$Oz!x{nsa?$tM*>W zSGlOvc6edt_S+IXY%4#WOli895fbJ1|J{+8`}-87>Mhql6)C9N)Bo@B@%4p~Q~s_A zTmAX-lL!HpV|p=tPxYQFmdCT4C=8ntqhG!DKgUEHmH8_fp6>}h@VD7IposBu@^zax zNpHU|_Y~7J&{XtXetD+)yxzCYaeC9H+A!CMM}LutICg&lM=f`Qj3`4<2*Zg$Mg@0P zJe)aOrybvY_g&QKhuufwW;LX3&Ri0cxBAGm{ihzEcHvsNZ=*N2!0AiU0C?=X7Mh$H&4g%w5-3G@sqDCQ*Qq9UqAnbZBMYZcUkl{ zcgGLCZ`BW6G?}OyuYXDS!Ra--lmE=Iet)@t!cp%7@n_j)FY@7U+{fmK2!Ch&2hyK+ W9#3a}tRDhQ2@IaDelF{r5}E*3Z1E!i diff --git a/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/wielded-inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/crusher_glaive.rsi/wielded-inhand-right.png deleted file mode 100644 index 84abf8014872d68e3dda5c27c3762dd628caffae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 520 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9F5M?jcysy3fA0|VnO zPZ!6KiaBp*?e#hwAklW;N$zN=eHG@SM@tXy0keB`Kif#BOq(wXgkP9NErE-hp+ z*9;PO-=4hRDQnjJ$xB`+y#MXsd2agW&re?}p8m-+L77p(oynn(r9p<1!BU8!NQL2v z2g8Yp3?K>h2)*ffCQ^wTBc8~ed;U3Wm#qX(%su&i@W5{ zuP&5-_;TXz-Ij;1el31$m>O};^<&-s{)YuWHZ$u?NZlH>)1q&?XUXo^?V0Ky7wv21 zJTvcJVP#zoQAt7!d*SuhsBPR`a(%}iPxDRsesam|>~-;hIu8ql z%>Rk=OHMwOs{j0D$*WVpZtZ42*_-e5$M}-v?|Wx2xCTX5U-3~h|LUzWmisSDv|bCo$=Lhu)>7*QZ(?ktjT1N{mCAfKl>PbD z==^cb-rrL%Zds?Gejr>wAtjrwW-Fub%FSh0WqiwHAM&lR3jTk3R^zIz_0qL0j)+iw c!CJ#?%5Yd}k#M&xFlre*UHx3vIVCg!0Kwwl6#xJL diff --git a/Resources/Textures/Structures/Machines/station_map.rsi/meta.json b/Resources/Textures/Structures/Machines/station_map.rsi/meta.json index a1da3673bbd..12c6a212a19 100644 --- a/Resources/Textures/Structures/Machines/station_map.rsi/meta.json +++ b/Resources/Textures/Structures/Machines/station_map.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC0-1.0", - "copyright": "Made by brainfood1183 (github) for ss14", + "copyright": "Made by brainfood1183 (github) for ss14 and modified by Flareguy for ss14. station_map_broken based on broken state in Cryogenic2.dmi from vgstation13 at https://github.com/vgstation-coders/vgstation13/blob/96246eed6e19899971a6d18e849fa6fe0b8ab52a/icons/obj/Cryogenic2.dmi", "size": { "x": 32, "y": 32 diff --git a/Resources/Textures/Structures/Machines/station_map.rsi/station_map0.png b/Resources/Textures/Structures/Machines/station_map.rsi/station_map0.png index 9c22f5852cfed9bd71c08363090b16159202c22c..a15bffd4487353a9d031286226f66f2081439a99 100644 GIT binary patch delta 732 zcmdm4@lI@lWF#{K1B1(wu46!ou{g-xiDBJ2nU_EgOS+@4BLl<6e(pbstU$hKfKQ04 zjEqc3NQj1phNY#Ytb(Stwl+{EV$Y%;AjMu1c)mncXHTiZgKqPPFo8G3F3^szB}fv6B>2M{#_Lfv6@0r6B=)IgLUixG%wVNn+4{?a;%{cN^A0BR&5aT3ah^uk~V!LeRgarAQfqB;UMZDTPlds zVo%qBskf=fE%5cV^2jVM$uFt|T7_bJaB3mQ_G9c|dw#GRfVAs##Db{F9Cje;21kT5 zLYIPq4cPjeOk|_LLJ+ec#@pzlTRXXq6C7CUIL$$(zJyRJT;Ont;?e^N_HdbksH0q_ z^$;5&cDbY$Cl_TFlw{`Tfh~oI2D!Kac|eP-fL7(EmL!6B_7w$*$=RtT3aNQ1wn{}x z_ICUWKV1W+fg(>A#}Etux0Ag28VopCGc$MopV<1zlr*<{an^LB{Ts53G~sw literal 15417 zcmeI3eQX=$9mg-FDQzm+wF+ujwaqoG1nBu*eYS6o+ca)TwmGDZOVa^q&v%cLQ*58> zyAa0{>zhEdTcv8_rA)Nd1}lR?1PFz725A@#o{b_FZ4tMP1X?8I8klkNr1$7W{7(ixco` zPOfvkNm27&xBnU*yk*{Eijtf4M4#0c`@XCi8K0sVN#HAFav&0TkWC}`-;e0Gp zFGy3%F}dM<+8LUrG9V2yAZwX0j;kA&8#FA#95kj$S$0pG7}g{fE9b5|-b|)$YSUVE zH$+fES~t>6jOG9n2c|KcSHY^g;jLU>@9r%b6$-<9 zl{@l4v5b7eFwzlsmi0^`^mKGMv&z%DPS0w_hU@aX_PkiXzaOA7}y>2(babKg`&R z7fMvdRhk>6_WIH(5d;JQ7FSG)L03AdY8)MsSXJ}~B+eh?zqE8J=oeJYmgXi$?FV#H z1)Rw7e2Q0+|5JKEhcnyd;amnqAPKxG(4xwRXi)%AFPTiyDhP&@0OTZvQuRgM)>`=0 zmBp3LUJwT}TKFn2DtGi% zsv=q>2?7Lf5?pvbh?n3(fZ$Dn3(p7f5?lxnyh(83`5<0`3ju;R2`)Sz#7l4?K=3BP zh3A8K2`&T(-Xys2d=M|eg#f{u1Q(tU;w88cAb6AD!t+7A1Q!AXZxUR1K8Tm#LV(~+ zf(y?F@e*7J5WGon;rSq5f(rqHHwi90AH+*=AwcjZ!G-68cnK~92;L;P@O%(2!G!?9 zn*p)HH{E*w9- z;NDjnqPNi(X1?G0@$MVu?1&FO*0A;P#-Fq=-oEqND!xCc+m! zoy)y;ZO{3?9;WnPuKvx8(f>SoI{3{q*ZpDZ{g*%g{hs@OyL9)5Z*4oibM^-ZZdVk2 zSK^5iKfCm=6Z3y?ZjAc(-`0-L+}XXO*mvf@?bls+=+<4cF8+y0ynFK>(|@_DW#0`K z7w-Pnr#G!z^GKfmnp2kzXrSA64+H&<_EK7Vi9 z+o2avY>r%+`QoyJ^m}K8%c{o~U|wqIV@(tCdM c+ZU-L!l_fAd^B;?ez~`6Rd;l3<;HFQ1yvsMg8%>k diff --git a/Resources/Textures/Structures/Machines/station_map.rsi/station_map_broken.png b/Resources/Textures/Structures/Machines/station_map.rsi/station_map_broken.png index 7297442f10813defdc0deaf445505decdb66008c..6228597a401255050e6cd7403deccba77ac7e0d2 100644 GIT binary patch delta 584 zcmV-O0=NCEe&Ga=B!2;OQb$4nuFf3k0006TNklb;z6n(8KRVor}T`(wz zV8{|SMo0%s%^kXC=pnLlhg9kUjEq@O#UY}KEFF`*+kVgA z{~H7U_+#9d9E1?oCed!U({gD$2_ek3?Kb(b*=)2TN*yx!`+wKD6>|D`ZxnH7nk2|S zmzS{*XL$cQ3lT*a1t{e4B?^|naAx%0*3ORsSaQdrU{yH&5srT>%rT>0KnZR}?rO=S z-~myvt`zxm0dcxGfNW=61Q3RA2*Wo)E=Xg&$Ret9KtdEe2oWg}04y-yPL7r4~Q;gxnaccr{a#awd3rG?ht79$`U`Y#Wppu*Bno*sE z!&&-|*kGZ`HGU(2KHjHqf|>=I!1NXXuJK7Gi)d4T=}}slguPy`WO>`RZ43qjVT=Bv zHK9^Kw?W%2S>8^P1pR(r*rLB^O{lDb{eG{t02J~hNlJd*936}~0JN6}rt|;DRp1-0 WBMgajKLF4G00006e7REJ?$|GZrHWcaIBJ`eVS-=Vs?Z{Sa#KyFzG z!v-8xJ}E253>b!CPkksBm&&CD&oI2?GqQrj0b|$~fW0xyIW`<%`I$i0bHFS5GYvQ1 zdDoy9g-pW~O95FB$N?2%Ze0)*)lDkq>t^x}!7$dPbA}n{zz1YjANE!HLrgf+5b?{v zYo(bm=p$X^nVE(xC7`~vpirM91%cjTwBkHzwdrjRqsd~knQa+*iZodWk|t;pr)b7Z zGG(nO9SO$88DBHozLvtv~;IZ~w*gu?}-rC$5IxYBWYl@I#|lVnIrWG10^`? z66o2W2v0V)GNF$$7Xi-2!P|J7;NfvVL$(%RW^tCYa=4AP({_rbS-_dvLnLw2B~-4c zlt69g6&WdkBJk_Zt??3woIwFL7y`-;n`vm@Vml74=&Fvb?Z{5eu)K15xp-v*1cH<3 z)EXaFhov*xLF}5&dqdF0y!#k66~M2yfks_LdUfw4Bzfc-HVCr3aBI1jy*=u+vl;3> zd6nFkM1{ohz%oTDw-F zQ@QGIi5LHEJ5SEb)u7 z3!X=jfg;TbR?0n6^Z+k{xAVYdwOD9)K%&j4MWGl5m8EVG9^fHmKcQiyhz+VpYFO5t zVS*xN7)@2ejdx@-jJCqtdialm==e*~WuNTW#qQ@td`9=vE8Gl1h`OlZQs;wcHCzY~by35m&Ii$IxDX)fqJ~SI52Dp@Awbkc4VO9}M62OK zfT)WaE_FVLR>Oq=Q5Q8_>UQHFszEiurJFoj9HCggQexa zdT#=T^*EpB&MFRH{OZ*+{)e+3UGVO;?6Qd$EAtP{$kF?@>F2I~{pLmYBSjm>J+iUM zb~EqL*UjJcNK0GdTVh@@wa45)ZhEc(Z`_uVAvc~LURIi(Uw_Gd!sGdu@Y(lm8{1B; zTbXf^TjhKC@dImm{ zg2Ujz;;-6R^V*-!o|WHt@YD?XaI0}rFHA4zumfu#mZkx!-m;z6yDkU z)EeD04VjOdPfazTd}xSD4VbfumeZyV4tudr`4Rdx#8U2hqrIv^N_Aj`FUN| zAI_BHdk$x(yKkoVZmM&pRzRu#t!r)Rd+S8YNwzw* z=R|VR_U+BJ&SgK_?H{@TV^4eu@Rr>3dPe0v3H%yyzYGK>4%|i&|&cd@3GmJYIN&9BZ zrZAYlFaPqw%L8ki-dnf77<~Nhj*8A}*rKf8 W=I^(!U9UXOo;QAy`_1g~dH(_XKN64t diff --git a/Resources/Textures/Structures/Machines/station_map.rsi/station_map_frame0.png b/Resources/Textures/Structures/Machines/station_map.rsi/station_map_frame0.png index 460c86b896a6a470270efa82d8a4f4c609bb0359..1b6241a5754a7771d06b4c2fd5d5e6f21d3cee56 100644 GIT binary patch delta 397 zcmV;80doGhd#3}CB!2;OQb$4nuFf3k0004DNklb!4|u^iV*dSYxAe_Wh9w|00BOD7!(^q2mk)3JD)z>F(%7h z5&)z-`^-u3-mCr(H{o5_tw5XsGiS5XxVHoxx$TH(em{<^i}CmtTow>Q_@A3_PsF1F zu0R!#Y96i2Q-9pvrIbAdP18U`vJN!IF{e#esfh>xZW+niwxzD?R`z5Cn3+VR=nKTm zGz`PWz7gP@n;)OLu1^K=-h-J@Rn^Mg_x;SrP{(rZ(K#y&nXz2Gicj|-g literal 15800 zcmeI3e{37&8ON`T4H^n6>NZB(iL2Xa1A4ySw(oG zzH#0~tkV8@t;F{8KJW8=-upc7kMkdQV0g#PSN5#!VHoDhp~3V{^vMSQmwyhud)4Yk z=woGZaF@q0SDgy}R~)+Ws&x!=(;Ien%pc3#svB-03QRW#qm@Dt^=6plmP!#AQ_yE~ zaKd)_A`377GQ!$sUu0Cx2$|vloU{k4B{)*uku|DQhGs^#qtqEm<-xeP?=mJsq<8B9p#f)Oo&KE=S99)GbZ$qNZuQAn}sKp&pz! z8)kzU?|}pbK*DwBHwr1c{oj`gIkG%|wn@XNM^A6;R~GsK9p% zGL2?Tak`YR4b3!on1==E_#TQAyT%nKUElR4-6c{s-Ag7$HOXX}xx0?HQ0SW4^SA9q z2DBs;&dnlo+ZZ)EA|p$fhP>BO@**RNp!9H zKnVihEoEIdp9*K$a04MbFi@LS>{mx^$8^iy^+_HNY1O->2GhWYDM^rIPEgTbR*dOr zN{Ygbf~X5Zn@HFb)5y4{ZOwFONK#f*bxG4zwOymFC$53kj|qIRES2`YZ91l*TW+ZU z{FGe)6Ob=D6G^_+*w(W-tMmak@0QT8U`kH%-I}{brCnn>nAZJ{0X z6-;!tHXM076>b}*YuKjVN(u!fZYoBOQ#4WLL=l=?0sxsaRcOj$TodA|n&gAUizHg( zs?Uvjdv|F|fpJ+z#Z_`jB9zVKXWi3=j98j8tjf}9B6R7KWerU((gMd7U?)ukKR zk#zS$2?;?pRYTyc1TgD`0+Pz*1R2I+8j!S{(n!=MwkXkUB^#Y=Am7#}xE2##ix@Xl zO^$0Euw=+VOR+djGej;2fTaOVfC2!G6kTK%r5dz@B{0)DBWp`w1m4xz+FAm&GpGnk z9t?KazDQ$>Z5~?Ttgg@P+D@$lBRIWMMz8@wGs$B^Zs%btrm8YJ zAn|5AV%V<0{8-vX2e=pPCo;-Zi@_aT19vSI*ygAQhNWt|@vd!#VJo_=N53fe=1+=6 z`($$$yO>{ES9CE|F)f+|141?_E;1j?OL1X9$R@=_=7V`DE({3Sq`1g@FfYZ00U?_d z7nu*{rMNI4WRv0|^TE6n7Y2lEQe0#{n3v+hfRIg!i_8b}Qd}4ivPp4~`Cwj(3j;zn zDK0V}%u8`$K*%P=MdpKfDJ~2M*`&D0d@wJ?g#jU(6c?Ef=B2nWAY_x`BJ;t#6c+}B zY*JigKA4x{!hn!Xii^w#^HN+G5VA>ek@;X=iVFimHYqMLAIwW}VL-?x#YN_Wc_}Uo z2-&2#$b2v_#f1SOn?zhat%r1>gPzPSqepP>``7w2=?7N3yKDmHC z-(#3*fnnYsXBhoahPlRl_|Dh1Gt3HeDBYi}yfZ&4K5{R+YW+WF?tT0BulBz5?C6un zFC72q-0J+s3qSey;lF=4m&?q4e0tMCFf4BW^EL}qHyx${WA-H z{nmzGt?<;$$e+IaCF9uUTYmh^XGgw$-Y)l?oB57^_PQ%>&pi0+yH5RdGqd_k#qf@Q=Jcva_0L!Q z?QZr9NA~bf`CqIS`d@$Kx|vt^9C}N=dwllYXATd)7=38X`5)epncwi;n^#`A;pAn^ YfP4Pz$Gp7{)rJ|`wj+IX>-hKn1L(9;e*gdg diff --git a/Resources/Textures/Structures/Machines/station_map.rsi/station_map_frame1.png b/Resources/Textures/Structures/Machines/station_map.rsi/station_map_frame1.png index 4b6fd1babf7739947ea84136e81474ec89f19d00..83dfe28b291ef58fff374c32de3c2afbc0167e99 100644 GIT binary patch delta 618 zcmV-w0+s#ffB}L9kR*Qrb5ch_0Itp)=>Px%JV``BR9J=Wm$7TxKorJ*3d+#U9?o5A z@D+?fL!m{*#S|ha8A8Yu3Wjd^YdUo3Ur?N(kfl@T$(7%@B3;2jYcCPpB-8naeuz=Cph)ILvwP^^P&Us&l0z*)})l7>$>E<=$cA-ngl=y zk-LA=9+mP@T0k7tuC5HqNqa=|>Qz~HiwUT9^>BP}n|qULR}U*c>I;*X7VsxgD4^)} z%OW=mU>d;{>Y0BG!XVM-auEd?Sr365B)MwgeS0zH{wo6JBL2@xm=!##yv|xHDoVLoV45bb>*jwtP&rPosk*DIjtJmhE!q2{ zqiB3_bHi|JE1J8mi)C3_uh%OUFe^3-HKlt&pe#H>2o1n-oP_<(C-6KEDJ1}gVc@j- z=ug*pdHfE5H-iDK^>y|;9h_F5*B6@roB$#S5JFI^)e=5!+Xk{@MA??de{`;QhdlfC zA{u}G_=I9l&1T~4_3khl&-ccNGuv`yDUJ*9fBr%UF}?NiCi@-O84Nht*Z{z3_1QlE z5bgi|_AA@t>3seISx~(Iz)Jp{SeB*PwoTRxJmSIe8<)E9y(&-bD*ylh07*qoM6N<$ Ef`-d0O#lD@ literal 16488 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 M07*qoM6N<$f;PaB9RL6T literal 16277 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 From ff3f3d786e3b321c0fa533db877e1073d8bf2741 Mon Sep 17 00:00:00 2001 From: Delta-V bot <135767721+DeltaV-Bot@users.noreply.github.com> Date: Thu, 7 Nov 2024 21:09:45 +0100 Subject: [PATCH 07/12] Automatic changelog update --- Resources/Changelog/DeltaVChangelog.yml | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/Resources/Changelog/DeltaVChangelog.yml b/Resources/Changelog/DeltaVChangelog.yml index 66fbd1d7196..3c86e1323d8 100644 --- a/Resources/Changelog/DeltaVChangelog.yml +++ b/Resources/Changelog/DeltaVChangelog.yml @@ -1,13 +1,4 @@ Entries: -- author: luringens - changes: - - message: Prisoners are back! - type: Add - - message: Gladiators, prisoners and prison guards start the shift at their predesignated - locations. - type: Fix - id: 156 - time: '2023-12-06T15:54:37.0000000+00:00' - author: Tryded changes: - message: Added energy guns to dynamic protolathe emagable recipes. @@ -3714,3 +3705,10 @@ id: 655 time: '2024-11-07T20:07:57.0000000+00:00' url: https://github.com/DeltaV-Station/Delta-v/pull/2126 +- author: deltanedas + changes: + - message: Merged this week's changes from upstream. + type: Add + id: 656 + time: '2024-11-07T20:09:26.0000000+00:00' + url: https://github.com/DeltaV-Station/Delta-v/pull/2090 From a4d39c6edec5263be3469573cda04cc63493d4c6 Mon Sep 17 00:00:00 2001 From: Milon Date: Fri, 8 Nov 2024 09:39:04 +0100 Subject: [PATCH 08/12] make it clearer what code is ours instead of from other codebases part 2 (#2151) aaaaaaaaaaaaaaaaaaaaa --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 501d2f64df2..1d673a84aa7 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,8 @@ Make sure to read [CONTRIBUTING.md](/CONTRIBUTING.md) if you are new to Delta-V! Content contributed to this repository after commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 is licensed under the GNU Affero General Public License version 3.0, unless otherwise stated. See `LICENSE-AGPLv3.txt`. Content contributed to this repository before commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 is licensed under the MIT license, unless otherwise stated. See `LICENSE-MIT.txt`. +To be more specific, code in `Content.*/DeltaV`, `Resources/*/DeltaV` and any Delta-V specific scripts in `Tools` are licensed under AGPLv3. Other files are originally from other codebases and are not owned by Delta-V, though any code must be relicensable to AGPLv3. SS14 is MIT licensed so this forking is possible. + [87c70a89a67d0521a56388e6b1c3f2cb947943e4](https://github.com/DeltaV-Station/Delta-v/commit/87c70a89a67d0521a56388e6b1c3f2cb947943e4) was pushed on February 17th 2024 at 21:48 UTC Most assets are licensed under [CC-BY-SA 3.0](https://creativecommons.org/licenses/by-sa/3.0/) unless stated otherwise. Assets have their license and the copyright in the metadata file. [Example](https://github.com/DeltaV-Station/Delta-v/blob/master/Resources/Textures/Objects/Tools/crowbar.rsi/meta.json). From eb601b02f1b1eb335145b7949164f1a308ab491c Mon Sep 17 00:00:00 2001 From: Milon Date: Fri, 8 Nov 2024 09:39:55 +0100 Subject: [PATCH 09/12] hide ratvar and narsie from the spawn menu (#2150) this was not supposed to be a part of my day --- Resources/Prototypes/Entities/Mobs/Player/narsie.yml | 2 ++ Resources/Prototypes/Entities/Mobs/Player/ratvar.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Resources/Prototypes/Entities/Mobs/Player/narsie.yml b/Resources/Prototypes/Entities/Mobs/Player/narsie.yml index 5d07409b5f8..fbc00b8dbbc 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/narsie.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/narsie.yml @@ -17,6 +17,7 @@ parent: MobNarsieBase id: MobNarsieSpawn suffix: Spawn + categories: [ HideSpawnMenu ] # DeltaV components: - type: Sprite layers: @@ -31,6 +32,7 @@ - type: entity parent: [MobNarsieBase, BaseMob] id: MobNarsie + categories: [ HideSpawnMenu ] # DeltaV components: - type: AnnounceOnSpawn message: narsie-has-risen diff --git a/Resources/Prototypes/Entities/Mobs/Player/ratvar.yml b/Resources/Prototypes/Entities/Mobs/Player/ratvar.yml index 530f5e10374..3349fe9b29f 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/ratvar.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/ratvar.yml @@ -16,6 +16,7 @@ parent: MobRatvarBase id: MobRatvarSpawn suffix: Spawn + categories: [ HideSpawnMenu ] # DeltaV components: - type: Sprite layers: @@ -29,6 +30,7 @@ - type: entity parent: [MobRatvarBase, BaseMob] id: MobRatvar + categories: [ HideSpawnMenu ] # DeltaV components: - type: AnnounceOnSpawn message: ratvar-has-risen From e4fad202f9e6f6ab6f351e4a3dcbf540a4c2dfca Mon Sep 17 00:00:00 2001 From: ConstantlyConfused <67894661+Eternally-Confused@users.noreply.github.com> Date: Fri, 8 Nov 2024 04:20:08 -0700 Subject: [PATCH 10/12] Remove the mention of secHUD functionality in corpsman sunglasses (#2149) Remove mention of secHUD in corps glasses --- Resources/Prototypes/DeltaV/Recipes/Construction/clothing.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Resources/Prototypes/DeltaV/Recipes/Construction/clothing.yml b/Resources/Prototypes/DeltaV/Recipes/Construction/clothing.yml index 281067b4114..08c2a103e1e 100644 --- a/Resources/Prototypes/DeltaV/Recipes/Construction/clothing.yml +++ b/Resources/Prototypes/DeltaV/Recipes/Construction/clothing.yml @@ -27,7 +27,7 @@ startNode: start targetNode: glassesCorps category: construction-category-clothing - description: A pair of sunglasses, modified to have a built-in security and medical HUD. + description: A pair of sunglasses, modified to have a built-in medical HUD. icon: { sprite: DeltaV/Clothing/Eyes/Glasses/corpsglasses.rsi, state: icon } objectType: Item From 8e807727660dd531a9dbfc3c5f2045b8410d8deb Mon Sep 17 00:00:00 2001 From: Milon Date: Fri, 8 Nov 2024 14:38:47 +0100 Subject: [PATCH 11/12] standarize sec hardsuit storage (#2148) another day another hellfire commit --- Resources/Migrations/deltaMigrations.yml | 3 +++ .../Catalog/Fills/Lockers/suit_storage.yml | 12 ++++-------- .../Catalog/Fills/Lockers/suit_storage.yml | 17 +++++++++++++++++ 3 files changed, 24 insertions(+), 8 deletions(-) create mode 100644 Resources/Prototypes/DeltaV/Catalog/Fills/Lockers/suit_storage.yml diff --git a/Resources/Migrations/deltaMigrations.yml b/Resources/Migrations/deltaMigrations.yml index b6c578490b2..9624e6c01e9 100644 --- a/Resources/Migrations/deltaMigrations.yml +++ b/Resources/Migrations/deltaMigrations.yml @@ -125,3 +125,6 @@ BoxMagazinePistolSubMachineGunRubber: MagazineBoxPistolRubber # 2024-09-21 VendingMachineAutomatrobe: null + +# 2024-11-08 +SuitStorageSec: SuitStorageSecDeltaV diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml b/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml index ff7d4fd4152..16b45329fee 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml @@ -135,17 +135,13 @@ id: SuitStorageSec parent: SuitStorageBase suffix: Security + categories: [ HideSpawnMenu ] # DeltaV components: - type: StorageFill contents: - - id: OxygenTankFilled - amount: 2 #DeltaV - Double the tanks - - id: ClothingOuterHardsuitCombatOfficer # DeltaV - ClothingOuterHardsuitSecurity replaced in favour of security combat hardsuit. - amount: 2 #DeltaV - Double the suits - - id: ClothingMaskBreath - amount: 2 #Delta-V Double the masks - - id: ClothingShoesBootsSecurityMagboots # DeltaV - Added security magboots. - amount: 2 + - id: OxygenTankFilled + - id: ClothingOuterHardsuitSecurity + - id: ClothingMaskBreath - type: AccessReader access: [["Security"]] diff --git a/Resources/Prototypes/DeltaV/Catalog/Fills/Lockers/suit_storage.yml b/Resources/Prototypes/DeltaV/Catalog/Fills/Lockers/suit_storage.yml new file mode 100644 index 00000000000..c49f30bd28a --- /dev/null +++ b/Resources/Prototypes/DeltaV/Catalog/Fills/Lockers/suit_storage.yml @@ -0,0 +1,17 @@ +- type: entity + id: SuitStorageSecDeltaV + parent: SuitStorageSec + suffix: Security, DeltaV + components: + - type: StorageFill + contents: + - id: OxygenTankFilled + amount: 2 + - id: ClothingOuterHardsuitCombatOfficer + amount: 2 + - id: ClothingMaskGasSecurity + amount: 2 + - id: ClothingShoesBootsSecurityMagboots + amount: 2 + - id: JetpackSecurity + amount: 2 From a9b5d46b24a921c3a72f5ec4f4871efd9d27882b Mon Sep 17 00:00:00 2001 From: Delta-V bot <135767721+DeltaV-Bot@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:39:06 +0100 Subject: [PATCH 12/12] Automatic changelog update --- Resources/Changelog/DeltaVChangelog.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Resources/Changelog/DeltaVChangelog.yml b/Resources/Changelog/DeltaVChangelog.yml index 3c86e1323d8..96d417e75f4 100644 --- a/Resources/Changelog/DeltaVChangelog.yml +++ b/Resources/Changelog/DeltaVChangelog.yml @@ -1,10 +1,4 @@ Entries: -- author: Tryded - changes: - - message: Added energy guns to dynamic protolathe emagable recipes. - type: Add - id: 157 - time: '2023-12-06T15:57:01.0000000+00:00' - author: Ygg01 changes: - message: Digging dirt. @@ -3712,3 +3706,11 @@ id: 656 time: '2024-11-07T20:09:26.0000000+00:00' url: https://github.com/DeltaV-Station/Delta-v/pull/2090 +- author: MilonPL + changes: + - message: Adjusted security hardsuit lockers, now they all contain two jetpacks, + magboots and hardsuits. + type: Tweak + id: 657 + time: '2024-11-08T13:38:47.0000000+00:00' + url: https://github.com/DeltaV-Station/Delta-v/pull/2148