From 6d4a4d9497176a16f2b1ea1ebc66655460cec5f5 Mon Sep 17 00:00:00 2001 From: Dvir <39403717+dvir001@users.noreply.github.com> Date: Sun, 13 Oct 2024 18:43:22 +0300 Subject: [PATCH 1/2] Big bug fixing part 1 (#2161) * Based on DeltaV changes * Update build-test-debug.yml * Public Transit: check for valid stations * Run tests with C# changes only * frontier->nf, shipyard test workflow * Remove HandheldGPSBasic to fix fills overflow * Fix ultimate clown shoes node * Update sparrow.yml * Update DeepFryer to Delta-V's * reorder filter arg for shipyard tests * Fixups * Boards * ATM fixes, inflatable wall stack price * test ignores & smaller fixes * Update SuicideCommandTests.cs * Update caduceus.yml * Update caduceus.yml * fix crescent invalid entity refs * machine board, map load test fixes * Update AutoInternalsTests.cs * disciple appraisal margin * Update computer.yml * altars steel yield * revert bank atm slot, update-credits, no NFDev tst * DeadDropSystem: check lifecycle in compromise * Update PostMapInitTest.cs * Make arcadia winter coat inherit from ClothingOUterWinterCoatToggleable * Update PostMapInitTest.cs * Cleanup * Set static physics on BaseStructureDisable{ToolUse,Anchoring} * Update PostMapInitTest.cs * Update PostMapInitTest.cs * Update caduceus.yml * EntityTest: add desc * nullable pirate bounty whitelists * Value fixes * Various YAML fixes * Fix portable generators * Cleanup * Cleanup * Update JobTest.cs * Fixup * Update softsuits.yml * Update computer.yml * Update virology_lab.yml * Update bocadillo.yml * Fixups * Update JobTest.cs * Update build-test-debug.yml * DeepFryer safety, remove most arbitrage, bk2ships * Revert most test changes, left TODOs where approp. * BaseWallmount: push into BaseStructureWallmount * Restore rose, EVA GPS (EVA lights fix this: soon) * Restore GPS to locker fills, GridFill comment * Cleanup: chair arbitrage, dept. EVA GPS * Restore GPS order * Restore cargo order tabletop computer * Revert GPS order, this time, working --------- Co-authored-by: Whatstone Co-authored-by: steinhauer.erhard Co-authored-by: Arimah --- .github/workflows/build-test-debug.yml | 10 +- .github/workflows/nf-shipyard-tests.yml | 2 + .github/workflows/update-credits.yml | 2 +- .../Tests/Commands/SuicideCommandTests.cs | 20 +- Content.IntegrationTests/Tests/EntityTest.cs | 5 +- .../Tests/GameRules/AntagPreferenceTest.cs | 1 + .../Tests/GameRules/FailAndStartPresetTest.cs | 4 +- .../Tests/GameRules/NukeOpsTest.cs | 1 + .../Tests/GameRules/TraitorRuleTest.cs | 1 + .../Tests/Internals/AutoInternalsTests.cs | 1 + .../Tests/MachineBoardTest.cs | 7 +- .../Tests/PostMapInitTest.cs | 15 +- .../Tests/Round/JobTest.cs | 6 +- Content.IntegrationTests/Tests/SalvageTest.cs | 3 +- .../Tests/VendingMachineRestockTest.cs | 1 + .../Kitchen/EntitySystems/DeepFryerSystem.cs | 48 +- .../Systems/ShuttleSystem.GridFill.cs | 5 + .../_NF/Cargo/CargoSystem.PirateBounty.cs | 8 +- .../_NF/PublicTransit/PublicTransitSystem.cs | 5 +- .../_NF/Smuggling/DeadDropSystem.cs | 5 +- .../Events/BluespaceErrorRule.cs | 3 + .../VendingMachineComponent.cs | 4 +- .../_NF/Bank/Components/BankATMComponent.cs | 4 +- .../Components/StationBankATMComponent.cs | 4 +- Content.Shared/_NF/Bank/SharedBankSystem.cs | 4 +- .../Prototypes/PirateBountyPrototype.cs | 4 +- Resources/Maps/_NF/Admin/gallery.yml | 1142 ++++++----------- Resources/Maps/_NF/Dungeon/cave_factory.yml | 2 - Resources/Maps/_NF/Dungeon/haunted.yml | 190 +-- Resources/Maps/_NF/Dungeon/spaceplatform.yml | 2 - Resources/Maps/_NF/Dungeon/virology_lab.yml | 93 +- .../Catalog/Fills/Lockers/suit_storage.yml | 4 +- .../Entities/Objects/Misc/fluff_lights.yml | 4 +- .../Objects/Power/portable_recharger.yml | 2 +- .../Objects/Tools/inflatable_wall.yml | 12 +- .../Entities/Structures/Furniture/altar.yml | 6 +- .../Entities/Structures/Furniture/chairs.yml | 2 +- .../Entities/Structures/Machines/lathe.yml | 1 + .../Entities/Structures/Walls/girders.yml | 2 +- .../Fills/Lockers/locker_wallmount.yml | 4 +- .../Catalog/Fills/Lockers/wardrobe_job.yml | 5 +- .../OuterClothing/goblin_outerclothing.yml | 2 +- .../Clothing/OuterClothing/softsuits.yml | 54 +- .../Clothing/OuterClothing/wintercoats.yml | 2 +- .../Clothing/Shoes/clown_shoes_mods.yml | 2 +- .../Objects/Consumable/Drinks/drinks_keg.yml | 2 + .../Devices/Circuitboards/computer.yml | 50 +- .../Entities/Objects/Misc/mail_capsule.yml | 15 +- .../Objects/Weapons/Guns/base_turret.yml | 2 + .../Machines/Computers/computers_shipyard.yml | 5 +- .../Entities/Structures/Machines/jukebox.yml | 2 +- .../Entities/Structures/Machines/lathe.yml | 2 +- .../Entities/Structures/Machines/shredder.yml | 3 - .../Power/Generation/portable_generator.yml | 68 +- .../Storage/Closets/suit_storage_wall.yml | 5 +- .../Storage/Closets/wall_lockers.yml | 22 +- .../_NF/Entities/Structures/atm.yml | 14 +- .../Entities/Structures/base_structure.yml | 14 +- .../Construction/Graphs/furniture/altars.yml | 32 +- Resources/Prototypes/_NF/Research/arsenal.yml | 4 - .../Prototypes/_NF/Shipyard/bocadillo.yml | 2 +- 61 files changed, 701 insertions(+), 1245 deletions(-) diff --git a/.github/workflows/build-test-debug.yml b/.github/workflows/build-test-debug.yml index 2cfe5094402..4aab5d9595c 100644 --- a/.github/workflows/build-test-debug.yml +++ b/.github/workflows/build-test-debug.yml @@ -50,11 +50,11 @@ jobs: - name: Run Content.Tests run: dotnet test --no-build --configuration DebugOpt Content.Tests/Content.Tests.csproj -- NUnit.ConsoleOut=0 - # - name: Run Content.IntegrationTests - # shell: pwsh - # run: | - # $env:DOTNET_gcServer=1 - # dotnet test --no-build --configuration DebugOpt Content.IntegrationTests/Content.IntegrationTests.csproj -- NUnit.ConsoleOut=0 NUnit.MapWarningTo=Failed +# - name: Run Content.IntegrationTests +# shell: pwsh +# run: | +# $env:DOTNET_gcServer=1 +# dotnet test --no-build --configuration DebugOpt Content.IntegrationTests/Content.IntegrationTests.csproj -- NUnit.ConsoleOut=0 NUnit.MapWarningTo=Failed ci-success: name: Build & Test Debug needs: diff --git a/.github/workflows/nf-shipyard-tests.yml b/.github/workflows/nf-shipyard-tests.yml index f7bdc821de4..54f1d45ceea 100644 --- a/.github/workflows/nf-shipyard-tests.yml +++ b/.github/workflows/nf-shipyard-tests.yml @@ -24,6 +24,7 @@ jobs: - name: Setup Submodule run: | git submodule update --init --recursive + - name: Pull engine updates uses: space-wizards/submodule-dependency@v0.1.5 @@ -31,6 +32,7 @@ jobs: run: | cd RobustToolbox/ git submodule update --init --recursive + - name: Setup .NET Core uses: actions/setup-dotnet@v3.2.0 with: diff --git a/.github/workflows/update-credits.yml b/.github/workflows/update-credits.yml index 878173e5002..5659ed66908 100644 --- a/.github/workflows/update-credits.yml +++ b/.github/workflows/update-credits.yml @@ -38,4 +38,4 @@ jobs: uses: stefanzweifel/git-auto-commit-action@v4 with: commit_message: Update Credits - commit_author: FrontierATC \ No newline at end of file + commit_author: FrontierATC diff --git a/Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs b/Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs index e1eef2be4a9..d2f1dd5b619 100644 --- a/Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs +++ b/Content.IntegrationTests/Tests/Commands/SuicideCommandTests.cs @@ -1,4 +1,4 @@ -using System.Linq; +using System.Linq; using Content.Shared.Damage; using Content.Shared.Damage.Prototypes; using Content.Shared.Execution; @@ -95,7 +95,7 @@ await server.WaitAssertion(() => consoleHost.GetSessionShell(playerMan.Sessions.First()).ExecuteCommand("suicide"); Assert.Multiple(() => { - Assert.That(mobStateSystem.IsDead(player, mobStateComp)); + //Assert.That(mobStateSystem.IsDead(player, mobStateComp)); // DeltaV - /suicide is the same as /ghost Assert.That(entManager.TryGetComponent(mindComponent.CurrentEntity, out var ghostComp) && !ghostComp.CanReturnToBody); }); @@ -158,17 +158,17 @@ await server.WaitAssertion(() => Assert.Multiple(() => { - Assert.That(mobStateSystem.IsDead(player, mobStateComp)); + //Assert.That(mobStateSystem.IsDead(player, mobStateComp)); // DeltaV - /suicide is the same as /ghost Assert.That(entManager.TryGetComponent(mindComponent.CurrentEntity, out var ghostComp) && !ghostComp.CanReturnToBody); - Assert.That(damageableComp.Damage.GetTotal(), Is.EqualTo(lethalDamageThreshold)); + //Assert.That(damageableComp.Damage.GetTotal(), Is.EqualTo(lethalDamageThreshold)); // DeltaV - /suicide is the same as /ghost }); }); await pair.CleanReturnAsync(); } - /// + /// /// Run the suicide command in the console /// Should only ghost the player but not kill them /// @@ -210,7 +210,7 @@ await server.WaitAssertion(() => consoleHost.GetSessionShell(playerMan.Sessions.First()).ExecuteCommand("suicide"); Assert.Multiple(() => { - Assert.That(mobStateSystem.IsAlive(player, mobStateComp)); + //Assert.That(mobStateSystem.IsAlive(player, mobStateComp)); // DeltaV: Assert.That(entManager.TryGetComponent(mindComponent.CurrentEntity, out var ghostComp) && !ghostComp.CanReturnToBody); }); @@ -281,10 +281,10 @@ await server.WaitAssertion(() => Assert.Multiple(() => { - Assert.That(mobStateSystem.IsDead(player, mobStateComp)); + //Assert.That(mobStateSystem.IsDead(player, mobStateComp)); // DeltaV Assert.That(entManager.TryGetComponent(mindComponent.CurrentEntity, out var ghostComp) && !ghostComp.CanReturnToBody); - Assert.That(damageableComp.Damage.DamageDict["Slash"], Is.EqualTo(lethalDamageThreshold)); + //Assert.That(damageableComp.Damage.DamageDict["Slash"], Is.EqualTo(lethalDamageThreshold)); // DeltaV }); }); @@ -353,10 +353,10 @@ await server.WaitAssertion(() => Assert.Multiple(() => { - Assert.That(mobStateSystem.IsDead(player, mobStateComp)); + //Assert.That(mobStateSystem.IsDead(player, mobStateComp)); // DeltaV Assert.That(entManager.TryGetComponent(mindComponent.CurrentEntity, out var ghostComp) && !ghostComp.CanReturnToBody); - Assert.That(damageableComp.Damage.DamageDict["Slash"], Is.EqualTo(lethalDamageThreshold / 2)); + //Assert.That(damageableComp.Damage.DamageDict["Slash"], Is.EqualTo(lethalDamageThreshold / 2)); // DeltaV }); }); diff --git a/Content.IntegrationTests/Tests/EntityTest.cs b/Content.IntegrationTests/Tests/EntityTest.cs index 42bea8989cd..7a57cb6b292 100644 --- a/Content.IntegrationTests/Tests/EntityTest.cs +++ b/Content.IntegrationTests/Tests/EntityTest.cs @@ -310,7 +310,10 @@ await server.WaitPost(() => // Check that the number of entities has gone back to the original value. if (server.EntMan.EntityCount != count) { - Assert.Fail($"Server prototype {protoId} failed on deletion count didn't reset properly"); + // Frontier: add expected vs. actual + Assert.Fail($"Server prototype {protoId} failed on deletion count didn't reset properly:\n" + + $"Expected {count} and found {server.EntMan.EntityCount}.\n"); + // End Frontier } if (client.EntMan.EntityCount != clientCount) diff --git a/Content.IntegrationTests/Tests/GameRules/AntagPreferenceTest.cs b/Content.IntegrationTests/Tests/GameRules/AntagPreferenceTest.cs index b215584c57a..28eeb89a368 100644 --- a/Content.IntegrationTests/Tests/GameRules/AntagPreferenceTest.cs +++ b/Content.IntegrationTests/Tests/GameRules/AntagPreferenceTest.cs @@ -17,6 +17,7 @@ namespace Content.IntegrationTests.Tests.GameRules; public sealed class AntagPreferenceTest { [Test] + [Ignore("Antag role selection isn't used on Frontier.")] // Frontier public async Task TestLobbyPlayersValid() { await using var pair = await PoolManager.GetServerClient(new PoolSettings diff --git a/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs b/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs index 3109df890a7..112d4713318 100644 --- a/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs +++ b/Content.IntegrationTests/Tests/GameRules/FailAndStartPresetTest.cs @@ -74,7 +74,7 @@ public async Task FailAndStartTest() Assert.That(server.CfgMan.GetCVar(CCVars.GridFill), Is.False); Assert.That(server.CfgMan.GetCVar(CCVars.GameLobbyFallbackEnabled), Is.True); - Assert.That(server.CfgMan.GetCVar(CCVars.GameLobbyDefaultPreset), Is.EqualTo("secret")); + Assert.That(server.CfgMan.GetCVar(CCVars.GameLobbyDefaultPreset), Is.EqualTo("adventure")); // Frontier: secret().Run = false; await pair.CleanReturnAsync(); } diff --git a/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs b/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs index a4563aa37e6..853a0b6aad9 100644 --- a/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs +++ b/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs @@ -32,6 +32,7 @@ public sealed class NukeOpsTest /// Check that a nuke ops game mode can start without issue. I.e., that the nuke station and such all get loaded. /// [Test] + [Ignore("Not relevant for Frontier, no nuke ops gameplay.")] // Frontier public async Task TryStopNukeOpsFromConstantlyFailing() { await using var pair = await PoolManager.GetServerClient(new PoolSettings diff --git a/Content.IntegrationTests/Tests/GameRules/TraitorRuleTest.cs b/Content.IntegrationTests/Tests/GameRules/TraitorRuleTest.cs index d2717521b23..f4b3f4f1073 100644 --- a/Content.IntegrationTests/Tests/GameRules/TraitorRuleTest.cs +++ b/Content.IntegrationTests/Tests/GameRules/TraitorRuleTest.cs @@ -22,6 +22,7 @@ public sealed class TraitorRuleTest private const string TraitorAntagRoleName = "Traitor"; [Test] + [Ignore("Traitor role selection isn't used on Frontier.")] // Frontier public async Task TestTraitorObjectives() { await using var pair = await PoolManager.GetServerClient(new PoolSettings() diff --git a/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs b/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs index dbd612c7101..4455af19eee 100644 --- a/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs +++ b/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs @@ -73,6 +73,7 @@ await server.WaitAssertion(() => equipment: mask: ClothingMaskBreath suitstorage: OxygenTankFilled + outerClothing: ClothingOuterVestTank # Frontier - type: job id: TestInternalsDummy diff --git a/Content.IntegrationTests/Tests/MachineBoardTest.cs b/Content.IntegrationTests/Tests/MachineBoardTest.cs index e1533bbb8d7..a379ef8e0e4 100644 --- a/Content.IntegrationTests/Tests/MachineBoardTest.cs +++ b/Content.IntegrationTests/Tests/MachineBoardTest.cs @@ -49,10 +49,15 @@ await server.WaitAssertion(() => continue; var mId = mbc.Prototype; + // Frontier: we accept null as board prototypes, but this will fail the assertions. + if (mId == "Null") + continue; + // End Frontier + Assert.Multiple(() => { Assert.That(protoMan.TryIndex(mId, out var mProto), - $"Machine board {p.ID}'s corresponding machine has an invalid prototype."); + $"Machine board {p.ID}'s corresponding machine has an invalid prototype."); // Frontier Assert.That(mProto.TryGetComponent(out var mComp, compFact), $"Machine board {p.ID}'s corresponding machine {mId} does not have MachineComponent"); Assert.That(mComp.Board, Is.EqualTo(p.ID), diff --git a/Content.IntegrationTests/Tests/PostMapInitTest.cs b/Content.IntegrationTests/Tests/PostMapInitTest.cs index b08f774271c..f1d42c11e9b 100644 --- a/Content.IntegrationTests/Tests/PostMapInitTest.cs +++ b/Content.IntegrationTests/Tests/PostMapInitTest.cs @@ -27,8 +27,9 @@ namespace Content.IntegrationTests.Tests public sealed class PostMapInitTest { private const bool SkipTestMaps = true; - private const string TestMapsPath = "/Maps/Test/"; + private const string TestMapsPath = "/Maps/_NF/Test/"; // Frontier: _NF + // Frontier: TODO - define this to our set of maps of interest private static readonly string[] NoSpawnMaps = { "CentComm", @@ -116,7 +117,7 @@ public async Task NoSavedPostMapInitTest() var server = pair.Server; var resourceManager = server.ResolveDependency(); - var mapFolder = new ResPath("/Maps"); + var mapFolder = new ResPath("/Maps/_NF"); // Frontier: add _NF var maps = resourceManager .ContentFindFiles(mapFolder) .Where(filePath => filePath.Extension == "yml" && !filePath.Filename.StartsWith(".", StringComparison.Ordinal)) @@ -311,6 +312,14 @@ public async Task AllMapsTested() var gameMaps = protoMan.EnumeratePrototypes() .Where(x => !pair.IsTestPrototype(x)) + // Frontier: FIXME - hacky test fix + .Where(x => + x.ID == PoolManager.TestMap || // Frontier: check test map + (x.MapPath.ToString().StartsWith("/Maps/_NF") && // Frontier: check frontier maps only + !x.MapPath.ToString().StartsWith("/Maps/_NF/Shuttles") && // Frontier: skip shuttles (not loaded as maps) + !x.MapPath.ToString().StartsWith("/Maps/_NF/POI")) // Frontier: skip POIs (not loaded as maps) + ) + // End Frontier .Select(x => x.ID) .ToHashSet(); @@ -337,7 +346,7 @@ public async Task NonGameMapsLoadableTest() var gameMaps = protoManager.EnumeratePrototypes().Select(o => o.MapPath).ToHashSet(); - var mapFolder = new ResPath("/Maps"); + var mapFolder = new ResPath("/Maps/_NF"); // Frontier var maps = resourceManager .ContentFindFiles(mapFolder) .Where(filePath => filePath.Extension == "yml" && !filePath.Filename.StartsWith(".", StringComparison.Ordinal)) diff --git a/Content.IntegrationTests/Tests/Round/JobTest.cs b/Content.IntegrationTests/Tests/Round/JobTest.cs index 215890791da..865f68db815 100644 --- a/Content.IntegrationTests/Tests/Round/JobTest.cs +++ b/Content.IntegrationTests/Tests/Round/JobTest.cs @@ -18,9 +18,9 @@ namespace Content.IntegrationTests.Tests.Round; [TestFixture] public sealed class JobTest { - private static readonly ProtoId Passenger = "Passenger"; - private static readonly ProtoId Engineer = "StationEngineer"; - private static readonly ProtoId Captain = "Captain"; + private static readonly ProtoId Passenger = "Contractor"; // Frontier: use job prototypes that exist + private static readonly ProtoId Engineer = "Pilot"; // Frontier + private static readonly ProtoId Captain = "StationRepresentative"; // Frontier private static string _map = "JobTestMap"; diff --git a/Content.IntegrationTests/Tests/SalvageTest.cs b/Content.IntegrationTests/Tests/SalvageTest.cs index 5dfba82308f..e52d1fb8ce6 100644 --- a/Content.IntegrationTests/Tests/SalvageTest.cs +++ b/Content.IntegrationTests/Tests/SalvageTest.cs @@ -1,4 +1,4 @@ -using System.Linq; +using System.Linq; using Content.Shared.CCVar; using Content.Shared.Salvage; using Robust.Server.GameObjects; @@ -17,6 +17,7 @@ public sealed class SalvageTest /// Asserts that all salvage maps have been saved as grids and are loadable. /// [Test] + [Ignore("Not currently used by Frontier.")] // Frontier public async Task AllSalvageMapsLoadableTest() { await using var pair = await PoolManager.GetServerClient(); diff --git a/Content.IntegrationTests/Tests/VendingMachineRestockTest.cs b/Content.IntegrationTests/Tests/VendingMachineRestockTest.cs index e067a27854f..c49a3640427 100644 --- a/Content.IntegrationTests/Tests/VendingMachineRestockTest.cs +++ b/Content.IntegrationTests/Tests/VendingMachineRestockTest.cs @@ -104,6 +104,7 @@ public sealed class VendingMachineRestockTest : EntitySystem "; [Test] + [Ignore("Frontier: restocks for vendors are intentionally unpurchaseable.")] // Frontier public async Task TestAllRestocksAreAvailableToBuy() { await using var pair = await PoolManager.GetServerClient(); diff --git a/Content.Server/Nyanotrasen/Kitchen/EntitySystems/DeepFryerSystem.cs b/Content.Server/Nyanotrasen/Kitchen/EntitySystems/DeepFryerSystem.cs index d11aa547db8..6e2f0987e00 100644 --- a/Content.Server/Nyanotrasen/Kitchen/EntitySystems/DeepFryerSystem.cs +++ b/Content.Server/Nyanotrasen/Kitchen/EntitySystems/DeepFryerSystem.cs @@ -4,6 +4,7 @@ using Content.Server.Audio; using Content.Server.Cargo.Systems; using Content.Server.Chemistry.Containers.EntitySystems; +using Content.Server.Chemistry.EntitySystems; using Content.Server.Construction; using Content.Server.DoAfter; using Content.Server.Fluids.EntitySystems; @@ -14,6 +15,7 @@ using Content.Server.Popups; using Content.Server.Power.Components; using Content.Server.Power.EntitySystems; +using Content.Server.Storage.EntitySystems; using Content.Server.Temperature.Components; using Content.Server.Temperature.Systems; using Content.Server.UserInterface; @@ -27,7 +29,7 @@ using Content.Shared.Database; using Content.Shared.Destructible; using Content.Shared.DoAfter; -using Content.Shared.EntityEffects; // Frontier +using Content.Shared.EntityEffects; using Content.Shared.Examine; using Content.Shared.FixedPoint; using Content.Shared.Hands.Components; @@ -108,7 +110,7 @@ public override void Initialize() SubscribeLocalEvent(OnDeconstruct); SubscribeLocalEvent(OnDestruction); SubscribeLocalEvent(OnThrowHitBy); - SubscribeLocalEvent(OnSolutionChange); + SubscribeLocalEvent(OnSolutionChange); SubscribeLocalEvent(OnRelayMovement); SubscribeLocalEvent(OnInteractUsing); @@ -184,7 +186,7 @@ public FixedPoint2 GetWasteVolume(EntityUid uid, DeepFryerComponent component) /// public FixedPoint2 GetOilPurity(EntityUid uid, DeepFryerComponent component) { - if (component.Solution.Volume > 0) + if (component.Solution.Volume > 0) // Frontier: ensure no negative division. return GetOilVolume(uid, component) / component.Solution.Volume; return FixedPoint2.Zero; } @@ -194,8 +196,8 @@ public FixedPoint2 GetOilPurity(EntityUid uid, DeepFryerComponent component) /// public FixedPoint2 GetOilLevel(EntityUid uid, DeepFryerComponent component) { - if (component.Solution.Volume > 0) - return GetOilVolume(uid, component) / component.Solution.Volume; + if (component.Solution.MaxVolume > 0) // Frontier: ensure no negative division or division by zero. + return GetOilVolume(uid, component) / component.Solution.MaxVolume; return FixedPoint2.Zero; } @@ -315,7 +317,7 @@ private void DeepFry(EntityUid uid, DeepFryerComponent component, EntityUid item // just in case the attempt is relevant to any system in the future. // // The blacklist overrides all. - if (component.Blacklist != null && _whitelistSystem.IsValid(component.Blacklist, item)) // Frontier: use new whitelist system + if (_whitelistSystem.IsBlacklistPass(component.Blacklist, item)) { _popupSystem.PopupEntity( Loc.GetString("deep-fryer-blacklist-item-failed", @@ -357,7 +359,7 @@ private void DeepFry(EntityUid uid, DeepFryerComponent component, EntityUid item _ => 10 } * component.SolutionSizeCoefficient); - if (component.Whitelist != null && _whitelistSystem.IsValid(component.Whitelist, item) || // Frontier: use new whitelist system + if (_whitelistSystem.IsWhitelistPass(component.Whitelist, item) || beingEvent.TurnIntoFood) MakeEdible(uid, component, item, solutionQuantity); else @@ -385,7 +387,8 @@ private void OnInitDeepFryer(EntityUid uid, DeepFryerComponent component, Compon { //JJ Comment - not sure this works. Need to check if Reagent.ToString is correct. _prototypeManager.TryIndex(reagent.Reagent.ToString(), out var proto); - var effectsArgs = new EntityEffectReagentArgs(uid, // Frontier: ReagentEffectArgs targetGrid, DungeonSpawnG { spawned = EntityUid.Invalid; + // Frontier: handle empty prototype list, _random.Pick throws + if (group.Protos.Count <= 0) + return false; + // End Frontier + if (!_gridQuery.Resolve(targetGrid.Owner, ref targetGrid.Comp)) { return false; diff --git a/Content.Server/_NF/Cargo/CargoSystem.PirateBounty.cs b/Content.Server/_NF/Cargo/CargoSystem.PirateBounty.cs index 8cf012d2f99..028325db0c1 100644 --- a/Content.Server/_NF/Cargo/CargoSystem.PirateBounty.cs +++ b/Content.Server/_NF/Cargo/CargoSystem.PirateBounty.cs @@ -508,7 +508,7 @@ private void OnRedeemBounty(EntityUid uid, PirateBountyRedemptionConsoleComponen component.LastRedeemAttempt = _timing.CurTime; } - class PirateBountyState + sealed class PirateBountyState { public readonly PirateBountyData Data; public PirateBountyPrototype Prototype; @@ -523,7 +523,7 @@ public PirateBountyState(PirateBountyData data, PirateBountyPrototype prototype) } } - class PirateBountyEntitySearchState + sealed class PirateBountyEntitySearchState { public HashSet HandledEntities = new(); public Dictionary LooseObjectBounties = new(); @@ -571,8 +571,8 @@ private void CheckEntityForPirateCrateBounty(EntityUid uid, ref PirateBountyEnti } // Check whitelists for the pirate bounty. - if ((_whitelistSys.IsWhitelistPass(entry.Whitelist, ent) || - _entProtoIdWhitelist.IsWhitelistPass(entry.IdWhitelist, ent)) && + if (_whitelistSys.IsWhitelistPassOrNull(entry.Whitelist, ent) && + _entProtoIdWhitelist.IsWhitelistPassOrNull(entry.IdWhitelist, ent) && _whitelistSys.IsBlacklistFailOrNull(entry.Blacklist, ent)) { bounty.Entries[entry.Name]++; diff --git a/Content.Server/_NF/PublicTransit/PublicTransitSystem.cs b/Content.Server/_NF/PublicTransit/PublicTransitSystem.cs index 7d959ac500c..2e33cd49750 100644 --- a/Content.Server/_NF/PublicTransit/PublicTransitSystem.cs +++ b/Content.Server/_NF/PublicTransit/PublicTransitSystem.cs @@ -207,7 +207,10 @@ public override void Update(float frameTime) ignoreActionBlocker: true); } } - _shuttles.FTLToDock(uid, shuttle, comp.NextStation, hyperspaceTime: FlyTime, priorityTag: "DockTransit"); // TODO: Unhard code the priorityTag as it should be added from the system. + + // FTL to next station, but only if it exists. + if (comp.NextStation.Valid) + _shuttles.FTLToDock(uid, shuttle, comp.NextStation, hyperspaceTime: FlyTime, priorityTag: "DockTransit"); // TODO: Unhard code the priorityTag as it should be added from the system. if (TryGetNextStation(out var nextStation) && nextStation is { Valid: true } destination) comp.NextStation = destination; diff --git a/Content.Server/_NF/Smuggling/DeadDropSystem.cs b/Content.Server/_NF/Smuggling/DeadDropSystem.cs index 82bf0e18c68..6a05747fec8 100644 --- a/Content.Server/_NF/Smuggling/DeadDropSystem.cs +++ b/Content.Server/_NF/Smuggling/DeadDropSystem.cs @@ -195,8 +195,9 @@ private void OnStationShutdown(EntityUid stationUid, StationDeadDropComponent co public void CompromiseDeadDrop(EntityUid uid, DeadDropComponent _) { - //Get our station. + //Get our station: FIXME - check lifecycle on entities before adding another drop. var station = _station.GetOwningStation(uid); + //Remove the dead drop. RemComp(uid); //Find a new potential dead drop to spawn. @@ -215,7 +216,7 @@ public void CompromiseDeadDrop(EntityUid uid, DeadDropComponent _) potentialDeadDrops.Add((ent, potentialDeadDrop)); } - // We have a potential dead drop, + // We have a potential dead drop, spawn an actual one if (potentialDeadDrops.Count > 0) { var item = _random.Pick(potentialDeadDrops); diff --git a/Content.Server/_NF/StationEvents/Events/BluespaceErrorRule.cs b/Content.Server/_NF/StationEvents/Events/BluespaceErrorRule.cs index 044e64f18aa..91638ace75b 100644 --- a/Content.Server/_NF/StationEvents/Events/BluespaceErrorRule.cs +++ b/Content.Server/_NF/StationEvents/Events/BluespaceErrorRule.cs @@ -62,6 +62,9 @@ protected override void Ended(EntityUid uid, BluespaceErrorRuleComponent compone { base.Ended(uid, component, gameRule, args); + if (component.GridUid == null || !component.GridUid.Value.Valid) + return; + if (!EntityManager.TryGetComponent(component.GridUid, out var gridTransform)) { Log.Error("bluespace error objective was missing transform component"); diff --git a/Content.Shared/VendingMachines/VendingMachineComponent.cs b/Content.Shared/VendingMachines/VendingMachineComponent.cs index 4dbb30e8431..4fb4ccef971 100644 --- a/Content.Shared/VendingMachines/VendingMachineComponent.cs +++ b/Content.Shared/VendingMachines/VendingMachineComponent.cs @@ -37,13 +37,13 @@ public sealed partial class VendingMachineComponent : Component /// Used by the server to determine how many items the machine allowed to eject from random triggers. /// [DataField] - public float EjectRandomMax = 2; + public int EjectRandomMax = 2; /// /// Used by the server to determine how many items the machine ejected from random triggers. /// [DataField] - public float EjectRandomCounter = 2; + public int EjectRandomCounter = 2; /// /// The time it takes to regain a single charge diff --git a/Content.Shared/_NF/Bank/Components/BankATMComponent.cs b/Content.Shared/_NF/Bank/Components/BankATMComponent.cs index 3ed566c1715..f2e23784b10 100644 --- a/Content.Shared/_NF/Bank/Components/BankATMComponent.cs +++ b/Content.Shared/_NF/Bank/Components/BankATMComponent.cs @@ -13,9 +13,9 @@ public sealed partial class BankATMComponent : Component [ViewVariables(VVAccess.ReadWrite), DataField("cashType", customTypeSerializer:typeof(PrototypeIdSerializer))] public string CashType = "Credit"; - public static string CashSlotSlotId = "bank-ATM-cashSlot"; + public static string CashSlotId = "bank-ATM-cashSlot"; - [DataField("bank-ATM-cashSlot")] + [DataField] public ItemSlot CashSlot = new(); [DataField("soundError")] diff --git a/Content.Shared/_NF/Bank/Components/StationBankATMComponent.cs b/Content.Shared/_NF/Bank/Components/StationBankATMComponent.cs index 28be34cb689..255bf8feadf 100644 --- a/Content.Shared/_NF/Bank/Components/StationBankATMComponent.cs +++ b/Content.Shared/_NF/Bank/Components/StationBankATMComponent.cs @@ -13,9 +13,9 @@ public sealed partial class StationBankATMComponent : Component [ViewVariables(VVAccess.ReadWrite), DataField("cashType", customTypeSerializer:typeof(PrototypeIdSerializer))] public string CashType = "Credit"; - public static string CashSlotSlotId = "station-bank-ATM-cashSlot"; + public static string CashSlotId = "station-bank-ATM-cashSlot"; - [DataField("station-bank-ATM-cashSlot")] + [DataField] public ItemSlot CashSlot = new(); [DataField("soundError")] diff --git a/Content.Shared/_NF/Bank/SharedBankSystem.cs b/Content.Shared/_NF/Bank/SharedBankSystem.cs index a9d511d4b14..8961f5f1483 100644 --- a/Content.Shared/_NF/Bank/SharedBankSystem.cs +++ b/Content.Shared/_NF/Bank/SharedBankSystem.cs @@ -27,7 +27,7 @@ public override void Initialize() private void OnComponentInit(EntityUid uid, BankATMComponent component, ComponentInit args) { - _itemSlotsSystem.AddItemSlot(uid, BankATMComponent.CashSlotSlotId, component.CashSlot); + _itemSlotsSystem.AddItemSlot(uid, BankATMComponent.CashSlotId, component.CashSlot); } private void OnComponentRemove(EntityUid uid, BankATMComponent component, ComponentRemove args) @@ -37,7 +37,7 @@ private void OnComponentRemove(EntityUid uid, BankATMComponent component, Compon private void OnComponentInit(EntityUid uid, StationBankATMComponent component, ComponentInit args) { - _itemSlotsSystem.AddItemSlot(uid, StationBankATMComponent.CashSlotSlotId, component.CashSlot); + _itemSlotsSystem.AddItemSlot(uid, StationBankATMComponent.CashSlotId, component.CashSlot); } private void OnComponentRemove(EntityUid uid, StationBankATMComponent component, ComponentRemove args) diff --git a/Content.Shared/_NF/Pirate/Prototypes/PirateBountyPrototype.cs b/Content.Shared/_NF/Pirate/Prototypes/PirateBountyPrototype.cs index 361bc7fe849..059ed5285bc 100644 --- a/Content.Shared/_NF/Pirate/Prototypes/PirateBountyPrototype.cs +++ b/Content.Shared/_NF/Pirate/Prototypes/PirateBountyPrototype.cs @@ -54,13 +54,13 @@ public readonly partial record struct PirateBountyItemEntry() /// A whitelist for determining what items satisfy the entry by tag, component, etc. /// [DataField] - public EntityWhitelist Whitelist { get; init; } = default!; + public EntityWhitelist? Whitelist { get; init; } = default!; /// /// A whitelist for determining what items satisfy the entry by entity prototype ID /// [DataField] - public EntProtoIdWhitelist IdWhitelist { get; init; } = default!; + public EntProtoIdWhitelist? IdWhitelist { get; init; } = default!; /// /// A blacklist that can be used to exclude items in the whitelist. diff --git a/Resources/Maps/_NF/Admin/gallery.yml b/Resources/Maps/_NF/Admin/gallery.yml index 1dee9ae554e..44782174350 100644 --- a/Resources/Maps/_NF/Admin/gallery.yml +++ b/Resources/Maps/_NF/Admin/gallery.yml @@ -74,8 +74,8 @@ entities: - type: Broadphase - type: Physics bodyStatus: InAir - angularDamping: 0.05 - linearDamping: 0.05 + angularDamping: 999999 + linearDamping: 999999 fixedRotation: False bodyType: Dynamic - type: Fixtures @@ -862,240 +862,264 @@ entities: tiles: 0,0: 0: 65535 - -1,0: - 0: 65535 - -1,-1: - 0: 65535 0,-1: 0: 65535 + -1,0: + 0: 65535 0,1: 0: 65535 + -1,1: + 0: 65535 0,2: 0: 65535 + -1,2: + 0: 65262 0,3: - 0: 65535 + 0: 46079 + -1,3: + 0: 47342 + 0,4: + 0: 48123 1,0: - 0: 65535 + 0: 46079 1,1: - 0: 65535 + 0: 48123 1,2: - 0: 65535 + 0: 65248 1,3: + 0: 61678 + 1,-1: + 0: 62395 + 1,4: 0: 65535 2,0: - 0: 65535 + 0: 61695 2,1: 0: 65535 2,2: - 0: 65535 + 0: 13104 + 1: 34944 2,3: - 0: 65535 + 0: 51 + 1: 59528 + 2,-1: + 0: 61695 + 2,4: + 1: 61166 3,0: - 0: 65535 - 3,1: - 0: 65535 + 0: 59647 3,2: - 0: 65535 + 1: 65520 3,3: + 1: 13107 + 3,-1: + 0: 63726 + 3,1: + 0: 61166 + 3,4: + 1: 51 + 4,0: + 0: 12543 + 1: 32768 + 4,1: 0: 13107 + 1: 34952 + 4,2: + 1: 65528 -4,0: - 0: 65535 + 0: 62207 + -4,-1: + 0: 62207 + -5,0: + 0: 33279 + 1: 12288 -4,1: 0: 65535 - -4,2: - 0: 65535 - -4,3: + -5,1: 0: 34952 + 1: 13107 + -4,2: + 1: 65520 + -5,2: + 1: 65523 -3,0: - 0: 65535 - -3,1: - 0: 65535 + 0: 57599 -3,2: - 0: 65535 + 1: 13104 + 0: 34944 + -4,3: + 1: 34952 -3,3: - 0: 65535 + 1: 62259 + 0: 136 + -4,4: + 1: 136 + -3,-1: + 0: 61678 + -3,1: + 0: 61166 + -3,4: + 1: 61183 -2,0: - 0: 65535 + 0: 47359 -2,1: - 0: 65535 + 0: 48123 -2,2: - 0: 65535 + 0: 65520 -2,3: + 0: 57599 + -2,-1: + 0: 63675 + -2,4: + 0: 61166 + -1,-1: 0: 65535 - -1,1: - 0: 65535 - -1,2: - 0: 65535 - -1,3: - 0: 65535 + -1,4: + 0: 48123 -4,-3: - 0: 65528 + 1: 65528 + -5,-3: + 1: 65520 -4,-2: - 0: 65535 - -4,-1: - 0: 65535 + 0: 65520 + -5,-2: + 0: 34944 + 1: 13107 + -5,-1: + 0: 61832 + 1: 51 -4,-4: - 0: 34952 + 1: 34952 + -4,-5: + 1: 32768 -3,-4: - 0: 65535 + 1: 13311 + 0: 32768 -3,-3: - 0: 65535 + 1: 13107 + 0: 34952 + -3,-5: + 1: 65262 -3,-2: - 0: 65535 - -3,-1: - 0: 65535 + 0: 61152 -2,-4: - 0: 65535 + 0: 61678 -2,-3: 0: 65535 -2,-2: - 0: 65535 - -2,-1: - 0: 65535 + 0: 64432 + -2,-5: + 0: 61152 -1,-4: - 0: 65535 + 0: 59579 -1,-3: - 0: 65535 + 0: 61182 -1,-2: - 0: 65535 + 0: 65534 + -1,-5: + 0: 64440 0,-4: - 0: 65535 + 0: 62395 0,-3: 0: 65535 0,-2: 0: 65535 + 0,-5: + 0: 64435 1,-4: - 0: 65535 + 0: 57599 1,-3: - 0: 65535 + 0: 61182 1,-2: - 0: 65535 - 1,-1: - 0: 65535 + 0: 64432 + 1,-5: + 0: 65520 2,-4: - 0: 65535 + 0: 12288 + 1: 35054 2,-3: - 0: 65535 + 0: 13107 + 1: 34952 2,-2: - 0: 65535 - 2,-1: - 0: 65535 + 0: 65520 + 2,-5: + 1: 61166 3,-4: - 0: 13107 + 1: 13107 3,-3: - 0: 65523 + 1: 65523 + 3,-5: + 1: 12288 3,-2: - 0: 65535 - 3,-1: - 0: 65535 - 0,4: - 0: 65535 + 0: 61152 + 4,-3: + 1: 65520 + 4,-2: + 0: 13104 + 1: 34952 + 4,-1: + 0: 61491 + 1: 136 0,5: - 0: 65535 + 0: 14131 + 1: 34944 + -1,5: + 0: 35976 + 1: 13104 0,6: - 0: 7 - 1,4: - 0: 65535 + 0: 3 + -1,6: + 0: 8 1,5: - 0: 65535 - 2,4: - 0: 65535 + 1: 65520 2,5: - 0: 65535 - 3,4: - 0: 51 + 1: 65534 0,-6: - 0: 65527 - 0,-5: - 0: 65535 + 0: 14131 + 1: 34944 + -1,-6: + 0: 35976 + 1: 13104 1,-6: - 0: 65520 - 1,-5: - 0: 65535 + 1: 65520 2,-6: - 0: 65520 - 2,-5: - 0: 65535 - 3,-5: - 0: 12288 - 4,0: - 0: 65535 - 4,1: - 0: 65535 - 4,2: - 0: 65535 + 1: 65520 5,0: - 0: 14199 + 0: 375 + 1: 12288 5,1: - 0: 13107 + 1: 13107 5,2: - 0: 13107 + 1: 13107 + 5,-1: + 0: 28928 + 1: 51 -6,0: - 0: 36044 + 0: 204 + 1: 32768 + -6,-1: + 0: 49152 + 1: 136 -6,1: - 0: 34952 + 1: 34952 -6,2: - 0: 34952 - -5,0: - 0: 65535 - -5,1: - 0: 65535 - -5,2: - 0: 65535 - -6,-1: - 0: 52360 + 1: 34952 -6,-3: - 0: 34944 + 1: 34944 -6,-2: - 0: 34952 - -5,-3: - 0: 65520 - -5,-2: - 0: 65535 - -5,-1: - 0: 65535 - -4,4: - 0: 136 - -3,4: - 0: 61183 + 1: 34952 -3,5: - 0: 61166 - -2,4: - 0: 65535 + 1: 61166 -2,5: - 0: 65535 - -1,4: - 0: 65535 - -1,5: - 0: 65535 - -1,6: - 0: 12 - -4,-5: - 0: 32768 - -3,-5: - 0: 65262 + 1: 65520 -3,-6: - 0: 61152 + 1: 61152 -2,-6: - 0: 65520 - -2,-5: - 0: 65535 - -1,-6: - 0: 65532 - -1,-5: - 0: 65535 - 4,-3: - 0: 65520 - 4,-2: - 0: 65535 - 4,-1: - 0: 65535 + 1: 65520 5,-3: - 0: 13104 + 1: 13104 5,-2: - 0: 13107 - 5,-1: - 0: 30515 + 1: 13107 uniqueMixes: - volume: 2500 temperature: 293.15 @@ -1112,16 +1136,31 @@ entities: - 0 - 0 - 0 + - volume: 2500 + immutable: True + moles: + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 + - 0 chunkSize: 4 - type: GasTileOverlay - type: RadiationGridResistance - type: ProtectedGrid - preventFloorRemoval: true - preventFloorPlacement: true - preventRCDUse: true - preventEmpEvents: true - preventExplosions: true - preventArtifactTriggers: true + preventArtifactTriggers: True + preventExplosions: True + preventEmpEvents: True + preventRCDUse: True + preventFloorPlacement: True + preventFloorRemoval: True - proto: AirlockExternalGlass entities: - uid: 1291 @@ -1514,79 +1553,59 @@ entities: - type: Transform pos: -9.5,1.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1354 components: - type: Transform pos: 8.5,1.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1357 components: - type: Transform rot: -1.5707963267948966 rad pos: 3.5,10.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1358 components: - type: Transform rot: -1.5707963267948966 rad pos: 5.5,4.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1363 components: - type: Transform rot: 1.5707963267948966 rad pos: -4.5,3.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1364 components: - type: Transform rot: 1.5707963267948966 rad pos: -2.5,9.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1365 components: - type: Transform rot: 1.5707963267948966 rad pos: -4.5,-3.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1366 components: - type: Transform rot: -1.5707963267948966 rad pos: 5.5,-2.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1367 components: - type: Transform rot: -1.5707963267948966 rad pos: 3.5,-8.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1368 components: - type: Transform rot: 1.5707963267948966 rad pos: -2.5,-9.5 parent: 1 - - type: Physics - bodyType: Static - proto: BenchSteelMiddle entities: - uid: 1352 @@ -1594,15 +1613,11 @@ entities: - type: Transform pos: -8.5,1.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1355 components: - type: Transform pos: 9.5,1.5 parent: 1 - - type: Physics - bodyType: Static - proto: BenchSteelRight entities: - uid: 1351 @@ -1610,79 +1625,59 @@ entities: - type: Transform pos: -7.5,1.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1356 components: - type: Transform pos: 10.5,1.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1359 components: - type: Transform rot: -1.5707963267948966 rad pos: 3.5,9.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1360 components: - type: Transform rot: -1.5707963267948966 rad pos: 5.5,3.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1361 components: - type: Transform rot: 1.5707963267948966 rad pos: -2.5,10.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1362 components: - type: Transform rot: 1.5707963267948966 rad pos: -4.5,4.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1369 components: - type: Transform rot: 1.5707963267948966 rad pos: -2.5,-8.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1370 components: - type: Transform rot: -1.5707963267948966 rad pos: 3.5,-9.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1371 components: - type: Transform rot: -1.5707963267948966 rad pos: 5.5,-3.5 parent: 1 - - type: Physics - bodyType: Static - uid: 1372 components: - type: Transform rot: 1.5707963267948966 rad pos: -4.5,-2.5 parent: 1 - - type: Physics - bodyType: Static - proto: BoxFolderClipboard entities: - uid: 1340 @@ -5876,223 +5871,247 @@ entities: - type: Transform pos: 1.5,-3.5 parent: 1 -- proto: ComfyChair +- proto: CleanerDispenser entities: - - uid: 587 + - uid: 615 components: - type: Transform - pos: 0.5,0.5 + pos: -5.5,2.5 parent: 1 -- proto: CrayonBox - entities: - - uid: 650 + - uid: 616 components: - type: Transform - pos: -2.4519541,13.747456 + pos: 6.5,2.5 parent: 1 - - uid: 651 + - uid: 639 components: - type: Transform - pos: -2.2540374,13.528706 + rot: 3.141592653589793 rad + pos: 2.5,-13.5 parent: 1 - - uid: 652 + - uid: 640 components: - type: Transform - pos: 3.516796,13.737038 + rot: 3.141592653589793 rad + pos: -1.5,-13.5 parent: 1 - - uid: 653 + - uid: 641 components: - type: Transform - pos: 3.6626294,13.612038 + pos: 2.5,14.5 parent: 1 - - uid: 654 + - uid: 642 components: - type: Transform - pos: 5.5386314,7.783965 + pos: -1.5,14.5 parent: 1 - - uid: 655 + - uid: 645 components: - type: Transform - pos: 5.6219645,7.6485486 + rot: 3.141592653589793 rad + pos: 6.5,-1.5 parent: 1 - - uid: 656 + - uid: 646 components: - type: Transform - pos: 12.548109,1.7521317 + rot: 3.141592653589793 rad + pos: -5.5,-1.5 parent: 1 - - uid: 657 +- proto: ComfyChair + entities: + - uid: 587 components: - type: Transform - pos: 12.683526,1.5958817 + pos: 0.5,0.5 parent: 1 - - uid: 658 +- proto: CrayonMagic + entities: + - uid: 588 components: - type: Transform - pos: 5.4941998,-6.180567 + pos: 3.6689978,13.731949 parent: 1 - - uid: 659 + - uid: 591 components: - type: Transform - pos: 5.6296167,-6.3576503 + pos: 3.7731647,13.648558 parent: 1 - - uid: 660 + - uid: 592 components: - type: Transform - pos: 3.5434232,-12.239265 + pos: 3.8460813,13.52347 parent: 1 - - uid: 661 + - uid: 593 components: - type: Transform - pos: 3.6267567,-12.426765 + pos: -2.2997522,13.752796 parent: 1 - - uid: 662 + - uid: 594 components: - type: Transform - pos: -2.4746127,-12.236822 + pos: -2.2476692,13.638132 parent: 1 - - uid: 663 + - uid: 610 components: - type: Transform - pos: -2.3808627,-12.46599 + pos: -2.1747522,13.513046 parent: 1 - - uid: 664 + - uid: 611 components: - type: Transform - pos: -4.442801,-6.2115054 + pos: 1.2393674,1.6301754 parent: 1 - - uid: 665 + - uid: 612 components: - type: Transform - pos: -4.369884,-6.4094224 + pos: 1.2536597,1.4216971 parent: 1 - - uid: 666 + - uid: 613 components: - type: Transform - pos: -11.41233,1.7301972 + pos: -4.3005686,-6.4017925 parent: 1 - - uid: 667 + - uid: 614 components: - type: Transform - pos: -11.266496,1.5635306 + pos: 5.7202654,-6.4122157 parent: 1 - - uid: 668 + - uid: 617 components: - type: Transform - pos: -4.43956,7.73786 + pos: 1.4828265,1.4112735 parent: 1 - - uid: 669 + - uid: 618 components: - type: Transform - pos: -4.3562264,7.560777 + pos: -0.40259033,1.4008491 parent: 1 - - uid: 684 + - uid: 619 components: - type: Transform - pos: -0.5301317,6.7459073 + pos: -0.125216,1.5989039 parent: 1 - - uid: 685 + - uid: 620 components: - type: Transform - pos: -0.38429832,6.5584073 + pos: 5.7523313,7.6271396 parent: 1 - - uid: 686 + - uid: 621 components: - type: Transform - pos: -0.42855787,5.7563243 + pos: 5.8460813,7.5333242 parent: 1 - - uid: 687 + - uid: 622 components: - type: Transform - pos: -0.27230787,5.547991 + pos: -2.3518357,-12.242329 parent: 1 -- proto: CrayonRainbow - entities: - - uid: 592 + - uid: 623 components: - type: Transform - pos: -0.50962925,1.721391 + pos: -2.2685022,-12.3361435 parent: 1 - - uid: 593 + - uid: 624 components: - type: Transform - pos: -0.69712925,1.721391 + pos: -2.2164192,-12.471655 parent: 1 - - uid: 594 + - uid: 625 components: - type: Transform - pos: -0.60337925,1.721391 + pos: 3.6585813,-12.242329 parent: 1 - - uid: 613 + - uid: 626 components: - type: Transform - pos: -0.42629588,1.721391 + pos: -4.372669,-6.287129 parent: 1 - - uid: 614 + - uid: 627 components: - type: Transform - pos: -0.33254588,1.7109742 + pos: 3.8356647,-12.492502 parent: 1 - - uid: 615 + - uid: 628 components: - type: Transform - pos: -0.25962925,1.7109742 + pos: -4.185169,-6.4956074 parent: 1 - - uid: 616 + - uid: 629 components: - type: Transform - pos: -0.17629588,1.7109742 + pos: 5.6273313,-6.328825 parent: 1 - - uid: 617 + - uid: 630 components: - type: Transform - pos: -0.7492125,1.752641 + pos: -4.1330857,7.5333242 parent: 1 - - uid: 618 + - uid: 631 components: - type: Transform - pos: -0.79087925,1.4922242 + pos: 5.6898313,7.7105308 parent: 1 - - uid: 619 + - uid: 632 components: - type: Transform - pos: -0.7075459,1.4922242 + pos: 5.8148313,-6.5060315 parent: 1 - - uid: 620 + - uid: 633 components: - type: Transform - pos: -0.60337925,1.4922242 + pos: 3.7419147,-12.356991 parent: 1 - - uid: 621 + - uid: 634 components: - type: Transform - pos: -0.53046256,1.4922242 + pos: 1.6977007,1.5780559 parent: 1 - - uid: 622 + - uid: 635 components: - type: Transform - pos: -0.44712925,1.4922242 + pos: 1.649493,1.4112735 parent: 1 - - uid: 623 + - uid: 636 components: - type: Transform - pos: -0.36379588,1.4922242 + pos: -4.310169,7.6896825 parent: 1 - - uid: 624 + - uid: 637 components: - type: Transform - pos: -0.30129588,1.4818076 + pos: -0.16300702,1.4321208 parent: 1 - - uid: 625 + - uid: 638 + components: + - type: Transform + pos: -4.216419,7.6167154 + parent: 1 + - uid: 643 + components: + - type: Transform + pos: -0.5796737,1.4216971 + parent: 1 + - uid: 644 + components: + - type: Transform + pos: 1.468534,1.5884795 + parent: 1 + - uid: 647 + components: + - type: Transform + pos: -0.35438275,1.6197517 + parent: 1 + - uid: 648 components: - type: Transform - pos: -0.20754588,1.4818076 + pos: -0.57313275,1.640599 parent: 1 -- proto: DoorRemoteFirefight +- proto: DawInstrument entities: - - uid: 1323 + - uid: 661 components: - type: Transform - pos: 1.4111161,1.6492697 + pos: 0.5,1.5 parent: 1 - proto: FirelockGlass entities: @@ -6200,8 +6219,6 @@ entities: rot: 3.141592653589793 rad pos: -18.5,-2.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1864 @@ -6210,8 +6227,6 @@ entities: rot: 3.141592653589793 rad pos: 19.5,-2.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - proto: GasPipeBend @@ -6883,8 +6898,6 @@ entities: rot: 1.5707963267948966 rad pos: -4.5,0.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1815 @@ -6893,8 +6906,6 @@ entities: rot: -1.5707963267948966 rad pos: 5.5,0.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1816 @@ -6902,8 +6913,6 @@ entities: - type: Transform pos: 0.5,9.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1817 @@ -6912,8 +6921,6 @@ entities: rot: 3.141592653589793 rad pos: 0.5,-8.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1885 @@ -6921,8 +6928,6 @@ entities: - type: Transform pos: -14.5,0.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1886 @@ -6930,8 +6935,6 @@ entities: - type: Transform pos: 15.5,0.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1887 @@ -6940,8 +6943,6 @@ entities: rot: -1.5707963267948966 rad pos: 0.5,17.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - uid: 1908 @@ -6950,8 +6951,6 @@ entities: rot: 1.5707963267948966 rad pos: 0.5,-16.5 parent: 1 - - type: AtmosDevice - joinedGrid: 1 - type: AtmosPipeColor color: '#990000FF' - proto: GeneratorWallmountAPU @@ -8118,6 +8117,68 @@ entities: - type: Transform pos: -5.5,-6.5 parent: 1 +- proto: MegaSprayBottle + entities: + - uid: 649 + components: + - type: Transform + pos: -4.676214,7.637565 + parent: 1 + - uid: 650 + components: + - type: Transform + pos: 5.313369,7.6584125 + parent: 1 + - uid: 651 + components: + - type: Transform + pos: -2.6525903,13.683947 + parent: 1 + - uid: 652 + components: + - type: Transform + pos: 3.3265765,13.663099 + parent: 1 + - uid: 653 + components: + - type: Transform + pos: 5.292536,-6.342188 + parent: 1 + - uid: 654 + components: + - type: Transform + pos: -4.728298,-6.342188 + parent: 1 + - uid: 655 + components: + - type: Transform + pos: -2.697048,-12.315086 + parent: 1 + - uid: 656 + components: + - type: Transform + pos: 3.2925355,-12.32551 + parent: 1 + - uid: 657 + components: + - type: Transform + pos: -0.64496446,5.8759246 + parent: 1 + - uid: 658 + components: + - type: Transform + pos: -0.3741312,5.6987185 + parent: 1 + - uid: 659 + components: + - type: Transform + pos: -0.6866312,6.8870435 + parent: 1 + - uid: 660 + components: + - type: Transform + pos: -0.42621446,6.688989 + parent: 1 - proto: MopBucketFull entities: - uid: 679 @@ -8149,13 +8210,6 @@ entities: - type: Transform pos: 1.5329728,-4.4065547 parent: 1 -- proto: PlushieJester - entities: - - uid: 591 - components: - - type: Transform - pos: 1.5803891,1.577183 - parent: 1 - proto: PottedPlantRandom entities: - uid: 1373 @@ -8212,358 +8266,266 @@ entities: entities: - uid: 1383 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: 1.5,21.5 parent: 1 - uid: 1384 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: -0.5,21.5 parent: 1 - uid: 1385 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: 8.5,21.5 parent: 1 - uid: 1386 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: -7.5,21.5 parent: 1 - uid: 1387 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: -3.5,15.5 parent: 1 - uid: 1388 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: 4.5,15.5 parent: 1 - uid: 1389 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: 6.5,9.5 parent: 1 - uid: 1390 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: -5.5,9.5 parent: 1 - uid: 1391 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: 5.5,2.5 parent: 1 - uid: 1392 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: 5.5,-1.5 parent: 1 - uid: 1393 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: -4.5,2.5 parent: 1 - uid: 1394 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: -4.5,-1.5 parent: 1 - uid: 1395 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -9.5,7.5 parent: 1 - uid: 1396 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: -9.5,-6.5 parent: 1 - uid: 1397 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: 10.5,-6.5 parent: 1 - uid: 1398 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 10.5,7.5 parent: 1 - uid: 1399 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: 19.5,8.5 parent: 1 - uid: 1400 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: 19.5,-7.5 parent: 1 - uid: 1401 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: 19.5,-0.5 parent: 1 - uid: 1402 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 19.5,1.5 parent: 1 - uid: 1403 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: 12.5,-0.5 parent: 1 - uid: 1404 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: -11.5,-0.5 parent: 1 - uid: 1405 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -5.5,-8.5 parent: 1 - uid: 1406 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 6.5,-8.5 parent: 1 - uid: 1407 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 8.5,-20.5 parent: 1 - uid: 1408 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -7.5,-20.5 parent: 1 - uid: 1409 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: -0.5,-20.5 parent: 1 - uid: 1410 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: 1.5,-20.5 parent: 1 - uid: 1411 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 4.5,-14.5 parent: 1 - uid: 1412 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -3.5,-14.5 parent: 1 - uid: 1413 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: -10.5,-13.5 parent: 1 - uid: 1414 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: 11.5,-13.5 parent: 1 - uid: 1415 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: -18.5,-7.5 parent: 1 - uid: 1416 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: 11.5,14.5 parent: 1 - uid: 1417 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: -10.5,14.5 parent: 1 - uid: 1418 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: -18.5,8.5 parent: 1 - uid: 1419 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -18.5,1.5 parent: 1 - uid: 1420 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 3.141592653589793 rad pos: -18.5,-0.5 parent: 1 - uid: 1421 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: -12.5,5.5 parent: 1 - uid: 1422 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: -12.5,-4.5 parent: 1 - uid: 1423 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: 13.5,-4.5 parent: 1 - uid: 1424 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: 13.5,5.5 parent: 1 - uid: 1425 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: 3.5,-7.5 parent: 1 - uid: 1426 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: -2.5,-7.5 parent: 1 - uid: 1427 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: 1.5707963267948966 rad pos: -2.5,8.5 parent: 1 - uid: 1428 components: - - type: MetaData - flags: PvsPriority - type: Transform rot: -1.5707963267948966 rad pos: 3.5,8.5 @@ -8610,16 +8572,6 @@ entities: - type: Transform pos: 3.5,-12.5 parent: 1 - - uid: 611 - components: - - type: Transform - pos: -11.5,1.5 - parent: 1 - - uid: 612 - components: - - type: Transform - pos: 12.5,1.5 - parent: 1 - uid: 676 components: - type: Transform @@ -10741,148 +10693,6 @@ entities: - type: Transform pos: 13.5,8.5 parent: 1 -- proto: SprayBottleWater - entities: - - uid: 626 - components: - - type: Transform - pos: -0.6762959,1.7943076 - parent: 1 - - uid: 627 - components: - - type: Transform - pos: -0.5825459,1.721391 - parent: 1 - - uid: 628 - components: - - type: Transform - pos: -0.34296256,1.7943076 - parent: 1 - - uid: 629 - components: - - type: Transform - pos: -0.25962925,1.6797242 - parent: 1 - - uid: 630 - components: - - type: Transform - pos: -2.7286835,13.645529 - parent: 1 - - uid: 631 - components: - - type: Transform - pos: -2.5724332,13.541363 - parent: 1 - - uid: 632 - components: - - type: Transform - pos: 3.2400668,13.583029 - parent: 1 - - uid: 633 - components: - - type: Transform - pos: 3.396317,13.499695 - parent: 1 - - uid: 634 - components: - - type: Transform - pos: -4.753067,7.6038837 - parent: 1 - - uid: 635 - components: - - type: Transform - pos: -4.596817,7.499717 - parent: 1 - - uid: 636 - components: - - type: Transform - pos: 5.2473807,7.617411 - parent: 1 - - uid: 637 - components: - - type: Transform - pos: 5.3515472,7.523661 - parent: 1 - - uid: 638 - components: - - type: Transform - pos: -11.773473,1.6782436 - parent: 1 - - uid: 639 - components: - - type: Transform - pos: -11.679723,1.5428269 - parent: 1 - - uid: 640 - components: - - type: Transform - pos: 12.224211,1.693969 - parent: 1 - - uid: 641 - components: - - type: Transform - pos: 12.317961,1.5898023 - parent: 1 - - uid: 642 - components: - - type: Transform - pos: 5.213619,-6.2825027 - parent: 1 - - uid: 643 - components: - - type: Transform - pos: 5.3282022,-6.428336 - parent: 1 - - uid: 644 - components: - - type: Transform - pos: -4.7781906,-6.2752132 - parent: 1 - - uid: 645 - components: - - type: Transform - pos: -4.663607,-6.3897967 - parent: 1 - - uid: 646 - components: - - type: Transform - pos: 3.2527452,-12.262442 - parent: 1 - - uid: 647 - components: - - type: Transform - pos: 3.356912,-12.439524 - parent: 1 - - uid: 648 - components: - - type: Transform - pos: -2.7576716,-12.241608 - parent: 1 - - uid: 649 - components: - - type: Transform - pos: -2.6639216,-12.470774 - parent: 1 - - uid: 680 - components: - - type: Transform - pos: -0.7801317,6.672991 - parent: 1 - - uid: 681 - components: - - type: Transform - pos: -0.6655484,6.516741 - parent: 1 - - uid: 682 - components: - - type: Transform - pos: -0.707215,5.7250743 - parent: 1 - - uid: 683 - components: - - type: Transform - pos: -0.5717984,5.4750743 - parent: 1 - proto: StairStage entities: - uid: 582 @@ -10929,14 +10739,6 @@ entities: rot: 3.141592653589793 rad pos: 1.5,1.5 parent: 1 -- proto: UprightPianoInstrument - entities: - - uid: 588 - components: - - type: Transform - rot: 3.141592653589793 rad - pos: 0.5,1.5 - parent: 1 - proto: VendingMachineCuddlyCritterVend entities: - uid: 603 @@ -10963,673 +10765,481 @@ entities: entities: - uid: 3 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -5.5,2.5 parent: 1 - uid: 4 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -5.5,8.5 parent: 1 - uid: 5 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 6.5,2.5 parent: 1 - uid: 6 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 6.5,8.5 parent: 1 - uid: 7 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 12.5,8.5 parent: 1 - uid: 8 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 12.5,2.5 parent: 1 - uid: 9 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -11.5,2.5 parent: 1 - uid: 10 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -11.5,8.5 parent: 1 - uid: 11 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -5.5,-1.5 parent: 1 - uid: 12 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -11.5,-1.5 parent: 1 - uid: 13 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -11.5,-7.5 parent: 1 - uid: 14 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -5.5,-7.5 parent: 1 - uid: 15 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 6.5,-7.5 parent: 1 - uid: 16 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 6.5,-1.5 parent: 1 - uid: 17 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 12.5,-1.5 parent: 1 - uid: 18 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 12.5,-7.5 parent: 1 - uid: 24 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -10.5,-7.5 parent: 1 - uid: 25 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -9.5,-7.5 parent: 1 - uid: 42 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 10.5,-7.5 parent: 1 - uid: 43 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 11.5,-7.5 parent: 1 - uid: 71 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 10.5,8.5 parent: 1 - uid: 72 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 11.5,8.5 parent: 1 - uid: 79 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -10.5,8.5 parent: 1 - uid: 80 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -9.5,8.5 parent: 1 - uid: 100 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -9.5,-13.5 parent: 1 - uid: 101 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -3.5,-13.5 parent: 1 - uid: 102 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -3.5,-7.5 parent: 1 - uid: 103 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -4.5,-7.5 parent: 1 - uid: 107 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -7.5,-13.5 parent: 1 - uid: 108 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -8.5,-13.5 parent: 1 - uid: 114 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 10.5,-13.5 parent: 1 - uid: 115 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 4.5,-13.5 parent: 1 - uid: 116 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 4.5,-7.5 parent: 1 - uid: 117 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 5.5,-7.5 parent: 1 - uid: 121 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 9.5,-13.5 parent: 1 - uid: 122 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 8.5,-13.5 parent: 1 - uid: 141 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 10.5,14.5 parent: 1 - uid: 142 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -9.5,14.5 parent: 1 - uid: 143 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -4.5,8.5 parent: 1 - uid: 144 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -3.5,8.5 parent: 1 - uid: 145 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 5.5,8.5 parent: 1 - uid: 146 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 4.5,8.5 parent: 1 - uid: 147 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -3.5,14.5 parent: 1 - uid: 148 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 4.5,14.5 parent: 1 - uid: 149 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 8.5,14.5 parent: 1 - uid: 150 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 9.5,14.5 parent: 1 - uid: 162 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -7.5,14.5 parent: 1 - uid: 163 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -8.5,14.5 parent: 1 - uid: 177 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -7.5,-19.5 parent: 1 - uid: 178 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,-19.5 parent: 1 - uid: 179 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,-19.5 parent: 1 - uid: 180 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 8.5,-19.5 parent: 1 - uid: 181 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,-13.5 parent: 1 - uid: 182 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 3.5,-13.5 parent: 1 - uid: 183 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,-13.5 parent: 1 - uid: 184 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -2.5,-13.5 parent: 1 - uid: 203 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -2.5,14.5 parent: 1 - uid: 204 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,14.5 parent: 1 - uid: 205 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 3.5,14.5 parent: 1 - uid: 206 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,14.5 parent: 1 - uid: 207 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -7.5,20.5 parent: 1 - uid: 208 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,20.5 parent: 1 - uid: 209 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,20.5 parent: 1 - uid: 210 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 8.5,20.5 parent: 1 - uid: 249 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -17.5,-1.5 parent: 1 - uid: 250 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -17.5,2.5 parent: 1 - uid: 261 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -17.5,8.5 parent: 1 - uid: 498 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -17.5,-7.5 parent: 1 - uid: 499 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 18.5,8.5 parent: 1 - uid: 500 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 18.5,2.5 parent: 1 - uid: 501 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 18.5,-1.5 parent: 1 - uid: 502 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 18.5,-7.5 parent: 1 - uid: 531 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 19.5,-1.5 parent: 1 - uid: 532 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 21.5,-1.5 parent: 1 - uid: 533 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 22.5,-1.5 parent: 1 - uid: 534 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 22.5,2.5 parent: 1 - uid: 535 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 21.5,2.5 parent: 1 - uid: 536 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 19.5,2.5 parent: 1 - uid: 537 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -18.5,-1.5 parent: 1 - uid: 538 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -21.5,-1.5 parent: 1 - uid: 539 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -21.5,2.5 parent: 1 - uid: 540 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -20.5,2.5 parent: 1 - uid: 541 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -18.5,2.5 parent: 1 - uid: 542 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -20.5,-1.5 parent: 1 - uid: 543 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,24.5 parent: 1 - uid: 544 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,23.5 parent: 1 - uid: 545 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,24.5 parent: 1 - uid: 546 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,23.5 parent: 1 - uid: 547 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,21.5 parent: 1 - uid: 548 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,21.5 parent: 1 - uid: 549 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,-23.5 parent: 1 - uid: 550 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,-22.5 parent: 1 - uid: 551 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: -1.5,-20.5 parent: 1 - uid: 552 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,-20.5 parent: 1 - uid: 553 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,-23.5 parent: 1 - uid: 554 components: - - type: MetaData - flags: PvsPriority - type: Transform pos: 2.5,-22.5 parent: 1 diff --git a/Resources/Maps/_NF/Dungeon/cave_factory.yml b/Resources/Maps/_NF/Dungeon/cave_factory.yml index 0d89b946eb6..50c5dad3f97 100644 --- a/Resources/Maps/_NF/Dungeon/cave_factory.yml +++ b/Resources/Maps/_NF/Dungeon/cave_factory.yml @@ -9501,8 +9501,6 @@ entities: parent: 1 - type: FuelGenerator on: False - - type: Physics - bodyType: Static - proto: PortableGeneratorPacman entities: - uid: 962 diff --git a/Resources/Maps/_NF/Dungeon/haunted.yml b/Resources/Maps/_NF/Dungeon/haunted.yml index 210b7f4864b..90d75188d65 100644 --- a/Resources/Maps/_NF/Dungeon/haunted.yml +++ b/Resources/Maps/_NF/Dungeon/haunted.yml @@ -383,15 +383,6 @@ entities: - type: Transform pos: 35.5,14.5 parent: 1653 -- proto: BananiumOre1 - entities: - - uid: 436 - components: - - type: Transform - parent: 435 - - type: Physics - canCollide: False - - type: InsideEntityStorage - proto: Barricade entities: - uid: 61 @@ -409,15 +400,6 @@ entities: - type: Transform pos: 51.5,0.5 parent: 1653 -- proto: BikeHorn - entities: - - uid: 201 - components: - - type: Transform - parent: 200 - - type: Physics - canCollide: False - - type: InsideEntityStorage - proto: CandleRedSmallInfinite entities: - uid: 121 @@ -505,42 +487,6 @@ entities: - type: Transform pos: 27.441708,39.437607 parent: 1653 -- proto: ClothingHeadHatGladiator - entities: - - uid: 7 - components: - - type: Transform - parent: 6 - - type: Physics - canCollide: False - - type: InsideEntityStorage -- proto: ClothingNeckCloakTrans - entities: - - uid: 332 - components: - - type: Transform - parent: 331 - - type: Physics - canCollide: False - - type: InsideEntityStorage -- proto: ClothingShoesClown - entities: - - uid: 202 - components: - - type: Transform - parent: 200 - - type: Physics - canCollide: False - - type: InsideEntityStorage -- proto: ClothingUniformJumpsuitGladiator - entities: - - uid: 215 - components: - - type: Transform - parent: 214 - - type: Physics - canCollide: False - - type: InsideEntityStorage - proto: ClothingUniformJumpsuitMonasticRobeDark entities: - uid: 40 @@ -714,126 +660,48 @@ entities: parent: 1653 - proto: CrateCoffin entities: - - uid: 331 + - uid: 6 components: - type: Transform - pos: 16.5,32.5 + pos: 22.5,32.5 parent: 1653 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 332 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - - uid: 435 + - uid: 201 components: - type: Transform - pos: 22.5,32.5 + pos: 16.5,32.5 parent: 1653 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 436 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - - uid: 438 + - uid: 203 components: - type: Transform pos: 23.5,32.5 parent: 1653 - - uid: 441 + - uid: 214 components: - type: Transform pos: 20.5,30.5 parent: 1653 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 442 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - proto: CrateWoodenGrave entities: - - uid: 6 + - uid: 7 components: - type: Transform - pos: 27.5,39.5 + pos: 42.5,39.5 parent: 1653 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 7 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - uid: 200 components: - type: Transform - pos: 42.5,39.5 + pos: 26.5,39.5 parent: 1653 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 202 - - 201 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - - uid: 214 + - uid: 202 components: - type: Transform pos: 28.5,39.5 parent: 1653 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 215 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - - uid: 231 + - uid: 215 components: - type: Transform - pos: 26.5,39.5 + pos: 27.5,39.5 parent: 1653 - - type: ContainerContainer - containers: - entity_storage: !type:Container - showEnts: False - occludes: True - ents: - - 232 - paper_label: !type:ContainerSlot - showEnts: False - occludes: True - ent: null - proto: CrystalSpawner entities: - uid: 129 @@ -881,13 +749,6 @@ entities: - type: Transform pos: 31.5,36.5 parent: 1653 -- proto: DoubleEmergencyNitrogenTankFilled - entities: - - uid: 309 - components: - - type: Transform - pos: 21.254128,38.485172 - parent: 1653 - proto: DresserFilled entities: - uid: 413 @@ -953,13 +814,6 @@ entities: rot: 1.5707963267948966 rad pos: 18.5,35.5 parent: 1653 -- proto: FireBombFuel - entities: - - uid: 203 - components: - - type: Transform - pos: 36.443645,31.673359 - parent: 1653 - proto: FloorWaterEntity entities: - uid: 3 @@ -1583,15 +1437,6 @@ entities: - type: Transform pos: 52.5,0.5 parent: 1653 -- proto: MaterialWoodPlank - entities: - - uid: 442 - components: - - type: Transform - parent: 441 - - type: Physics - canCollide: False - - type: InsideEntityStorage - proto: MiningWindowDungeon entities: - uid: 155 @@ -1635,7 +1480,7 @@ entities: fixedRotation: False - proto: OreProcessor entities: - - uid: 269 + - uid: 231 components: - type: Transform pos: 24.5,10.5 @@ -2941,15 +2786,6 @@ entities: - type: Transform pos: 18.5,44.5 parent: 1653 -- proto: SpearBone - entities: - - uid: 232 - components: - - type: Transform - parent: 231 - - type: Physics - canCollide: False - - type: InsideEntityStorage - proto: SteelBench entities: - uid: 71 diff --git a/Resources/Maps/_NF/Dungeon/spaceplatform.yml b/Resources/Maps/_NF/Dungeon/spaceplatform.yml index daa57b687f9..8c00847c2e7 100644 --- a/Resources/Maps/_NF/Dungeon/spaceplatform.yml +++ b/Resources/Maps/_NF/Dungeon/spaceplatform.yml @@ -12,8 +12,6 @@ entities: components: - type: MetaData - type: Transform - pos: -0.5249996,0.0749979 - parent: invalid - type: MapGrid chunks: 0,0: diff --git a/Resources/Maps/_NF/Dungeon/virology_lab.yml b/Resources/Maps/_NF/Dungeon/virology_lab.yml index 0997d99b756..1a5aa159999 100644 --- a/Resources/Maps/_NF/Dungeon/virology_lab.yml +++ b/Resources/Maps/_NF/Dungeon/virology_lab.yml @@ -2823,6 +2823,11 @@ entities: - type: Transform pos: 22.5,16.5 parent: 1653 + - uid: 491 + components: + - type: Transform + pos: 22.5,12.5 + parent: 1653 - uid: 626 components: - type: Transform @@ -2883,11 +2888,6 @@ entities: - type: Transform pos: 17.5,14.5 parent: 1653 - - uid: 1326 - components: - - type: Transform - pos: 22.5,12.5 - parent: 1653 - uid: 1341 components: - type: Transform @@ -3103,29 +3103,21 @@ entities: - type: Transform pos: 6.5,18.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1796 components: - type: Transform pos: 6.5,19.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1797 components: - type: Transform pos: 9.5,19.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1798 components: - type: Transform pos: 9.5,18.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchPewRight entities: - uid: 1799 @@ -3133,29 +3125,21 @@ entities: - type: Transform pos: 7.5,19.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1800 components: - type: Transform pos: 7.5,18.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1801 components: - type: Transform pos: 10.5,18.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1802 components: - type: Transform pos: 10.5,19.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchSofaCorner entities: - uid: 103 @@ -3166,7 +3150,6 @@ entities: parent: 1653 - type: Physics canCollide: False - bodyType: Static - type: Fixtures fixtures: {} - proto: BenchSofaCorpLeft @@ -3176,16 +3159,12 @@ entities: - type: Transform pos: 27.5,36.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1907 components: - type: Transform rot: 3.141592653589793 rad pos: 45.5,0.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchSofaCorpRight entities: - uid: 700 @@ -3193,16 +3172,12 @@ entities: - type: Transform pos: 26.5,36.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1262 components: - type: Transform rot: 3.141592653589793 rad pos: 46.5,0.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchSofaLeft entities: - uid: 236 @@ -3211,8 +3186,6 @@ entities: rot: 1.5707963267948966 rad pos: 16.5,44.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchSofaMiddle entities: - uid: 237 @@ -3221,8 +3194,6 @@ entities: rot: 1.5707963267948966 rad pos: 16.5,43.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchSofaRight entities: - uid: 602 @@ -3231,8 +3202,6 @@ entities: rot: 3.141592653589793 rad pos: 17.5,42.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchSteelLeft entities: - uid: 1231 @@ -3240,15 +3209,11 @@ entities: - type: Transform pos: 4.5,40.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1243 components: - type: Transform pos: 1.5,40.5 parent: 1653 - - type: Physics - bodyType: Static - proto: BenchSteelRight entities: - uid: 529 @@ -3256,15 +3221,11 @@ entities: - type: Transform pos: 2.5,40.5 parent: 1653 - - type: Physics - bodyType: Static - uid: 1206 components: - type: Transform pos: 5.5,40.5 parent: 1653 - - type: Physics - bodyType: Static - proto: Bible entities: - uid: 1803 @@ -7156,17 +7117,17 @@ entities: parent: 1653 - proto: ClosetL3VirologyFilled entities: - - uid: 405 + - uid: 332 components: - type: Transform pos: 14.5,4.5 parent: 1653 - - uid: 446 + - uid: 405 components: - type: Transform pos: 13.5,4.5 parent: 1653 - - uid: 612 + - uid: 446 components: - type: Transform pos: 15.5,4.5 @@ -7404,7 +7365,7 @@ entities: parent: 1653 - proto: Crematorium entities: - - uid: 1068 + - uid: 486 components: - type: Transform rot: 3.141592653589793 rad @@ -7649,25 +7610,25 @@ entities: parent: 1653 - proto: DisposalUnit entities: - - uid: 1432 + - uid: 487 components: - type: Transform pos: 21.5,2.5 parent: 1653 - - uid: 1433 + - uid: 488 components: - type: Transform pos: 25.5,2.5 parent: 1653 - - uid: 1434 + - uid: 489 components: - type: Transform - pos: 29.5,2.5 + pos: 33.5,2.5 parent: 1653 - - uid: 1435 + - uid: 490 components: - type: Transform - pos: 33.5,2.5 + pos: 29.5,2.5 parent: 1653 - proto: DrinkPoisonWinebottleFull entities: @@ -8795,54 +8756,52 @@ entities: rot: 3.141592653589793 rad pos: 22.5,12.5 parent: 1653 - - uid: 332 + - uid: 492 components: - type: Transform rot: 3.141592653589793 rad pos: 21.5,12.5 parent: 1653 - - uid: 486 + - uid: 493 components: - type: Transform rot: 3.141592653589793 rad pos: 20.5,12.5 parent: 1653 - - uid: 487 + - uid: 612 components: - type: Transform rot: 3.141592653589793 rad - pos: 18.5,12.5 + pos: 16.5,12.5 parent: 1653 - - uid: 488 + - uid: 1068 components: - type: Transform rot: 3.141592653589793 rad pos: 17.5,12.5 parent: 1653 - - uid: 489 + - uid: 1326 components: - type: Transform rot: 3.141592653589793 rad - pos: 16.5,12.5 + pos: 18.5,12.5 parent: 1653 - - uid: 490 + - uid: 1432 components: - type: Transform pos: 16.5,16.5 parent: 1653 - - uid: 491 + - uid: 1433 components: - type: Transform pos: 17.5,16.5 parent: 1653 - - uid: 492 + - uid: 1434 components: - type: Transform pos: 18.5,16.5 parent: 1653 - - type: EntityStorage - open: True - - uid: 493 + - uid: 1435 components: - type: Transform pos: 20.5,16.5 diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml b/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml index d2921bdbccf..76053f93337 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml @@ -94,8 +94,8 @@ - id: ClothingOuterHardsuitPirateEVA - id: ClothingMaskGas - id: JetpackBlackFilled # Frontier - - id: HandheldGPSBasic # Frontier - id: ClothingShoesBootsMagPirateFilled # Frontier + - id: HandheldGPSBasic # Frontier #NTSRA Voidsuit - type: entity @@ -317,8 +317,8 @@ - id: ClothingMaskGas - id: ClothingNeckCloakPirateCap # Frontier - id: JetpackBlackFilled # Frontier - - id: HandheldGPSBasic # Frontier - id: ClothingShoesBootsMagPirateFilled # Frontier + - id: HandheldGPSBasic # Frontier #Wizard - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml b/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml index e801fcb7feb..d47f953b03f 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml @@ -289,5 +289,5 @@ - MachineMask layer: - MachineLayer - - type: StaticPrice - price: 3 + - type: StaticPrice # Frontier + price: 3 # Frontier: TODO - tests at 6 diff --git a/Resources/Prototypes/Entities/Objects/Power/portable_recharger.yml b/Resources/Prototypes/Entities/Objects/Power/portable_recharger.yml index e6dd001a256..4a886b9758f 100644 --- a/Resources/Prototypes/Entities/Objects/Power/portable_recharger.yml +++ b/Resources/Prototypes/Entities/Objects/Power/portable_recharger.yml @@ -21,7 +21,7 @@ - type: PowerChargerVisuals - type: ApcPowerReceiver needsPower: false - powerLoad: 0 + powerLoad: 1 # Frontier: 0<1 (claims to work without power if 0) - type: StaticPrice price: 500 - type: Tag diff --git a/Resources/Prototypes/Entities/Objects/Tools/inflatable_wall.yml b/Resources/Prototypes/Entities/Objects/Tools/inflatable_wall.yml index 84ec5aef004..3b08c7c419c 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/inflatable_wall.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/inflatable_wall.yml @@ -23,8 +23,10 @@ - type: Tag tags: - DroneUsable - - type: StaticPrice - price: 7.5 + - type: StaticPrice # Frontier + price: 7.5 # Frontier - tests at 0 + # - type: StackPrice # Frontier + # price: 7.5 # Frontier: TODO: fix value # TODO: Add stack sprites + visuals. - type: entity @@ -52,8 +54,10 @@ - type: Tag tags: - DroneUsable - - type: StaticPrice - price: 15 + - type: StaticPrice # Frontier + price: 15 # Frontier - TODO: tests at 0 + # - type: StackPrice # Frontier + # price: 15 # Frontier: TODO: fix value # TODO: Add stack sprites + visuals. - type: entity diff --git a/Resources/Prototypes/Entities/Structures/Furniture/altar.yml b/Resources/Prototypes/Entities/Structures/Furniture/altar.yml index ecf209f1416..607e491ce3b 100644 --- a/Resources/Prototypes/Entities/Structures/Furniture/altar.yml +++ b/Resources/Prototypes/Entities/Structures/Furniture/altar.yml @@ -58,7 +58,7 @@ spawn: SheetSteel1: min: 1 - max: 5 + max: 3 # Frontier: 5<3 MaterialCloth1: min: 1 max: 3 @@ -213,7 +213,7 @@ spawn: MaterialWoodPlank: min: 1 - max: 5 + max: 3 # Frontier: 5<3 MaterialCloth1: min: 1 max: 3 @@ -432,7 +432,7 @@ spawn: SheetSteel1: min: 1 - max: 5 + max: 3 # Frontier: 5<3 - !type:DoActsBehavior acts: [ "Destruction" ] - type: PointLight diff --git a/Resources/Prototypes/Entities/Structures/Furniture/chairs.yml b/Resources/Prototypes/Entities/Structures/Furniture/chairs.yml index dc5e352c769..0990dfaa651 100644 --- a/Resources/Prototypes/Entities/Structures/Furniture/chairs.yml +++ b/Resources/Prototypes/Entities/Structures/Furniture/chairs.yml @@ -407,6 +407,6 @@ min: 2 max: 4 - type: StaticPrice - price: 20 # Frontier: 50<20 + price: 20 # Frontier: 50<20 - TODO: fix arbitrage at ~40 - type: PotentialDeadDrop # Frontier hintText: dead-drop-hint-bench # Frontier diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index cb3e58ad6b1..c8a3f152521 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml @@ -906,6 +906,7 @@ - WeaponLaserCannon - WeaponLaserCarbine - WeaponXrayCannon + - ContrabandAppraisalTool # Frontier - SpeedLoaderRifleHeavyIncendiary # Frontier - SpeedLoaderRifleHeavyUranium # Frontier - MagazineBoxLightRifleRubber # Frontier diff --git a/Resources/Prototypes/Entities/Structures/Walls/girders.yml b/Resources/Prototypes/Entities/Structures/Walls/girders.yml index e70a91436a1..98e267cb6aa 100644 --- a/Resources/Prototypes/Entities/Structures/Walls/girders.yml +++ b/Resources/Prototypes/Entities/Structures/Walls/girders.yml @@ -116,7 +116,7 @@ graph: ClockworkGirder node: clockGirder - type: StaticPrice - price: 25 # Frontier: 75<25 + price: 25 # Frontier: 75<25 - TODO: tests at 35 - type: Destructible thresholds: - trigger: diff --git a/Resources/Prototypes/_NF/Catalog/Fills/Lockers/locker_wallmount.yml b/Resources/Prototypes/_NF/Catalog/Fills/Lockers/locker_wallmount.yml index d1dc11490a2..40cf1b55762 100644 --- a/Resources/Prototypes/_NF/Catalog/Fills/Lockers/locker_wallmount.yml +++ b/Resources/Prototypes/_NF/Catalog/Fills/Lockers/locker_wallmount.yml @@ -208,7 +208,7 @@ id: LockerWallColorMedicalDoctorFilled parent: - LockerWallColorMedical - - BaseWallmount + - BaseStructureWallmount - LockerMedicalFilled name: medical doctor's wall locker suffix: Filled, Frontier @@ -232,7 +232,7 @@ suffix: Filled, Frontier parent: - LockerWallColorChemistry - - BaseWallmount + - BaseStructureWallmount - LockerChemistryFilled name: chemistry wall locker # endregion diff --git a/Resources/Prototypes/_NF/Catalog/Fills/Lockers/wardrobe_job.yml b/Resources/Prototypes/_NF/Catalog/Fills/Lockers/wardrobe_job.yml index 3bf0abd88ab..ac653e7a7bb 100644 --- a/Resources/Prototypes/_NF/Catalog/Fills/Lockers/wardrobe_job.yml +++ b/Resources/Prototypes/_NF/Catalog/Fills/Lockers/wardrobe_job.yml @@ -1,3 +1,6 @@ - type: entity id: ClosetWallOrangeFilled - parent: [ClosetWallOrange, BaseWallmount, WardrobePrisonFilled] \ No newline at end of file + parent: + - ClosetWallOrange + - BaseStructureWallmount + - WardrobePrisonFilled \ No newline at end of file diff --git a/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/goblin_outerclothing.yml b/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/goblin_outerclothing.yml index fc7ac21b408..2a14e10785c 100644 --- a/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/goblin_outerclothing.yml +++ b/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/goblin_outerclothing.yml @@ -19,7 +19,7 @@ node: ClothingOuterCoatRobesGoblinNode - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitGoblin name: goblin EVA suit description: Traditional robes of goblinkind made EVA-capable. Very regal. diff --git a/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/softsuits.yml b/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/softsuits.yml index 252fcdab6b0..a118527cef8 100644 --- a/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/softsuits.yml +++ b/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/softsuits.yml @@ -4,8 +4,8 @@ parent: - ClothingOuterStorageBase # Added pockets to make this suit somewhat viable alternative to hardsuits - ClothingOuterEVASuitBase - - GeigerCounterClothing - id: ClothingOuterEVASuitBaseNF + - ClothingOuterHardsuitBase + id: NFClothingOuterEVASuitBase components: - type: Item shape: @@ -30,7 +30,7 @@ # DEPARTMENTAL - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitHydro name: botanist EVA suit description: An EVA suit with a built-in helmet commonly issued to hydroponics workers. @@ -47,7 +47,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitMailman name: mailcarrier EVA suit description: An EVA suit with a built-in helmet commonly issued to hydroponics workers. @@ -66,7 +66,7 @@ # COLORED DEPARTMENTAL ## CONTRACTORS - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitContractor name: contractor EVA suit description: An EVA suit with a built-in helmet commonly issued to contractors. @@ -119,7 +119,7 @@ ## COMMAND - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitSr name: station representative EVA suit description: An EVA suit with a built-in helmet commonly issued to station representatives. @@ -171,7 +171,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitCaptain name: captain EVA suit description: An EVA suit with a built-in helmet commonly issued to captains. @@ -224,7 +224,7 @@ ## ENGINEERING - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitEngineer name: engineer EVA suit description: An EVA suit with a built-in helmet commonly issued to engineers. @@ -276,7 +276,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitAtmosTech name: atmospheric technician EVA suit description: An EVA suit with a built-in helmet commonly issued to atmospheric technicians. @@ -329,7 +329,7 @@ ## SUPPLY - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitCargo name: cargo technician EVA suit description: An EVA suit with a built-in helmet commonly issued to cargo technicians. @@ -381,7 +381,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitSalvage name: salvage specialist EVA suit description: An EVA suit with a built-in helmet commonly issued to salvage specialists. @@ -434,7 +434,7 @@ ## MEDICAL - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitMedic name: medical specialist EVA suit description: An EVA suit with a built-in helmet commonly issued to medical specialists. @@ -487,7 +487,7 @@ ## SCIENCE - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitScientist name: scientist EVA suit description: An EVA suit with a built-in helmet commonly issued to scientists. @@ -540,7 +540,7 @@ ## SERVICE - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitJanitor name: janitor EVA suit description: An EVA suit with a built-in helmet commonly issued to janitors. @@ -592,7 +592,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitServiceWorker name: service worker EVA suit description: An EVA suit with a built-in helmet commonly issued to service workers. @@ -644,7 +644,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitChaplain name: chaplain EVA suit description: An EVA suit with a built-in helmet commonly issued to chaplains. @@ -697,7 +697,7 @@ ## Boxing - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitBoxerRed name: boxer EVA suit description: An EVA suit with a built-in helmet commonly issued to boxers in the red corner. @@ -749,7 +749,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitBoxerGreen name: boxer EVA suit description: An EVA suit with a built-in helmet commonly issued to boxers in the green corner. @@ -801,7 +801,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitBoxerBlue name: boxer EVA suit description: An EVA suit with a built-in helmet commonly issued to boxers in the blue corner. @@ -853,7 +853,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitBoxerYellow name: boxer EVA suit description: An EVA suit with a built-in helmet commonly issued to boxers in the yellow corner. @@ -905,7 +905,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitBoxerRandom name: boxer EVA suit description: An EVA suit with a built-in helmet commonly issued to boxers in the random corner. @@ -960,7 +960,7 @@ ## WILDCARDS - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitPilot name: pilot EVA suit description: An EVA suit with a built-in helmet commonly issued to pilots. @@ -1012,7 +1012,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitMercenary name: mercenary EVA suit description: An EVA suit with a built-in helmet commonly issued to mercenaries. @@ -1064,7 +1064,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitPrivateSec name: private security EVA suit description: An EVA suit with a built-in helmet commonly issued to private security. @@ -1117,7 +1117,7 @@ ## NFSD - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitNfsd name: nfsd EVA suit description: An EVA suit with a built-in helmet commonly issued to NFSD personnel. @@ -1170,7 +1170,7 @@ ## PLAYER FACTIONS - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitLvhi name: lvhi EVA suit description: An EVA suit with a built-in helmet commonly issued to Langstad-Voigt Heavy Industries (LVHI) personnel. @@ -1228,7 +1228,7 @@ toggleable-clothing: !type:ContainerSlot {} - type: entity - parent: ClothingOuterEVASuitBaseNF + parent: NFClothingOuterEVASuitBase id: ClothingOuterEVASuitArcadia name: arcadia EVA suit description: An EVA suit with a built-in helmet commonly issued to Arcadia Industries personnel. diff --git a/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/wintercoats.yml b/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/wintercoats.yml index 201ce0e4fa9..7530d1dbed2 100644 --- a/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/wintercoats.yml +++ b/Resources/Prototypes/_NF/Entities/Clothing/OuterClothing/wintercoats.yml @@ -1,7 +1,7 @@ - type: entity id: ClothingOuterWinterArcadia name: arcadia winter coat - parent: [ ClothingOuterWinterCoat, BaseC3ContrabandNoValue, ContrabandClothing ] + parent: [ ClothingOuterWinterCoatToggleable, BaseC3ContrabandNoValue, ContrabandClothing ] description: A coat produced by Arcadia Industries, seems soft. components: - type: Sprite diff --git a/Resources/Prototypes/_NF/Entities/Clothing/Shoes/clown_shoes_mods.yml b/Resources/Prototypes/_NF/Entities/Clothing/Shoes/clown_shoes_mods.yml index 41269c8774a..99491ebba48 100644 --- a/Resources/Prototypes/_NF/Entities/Clothing/Shoes/clown_shoes_mods.yml +++ b/Resources/Prototypes/_NF/Entities/Clothing/Shoes/clown_shoes_mods.yml @@ -105,4 +105,4 @@ variation: 0.125 - type: Construction graph: GraphClothingShoesClownModUltimate - node: ketchupmod + node: ultimatemod diff --git a/Resources/Prototypes/_NF/Entities/Objects/Consumable/Drinks/drinks_keg.yml b/Resources/Prototypes/_NF/Entities/Objects/Consumable/Drinks/drinks_keg.yml index a62155c6fae..042cf93833e 100644 --- a/Resources/Prototypes/_NF/Entities/Objects/Consumable/Drinks/drinks_keg.yml +++ b/Resources/Prototypes/_NF/Entities/Objects/Consumable/Drinks/drinks_keg.yml @@ -76,6 +76,8 @@ collection: bottleCloseSounds - type: Sealable - type: MultiHandedItem + - type: ItemSlots + - type: ContainerContainer - type: entity parent: DrinkKegBase diff --git a/Resources/Prototypes/_NF/Entities/Objects/Devices/Circuitboards/computer.yml b/Resources/Prototypes/_NF/Entities/Objects/Devices/Circuitboards/computer.yml index 7ba8ce493ea..41d659e9197 100644 --- a/Resources/Prototypes/_NF/Entities/Objects/Devices/Circuitboards/computer.yml +++ b/Resources/Prototypes/_NF/Entities/Objects/Devices/Circuitboards/computer.yml @@ -1,26 +1,26 @@ -- type: entity - parent: BaseComputerCircuitboard - id: NfsdCriminalRecordsComputerCircuitboard - name: nfsd criminal records computer board - description: A computer printed circuit board for a criminal records computer. - components: - - type: Sprite - sprite: _NF/Objects/Misc/module.rsi - state: cpu_nfsd - - type: ComputerBoard - prototype: ComputerCriminalRecords - - type: ComputerTabletopBoard # Frontier - prototype: ComputerTabletopCriminalRecords # Frontier +# - type: entity + # parent: BaseComputerCircuitboard + # id: NfsdCriminalRecordsComputerCircuitboard + # name: nfsd criminal records computer board + # description: A computer printed circuit board for a criminal records computer. + # components: + # - type: Sprite + # sprite: _NF/Objects/Misc/module.rsi + # state: cpu_nfsd + # - type: ComputerBoard + # prototype: ComputerCriminalRecords + # - type: ComputerTabletopBoard # Frontier + # prototype: ComputerTabletopCriminalRecords # Frontier -- type: entity - parent: BaseComputerCircuitboard - id: NfsdAdvancedRadarConsoleCircuitboard # Frontier - name: nfsd advanced radar console computer board - components: - - type: Sprite - sprite: _NF/Objects/Misc/module.rsi - state: cpu_nfsd - - type: ComputerBoard - prototype: ComputerAdvancedRadar - - type: ComputerTabletopBoard # Frontier - prototype: ComputerTabletopAdvancedRadar # Frontier \ No newline at end of file +# - type: entity + # parent: BaseComputerCircuitboard + # id: NfsdAdvancedRadarConsoleCircuitboard # Frontier + # name: nfsd advanced radar console computer board + # components: + # - type: Sprite + # sprite: _NF/Objects/Misc/module.rsi + # state: cpu_nfsd + # - type: ComputerBoard + # prototype: ComputerAdvancedRadar + # - type: ComputerTabletopBoard # Frontier + # prototype: ComputerTabletopAdvancedRadar # Frontier \ No newline at end of file diff --git a/Resources/Prototypes/_NF/Entities/Objects/Misc/mail_capsule.yml b/Resources/Prototypes/_NF/Entities/Objects/Misc/mail_capsule.yml index 5060dc6e265..bc6a0de7a63 100644 --- a/Resources/Prototypes/_NF/Entities/Objects/Misc/mail_capsule.yml +++ b/Resources/Prototypes/_NF/Entities/Objects/Misc/mail_capsule.yml @@ -57,8 +57,21 @@ - type: ContainerContainer containers: storagebase: !type:Container + showEnts: False + occludes: True ents: [] - mail_slot: !type:ContainerSlot {} + mail_slot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + food_slot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null + cash_slot: !type:ContainerSlot + showEnts: False + occludes: True + ent: null - type: Appearance - type: ItemMapper mapLayers: diff --git a/Resources/Prototypes/_NF/Entities/Objects/Weapons/Guns/base_turret.yml b/Resources/Prototypes/_NF/Entities/Objects/Weapons/Guns/base_turret.yml index c98213cc9f7..25876187397 100644 --- a/Resources/Prototypes/_NF/Entities/Objects/Weapons/Guns/base_turret.yml +++ b/Resources/Prototypes/_NF/Entities/Objects/Weapons/Guns/base_turret.yml @@ -175,3 +175,5 @@ - type: BatterySelfRecharger autoRecharge: true autoRechargeRate: 5 + # - type: StaticPrice # for arbitrage tests + # price: 50 diff --git a/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/computers_shipyard.yml b/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/computers_shipyard.yml index 2ed7dace9bc..c99f797301a 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/computers_shipyard.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/computers_shipyard.yml @@ -38,7 +38,10 @@ - type: ItemSlots - type: ContainerContainer containers: - ShipyardConsole-targetId: !type:ContainerSlot {} + board: !type:Container + ShipyardConsole-targetId: !type:ContainerSlot + - type: Computer + board: Null # Concrete consoles - type: entity diff --git a/Resources/Prototypes/_NF/Entities/Structures/Machines/jukebox.yml b/Resources/Prototypes/_NF/Entities/Structures/Machines/jukebox.yml index 2105f9b9b76..7b6f401c3fb 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Machines/jukebox.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Machines/jukebox.yml @@ -9,7 +9,7 @@ - type: entity id: JukeboxWallmount suffix: Wallmount - parent: [ BaseWallmount, Jukebox ] + parent: [ BaseStructureWallmount, Jukebox ] components: - type: Sprite sprite: _NF/Structures/Machines/jukebox.rsi diff --git a/Resources/Prototypes/_NF/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/_NF/Entities/Structures/Machines/lathe.yml index 33bf22ba2e7..138e2157609 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Machines/lathe.yml @@ -744,7 +744,7 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: Machine - board: CircuitImprinterMachineCircuitboard + board: BlueprintLithographMachineCircuitboard - type: Lathe producingSound: /Audio/Machines/circuitprinter.ogg idleState: icon diff --git a/Resources/Prototypes/_NF/Entities/Structures/Machines/shredder.yml b/Resources/Prototypes/_NF/Entities/Structures/Machines/shredder.yml index 54412db18ca..f3aace0d281 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Machines/shredder.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Machines/shredder.yml @@ -16,9 +16,6 @@ - state: shredding-empty map: ["enum.MaterialStorageVisualLayers.Inserting"] - type: Appearance - - type: SolutionContainerVisuals - maxFillLevels: 6 - fillBaseName: fill- - type: WiresVisuals - type: GenericVisualizer visuals: diff --git a/Resources/Prototypes/_NF/Entities/Structures/Power/Generation/portable_generator.yml b/Resources/Prototypes/_NF/Entities/Structures/Power/Generation/portable_generator.yml index e860e577e7a..d72f96c5894 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Power/Generation/portable_generator.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Power/Generation/portable_generator.yml @@ -1,42 +1,46 @@ -- type: entity - parent: PortableGeneratorPacman +# Base generator for powered on, anchored versions for shuttles +- type: entity + id: BaseGeneratorShuttle + abstract: true + components: + - type: FuelGenerator + on: true + - type: Transform + anchored: true + - type: Physics + bodyType: Static + - type: PortableGenerator + startOnMapInit: true + +- type: entity + parent: + - BaseGeneratorShuttle + - PortableGeneratorPacman id: PortableGeneratorPacmanShuttle suffix: Plasma, 15 kW, Ship components: - - type: FuelGenerator - on: true - - type: Transform - anchored: true - - type: MaterialStorage - storage: - Plasma: 1000 - - type: PortableGenerator - startOnMapInit: true + - type: MaterialStorage + storage: + Plasma: 1000 - type: entity - parent: PortableGeneratorSuperPacman + parent: + - BaseGeneratorShuttle + - PortableGeneratorSuperPacman id: PortableGeneratorSuperPacmanShuttle suffix: Uranium, 30 kW, Ship components: - - type: FuelGenerator - on: true - - type: Transform - anchored: true - - type: MaterialStorage - storage: - Uranium: 1000 - - type: PortableGenerator - startOnMapInit: true + - type: MaterialStorage + storage: + Uranium: 1000 - type: entity - parent: PortableGeneratorJrPacman + parent: + - BaseGeneratorShuttle + - PortableGeneratorJrPacman id: PortableGeneratorJrPacmanShuttle suffix: Welding Fuel, 6 kW, Ship components: - - type: FuelGenerator - on: true - - type: Transform - anchored: true - type: SolutionContainerManager solutions: tank: @@ -44,8 +48,6 @@ reagents: - ReagentId: WeldingFuel Quantity: 70 # Frontier - 35<70 - - type: PortableGenerator - startOnMapInit: true - type: entity name: H.Y.P.E.R.P.A.C.M.A.N.-type portable generator @@ -109,17 +111,13 @@ supplyRampTolerance: 3000 - type: entity - parent: PortableGeneratorHyperPacman + parent: + - BaseGeneratorShuttle + - PortableGeneratorHyperPacman id: PortableGeneratorHyperPacmanShuttle suffix: Bananium, 60 kW, Ship categories: [ HideSpawnMenu ] # Mm, start-on rad source components: - - type: FuelGenerator - on: true - - type: Transform - anchored: true - type: MaterialStorage storage: Bananium: 1000 - - type: PortableGenerator - startOnMapInit: true diff --git a/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/suit_storage_wall.yml b/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/suit_storage_wall.yml index 7470714b806..70c99fbc160 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/suit_storage_wall.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/suit_storage_wall.yml @@ -1,6 +1,9 @@ - type: entity id: SuitStorageWallmount - parent: [BaseWallmount, BaseWallCloset, SuitStorageBase] + parent: + - BaseStructureWallmount + - BaseWallCloset + - SuitStorageBase name: suit wallstorage unit components: - type: Sprite diff --git a/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/wall_lockers.yml b/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/wall_lockers.yml index 1292a8f8010..93f4d05808f 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/wall_lockers.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Storage/Closets/wall_lockers.yml @@ -1,25 +1,7 @@ -# Frontier-specific parent for turning regular objects into wallmounts to avoid redefining upstream prototypes. -# Base -- type: entity - parent: BaseStructureDisableAnchoring - id: BaseWallmount - abstract: true - placement: - mode: SnapgridCenter - snap: - - Wallmount - components: - - type: Physics # Mimicing existing wall lockers - bodyType: Static # Unmoveable - canCollide: false # Passthrough - - type: Fixtures - fixtures: {} - - type: WallMount - - type: entity # Base for yml-colored lockers abstract: true id: LockerWallColorBase - parent: [ BaseWallCloset, BaseWallmount ] + parent: [ BaseWallCloset, BaseStructureWallmount ] suffix: Frontier components: - type: Sprite @@ -199,7 +181,7 @@ # Other: Chemistry wall locker - type: entity id: LockerWallChemistry - parent: [LockerWallMedical, BaseWallmount] + parent: [LockerWallMedical, BaseStructureWallmount] name: chemistry wall locker components: - type: Sprite diff --git a/Resources/Prototypes/_NF/Entities/Structures/atm.yml b/Resources/Prototypes/_NF/Entities/Structures/atm.yml index 673ea5d420a..b8101bf19dc 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/atm.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/atm.yml @@ -6,6 +6,8 @@ - type: ActivatableUIRequiresPower - type: ActivatableUI singleUser: true + - type: Computer + board: Null - type: entity name: bank ATM @@ -15,7 +17,7 @@ abstract: true components: - type: BankATM - bank-ATM-cashSlot: + cashSlot: name: bank-ATM-cashSlot insertSound: /Audio/Machines/scanning.ogg ejectSound: /Audio/Machines/tray_eject.ogg @@ -33,7 +35,8 @@ - type: ItemSlots - type: ContainerContainer containers: - bank-ATM-cashSlot: !type:ContainerSlot {} + board: !type:Container + bank-ATM-cashSlot: !type:ContainerSlot - type: entity name: withdraw-only bank ATM @@ -43,7 +46,7 @@ abstract: true components: - type: BankATM - bank-ATM-cashSlot: + cashSlot: name: bank-ATM-cashSlot insertSound: /Audio/Machines/scanning.ogg ejectSound: /Audio/Machines/tray_eject.ogg @@ -175,7 +178,7 @@ - map: ["computerLayerKeys"] state: id_key - type: StationBankATM - station-bank-ATM-cashSlot: + cashSlot: name: station-bank-ATM-cashSlot insertSound: /Audio/Machines/scanning.ogg ejectSound: /Audio/Machines/tray_eject.ogg @@ -193,6 +196,7 @@ - type: ItemSlots - type: ContainerContainer containers: - station-bank-ATM-cashSlot: !type:ContainerSlot {} + board: !type:Container + station-bank-ATM-cashSlot: !type:ContainerSlot - type: AccessReader access: [["HeadOfPersonnel"], ["HeadOfSecurity"]] diff --git a/Resources/Prototypes/_NF/Entities/Structures/base_structure.yml b/Resources/Prototypes/_NF/Entities/Structures/base_structure.yml index 50b5aa129b8..1b87cbe5900 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/base_structure.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/base_structure.yml @@ -4,6 +4,8 @@ components: - type: Transform anchored: true + - type: Physics + bodyType: Static - type: DisableToolUse anchoring: true prying: true @@ -23,6 +25,8 @@ components: - type: Transform anchored: true + - type: Physics + bodyType: Static - type: DisableToolUse anchoring: true @@ -70,16 +74,24 @@ damage: 0 - type: entity + parent: BaseStructureDisableAnchoring id: BaseStructureWallmount abstract: true + placement: + mode: SnapgridCenter + snap: + - Wallmount components: - type: Sprite drawdepth: WallMountedItems snapCardinals: false - type: WallMount - arc: 180 + arc: 175 - type: Transform noRot: false + - type: Physics + bodyType: Static + canCollide: false - type: Fixtures fixtures: {} diff --git a/Resources/Prototypes/_NF/Recipes/Construction/Graphs/furniture/altars.yml b/Resources/Prototypes/_NF/Recipes/Construction/Graphs/furniture/altars.yml index 0fe0c34b382..c59a1079e77 100644 --- a/Resources/Prototypes/_NF/Recipes/Construction/Graphs/furniture/altars.yml +++ b/Resources/Prototypes/_NF/Recipes/Construction/Graphs/furniture/altars.yml @@ -34,7 +34,7 @@ state: icon - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Blue - to: AltarConvertBlueNode @@ -55,7 +55,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Red - to: AltarConvertRedNode @@ -82,7 +82,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Yellow - to: AltarConvertYellowNode @@ -109,7 +109,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Maint - to: AltarConvertMaintNode @@ -136,7 +136,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Burden - to: AltarConvertBurdenNode @@ -163,7 +163,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # White - to: AltarConvertWhiteNode @@ -190,7 +190,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Orange - to: AltarConvertOrangeNode @@ -218,7 +218,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Technology - to: AltarTechnologyNode @@ -233,7 +233,7 @@ state: generic - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Nanotrasen - to: AltarNanotrasenNode @@ -248,7 +248,7 @@ state: default - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Chaos - to: AltarChaosNode @@ -263,7 +263,7 @@ state: d20_20 - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Druid - to: AltarDruidNode @@ -278,7 +278,7 @@ state: seed - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Satana - to: AltarSatanaNode @@ -293,7 +293,7 @@ state: icon - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Festival - to: AltarConvertFestivalNode @@ -308,7 +308,7 @@ state: icon - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Mail - to: AltarMailNode @@ -323,7 +323,7 @@ state: icon - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Space-Christian - to: AltarSpaceChristianNode @@ -350,7 +350,7 @@ state: candle-big - material: Cloth store: altar_cloth - amount: 2 + amount: 3 doAfter: 2 # Dismantle - to: start diff --git a/Resources/Prototypes/_NF/Research/arsenal.yml b/Resources/Prototypes/_NF/Research/arsenal.yml index 4bf0ced9362..287333c35ed 100644 --- a/Resources/Prototypes/_NF/Research/arsenal.yml +++ b/Resources/Prototypes/_NF/Research/arsenal.yml @@ -52,7 +52,6 @@ cost: 15000 recipeUnlocks: - ClothingOuterHardsuitMercenary - - ClothingOuterHardsuitPirateEVA - ClothingOuterHardsuitPrivateSecurity technologyPrerequisites: - AdvancedRiotControl @@ -103,9 +102,6 @@ tier: 3 cost: 25000 recipeUnlocks: - - ClothingOuterHardsuitSecurity - - ClothingOuterHardsuitWarden - - ClothingOuterHardsuitBrigmedic - ClothingOuterHardsuitScaf - BlueprintClothingOuterHardsuitScaf technologyPrerequisites: diff --git a/Resources/Prototypes/_NF/Shipyard/bocadillo.yml b/Resources/Prototypes/_NF/Shipyard/bocadillo.yml index df890c8745b..ddf2014ffae 100644 --- a/Resources/Prototypes/_NF/Shipyard/bocadillo.yml +++ b/Resources/Prototypes/_NF/Shipyard/bocadillo.yml @@ -12,7 +12,7 @@ id: Bocadillo name: NC Bocadillo description: A tiny food truck perfect for a solo chef. - price: 22500 # appraises for ~$21110, markup of ~7% - TODO: fix this value, getting tests to pass - Whatstone + price: 23500 # appraises for ~$21110, markup of ~7% - TODO: fix this value, getting tests to pass - Whatstone category: Small group: Shipyard shuttlePath: /Maps/_NF/Shuttles/bocadillo.yml From 583eca492dc064fec833a76bfb69710e4b81135b Mon Sep 17 00:00:00 2001 From: FrontierATC Date: Sun, 13 Oct 2024 15:43:46 +0000 Subject: [PATCH 2/2] Automatic Changelog (#2161) --- Resources/Changelog/Frontier.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Resources/Changelog/Frontier.yml b/Resources/Changelog/Frontier.yml index adf5e2f5a52..e8e2de1bb4a 100644 --- a/Resources/Changelog/Frontier.yml +++ b/Resources/Changelog/Frontier.yml @@ -4512,3 +4512,11 @@ Entries: message: 'Fixed power issues on Bahama Mama''s. ' id: 5396 time: '2024-10-13T10:01:25.0000000+00:00' +- author: dvir001 + changes: + - type: Tweak + message: The price of the Bocadillo is increased to $23500. + - type: Tweak + message: The amount of cloth required to craft altars has been increased to 3. + id: 5397 + time: '2024-10-13T15:43:22.0000000+00:00'