From 44199311724cf54e99cea5f0c1440bc24c17faae Mon Sep 17 00:00:00 2001 From: ThereDrD0 <88589686+ThereDrD0@users.noreply.github.com> Date: Fri, 21 Jun 2024 06:15:55 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9C=D1=8F=D0=B3=D0=BA=D0=B8=D0=B9=20=D1=81?= =?UTF-8?q?=D0=B2=D0=B5=D1=82=20=D0=B4=D0=BB=D1=8F=20=D0=B2=D1=81=D1=8F?= =?UTF-8?q?=D0=BA=D0=BE=D0=B3=D0=BE=20(#316)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add: add small soft light to laser weapon + fix the bluest blue energy shield * git commit * boltlights done * add: HuetaSystem * add: Doorlights finally done * add: small light to lockers * add: small light to multitool * fix: fix naming * hui pizde * fix: fix parasha * add: small light to powercells * zabil * add: code light to welders * tweak: better energy and radius * add: better color parameters * add: less radius and energy for guns * add: better lights for vending machines * add: better light to consoles * add: better light for apc * shut up * fix: thank you neuro colleague --- Content.Client/Doors/AirlockSystem.cs | 4 +- .../Weapons/Ranged/Systems/GunSystem.cs | 4 +- .../Airlock/PointLightAirlockSystem.cs | 24 +++ .../Battery}/PointLightBatteryComponent.cs | 2 +- .../Battery}/PointLightBatterySystem.cs | 21 ++- .../RealBattery/PointLightRealBatterSystem.cs | 63 +++++++ .../PointLightRealBatteryComponent.cs | 15 ++ .../Doors/Systems/SharedAirlockSystem.cs | 2 + .../Doors/Systems/SharedDoorSystem.Bolts.cs | 6 +- .../Doors/Systems/SharedDoorSystem.cs | 10 ++ .../_White/Lighting/AppearanceChangedEvent.cs | 13 ++ .../Airlock/PointLightAirlockComponent.cs | 19 +++ .../Airlock/PointLightAirlockSystem.cs | 83 +++++++++ .../Locker/PointLightLockerComponent.cs | 19 +++ .../Locker/PointLightLockerSystem.cs | 70 ++++++++ .../Entities/Objects/Power/powercells.yml | 16 ++ .../Entities/Objects/Shields/shields.yml | 4 +- .../Entities/Objects/Tools/tools.yml | 10 +- .../Entities/Objects/Tools/welders.yml | 15 +- .../Weapons/Guns/Battery/battery_guns.yml | 56 ++++++ .../Weapons/Guns/Projectiles/projectiles.yml | 28 +-- .../Objects/Weapons/Melee/e_sword.yml | 2 +- .../Doors/Airlocks/base_structureairlocks.yml | 12 +- .../Computers/base_structurecomputers.yml | 4 +- .../Structures/Machines/vending_machines.yml | 160 +++++++++--------- .../Entities/Structures/Power/apc.yml | 5 +- .../Closets/Lockers/base_structurelockers.yml | 5 + 27 files changed, 554 insertions(+), 118 deletions(-) create mode 100644 Content.Server/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs rename Content.Server/_White/Lighting/{ => PointLight/Battery}/PointLightBatteryComponent.cs (73%) rename Content.Server/_White/Lighting/{ => PointLight/Battery}/PointLightBatterySystem.cs (53%) create mode 100644 Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatterSystem.cs create mode 100644 Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatteryComponent.cs create mode 100644 Content.Shared/_White/Lighting/AppearanceChangedEvent.cs create mode 100644 Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockComponent.cs create mode 100644 Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs create mode 100644 Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerComponent.cs create mode 100644 Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerSystem.cs diff --git a/Content.Client/Doors/AirlockSystem.cs b/Content.Client/Doors/AirlockSystem.cs index b6265228c3..f5dd393a2a 100644 --- a/Content.Client/Doors/AirlockSystem.cs +++ b/Content.Client/Doors/AirlockSystem.cs @@ -1,5 +1,4 @@ using Content.Client.Wires.Visualizers; -using Content.Shared.Doors; using Content.Shared.Doors.Components; using Content.Shared.Doors.Systems; using Robust.Client.Animations; @@ -17,7 +16,7 @@ public sealed class AirlockSystem : SharedAirlockSystem SubscribeLocalEvent(OnComponentStartup); SubscribeLocalEvent(OnAppearanceChange); } - + private void OnComponentStartup(EntityUid uid, AirlockComponent comp, ComponentStartup args) { // Has to be on component startup because we don't know what order components initialize in and running this before DoorComponent inits _will_ crash. @@ -113,6 +112,7 @@ public sealed class AirlockSystem : SharedAirlockSystem args.Sprite.LayerSetVisible(DoorVisualLayers.BaseUnlit, unlitVisible); args.Sprite.LayerSetVisible(DoorVisualLayers.BaseBolted, boltedVisible); + if (comp.EmergencyAccessLayer) { args.Sprite.LayerSetVisible( diff --git a/Content.Client/Weapons/Ranged/Systems/GunSystem.cs b/Content.Client/Weapons/Ranged/Systems/GunSystem.cs index 5099e488ae..b095ff9eb4 100644 --- a/Content.Client/Weapons/Ranged/Systems/GunSystem.cs +++ b/Content.Client/Weapons/Ranged/Systems/GunSystem.cs @@ -339,9 +339,9 @@ public sealed partial class GunSystem : SharedGunSystem } Lights.SetEnabled(uid, true, light); - Lights.SetRadius(uid, 2f, light); + Lights.SetRadius(uid, 1.4f, light); Lights.SetColor(uid, Color.FromHex("#cc8e2b"), light); - Lights.SetEnergy(uid, 5f, light); + Lights.SetEnergy(uid, 0.7f, light); var animTwo = new Animation() { diff --git a/Content.Server/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs b/Content.Server/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs new file mode 100644 index 0000000000..76ed618309 --- /dev/null +++ b/Content.Server/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs @@ -0,0 +1,24 @@ +using Content.Server.Power.Components; +using Content.Shared._White.Lighting; +using Content.Shared._White.Lighting.PointLight.Airlock; +using Content.Shared.Doors.Components; + +namespace Content.Server._White.Lighting.Pointlight.Airlock; + +public sealed class PointLightAirlockSystem : EntitySystem +{ + public override void Initialize() + { + base.Initialize(); + SubscribeLocalEvent(OnPowerChanged); + } + + private void OnPowerChanged(EntityUid uid, PointLightAirlockComponent component, PowerChangedEvent args) + { + if (!TryComp(uid, out var door)) + return; + + RaiseLocalEvent(uid, new DoorlightsChangedEvent(args.Powered ? door.State : null, args.Powered), true); + } + +} diff --git a/Content.Server/_White/Lighting/PointLightBatteryComponent.cs b/Content.Server/_White/Lighting/PointLight/Battery/PointLightBatteryComponent.cs similarity index 73% rename from Content.Server/_White/Lighting/PointLightBatteryComponent.cs rename to Content.Server/_White/Lighting/PointLight/Battery/PointLightBatteryComponent.cs index 7ad8c5c84c..1dd71b1e75 100644 --- a/Content.Server/_White/Lighting/PointLightBatteryComponent.cs +++ b/Content.Server/_White/Lighting/PointLight/Battery/PointLightBatteryComponent.cs @@ -1,4 +1,4 @@ -namespace Content.Server._White.Lighting; +namespace Content.Server._White.Lighting.Pointlight.Battery; [RegisterComponent] public sealed partial class PointLightBatteryComponent : Component diff --git a/Content.Server/_White/Lighting/PointLightBatterySystem.cs b/Content.Server/_White/Lighting/PointLight/Battery/PointLightBatterySystem.cs similarity index 53% rename from Content.Server/_White/Lighting/PointLightBatterySystem.cs rename to Content.Server/_White/Lighting/PointLight/Battery/PointLightBatterySystem.cs index 95a41c28c6..5cf450f911 100644 --- a/Content.Server/_White/Lighting/PointLightBatterySystem.cs +++ b/Content.Server/_White/Lighting/PointLight/Battery/PointLightBatterySystem.cs @@ -1,8 +1,10 @@ -using Content.Shared.Lightning; +using Content.Server.Power.Components; +using Content.Shared.Lightning; using Content.Shared.PowerCell; using Content.Shared.PowerCell.Components; +using Content.Shared.Weapons.Ranged.Components; -namespace Content.Server._White.Lighting; +namespace Content.Server._White.Lighting.Pointlight.Battery; public sealed class PointLightBatterySystem : SharedLightningSystem { @@ -12,6 +14,7 @@ public sealed class PointLightBatterySystem : SharedLightningSystem { base.Initialize(); SubscribeLocalEvent(OnBatteryLoose); + SubscribeLocalEvent(OnBatteryChargeChanged); } private void OnBatteryLoose(EntityUid uid, PointLightBatteryComponent component, PowerCellChangedEvent args) @@ -27,4 +30,18 @@ public sealed class PointLightBatterySystem : SharedLightningSystem RaiseLocalEvent(uid, new PointLightToggleEvent(isBatteryCharged && !args.Ejected), true); } + + private void OnBatteryChargeChanged(EntityUid uid, PointLightBatteryComponent component, ChargeChangedEvent args) + { + if (!component.RequireBattery) + return; + + if (!_pointLightSystem.TryGetLight(uid, out var pointLightComponent)) + return; + + var isBatteryCharged = TryComp(uid, out var projectileBattery) && projectileBattery.Shots > 0; + _pointLightSystem.SetEnabled(uid, isBatteryCharged, pointLightComponent); + + RaiseLocalEvent(uid, new PointLightToggleEvent(isBatteryCharged), true); + } } diff --git a/Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatterSystem.cs b/Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatterSystem.cs new file mode 100644 index 0000000000..6e673e6a28 --- /dev/null +++ b/Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatterSystem.cs @@ -0,0 +1,63 @@ +using Content.Server.Power.Components; +using Content.Shared.PowerCell; +using Content.Shared.Rounding; + +namespace Content.Server._White.Lighting.PointLight.RealBattery; + +public sealed class PointLightRealBatterySystem : EntitySystem +{ + [Dependency] private readonly SharedPointLightSystem _pointLightSystem = default!; + public override void Initialize() + { + base.Initialize(); + SubscribeLocalEvent(OnChargeChanged); + SubscribeLocalEvent(OnComponentInit); + } + + public void ToggleLight(EntityUid uid, string hex, bool enable = true) + { + if (!_pointLightSystem.TryGetLight(uid, out var pointLightComponent)) + return; + + if (enable) + { + var color = Color.FromHex(hex); + _pointLightSystem.SetColor(uid, color, pointLightComponent); + } + + _pointLightSystem.SetEnabled(uid, enable, pointLightComponent); + + RaiseLocalEvent(uid, new PointLightToggleEvent(enable), true); + } + + public void OnComponentInit(EntityUid uid, PointLightRealBatteryComponent component, ComponentInit args) + { + if (!TryComp(uid, out var battery)) + return; + + var ev = new ChargeChangedEvent(battery.CurrentCharge, battery.MaxCharge); + RaiseLocalEvent(uid, ref ev); + } + public void OnChargeChanged(EntityUid uid, PointLightRealBatteryComponent component, ChargeChangedEvent args) + { + var frac = args.Charge / args.MaxCharge; + var level = (byte) ContentHelpers.RoundToNearestLevels(frac, 1, PowerCellComponent.PowerCellVisualsLevels); + + switch (level) + { + case 2: + ToggleLight(uid, component.GreenColor); + break; + + case 1: + ToggleLight(uid, component.YellowColor); + break; + + case 0: + ToggleLight(uid, string.Empty, false); + break; + } + + } + +} diff --git a/Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatteryComponent.cs b/Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatteryComponent.cs new file mode 100644 index 0000000000..b59682aca2 --- /dev/null +++ b/Content.Server/_White/Lighting/PointLight/RealBattery/PointLightRealBatteryComponent.cs @@ -0,0 +1,15 @@ +namespace Content.Server._White.Lighting.PointLight.RealBattery; + +[RegisterComponent] +public sealed partial class PointLightRealBatteryComponent : Component +{ + [DataField, ViewVariables] + public string RedColor = "#D56C6C"; + + [DataField, ViewVariables] + public string GreenColor = "#7FC080"; + + [DataField, ViewVariables] + public string YellowColor = "#BDC07F"; + +} diff --git a/Content.Shared/Doors/Systems/SharedAirlockSystem.cs b/Content.Shared/Doors/Systems/SharedAirlockSystem.cs index 5a6d45d9ec..fa96e6856a 100644 --- a/Content.Shared/Doors/Systems/SharedAirlockSystem.cs +++ b/Content.Shared/Doors/Systems/SharedAirlockSystem.cs @@ -1,3 +1,4 @@ +using Content.Shared._White.Lighting; using Content.Shared.Doors.Components; using Content.Shared.Popups; using Content.Shared.Prying.Components; @@ -120,6 +121,7 @@ public abstract class SharedAirlockSystem : EntitySystem public void UpdateEmergencyLightStatus(EntityUid uid, AirlockComponent component) { + RaiseLocalEvent(uid, new DoorlightsChangedEvent(DoorVisuals.EmergencyLights, component.EmergencyAccess)); Appearance.SetData(uid, DoorVisuals.EmergencyLights, component.EmergencyAccess); } diff --git a/Content.Shared/Doors/Systems/SharedDoorSystem.Bolts.cs b/Content.Shared/Doors/Systems/SharedDoorSystem.Bolts.cs index 35681bfd82..5546e272f6 100644 --- a/Content.Shared/Doors/Systems/SharedDoorSystem.Bolts.cs +++ b/Content.Shared/Doors/Systems/SharedDoorSystem.Bolts.cs @@ -1,3 +1,4 @@ +using Content.Shared._White.Lighting; using Content.Shared.Doors.Components; using Content.Shared.Prying.Components; @@ -55,7 +56,8 @@ public abstract partial class SharedDoorSystem public void UpdateBoltLightStatus(Entity ent) { - AppearanceSystem.SetData(ent, DoorVisuals.BoltLights, GetBoltLightsVisible(ent)); + var value = GetBoltLightsVisible(ent); + AppearanceSystem.SetData(ent, DoorVisuals.BoltLights, value); } public bool GetBoltLightsVisible(Entity ent) @@ -84,6 +86,8 @@ public abstract partial class SharedDoorSystem Dirty(ent, ent.Comp); UpdateBoltLightStatus(ent); + RaiseLocalEvent(ent, new DoorlightsChangedEvent(DoorVisuals.BoltLights, value), true); + var sound = value ? ent.Comp.BoltDownSound : ent.Comp.BoltUpSound; if (predicted) Audio.PlayPredicted(sound, ent, user: user); diff --git a/Content.Shared/Doors/Systems/SharedDoorSystem.cs b/Content.Shared/Doors/Systems/SharedDoorSystem.cs index 6aa3ff48eb..3b00282f4d 100644 --- a/Content.Shared/Doors/Systems/SharedDoorSystem.cs +++ b/Content.Shared/Doors/Systems/SharedDoorSystem.cs @@ -1,6 +1,7 @@ using System.Linq; using Content.Shared._White.Cult.Structures; using Content.Shared._White.Keyhole.Components; +using Content.Shared._White.Lighting; using Content.Shared.Access.Components; using Content.Shared.Access.Systems; using Content.Shared.Administration.Logs; @@ -116,6 +117,8 @@ public abstract partial class SharedDoorSystem : EntitySystem || door.State == DoorState.Opening && !door.Partial; SetCollidable(ent, collidable, door); + + RaiseLocalEvent(ent, new DoorlightsChangedEvent(door.State, true), true); AppearanceSystem.SetData(ent, DoorVisuals.State, door.State); } @@ -164,6 +167,8 @@ public abstract partial class SharedDoorSystem : EntitySystem _activeDoors.Add(ent); RaiseLocalEvent(ent, new DoorStateChangedEvent(door.State)); + RaiseLocalEvent(ent, new DoorlightsChangedEvent(door.State, true), true); + AppearanceSystem.SetData(ent, DoorVisuals.State, door.State); } @@ -212,7 +217,10 @@ public abstract partial class SharedDoorSystem : EntitySystem door.State = state; Dirty(uid, door); + RaiseLocalEvent(uid, new DoorStateChangedEvent(state)); + RaiseLocalEvent(uid, new DoorlightsChangedEvent(door.State, true), true); + AppearanceSystem.SetData(uid, DoorVisuals.State, door.State); return true; } @@ -516,6 +524,8 @@ public abstract partial class SharedDoorSystem : EntitySystem { door.NextStateChange = GameTiming.CurTime + door.OpenTimeTwo; door.State = DoorState.Opening; + + RaiseLocalEvent(uid, new DoorlightsChangedEvent(door.State, true), true); AppearanceSystem.SetData(uid, DoorVisuals.State, DoorState.Opening); return false; } diff --git a/Content.Shared/_White/Lighting/AppearanceChangedEvent.cs b/Content.Shared/_White/Lighting/AppearanceChangedEvent.cs new file mode 100644 index 0000000000..1d69d5f851 --- /dev/null +++ b/Content.Shared/_White/Lighting/AppearanceChangedEvent.cs @@ -0,0 +1,13 @@ +namespace Content.Shared._White.Lighting; + +public sealed class DoorlightsChangedEvent : EntityEventArgs +{ + public Enum? State; + public bool Value; + + public DoorlightsChangedEvent(Enum? key, bool value) + { + State = key; + Value = value; + } +} diff --git a/Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockComponent.cs b/Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockComponent.cs new file mode 100644 index 0000000000..b658c0d97e --- /dev/null +++ b/Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockComponent.cs @@ -0,0 +1,19 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared._White.Lighting.PointLight.Airlock; + +[RegisterComponent, NetworkedComponent] +public sealed partial class PointLightAirlockComponent : Component +{ + [ViewVariables] + public string RedColor = "#D56C6C"; + + [ViewVariables] + public string BlueColor = "#7F93C0"; + + [ViewVariables] + public string YellowColor = "#BDC07F"; + + [ViewVariables] + public string GreenColor = "#7FC080"; +} diff --git a/Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs b/Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs new file mode 100644 index 0000000000..b572c70dc6 --- /dev/null +++ b/Content.Shared/_White/Lighting/PointLight/Airlock/PointLightAirlockSystem.cs @@ -0,0 +1,83 @@ +using Content.Shared.Doors.Components; + +namespace Content.Shared._White.Lighting.PointLight.Airlock; + +//TODO: Когда-нибудь починить эту хуйню: Когда дверь открыта на аварийный доступ и ее болтируют, то свет будет желтым, хотя должен быть красным из-за болтов. + +public sealed class SharedPointLightAirlockSystem : EntitySystem +{ + [Dependency] private readonly SharedPointLightSystem _pointLightSystem = default!; + public override void Initialize() + { + base.Initialize(); + SubscribeLocalEvent(OnDoorLightChanged); + } + + public void ToggleLight(EntityUid uid, string hex, bool enable = true) + { + if (!_pointLightSystem.TryGetLight(uid, out var pointLightComponent)) + return; + + if (enable) + { + var color = Color.FromHex(hex); + _pointLightSystem.SetColor(uid, color, pointLightComponent); + } + + _pointLightSystem.SetEnabled(uid, enable, pointLightComponent); + + RaiseLocalEvent(uid, new PointLightToggleEvent(enable), true); + } + + public void OnDoorLightChanged(EntityUid uid, PointLightAirlockComponent component, DoorlightsChangedEvent args) + { + if (!TryComp(uid, out var door)) + return; + + if (TryComp(uid, out var airlockComponent) && airlockComponent.EmergencyAccess && args.Value && args.State is not DoorVisuals.EmergencyLights && args.State != null) + return; // While emergency access lights must be yellow no matter what + + switch (args.State) + { + case DoorVisuals.BoltLights: + if (args.Value) + ToggleLight(uid, component.RedColor); + else + RaiseLocalEvent(uid, new DoorlightsChangedEvent(door.State, true)); + break; + + case DoorState.Denying: + ToggleLight(uid, component.RedColor); + break; + + case DoorState.Closed: + ToggleLight(uid, component.BlueColor); + break; + + case DoorVisuals.EmergencyLights: + if (args.Value) + ToggleLight(uid, component.YellowColor); + else + RaiseLocalEvent(uid, new DoorlightsChangedEvent(door.State, true)); + break; + + case DoorState.Open: + ToggleLight(uid, component.BlueColor); + break; + + case DoorState.Opening: + ToggleLight(uid, component.GreenColor); + break; + + case DoorState.Closing: + ToggleLight(uid, component.GreenColor); + break; + + default: + ToggleLight(uid, "", false); + break; + } + + } + +} diff --git a/Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerComponent.cs b/Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerComponent.cs new file mode 100644 index 0000000000..4ecd414c15 --- /dev/null +++ b/Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerComponent.cs @@ -0,0 +1,19 @@ +using Robust.Shared.GameStates; + +namespace Content.Shared._White.Lighting.PointLight.Locker; + +[RegisterComponent, NetworkedComponent] +public sealed partial class PointLightLockerComponent : Component +{ + [DataField, ViewVariables] + public string RedColor = "#D56C6C"; + + [DataField, ViewVariables] + public string GreenColor = "#7FC080"; + + [DataField, ViewVariables] + public float ReduceEnergyOnOpen = 0.1f; + + [DataField, ViewVariables] + public float ReduceRadiusOnOpen = 0.1f; +} diff --git a/Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerSystem.cs b/Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerSystem.cs new file mode 100644 index 0000000000..4a583a5d9d --- /dev/null +++ b/Content.Shared/_White/Lighting/PointLight/Locker/PointLightLockerSystem.cs @@ -0,0 +1,70 @@ +using Content.Shared.Lock; +using Content.Shared.Storage.Components; + +namespace Content.Shared._White.Lighting.PointLight.Locker; + +public sealed class PointLightLockerSystem : EntitySystem +{ + [Dependency] private readonly SharedPointLightSystem _pointLightSystem = default!; + public override void Initialize() + { + base.Initialize(); + SubscribeLocalEvent(OnComponentInit); + + SubscribeLocalEvent(OnLockToggled); + SubscribeLocalEvent(OnStorageAfterOpen); + SubscribeLocalEvent(OnStorageAfterClose); + } + + public void ToggleLight(EntityUid uid, string hex, bool enable = true) + { + if (!_pointLightSystem.TryGetLight(uid, out var pointLightComponent)) + return; + + if (enable) + { + var color = Color.FromHex(hex); + _pointLightSystem.SetColor(uid, color, pointLightComponent); + } + + _pointLightSystem.SetEnabled(uid, enable, pointLightComponent); + + RaiseLocalEvent(uid, new PointLightToggleEvent(enable), true); + } + + public void OnComponentInit(EntityUid uid, PointLightLockerComponent component, ComponentInit args) + { + if (!TryComp(uid, out var locker)) + return; + + ToggleLight(uid, locker.Locked ? component.RedColor : component.GreenColor, true); + } + + public void OnLockToggled(EntityUid uid, PointLightLockerComponent component, LockToggledEvent args) + { + ToggleLight(uid, args.Locked ? component.RedColor : component.GreenColor, true); + } + + public void OnStorageAfterOpen(EntityUid uid, PointLightLockerComponent component, StorageAfterOpenEvent args) + { + ChangeLightOnDoorToggled(uid, component, true); + } + + public void OnStorageAfterClose(EntityUid uid, PointLightLockerComponent component, StorageAfterCloseEvent args) + { + ChangeLightOnDoorToggled(uid, component, false); + } + + public void ChangeLightOnDoorToggled(EntityUid uid, PointLightLockerComponent component, bool status) + { + if (!_pointLightSystem.TryGetLight(uid, out var pointLightComponent)) + return; + + var factor = status ? 1f : -1f; + + _pointLightSystem.SetEnergy(uid, pointLightComponent.Energy - component.ReduceEnergyOnOpen * factor); + _pointLightSystem.SetRadius(uid, pointLightComponent.Radius- component.ReduceRadiusOnOpen * factor); + + RaiseLocalEvent(uid, new PointLightToggleEvent(true), true); + } +} diff --git a/Resources/Prototypes/Entities/Objects/Power/powercells.yml b/Resources/Prototypes/Entities/Objects/Power/powercells.yml index ecff78b91b..edd19c5543 100644 --- a/Resources/Prototypes/Entities/Objects/Power/powercells.yml +++ b/Resources/Prototypes/Entities/Objects/Power/powercells.yml @@ -37,6 +37,12 @@ - type: ProjectileBatteryAmmoProvider proto: BulletTrailLaserLight fireCost: 50 + - type: PointLight + enabled: false + color: "#7FC080" + radius: 1.05 + energy: 0.3 + - type: PointLightRealBattery - type: entity name: potato battery @@ -57,6 +63,10 @@ - type: Construction graph: PowerCellPotato node: potatobattery + - type: PointLight + enabled: false + radius: 1 # Костыльный путь отрубить свет + energy: 1 - type: entity name: small-capacity power cell @@ -122,6 +132,7 @@ part: PowerCell rating: 2 + - type: entity id: PowerCellMediumPrinted suffix: Empty @@ -301,6 +312,11 @@ walkModifier: 0.8 sprintModifier: 0.8 - type: HeldSpeedModifier + - type: PointLight + enabled: false + color: "#7FC080" + radius: 1.2 + energy: 0.5 - type: entity id: PowerCageSmall diff --git a/Resources/Prototypes/Entities/Objects/Shields/shields.yml b/Resources/Prototypes/Entities/Objects/Shields/shields.yml index 47b4084ca7..a35693617b 100644 --- a/Resources/Prototypes/Entities/Objects/Shields/shields.yml +++ b/Resources/Prototypes/Entities/Objects/Shields/shields.yml @@ -455,8 +455,8 @@ netsync: false enabled: false radius: 1.5 - energy: 2 - color: blue + energy: 0.7 + color: "#678AD9" - type: Reflect enabled: false reflectProb: 1 diff --git a/Resources/Prototypes/Entities/Objects/Tools/tools.yml b/Resources/Prototypes/Entities/Objects/Tools/tools.yml index 05d1359dcc..4f87305bf9 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/tools.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/tools.yml @@ -272,6 +272,10 @@ Plastic: 100 - type: StaticPrice price: 56 + - type: PointLight + color: "#7FC080" + radius: 1.05 + energy: 0.3 - type: entity name: network configurator @@ -395,13 +399,13 @@ description: The rapid construction device can be used to quickly place and remove various station structures and fixtures. Requires compressed matter to function. components: - type: RCD - availablePrototypes: + availablePrototypes: - WallSolid - FloorSteel - Plating - Catwalk - Grille - - Window + - Window - WindowDirectional - WindowReinforcedDirectional - ReinforcedWindow @@ -450,7 +454,7 @@ - type: LimitedCharges charges: 0 - type: RCD - availablePrototypes: + availablePrototypes: - WallSolid - FloorSteel - Plating diff --git a/Resources/Prototypes/Entities/Objects/Tools/welders.yml b/Resources/Prototypes/Entities/Objects/Tools/welders.yml index d66a2ddb88..5df9401149 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/welders.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/welders.yml @@ -99,8 +99,11 @@ - type: Welder - type: PointLight enabled: false - radius: 1.5 + radius: 1.4 + energy: 0.5 color: orange + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true netsync: false - type: Appearance - type: RequiresEyeProtection @@ -181,7 +184,11 @@ - type: PointLight enabled: false radius: 1.5 + energy: 0.7 color: lightblue + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + netsync: false - type: SolutionRegeneration solution: Welder generated: @@ -213,5 +220,9 @@ speed: 0.7 - type: PointLight enabled: false - radius: 1.0 + radius: 0.9 + energy: 0.5 color: orange + mask: /Textures/Effects/LightMasks/cone.png + autoRot: true + netsync: false diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml index 728b99c15d..3347b580e1 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml @@ -1,3 +1,9 @@ +# Colors for pointlight +# BDC07F - yellow +# 7FC080 - green +# C07F7F - red +# 7F93C0 - blue + - type: entity id: BaseWeaponBattery parent: BaseItem @@ -132,6 +138,11 @@ magState: mag steps: 5 zeroVisible: true + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#BDC07F" - type: entity name: retro laser blaster @@ -155,6 +166,11 @@ steps: 5 zeroVisible: true - type: Appearance + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#C07F7F" - type: entity name: makeshift laser pistol @@ -175,6 +191,11 @@ - type: ProjectileBatteryAmmoProvider proto: BulletTrailLaser fireCost: 125 + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#7FC080" - type: entity name: tesla gun @@ -230,6 +251,11 @@ - type: ProjectileBatteryAmmoProvider proto: BulletTrailLaser fireCost: 62.5 + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#7FC080" - type: entity name: practice laser rifle @@ -265,6 +291,11 @@ - SemiAuto soundGunshot: path: /Audio/Weapons/Guns/Gunshots/laser_cannon.ogg + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#7F93C0" - type: ProjectileBatteryAmmoProvider proto: PulseBoltProjectile fireCost: 100 @@ -302,6 +333,11 @@ - FullAuto soundGunshot: path: /Audio/Weapons/Guns/Gunshots/laser_cannon.ogg + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#7F93C0" - type: ProjectileBatteryAmmoProvider proto: PulseBoltProjectile fireCost: 40 @@ -335,6 +371,11 @@ fireRate: 1.5 soundGunshot: path: /Audio/Weapons/Guns/Gunshots/laser3.ogg + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#7F93C0" - type: ProjectileBatteryAmmoProvider proto: PulseBoltProjectile fireCost: 2.5 @@ -371,6 +412,11 @@ - type: ProjectileBatteryAmmoProvider proto: BulletTrailLaserHeavy fireCost: 100 + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#C07F7F" - type: entity name: portable particle decelerator @@ -607,6 +653,11 @@ price: 750 - type: StealTarget stealGroup: WeaponAntiqueLaser + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#C07F7F" - type: entity name: advanced laser pistol @@ -642,6 +693,11 @@ - type: Appearance - type: StaticPrice price: 63 + - type: PointLightBattery + - type: PointLight + radius: 1.3 + energy: 0.15 + color: "#C07F7F" - type: entity name: C.H.I.M.P. handcannon diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml index 7c3df718df..e8114c4c1b 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml @@ -798,7 +798,7 @@ muzzleFlash: null - type: PointLight radius: 3.5 - color: blue + color: "#164CAC" energy: 0.5 - type: entity @@ -1090,9 +1090,9 @@ - 1, 0, 0, 1 - 1, 0, 0, 0 - type: PointLight - radius: 3.5 + radius: 1.4 color: red - energy: 1 + energy: 0.7 - type: Reflective reflective: - Energy @@ -1166,9 +1166,9 @@ - 1, 0, 0, 1 - 1, 0, 0, 0 - type: PointLight - radius: 3.5 + radius: 1.4 color: red - energy: 1 + energy: 0.7 - type: Reflective reflective: - Energy @@ -1217,9 +1217,9 @@ - 0, 0, 1, 1 - 0, 0, 1, 0 - type: PointLight - radius: 3.5 - color: blue - energy: 1 + radius: 1.7 + color: "#164CAC" + energy: 0.7 - type: Reflective reflective: - Energy @@ -1267,9 +1267,9 @@ - 1, 0, 0, 1 - 1, 0, 0, 0 - type: PointLight - radius: 3.5 + radius: 1.9 color: red - energy: 1 + energy: 0.7 - type: Reflective reflective: - Energy @@ -1317,9 +1317,9 @@ - 0, 1, 0, 1 - 0, 1, 0, 0 - type: PointLight - radius: 3.5 + radius: 1.7 color: green - energy: 1 + energy: 0.7 - type: Reflective reflective: - Energy @@ -1367,9 +1367,9 @@ - 1, 0, 0, 1 - 1, 0, 0, 0 - type: PointLight - radius: 3.5 + radius: 1.7 color: red - energy: 1 + energy: 0.7 - type: Reflective reflective: - Energy diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml index 9be60408b7..11d907f168 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml @@ -62,7 +62,7 @@ - type: PointLight enabled: false radius: 2 - energy: 2 + energy: 0.6 color: white netsync: false - type: Appearance diff --git a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml index 81db550edc..8351ba5059 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml @@ -116,7 +116,7 @@ - type: RCDDeconstructable cost: 6 delay: 8 - fx: EffectRCDDeconstruct8 + fx: EffectRCDDeconstruct8 - type: Destructible thresholds: - trigger: @@ -149,9 +149,15 @@ # This tag is used to nagivate the Airlock construction graph. It's needed because the construction graph is shared between Airlock, AirlockGlass, and HighSecDoor - type: PryUnpowered - type: BlockWeather + - type: PointLight + enabled: false + radius: 1.5 + energy: 0.7 + - type: PointLightAirlock placement: mode: SnapgridCenter - + + - type: entity id: AirlockRCDResistant parent: Airlock @@ -200,4 +206,4 @@ - type: Tag tags: - GlassAirlock - # This tag is used to nagivate the Airlock construction graph. It's needed because the construction graph is shared between Airlock, AirlockGlass, and HighSecDoor \ No newline at end of file + # This tag is used to nagivate the Airlock construction graph. It's needed because the construction graph is shared between Airlock, AirlockGlass, and HighSecDoor diff --git a/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml b/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml index a5e26463b9..998ee3b126 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/Computers/base_structurecomputers.yml @@ -42,8 +42,8 @@ False: { visible: true, shader: shaded } - type: LitOnPowered - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.6 + energy: 0.7 enabled: false mask: /Textures/Effects/LightMasks/cone.png autoRot: true diff --git a/Resources/Prototypes/Entities/Structures/Machines/vending_machines.yml b/Resources/Prototypes/Entities/Structures/Machines/vending_machines.yml index 28705592de..d46270c6b8 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/vending_machines.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/vending_machines.yml @@ -88,8 +88,8 @@ usesApcPower: true - type: PointLight enabled: false - castShadows: false - radius: 1.5 + radius: 1.3 + energy: 0.7 - type: LitOnPowered - type: ApcPowerReceiver powerLoad: 200 @@ -221,8 +221,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1 - energy: 1.3 + radius: 1.3 + energy: 0.7 color: "#ffb0b0" - type: AccessReader access: [["HeadOfPersonnel"]] @@ -256,8 +256,8 @@ - type: AccessReader access: [["Service"]] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#4b93ad" - type: entity @@ -324,8 +324,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.8 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#3db83b" - type: CargoSellBlacklist @@ -361,8 +361,8 @@ - state: panel map: [ "enum.WiresVisualLayers.MaintenancePanel" ] - type: PointLight - radius: 1.8 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#3db83b" - type: entity @@ -403,8 +403,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.3 + radius: 1.3 + energy: 0.7 color: "#ad7c4b" - type: entity @@ -440,8 +440,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#3c5eb5" - type: entity @@ -460,8 +460,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#423438" - type: entity @@ -481,8 +481,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#A50824" - type: entity @@ -505,8 +505,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#44964A" - type: entity @@ -528,8 +528,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#CBC6BE" - type: entity @@ -552,8 +552,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#D3A44D" - type: entity @@ -587,8 +587,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#66538F" - type: entity @@ -624,8 +624,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#6927C5" - type: entity @@ -660,8 +660,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#D82929" - type: entity @@ -693,8 +693,8 @@ - type: AccessReader access: [["Service"]] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#4b93ad" - type: entity @@ -723,8 +723,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#9a18d6" - type: entity @@ -757,8 +757,8 @@ - texture: Structures/Machines/VendingMachines/maintenance_panel.png map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#6148c7" - type: entity @@ -787,8 +787,8 @@ - type: AccessReader access: [["Engineering"]] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#b89e2a" - type: entity @@ -822,8 +822,8 @@ - type: AccessReader access: [["Medical"]] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#9dc5c9" - type: GuideHelp guides: @@ -859,8 +859,8 @@ - type: AccessReader access: [["Hydroponics"]] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#326e3f" - type: entity @@ -929,8 +929,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#326e3f" - type: entity @@ -973,8 +973,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#c73434" - type: entity @@ -1004,8 +1004,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#737785" - type: entity @@ -1024,8 +1024,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#3c5eb5" - type: entity @@ -1044,8 +1044,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#CE3401" - type: entity @@ -1064,8 +1064,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#5F6A1C" - type: entity @@ -1084,8 +1084,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#207E79" - type: entity @@ -1120,8 +1120,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#389690" - type: entity @@ -1158,8 +1158,8 @@ map: ["enum.VendingMachineVisualLayers.Screen"] shader: unshaded - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#c73434" - type: Tag tags: @@ -1194,8 +1194,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#9dc5c9" - type: entity @@ -1229,8 +1229,8 @@ - type: AccessReader access: [["Research"]] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#B0ADA9" - type: GuideHelp guides: @@ -1260,8 +1260,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#d4ab33" - type: Tag tags: @@ -1295,8 +1295,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#326e3f" - type: entity @@ -1329,8 +1329,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#ffe599" - type: entity @@ -1356,8 +1356,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#9dc5c9" - type: AccessReader access: [["Salvage"]] @@ -1395,8 +1395,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#d4ab33" # wallmounted machines @@ -1591,8 +1591,8 @@ - type: AccessReader access: [["Chapel"]] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#CCCCCC" #The holy C - type: entity @@ -2022,8 +2022,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#48CF48" - type: AccessReader access: [["CentralCommand"]] @@ -2056,8 +2056,8 @@ - state: panel map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.3 + energy: 0.7 color: "#3c5eb5" - type: Advertise pack: HappyHonkAds diff --git a/Resources/Prototypes/Entities/Structures/Power/apc.yml b/Resources/Prototypes/Entities/Structures/Power/apc.yml index 17f169bd01..eef5c658d5 100644 --- a/Resources/Prototypes/Entities/Structures/Power/apc.yml +++ b/Resources/Prototypes/Entities/Structures/Power/apc.yml @@ -13,10 +13,9 @@ sound: path: /Audio/Ambience/Objects/hdd_buzz.ogg - type: PointLight - radius: 1.5 - energy: 1.6 + radius: 1.4 + energy: 0.7 color: "#3db83b" - castShadows: false netsync: false - type: Clickable - type: AccessReader diff --git a/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/base_structurelockers.yml b/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/base_structurelockers.yml index 783bec3ba0..3d4fac8301 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/base_structurelockers.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/base_structurelockers.yml @@ -49,6 +49,11 @@ node: done containers: - entity_storage + - type: PointLight + enabled: false + radius: 1.15 + energy: 0.45 + - type: PointLightLocker - type: entity id: LockerBaseSecure