From b34591ab59895e959bf642976b7a99a1930396c8 Mon Sep 17 00:00:00 2001 From: Pieter-Jan Briers Date: Thu, 26 Jul 2018 23:38:16 +0200 Subject: [PATCH] Data Rework Content Edition (#82) * WiP Data Rework. * Convert stationstation to new map format. * stationstation.yml v2 * Update submodule --- .../Inventory/ClientInventoryComponent.cs | 4 +- .../Components/Damage/DamageableComponent.cs | 14 +- .../Damage/DestructibleComponent.cs | 30 +- .../Components/Doors/ServerDoorComponent.cs | 4 +- .../Components/GUI/InventoryComponent.cs | 9 +- .../Components/GUI/ServerHandsComponent.cs | 5 +- .../Components/Interactable/Tools/BaseTool.cs | 21 +- .../Interactable/Tools/WelderComponent.cs | 46 +- .../Items/Clothing/ClothingComponent.cs | 16 +- .../Items/Storage/ServerStorageComponent.cs | 4 +- .../Items/Storage/StoreableComponent.cs | 4 +- .../Components/Power/PowerDevice.cs | 35 +- .../Power/PowerGeneratorComponent.cs | 10 +- .../Power/PowerProviderComponent.cs | 21 +- .../Components/Power/PowerStorageComponent.cs | 47 +- .../Temperature/TemperatureComponent.cs | 16 +- .../Weapon/Melee/MeleeWeaponComponent.cs | 9 +- Resources/Maps/stationstation.yml | 3889 +++++------------ engine | 2 +- 19 files changed, 1280 insertions(+), 2906 deletions(-) diff --git a/Content.Client/GameObjects/Components/Inventory/ClientInventoryComponent.cs b/Content.Client/GameObjects/Components/Inventory/ClientInventoryComponent.cs index 44c5f8e848..b6b2a91ce3 100644 --- a/Content.Client/GameObjects/Components/Inventory/ClientInventoryComponent.cs +++ b/Content.Client/GameObjects/Components/Inventory/ClientInventoryComponent.cs @@ -7,13 +7,13 @@ using SS14.Client.UserInterface.Controls; using SS14.Client.UserInterface.CustomControls; using SS14.Shared.ContentPack; using SS14.Shared.GameObjects; -using SS14.Shared.GameObjects.Serialization; using SS14.Shared.Input; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.Interfaces.Network; using SS14.Shared.IoC; using SS14.Shared.Log; using SS14.Shared.Maths; +using SS14.Shared.Serialization; using SS14.Shared.Utility; using System; using System.Collections.Generic; @@ -37,7 +37,7 @@ namespace Content.Client.GameObjects Window.Dispose(); } - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); diff --git a/Content.Server/GameObjects/Components/Damage/DamageableComponent.cs b/Content.Server/GameObjects/Components/Damage/DamageableComponent.cs index 5332ae1b3e..5d3062ca51 100644 --- a/Content.Server/GameObjects/Components/Damage/DamageableComponent.cs +++ b/Content.Server/GameObjects/Components/Damage/DamageableComponent.cs @@ -7,6 +7,7 @@ using SS14.Shared.Utility; using YamlDotNet.RepresentationModel; using Content.Server.Interfaces; using Content.Shared.GameObjects; +using SS14.Shared.Serialization; namespace Content.Server.GameObjects { @@ -35,13 +36,16 @@ namespace Content.Server.GameObjects public event EventHandler DamageThresholdPassed; - /// - public override void LoadParameters(YamlMappingNode mapping) + + public override void ExposeData(ObjectSerializer serializer) { - if (mapping.TryGetNode("resistanceset", out YamlNode node)) + base.ExposeData(serializer); + + // TODO: Writing. + serializer.DataReadFunction("resistanceset", "honk", name => { - Resistances = ResistanceSet.GetResistanceSet(node.AsString()); - } + Resistances = ResistanceSet.GetResistanceSet(name); + }); } /// diff --git a/Content.Server/GameObjects/Components/Damage/DestructibleComponent.cs b/Content.Server/GameObjects/Components/Damage/DestructibleComponent.cs index 8b4134734a..83181f4165 100644 --- a/Content.Server/GameObjects/Components/Damage/DestructibleComponent.cs +++ b/Content.Server/GameObjects/Components/Damage/DestructibleComponent.cs @@ -6,7 +6,7 @@ using SS14.Shared.Utility; using YamlDotNet.RepresentationModel; using Content.Server.Interfaces; using Content.Shared.GameObjects; - +using SS14.Shared.Serialization; namespace Content.Server.GameObjects { @@ -27,26 +27,22 @@ namespace Content.Server.GameObjects /// public DamageThreshold Threshold { get; private set; } - /// - public override void LoadParameters(YamlMappingNode mapping) + + public override void ExposeData(ObjectSerializer serializer) { - //TODO currently only supports one threshold pair; gotta figure out YAML better + base.ExposeData(serializer); - YamlNode node; - - DamageType damageType = DamageType.Total; - int damageValue = 0; - - if (mapping.TryGetNode("thresholdtype", out node)) + // TODO: Writing + if (serializer.Reading) { - damageType = node.AsEnum(); - } - if (mapping.TryGetNode("thresholdvalue", out node)) - { - damageValue = node.AsInt(); - } + DamageType damageType = DamageType.Total; + int damageValue = 0; - Threshold = new DamageThreshold(damageType, damageValue); + serializer.DataReadFunction("thresholdtype", DamageType.Total, type => damageType = type); + serializer.DataReadFunction("thresholdvalue", 0, val => damageValue = val); + + Threshold = new DamageThreshold(damageType, damageValue); + } } /// diff --git a/Content.Server/GameObjects/Components/Doors/ServerDoorComponent.cs b/Content.Server/GameObjects/Components/Doors/ServerDoorComponent.cs index e61f943b7d..9cd26b6e40 100644 --- a/Content.Server/GameObjects/Components/Doors/ServerDoorComponent.cs +++ b/Content.Server/GameObjects/Components/Doors/ServerDoorComponent.cs @@ -3,13 +3,13 @@ using Content.Server.Interfaces.GameObjects; using Content.Shared.GameObjects; using SS14.Server.GameObjects; using SS14.Shared.GameObjects; -using SS14.Shared.GameObjects.Serialization; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.Interfaces.GameObjects.Components; using SS14.Shared.Log; using SS14.Shared.Maths; using SS14.Shared.IoC; using Content.Server.GameObjects.EntitySystems; +using SS14.Shared.Serialization; namespace Content.Server.GameObjects { @@ -26,7 +26,7 @@ namespace Content.Server.GameObjects private string OpenSprite; private string CloseSprite; - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); diff --git a/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs b/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs index 0551e53ff8..ce4e5b3ab3 100644 --- a/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs +++ b/Content.Server/GameObjects/Components/GUI/InventoryComponent.cs @@ -11,9 +11,9 @@ using static Content.Shared.GameObjects.SharedInventoryComponent.ClientInventory using static Content.Shared.GameObjects.SharedInventoryComponent.ServerInventoryMessage; using SS14.Shared.IoC; using SS14.Server.Interfaces.Player; -using SS14.Shared.GameObjects.Serialization; using SS14.Shared.ContentPack; using System.Linq; +using SS14.Shared.Serialization; namespace Content.Server.GameObjects { @@ -22,12 +22,15 @@ namespace Content.Server.GameObjects private Dictionary SlotContainers = new Dictionary(); string TemplateName = "HumanInventory"; //stored for serialization purposes - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); serializer.DataField(ref TemplateName, "Template", "HumanInventory"); - CreateInventory(TemplateName); + if (serializer.Reading) + { + CreateInventory(TemplateName); + } } private void CreateInventory(string TemplateName) diff --git a/Content.Server/GameObjects/Components/GUI/ServerHandsComponent.cs b/Content.Server/GameObjects/Components/GUI/ServerHandsComponent.cs index 5db79c0663..a95505aff7 100644 --- a/Content.Server/GameObjects/Components/GUI/ServerHandsComponent.cs +++ b/Content.Server/GameObjects/Components/GUI/ServerHandsComponent.cs @@ -8,11 +8,11 @@ using SS14.Server.GameObjects; using SS14.Server.GameObjects.Components.Container; using SS14.Server.Interfaces.Player; using SS14.Shared.GameObjects; -using SS14.Shared.GameObjects.Serialization; using SS14.Shared.Input; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.Interfaces.Network; using SS14.Shared.IoC; +using SS14.Shared.Serialization; namespace Content.Server.GameObjects { @@ -45,10 +45,11 @@ namespace Content.Server.GameObjects private InputCommand DropCommand; private InputCommand ActivateItemInHandCommand; - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); + // TODO: This does not serialize what objects are held. serializer.DataField(ref orderedHands, "hands", new List(0)); if (serializer.Reading) { diff --git a/Content.Server/GameObjects/Components/Interactable/Tools/BaseTool.cs b/Content.Server/GameObjects/Components/Interactable/Tools/BaseTool.cs index f7019178e4..ee947002b8 100644 --- a/Content.Server/GameObjects/Components/Interactable/Tools/BaseTool.cs +++ b/Content.Server/GameObjects/Components/Interactable/Tools/BaseTool.cs @@ -1,4 +1,5 @@ using SS14.Shared.GameObjects; +using SS14.Shared.Serialization; using SS14.Shared.Utility; using YamlDotNet.RepresentationModel; @@ -9,16 +10,20 @@ namespace Content.Server.GameObjects.Components.Interactable.Tools /// /// For tool interactions that have a delay before action this will modify the rate, time to wait is divided by this value /// - public float SpeedModifier { get; set; } = 1; - - public override void LoadParameters(YamlMappingNode mapping) + public float SpeedModifier { - if (mapping.TryGetNode("Speed", out YamlNode node)) - { - SpeedModifier = node.AsFloat(); - } + get => _speedModifier; + set => _speedModifier = value; } - + private float _speedModifier = 1; + + public override void ExposeData(ObjectSerializer serializer) + { + base.ExposeData(serializer); + + serializer.DataField(ref _speedModifier, "Speed", 1); + } + /// /// Status modifier which determines whether or not we can act as a tool at this time /// diff --git a/Content.Server/GameObjects/Components/Interactable/Tools/WelderComponent.cs b/Content.Server/GameObjects/Components/Interactable/Tools/WelderComponent.cs index dd2afbf552..52ecfc5e85 100644 --- a/Content.Server/GameObjects/Components/Interactable/Tools/WelderComponent.cs +++ b/Content.Server/GameObjects/Components/Interactable/Tools/WelderComponent.cs @@ -4,6 +4,7 @@ using SS14.Shared.Utility; using YamlDotNet.RepresentationModel; using SS14.Server.GameObjects; using Content.Server.GameObjects.EntitySystems; +using SS14.Shared.Serialization; namespace Content.Server.GameObjects.Components.Interactable.Tools { @@ -19,12 +20,22 @@ namespace Content.Server.GameObjects.Components.Interactable.Tools /// /// Maximum fuel capacity the welder can hold /// - public float FuelCapacity { get; set; } = 50; + public float FuelCapacity + { + get => _fuelCapacity; + set => _fuelCapacity = value; + } + private float _fuelCapacity = 50; /// /// Fuel the welder has to do tasks /// - public float Fuel { get; set; } = 0; + public float Fuel + { + get => _fuel; + set => _fuel = value; + } + private float _fuel = 0; /// /// Default Cost of using the welder fuel for an action @@ -51,33 +62,12 @@ namespace Content.Server.GameObjects.Components.Interactable.Tools spriteComponent = Owner.GetComponent(); } - public override void LoadParameters(YamlMappingNode mapping) + public override void ExposeData(ObjectSerializer serializer) { - base.LoadParameters(mapping); + base.ExposeData(serializer); - if (mapping.TryGetNode("Capacity", out YamlNode node)) - { - FuelCapacity = node.AsFloat(); - } - - //if (mapping.TryGetNode("On", out node)) - //{ - // OnSprite = node.AsString(); - //} - - //if (mapping.TryGetNode("Off", out node)) - //{ - // OffSprite = node.AsString(); - //} - - if (mapping.TryGetNode("Fuel", out node)) - { - Fuel = node.AsFloat(); - } - else - { - Fuel = FuelCapacity; - } + serializer.DataField(ref _fuelCapacity, "Capacity", 50); + serializer.DataField(ref _fuel, "Fuel", FuelCapacity); } public void OnUpdate(float frameTime) @@ -142,7 +132,7 @@ namespace Content.Server.GameObjects.Components.Interactable.Tools string IExamine.Examine() { - if(Activated) + if (Activated) { return "The welding tool is currently lit"; } diff --git a/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs b/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs index 59a860c1d0..67f953cedc 100644 --- a/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs +++ b/Content.Server/GameObjects/Components/Items/Clothing/ClothingComponent.cs @@ -1,4 +1,4 @@ -using SS14.Shared.GameObjects.Serialization; +using SS14.Shared.Serialization; using System; using System.Collections.Generic; using System.Linq; @@ -14,16 +14,18 @@ namespace Content.Server.GameObjects public SlotFlags SlotFlags = SlotFlags.PREVENTEQUIP; //Different from None, NONE allows equips if no slot flags are required private List slotstrings = new List(); //serialization - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); - - serializer.DataField(ref slotstrings, "Slots", new List(0)); - foreach(var slotflagsloaded in slotstrings) + // TODO: Writing. + serializer.DataReadFunction("Slots", new List(0), list => { - SlotFlags |= (SlotFlags)Enum.Parse(typeof(SlotFlags), slotflagsloaded.ToUpper()); - } + foreach (var slotflagsloaded in slotstrings) + { + SlotFlags |= (SlotFlags)Enum.Parse(typeof(SlotFlags), slotflagsloaded.ToUpper()); + } + }); } } } diff --git a/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs b/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs index 617d7d1770..ce849c0193 100644 --- a/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs +++ b/Content.Server/GameObjects/Components/Items/Storage/ServerStorageComponent.cs @@ -7,11 +7,11 @@ using SS14.Server.Interfaces.Player; using SS14.Server.Player; using SS14.Shared.Enums; using SS14.Shared.GameObjects; -using SS14.Shared.GameObjects.Serialization; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.Interfaces.Network; using SS14.Shared.IoC; using SS14.Shared.Log; +using SS14.Shared.Serialization; using System.Collections.Generic; namespace Content.Server.GameObjects @@ -34,7 +34,7 @@ namespace Content.Server.GameObjects storage = ContainerManagerComponent.Create("storagebase", Owner); } - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); diff --git a/Content.Server/GameObjects/Components/Items/Storage/StoreableComponent.cs b/Content.Server/GameObjects/Components/Items/Storage/StoreableComponent.cs index ee39d89f73..76b7ba9666 100644 --- a/Content.Server/GameObjects/Components/Items/Storage/StoreableComponent.cs +++ b/Content.Server/GameObjects/Components/Items/Storage/StoreableComponent.cs @@ -1,5 +1,5 @@ using SS14.Shared.GameObjects; -using SS14.Shared.GameObjects.Serialization; +using SS14.Shared.Serialization; using System; using System.Collections.Generic; using System.Linq; @@ -14,7 +14,7 @@ namespace Content.Server.GameObjects public int ObjectSize = 0; - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); diff --git a/Content.Server/GameObjects/Components/Power/PowerDevice.cs b/Content.Server/GameObjects/Components/Power/PowerDevice.cs index 3ec986c6d6..734ee38224 100644 --- a/Content.Server/GameObjects/Components/Power/PowerDevice.cs +++ b/Content.Server/GameObjects/Components/Power/PowerDevice.cs @@ -3,6 +3,7 @@ using SS14.Server.GameObjects; using SS14.Shared.GameObjects; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.IoC; +using SS14.Shared.Serialization; using SS14.Shared.Utility; using System; using System.Collections.Generic; @@ -21,7 +22,12 @@ namespace Content.Server.GameObjects.Components.Power /// /// The method of draw we will try to use to place our load set via component parameter, defaults to using power providers /// - public virtual DrawTypes DrawType { get; protected set; } = DrawTypes.Provider; + public virtual DrawTypes DrawType + { + get => _drawType; + protected set => _drawType = value; + } + private DrawTypes _drawType = DrawTypes.Provider; /// /// The power draw method we are currently connected to and using @@ -62,8 +68,12 @@ namespace Content.Server.GameObjects.Components.Power /// /// Priority for powernet draw, lower will draw first, defined in powernet.cs /// - public virtual Powernet.Priority Priority { get; protected set; } = Powernet.Priority.Medium; - + public virtual Powernet.Priority Priority + { + get => _priority; + protected set => _priority = value; + } + private Powernet.Priority _priority = Powernet.Priority.Medium; private float _load = 100; //arbitrary magic number to start /// @@ -152,20 +162,13 @@ namespace Content.Server.GameObjects.Components.Power base.Shutdown(); } - public override void LoadParameters(YamlMappingNode mapping) + public override void ExposeData(ObjectSerializer serializer) { - if (mapping.TryGetNode("drawtype", out YamlNode node)) - { - DrawType = node.AsEnum(); - } - if (mapping.TryGetNode("load", out node)) - { - Load = node.AsFloat(); - } - if (mapping.TryGetNode("priority", out node)) - { - Priority = node.AsEnum(); - } + base.ExposeData(serializer); + + serializer.DataField(ref _drawType, "drawtype", DrawTypes.Provider); + serializer.DataField(ref _load, "load", 100); + serializer.DataField(ref _priority, "priority", Powernet.Priority.Medium); } string IExamine.Examine() diff --git a/Content.Server/GameObjects/Components/Power/PowerGeneratorComponent.cs b/Content.Server/GameObjects/Components/Power/PowerGeneratorComponent.cs index fad2204879..b2dcf366a5 100644 --- a/Content.Server/GameObjects/Components/Power/PowerGeneratorComponent.cs +++ b/Content.Server/GameObjects/Components/Power/PowerGeneratorComponent.cs @@ -2,6 +2,7 @@ using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.IoC; using SS14.Shared.Log; +using SS14.Shared.Serialization; using SS14.Shared.Utility; using System; using YamlDotNet.RepresentationModel; @@ -25,12 +26,11 @@ namespace Content.Server.GameObjects.Components.Power set { UpdateSupply(value); } } - public override void LoadParameters(YamlMappingNode mapping) + public override void ExposeData(ObjectSerializer serializer) { - if (mapping.TryGetNode("supply", out YamlNode node)) - { - Supply = node.AsFloat(); - } + base.ExposeData(serializer); + + serializer.DataField(ref _supply, "supply", 1000); } public override void OnAdd() diff --git a/Content.Server/GameObjects/Components/Power/PowerProviderComponent.cs b/Content.Server/GameObjects/Components/Power/PowerProviderComponent.cs index 8e1f045962..59449f2a6f 100644 --- a/Content.Server/GameObjects/Components/Power/PowerProviderComponent.cs +++ b/Content.Server/GameObjects/Components/Power/PowerProviderComponent.cs @@ -3,6 +3,7 @@ using SS14.Server.Interfaces.GameObjects; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.IoC; using SS14.Shared.Log; +using SS14.Shared.Serialization; using SS14.Shared.Utility; using System; using System.Collections.Generic; @@ -24,7 +25,12 @@ namespace Content.Server.GameObjects.Components.Power /// /// Variable that determines the range that the power provider will try to supply power to /// - public int PowerRange { get; private set; } = 0; + public int PowerRange + { + get => _range; + private set => _range = value; + } + private int _range = 0; /// /// List storing all the power devices that we are currently providing power to @@ -56,16 +62,11 @@ namespace Content.Server.GameObjects.Components.Power AdvertisedDevices.Clear(); } - public override void LoadParameters(YamlMappingNode mapping) + public override void ExposeData(ObjectSerializer serializer) { - if (mapping.TryGetNode("range", out YamlNode node)) - { - PowerRange = node.AsInt(); - } - if (mapping.TryGetNode("priority", out node)) - { - Priority = node.AsEnum(); - } + base.ExposeData(serializer); + + serializer.DataField(ref _range, "range", 0); } internal override void ProcessInternalPower(float frametime) diff --git a/Content.Server/GameObjects/Components/Power/PowerStorageComponent.cs b/Content.Server/GameObjects/Components/Power/PowerStorageComponent.cs index 993924d492..d275098792 100644 --- a/Content.Server/GameObjects/Components/Power/PowerStorageComponent.cs +++ b/Content.Server/GameObjects/Components/Power/PowerStorageComponent.cs @@ -2,6 +2,7 @@ using SS14.Shared.GameObjects; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.IoC; +using SS14.Shared.Serialization; using SS14.Shared.Utility; using System; using YamlDotNet.RepresentationModel; @@ -22,25 +23,29 @@ namespace Content.Server.GameObjects.Components.Power /// Maximum amount of energy the internal battery can store. /// In Joules. /// - public float Capacity { get; private set; } = 10000; //arbitrary value replace + public float Capacity => _capacity; + private float _capacity = 10000; // Arbitrary value, replace. /// /// Energy the battery is currently storing. /// In Joules. /// - public float Charge { get; private set; } = 0; + public float Charge => _charge; + private float _charge = 0; /// /// Rate at which energy will be taken to charge internal battery. /// In Watts. /// - public float ChargeRate { get; private set; } = 1000; + public float ChargeRate => _chargeRate; + private float _chargeRate = 1000; /// /// Rate at which energy will be distributed to the powernet if needed. /// In Watts. /// - public float DistributionRate { get; private set; } = 1000; + public float DistributionRate => _distributionRate; + private float _distributionRate = 1000; public bool Full => Charge >= Capacity; @@ -63,29 +68,15 @@ namespace Content.Server.GameObjects.Components.Power } } - - public override void LoadParameters(YamlMappingNode mapping) + public override void ExposeData(ObjectSerializer serializer) { - if (mapping.TryGetNode("capacity", out YamlNode node)) - { - Capacity = node.AsFloat(); - } - if (mapping.TryGetNode("charge", out node)) - { - Charge = node.AsFloat(); - } - if (mapping.TryGetNode("chargerate", out node)) - { - ChargeRate = node.AsFloat(); - } - if (mapping.TryGetNode("distributionrate", out node)) - { - DistributionRate = node.AsFloat(); - } - if (mapping.TryGetNode("chargepowernet", out node)) - { - _chargepowernet = node.AsBool(); - } + base.ExposeData(serializer); + + serializer.DataField(ref _capacity, "capacity", 10000); + serializer.DataField(ref _charge, "charge", 0); + serializer.DataField(ref _chargeRate, "chargerate", 1000); + serializer.DataField(ref _distributionRate, "distributionrate", 1000); + serializer.DataField(ref _chargepowernet, "chargepowernet", false); } public override void OnAdd() @@ -134,14 +125,14 @@ namespace Content.Server.GameObjects.Components.Power /// public void DeductCharge(float todeduct) { - Charge = Math.Max(0, Charge - todeduct); + _charge = Math.Max(0, Charge - todeduct); LastChargeState = ChargeState.Discharging; LastChargeStateChange = DateTime.Now; } public void AddCharge(float charge) { - Charge = Math.Min(Capacity, Charge + charge); + _charge = Math.Min(Capacity, Charge + charge); LastChargeState = ChargeState.Charging; LastChargeStateChange = DateTime.Now; } diff --git a/Content.Server/GameObjects/Components/Temperature/TemperatureComponent.cs b/Content.Server/GameObjects/Components/Temperature/TemperatureComponent.cs index 7f42f12d81..1f425166f7 100644 --- a/Content.Server/GameObjects/Components/Temperature/TemperatureComponent.cs +++ b/Content.Server/GameObjects/Components/Temperature/TemperatureComponent.cs @@ -5,6 +5,7 @@ using SS14.Shared.GameObjects; using SS14.Shared.Utility; using YamlDotNet.RepresentationModel; using Content.Shared.GameObjects; +using SS14.Shared.Serialization; namespace Content.Server.GameObjects { @@ -29,19 +30,12 @@ namespace Content.Server.GameObjects float _secondsSinceLastDamageUpdate = 0; - /// - public override void LoadParameters(YamlMappingNode mapping) + public override void ExposeData(ObjectSerializer serializer) { - YamlNode node; + base.ExposeData(serializer); - if (mapping.TryGetNode("firedamagethreshold", out node)) - { - _fireDamageThreshold = node.AsFloat(); - } - if (mapping.TryGetNode("firedamagecoefficient", out node)) - { - _fireDamageCoefficient = node.AsFloat(); - } + serializer.DataField(ref _fireDamageThreshold, "firedamagethreshold", 0); + serializer.DataField(ref _fireDamageCoefficient, "firedamagecoefficient", 1); } /// diff --git a/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs b/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs index c84073a629..f200aff174 100644 --- a/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs +++ b/Content.Server/GameObjects/Components/Weapon/Melee/MeleeWeaponComponent.cs @@ -1,6 +1,5 @@ using System; using SS14.Shared.GameObjects; -using SS14.Shared.GameObjects.Serialization; using Content.Server.GameObjects.EntitySystems; using SS14.Shared.Interfaces.GameObjects; using SS14.Shared.Map; @@ -10,6 +9,7 @@ using SS14.Shared.Maths; using SS14.Server.Interfaces.GameObjects; using SS14.Shared.Interfaces.Timing; using SS14.Shared.GameObjects.EntitySystemMessages; +using SS14.Shared.Serialization; namespace Content.Server.GameObjects.Components.Weapon.Melee { @@ -21,14 +21,13 @@ namespace Content.Server.GameObjects.Components.Weapon.Melee public float Range = 1; public float ArcWidth = 90; - public override void ExposeData(EntitySerializer serializer) + public override void ExposeData(ObjectSerializer serializer) { base.ExposeData(serializer); serializer.DataField(ref Damage, "damage", 5); - serializer.DataField(ref Range, "damage", 1); - serializer.DataField(ref ArcWidth, "damage", 90); - + serializer.DataField(ref Range, "range", 1); + serializer.DataField(ref ArcWidth, "arcwidth", 90); } void IAfterAttack.Afterattack(IEntity user, GridLocalCoordinates clicklocation, IEntity attacked) diff --git a/Resources/Maps/stationstation.yml b/Resources/Maps/stationstation.yml index 5703ba3869..f2ad6bac8d 100644 --- a/Resources/Maps/stationstation.yml +++ b/Resources/Maps/stationstation.yml @@ -1,2753 +1,1138 @@ -- &1363196850 grid: - settings: - csz: 16 - tsz: &686545570 1 - sgsz: 1 - chunks: - - &575354035 ind: "-1,0" - &2021433458 tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAA== - - ind: "-1,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAA== - - ind: "0,-1" - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== - - ind: "0,0" - tiles: AQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== -- entities: - - &623125836 type: &1924697326 entity - &831805725 id: &2040055387 Wire - &1895586930 name: Wire - &570320026 components: - - type: &1577147404 Transform - &2136750520 map: 1 - grid: 1 - &172794913 pos: 4.5,3.5 - &75233749 rot: &1885783477 3.141593 - - &1693689570 - type: &1420848703 Clickable - - &809774648 - type: &1724227243 BoundingBox - - &1884445100 - type: &5271897 Sprite - &268748452 color: &1184849814 '#FF0000FF' - - &585535893 - type: &741081393 PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,0.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: &2103293244 __engine_wall - name: &1353616502 '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,-6 - rot: 3.141593 - - type: Clickable - - &1941819289 - type: Sprite - - type: BoundingBox - - &678053465 - type: &240772465 Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,4 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,3 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,2 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,1 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,0 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,-1 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,7 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,9 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,-5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,-6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,-5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,9 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,-1 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,0 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,1 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,2 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,3 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,4 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: &675075262 DoorContent - name: &302650728 Actual door - components: - - &894637331 - type: Transform - map: 1 - grid: 1 - pos: -5.5,4.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - &1571879074 - type: BoundingBox - &1174114059 aabb: 1,-0.75,2,0.75 - - type: Collidable - - &849614143 - type: Door - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -4,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -4,5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -4,4 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -3,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -2,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -1,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 0,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,-0.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: &568952208 __engine_worktop - name: &112663802 '[engine] worktop' - components: - - type: Transform - map: 1 - grid: 1 - pos: -2.5,4.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - &1948367855 - type: BoundingBox - aabb: &1339111911 -0.45,-1,0.95,1 - - type: Collidable - - type: entity - id: DoorContent - name: Actual door - components: - - &1215664080 - type: Transform - map: 1 - grid: 1 - pos: 4.5,4.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - aabb: 1,-0.75,2,0.75 - - type: Collidable - - type: Door - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 1,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 2,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 3,6 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 3,5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 3,4 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_worktop - name: '[engine] worktop' - components: - - type: Transform - map: 1 - grid: 1 - pos: -0.5,4.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - aabb: -0.45,-1,0.95,1 - - type: Collidable - - type: entity - id: __engine_worktop - name: '[engine] worktop' - components: - - type: Transform - map: 1 - grid: 1 - pos: 1.5,4.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - aabb: -0.45,-1,0.95,1 - - type: Collidable - - type: entity - id: &1100177411 LaserItem - name: &2014269159 LASER - components: - - type: Sprite - - &1473699405 - type: HitscanWeapon - - &919715855 - type: &1895081465 Item - &2079341423 Size: &781629548 24 - - type: Transform - map: 1 - grid: 1 - pos: -3.015625,3.890625 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - &1680976249 - type: &1667575459 Physics - &1182002758 mass: &901509068 5 - - type: entity - id: LaserItem - name: LASER - components: - - type: Sprite - - type: HitscanWeapon - - type: Item - Size: 24 - - type: Transform - map: 1 - grid: 1 - pos: -2.015625,3.859375 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &1089420058 GUNITEM - name: &494460102 GUN - components: - - type: Sprite - - &620540391 - type: ProjectileWeapon - - type: Item - Size: 24 - - type: Transform - map: 1 - grid: 1 - pos: -2.890625,4.484375 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: GUNITEM - name: GUN - components: - - type: Sprite - - type: ProjectileWeapon - - type: Item - Size: 24 - - type: Transform - map: 1 - grid: 1 - pos: -1.984375,4.484375 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &1094448398 medkit_r - name: &1649179403 Medkit - components: - - type: Transform - map: 1 - grid: 1 - pos: -0.859375,3.921875 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: entity - id: medkit_r - name: Medkit - components: - - type: Transform - map: 1 - grid: 1 - pos: -0.921875,4.640625 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: entity - id: MopItem - name: Extra-Grip™ Mop - components: - - type: Sprite - - type: Item - Size: 10 - - type: Transform - map: 1 - grid: 1 - pos: 0.015625,3.921875 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: FlashlightLantern - name: Lantern - components: - - type: Sprite - - type: &2137301789 PointLight - - type: Transform - map: 1 - grid: 1 - pos: 0.046875,4.609375 - rot: 3.141593 - - &1280352065 - type: Item - Size: 5 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: IDCardStandard - name: Identification Card - components: - - type: Sprite - - type: &667316239 Clothing - Size: 5 - &571080824 Slots: - - idcard - - type: Transform - map: 1 - grid: 1 - pos: 0.890625,3.921875 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: RadioHeadsetEars - name: Headset Radio - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - ears - - type: Transform - map: 1 - grid: 1 - pos: 0.984375,4.640625 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: BackpackClothing - name: Backpack - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - back - - type: &1037470083 Storage - &1362001922 Capacity: 100 - - &1654814465 - type: &2042728411 ContainerContainer - - type: Transform - map: 1 - grid: 1 - pos: 1.890625,3.796875 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: JanitorUniform - name: Janitor Jumpsuit - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - innerclothing - - type: Transform - map: 1 - grid: 1 - pos: 2.109375,4.546875 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: ShoesItem - name: Shoes - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - shoes - - type: Transform - map: 1 - grid: 1 - pos: 1.546875,4.484375 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: __engine_worktop - name: '[engine] worktop' - components: - - type: Transform - map: 1 - grid: 1 - pos: 1.5,7.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - aabb: -0.45,-1,0.95,1 - - type: Collidable - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,5.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,4.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,7 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,2.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,1.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,7.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,6.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: &1274496676 WirelessMachine - name: WirelessMachine - components: - - type: Transform - map: 1 - grid: 1 - pos: &1242113189 3,3 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - &748399486 - type: &1048603337 PowerDevice - - &1036169334 - type: &1124737362 PowerNode - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,-7 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -6,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -5,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -4,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -3,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -2,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -1,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 0,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 1,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 2,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 3,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 4,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 5,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,-8 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,-7 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_worktop - name: '[engine] worktop' - components: - - type: Transform - map: 1 - grid: 1 - pos: -2.5,7.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - aabb: -0.45,-1,0.95,1 - - type: Collidable - - type: entity - id: __engine_worktop - name: '[engine] worktop' - components: - - type: Transform - map: 1 - grid: 1 - pos: -0.5,7.5 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - aabb: -0.45,-1,0.95,1 - - type: Collidable - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,8.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: YellowGloves - name: Insulated Gloves - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - gloves - - type: Transform - map: 1 - grid: 1 - pos: -3.015625,6.796875 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: MesonGlasses - name: Optical Meson Scanners - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - eyes - - type: Transform - map: 1 - grid: 1 - pos: -3.046875,7.484375 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: UtilityBeltClothing - name: Utility Belt - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - belt - - type: Storage - Capacity: 30 - - type: ContainerContainer - - type: Transform - map: 1 - grid: 1 - pos: -2.109375,6.765625 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: GasMaskClothing - name: Gas Mask - components: - - type: Sprite - - type: Clothing - Size: 5 - Slots: - - mask - - type: Transform - map: 1 - grid: 1 - pos: -2.234375,7.390625 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: BlueToolboxItem - name: Mechanical Toolbox With Handle - components: - - type: Sprite - - &1308184901 - type: Storage - Capacity: 60 - - type: ContainerContainer - - &1008890440 - type: Item - Size: 9999 - - type: Transform - map: 1 - grid: 1 - pos: -1.109375,6.796875 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: YellowToolboxItem - name: Electrical Toolbox With Handle - components: - - type: Sprite - - type: Storage - Capacity: 60 - - type: ContainerContainer - - type: Item - Size: 9999 - - type: Transform - map: 1 - grid: 1 - pos: -1.078125,7.578125 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &385115332 Wirecutter - name: Wirecutter - components: - - type: Wirecutter - - type: Sprite - - &668781020 - type: &1052578133 MeleeWeapon - - type: Transform - map: 1 - grid: 1 - pos: -0.234375,6.640625 - rot: 3.141593 - - type: Item - Size: 5 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &401962940 Welder - name: Welder - components: - - type: Welder - - type: Sprite - &1858634056 sprite: Objects/tools.rsi - - type: MeleeWeapon - - type: Transform - map: 1 - grid: 1 - pos: -0.234375,7.515625 - rot: 3.141593 - - type: Item - Size: 5 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &1813303685 Screwdriver - name: Screwdriver - components: - - type: Screwdriver - - type: Sprite - - type: MeleeWeapon - - type: Transform - map: 1 - grid: 1 - pos: 0.703125,6.609375 - rot: 3.141593 - - type: Item - Size: 5 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &993483575 Crowbar - name: Crowbar - components: - - type: Crowbar - - type: Sprite - - type: MeleeWeapon - - type: Transform - map: 1 - grid: 1 - pos: 0.578125,7.484375 - rot: 3.141593 - - type: Item - Size: 5 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &23951821 Multitool - name: Multitool - components: - - type: Multitool - - type: Sprite - - type: PowerDebugTool - - type: Transform - map: 1 - grid: 1 - pos: 1.515625,6.921875 - rot: 3.141593 - - type: Item - Size: 5 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: &571986954 Wrench - name: Wrench - components: - - type: Wrench - - type: Sprite - - type: MeleeWeapon - - type: Transform - map: 1 - grid: 1 - pos: 1.421875,7.484375 - rot: 3.141593 - - type: Item - Size: 5 - - type: Clickable - - type: BoundingBox - - type: Physics - mass: 5 - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,10 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,11 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,12 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,13 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,10 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,11 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,12 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,13 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -7,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -6,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -5,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -4,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -3,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -2,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: -1,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 0,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 1,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 2,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 3,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 4,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 5,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: __engine_wall - name: '[engine] Wall' - components: - - type: Transform - map: 1 - grid: 1 - pos: 6,14 - rot: 3.141593 - - type: Clickable - - type: Sprite - - type: BoundingBox - - type: Collidable - - type: entity - id: &260843040 SMES - name: SMES - components: - - &1157961653 - type: Transform - map: 1 - grid: 1 - pos: -2.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - &1206253354 - type: &1921049841 PowerStorage - - type: PowerNode - - type: Smes - - type: Appearance - - type: entity - id: SMES - name: SMES - components: - - &1360714317 - type: Transform - map: 1 - grid: 1 - pos: 1.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerStorage - - type: PowerNode - - type: Smes - - type: Appearance - - type: entity - id: &400177229 BlueWire - name: BlueWire - components: - - &951338683 - type: Sprite - color: &79665661 '#FFFF' - - type: Transform - map: 1 - grid: 1 - pos: -2.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: PowerTransfer - - type: entity - id: BlueWire - name: BlueWire - components: - - type: Sprite - color: '#FFFF' - - type: Transform - map: 1 - grid: 1 - pos: -1.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: PowerTransfer - - type: entity - id: BlueWire - name: BlueWire - components: - - type: Sprite - color: '#FFFF' - - &1347918387 - type: Transform - map: 1 - grid: 1 - pos: -0.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: PowerTransfer - - type: entity - id: BlueWire - name: BlueWire - components: - - type: Sprite - color: '#FFFF' - - type: Transform - map: 1 - grid: 1 - pos: 0.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: PowerTransfer - - type: entity - id: BlueWire - name: BlueWire - components: - - type: Sprite - color: '#FFFF' - - type: Transform - map: 1 - grid: 1 - pos: 1.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: PowerTransfer - - type: entity - id: &579134066 Generator - name: Generator - components: - - type: Transform - map: 1 - grid: 1 - pos: -0.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerGenerator - - type: PowerNode - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -3.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -4.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - &979795384 - type: Transform - map: 1 - grid: 1 - pos: -5.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,11.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,10.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,9.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,8.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,7.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,6.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,5.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,4.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,3.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,2.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,1.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,0.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,-0.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 2.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 3.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - &1281051616 - type: Transform - map: 1 - grid: 1 - pos: 4.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,11.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,10.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,9.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: &768031087 poweredlight - name: &178193997 Light - components: - - type: Transform - map: 1 - grid: 1 - pos: &1885659136 -4,7 - rot: &359454694 1.570796 - - type: Clickable - - type: BoundingBox - - &1578454641 - type: Sprite - sprite: &1792702826 Objects/lighting.rsi - - &652968276 - type: PointLight - color: &1330941937 '#DCDCC6FF' - &1880509858 radius: &644806915 8 - &542838097 offset: &2021301504 0,-16 - - type: PowerDevice - - &2040102275 - type: &704304726 PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: &1973162729 3,7 - rot: 1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: 3,13 - rot: &1715445905 -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: -4,13 - rot: -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: &692485458 APC - name: APC - components: - - type: PowerStorage - - type: PowerNode - - type: Transform - map: 1 - grid: 1 - pos: -4,7 - rot: -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - - &1938028994 - type: &323998104 PowerProvider - - type: Apc - - type: Appearance - - type: entity - id: APC - name: APC - components: - - type: PowerStorage - - type: PowerNode - - type: Transform - map: 1 - grid: 1 - pos: 3,7 - rot: -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerProvider - - type: Apc - - type: Appearance - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -4.5,7.5 - rot: -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 3.5,7.5 - rot: -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: -6,2 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: 5,2 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: 2,4 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: -3,4 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: APC - name: APC - components: - - type: PowerStorage - - type: PowerNode - - type: Transform - map: 1 - grid: 1 - pos: -4,3 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerProvider - - type: Apc - - type: Appearance - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -4.5,2.5 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: APC - name: APC - components: - - type: PowerStorage - - type: PowerNode - - type: Transform - map: 1 - grid: 1 - pos: 3,3 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerProvider - - type: Apc - - type: Appearance - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 3.5,2.5 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: -10.5,-1.5 - rot: -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: -10.5,-4.5 - rot: 1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: 9.5,-4.5 - rot: 1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: 9.5,-1.5 - rot: -1.570796 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - type: Transform - map: 1 - grid: 1 - pos: &286868490 -6,-6 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: poweredlight - name: Light - components: - - &643364418 - type: Transform - map: 1 - grid: 1 - pos: 5,-6 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - sprite: Objects/lighting.rsi - - type: PointLight - color: '#DCDCC6FF' - radius: 8 - offset: 0,-16 - - type: PowerDevice - - type: PoweredLight - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,-1.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,-5.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,-4.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,-3.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,-2.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,-5.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,-3.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,-4.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: APC - name: APC - components: - - type: PowerStorage - - type: PowerNode - - type: Transform - map: 1 - grid: 1 - pos: -6,-6 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerProvider - - type: Apc - - type: Appearance - - type: entity - id: APC - name: APC - components: - - type: PowerStorage - - type: PowerNode - - type: Transform - map: 1 - grid: 1 - pos: 5,-6 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerProvider - - type: Apc - - type: Appearance - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,-1.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: Wire - name: Wire - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,-2.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - color: '#FF0000FF' - - type: PowerTransfer - - type: entity - id: &2146577517 WiredMachine - name: WiredMachine - components: - - type: Transform - map: 1 - grid: 1 - pos: -5.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerDevice - - type: PowerNode - - type: entity - id: WiredMachine - name: WiredMachine - components: - - type: Transform - map: 1 - grid: 1 - pos: 4.5,12.5 - rot: 3.141593 - - type: Clickable - - type: BoundingBox - - type: Sprite - - type: PowerDevice - - type: PowerNode +meta: + format: 2 + name: DemoStation + author: Space-Wizards +grids: +- settings: + chunksize: 16 + tilesize: 1 + snapsize: 1 + worldpos: 0,0 + chunks: + - ind: "-1,0" + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAA== + - ind: "-1,-1" + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAA== + - ind: "0,-1" + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== + - ind: "0,0" + tiles: AQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== +entities: +- type: Wire + components: + - grid: 0 + pos: 4.5,3.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,0.5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,-6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,4 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,3 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,2 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,1 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,0 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,-1 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,7 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,9 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,-5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,-6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,-5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,9 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,-1 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,0 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,1 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,2 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,3 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,4 + rot: 3.141593 + type: Transform +- type: DoorContent + components: + - grid: 0 + pos: -5.5,4.5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -4,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -4,5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -4,4 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -3,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -2,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -1,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 0,6 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,-0.5 + rot: 3.141593 + type: Transform +- type: __engine_worktop + components: + - grid: 0 + pos: -2.5,4.5 + rot: 3.141593 + type: Transform +- type: DoorContent + components: + - grid: 0 + pos: 4.5,4.5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 1,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 2,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 3,6 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 3,5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 3,4 + rot: 3.141593 + type: Transform +- type: __engine_worktop + components: + - grid: 0 + pos: -0.5,4.5 + rot: 3.141593 + type: Transform +- type: __engine_worktop + components: + - grid: 0 + pos: 1.5,4.5 + rot: 3.141593 + type: Transform +- type: LaserItem + components: + - grid: 0 + pos: -3.015625,3.890625 + rot: 3.141593 + type: Transform +- type: LaserItem + components: + - grid: 0 + pos: -2.015625,3.859375 + rot: 3.141593 + type: Transform +- type: GUNITEM + components: + - grid: 0 + pos: -2.890625,4.484375 + rot: 3.141593 + type: Transform +- type: GUNITEM + components: + - grid: 0 + pos: -1.984375,4.484375 + rot: 3.141593 + type: Transform +- type: medkit_r + components: + - grid: 0 + pos: -0.859375,3.921875 + rot: 3.141593 + type: Transform +- type: medkit_r + components: + - grid: 0 + pos: -0.921875,4.640625 + rot: 3.141593 + type: Transform +- type: MopItem + components: + - grid: 0 + pos: 0.015625,3.921875 + rot: 3.141593 + type: Transform +- type: FlashlightLantern + components: + - grid: 0 + pos: 0.046875,4.609375 + rot: 3.141593 + type: Transform +- type: IDCardStandard + components: + - grid: 0 + pos: 0.890625,3.921875 + rot: 3.141593 + type: Transform +- type: RadioHeadsetEars + components: + - grid: 0 + pos: 0.984375,4.640625 + rot: 3.141593 + type: Transform +- type: BackpackClothing + components: + - grid: 0 + pos: 1.890625,3.796875 + rot: 3.141593 + type: Transform +- type: JanitorUniform + components: + - grid: 0 + pos: 2.109375,4.546875 + rot: 3.141593 + type: Transform +- type: ShoesItem + components: + - grid: 0 + pos: 1.546875,4.484375 + rot: 3.141593 + type: Transform +- type: __engine_worktop + components: + - grid: 0 + pos: 1.5,7.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,5.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,4.5 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,7 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,8 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,2.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,1.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,7.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,6.5 + rot: 3.141593 + type: Transform +- type: WirelessMachine + components: + - grid: 0 + pos: 3,3 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,-7 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -6,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -5,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -4,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -3,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -2,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -1,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 0,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 1,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 2,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 3,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 4,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 5,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,-8 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,-7 + rot: 3.141593 + type: Transform +- type: __engine_worktop + components: + - grid: 0 + pos: -2.5,7.5 + rot: 3.141593 + type: Transform +- type: __engine_worktop + components: + - grid: 0 + pos: -0.5,7.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,8.5 + rot: 3.141593 + type: Transform +- type: YellowGloves + components: + - grid: 0 + pos: -3.015625,6.796875 + rot: 3.141593 + type: Transform +- type: MesonGlasses + components: + - grid: 0 + pos: -3.046875,7.484375 + rot: 3.141593 + type: Transform +- type: UtilityBeltClothing + components: + - grid: 0 + pos: -2.109375,6.765625 + rot: 3.141593 + type: Transform +- type: GasMaskClothing + components: + - grid: 0 + pos: -2.234375,7.390625 + rot: 3.141593 + type: Transform +- type: BlueToolboxItem + components: + - grid: 0 + pos: -1.109375,6.796875 + rot: 3.141593 + type: Transform +- type: YellowToolboxItem + components: + - grid: 0 + pos: -1.078125,7.578125 + rot: 3.141593 + type: Transform +- type: Wirecutter + components: + - grid: 0 + pos: -0.234375,6.640625 + rot: 3.141593 + type: Transform +- type: Welder + components: + - grid: 0 + pos: -0.234375,7.515625 + rot: 3.141593 + type: Transform +- type: Screwdriver + components: + - grid: 0 + pos: 0.703125,6.609375 + rot: 3.141593 + type: Transform +- type: Crowbar + components: + - grid: 0 + pos: 0.578125,7.484375 + rot: 3.141593 + type: Transform +- type: Multitool + components: + - grid: 0 + pos: 1.515625,6.921875 + rot: 3.141593 + type: Transform +- type: Wrench + components: + - grid: 0 + pos: 1.421875,7.484375 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,10 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,11 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,12 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,13 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,10 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,11 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,12 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,13 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -7,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -6,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -5,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -4,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -3,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -2,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: -1,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 0,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 1,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 2,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 3,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 4,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 5,14 + rot: 3.141593 + type: Transform +- type: __engine_wall + components: + - grid: 0 + pos: 6,14 + rot: 3.141593 + type: Transform +- type: SMES + name: Smes + components: + - grid: 0 + pos: -2.5,12.5 + rot: 3.141593 + type: Transform +- type: SMES + name: Smes + components: + - grid: 0 + pos: 1.5,12.5 + rot: 3.141593 + type: Transform + - charge: 438.3279 + type: PowerStorage +- type: BlueWire + components: + - grid: 0 + pos: -2.5,12.5 + rot: 3.141593 + type: Transform +- type: BlueWire + components: + - grid: 0 + pos: -1.5,12.5 + rot: 3.141593 + type: Transform +- type: BlueWire + components: + - grid: 0 + pos: -0.5,12.5 + rot: 3.141593 + type: Transform +- type: BlueWire + components: + - grid: 0 + pos: 0.5,12.5 + rot: 3.141593 + type: Transform +- type: BlueWire + components: + - grid: 0 + pos: 1.5,12.5 + rot: 3.141593 + type: Transform +- type: Generator + components: + - grid: 0 + pos: -0.5,12.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -3.5,12.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -4.5,12.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,12.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,11.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,10.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,9.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,8.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,7.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,6.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,5.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,4.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,3.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,2.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,1.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,0.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,-0.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 2.5,12.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 3.5,12.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,12.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,11.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,10.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,9.5 + rot: 3.141593 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: -4,7 + rot: 1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: 3,7 + rot: 1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: 3,13 + rot: -1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: -4,13 + rot: -1.570796 + type: Transform +- type: APC + components: + - grid: 0 + pos: -4,7 + rot: -1.570796 + type: Transform +- type: APC + components: + - grid: 0 + pos: 3,7 + rot: -1.570796 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -4.5,7.5 + rot: -1.570796 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 3.5,7.5 + rot: -1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: -6,2 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: 5,2 + rot: 3.141593 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: 2,4 + rot: 3.141593 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: -3,4 + type: Transform +- type: APC + components: + - grid: 0 + pos: -4,3 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -4.5,2.5 + type: Transform +- type: APC + components: + - grid: 0 + pos: 3,3 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 3.5,2.5 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: -10.5,-1.5 + rot: -1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: -10.5,-4.5 + rot: 1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: 9.5,-4.5 + rot: 1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: 9.5,-1.5 + rot: -1.570796 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: -6,-6 + type: Transform +- type: poweredlight + components: + - grid: 0 + pos: 5,-6 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,-1.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,-5.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,-4.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,-3.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: -5.5,-2.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,-5.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,-3.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,-4.5 + rot: 3.141593 + type: Transform +- type: APC + components: + - grid: 0 + pos: -6,-6 + rot: 3.141593 + type: Transform + - load: 150 + type: PowerProvider +- type: APC + components: + - grid: 0 + pos: 5,-6 + rot: 3.141593 + type: Transform + - load: 150 + type: PowerProvider +- type: Wire + components: + - grid: 0 + pos: 4.5,-1.5 + rot: 3.141593 + type: Transform +- type: Wire + components: + - grid: 0 + pos: 4.5,-2.5 + rot: 3.141593 + type: Transform +- type: WiredMachine + components: + - grid: 0 + pos: -5.5,12.5 + rot: 3.141593 + type: Transform +- type: WiredMachine + components: + - grid: 0 + pos: 4.5,12.5 + rot: 3.141593 + type: Transform ... diff --git a/engine b/engine index 5c2bd4049c..bceda76bf8 160000 --- a/engine +++ b/engine @@ -1 +1 @@ -Subproject commit 5c2bd4049c7106f9f679d6715533b57cae1f451b +Subproject commit bceda76bf870c6b4dc4bd8ae7d94e4adb45bcae8