diff --git a/Content.Client/Inventory/StrippableBoundUserInterface.cs b/Content.Client/Inventory/StrippableBoundUserInterface.cs index 97172f8de8c..2ce07758c96 100644 --- a/Content.Client/Inventory/StrippableBoundUserInterface.cs +++ b/Content.Client/Inventory/StrippableBoundUserInterface.cs @@ -98,7 +98,7 @@ public void UpdateMenu() } } - if (EntMan.TryGetComponent(Owner, out var handsComp)) + if (EntMan.TryGetComponent(Owner, out var handsComp) && handsComp.CanBeStripped) { // good ol hands shit code. there is a GuiHands comparer that does the same thing... but these are hands // and not gui hands... which are different... diff --git a/Content.Client/Paper/UI/PaperWindow.xaml.cs b/Content.Client/Paper/UI/PaperWindow.xaml.cs index 02c4ed64c35..3522aabc66a 100644 --- a/Content.Client/Paper/UI/PaperWindow.xaml.cs +++ b/Content.Client/Paper/UI/PaperWindow.xaml.cs @@ -319,6 +319,8 @@ protected override DragMode GetDragModeFor(Vector2 relativeMousePos) private void RunOnSaved() { + // Prevent further saving while text processing still in + SaveButton.Disabled = true; OnSaved?.Invoke(Rope.Collapse(Input.TextRope)); } diff --git a/Content.Client/UserInterface/Systems/Actions/ActionUIController.cs b/Content.Client/UserInterface/Systems/Actions/ActionUIController.cs index 1dffeb8d2d4..a6c1cfc94f8 100644 --- a/Content.Client/UserInterface/Systems/Actions/ActionUIController.cs +++ b/Content.Client/UserInterface/Systems/Actions/ActionUIController.cs @@ -398,10 +398,6 @@ private void OnActionsUpdated() { QueueWindowUpdate(); - // TODO ACTIONS allow buttons to persist across state applications - // Then we don't have to interrupt drags any time the buttons get rebuilt. - _menuDragHelper.EndDrag(); - if (_actionsSystem != null) _container?.SetActionData(_actionsSystem, _actions.ToArray()); } diff --git a/Content.Client/UserInterface/Systems/Actions/Controls/ActionButtonContainer.cs b/Content.Client/UserInterface/Systems/Actions/Controls/ActionButtonContainer.cs index 38c08dc4721..67b96d03307 100644 --- a/Content.Client/UserInterface/Systems/Actions/Controls/ActionButtonContainer.cs +++ b/Content.Client/UserInterface/Systems/Actions/Controls/ActionButtonContainer.cs @@ -28,14 +28,26 @@ public ActionButton this[int index] get => (ActionButton) GetChild(index); } - private void BuildActionButtons(int count) + public void SetActionData(ActionsSystem system, params EntityUid?[] actionTypes) { + var uniqueCount = Math.Min(system.GetClientActions().Count(), actionTypes.Length + 1); var keys = ContentKeyFunctions.GetHotbarBoundKeys(); - Children.Clear(); - for (var index = 0; index < count; index++) + for (var i = 0; i < uniqueCount; i++) + { + if (i >= ChildCount) + { + AddChild(MakeButton(i)); + } + + if (!actionTypes.TryGetValue(i, out var action)) + action = null; + ((ActionButton) GetChild(i)).UpdateData(action, system); + } + + for (var i = ChildCount - 1; i >= uniqueCount; i--) { - Children.Add(MakeButton(index)); + RemoveChild(GetChild(i)); } ActionButton MakeButton(int index) @@ -55,20 +67,6 @@ ActionButton MakeButton(int index) } } - public void SetActionData(ActionsSystem system, params EntityUid?[] actionTypes) - { - var uniqueCount = Math.Min(system.GetClientActions().Count(), actionTypes.Length + 1); - if (ChildCount != uniqueCount) - BuildActionButtons(uniqueCount); - - for (var i = 0; i < uniqueCount; i++) - { - if (!actionTypes.TryGetValue(i, out var action)) - action = null; - ((ActionButton) GetChild(i)).UpdateData(action, system); - } - } - public void ClearActionData() { foreach (var button in Children) diff --git a/Content.Server/DeltaV/StationEvents/Events/GlimmerMobSpawnRule.cs b/Content.Server/DeltaV/StationEvents/Events/GlimmerMobSpawnRule.cs index f1ec9372897..9acfd3021d5 100644 --- a/Content.Server/DeltaV/StationEvents/Events/GlimmerMobSpawnRule.cs +++ b/Content.Server/DeltaV/StationEvents/Events/GlimmerMobSpawnRule.cs @@ -1,5 +1,6 @@ using System.Linq; using Content.Server.Psionics.Glimmer; +using Content.Server.Station.Systems; using Content.Server.StationEvents; using Content.Server.StationEvents.Components; using Content.Server.StationEvents.Events; @@ -15,14 +16,18 @@ namespace Content.Server.DeltaV.StationEvents.Events; public sealed class GlimmerMobRule : StationEventSystem { [Dependency] private readonly GlimmerSystem _glimmer = default!; + [Dependency] private readonly StationSystem _stationSystem = default!; protected override void Started(EntityUid uid, GlimmerMobRuleComponent comp, GameRuleComponent gameRule, GameRuleStartedEvent args) { base.Started(uid, comp, gameRule, args); - var glimmerSources = GetCoords(); - var normalSpawns = GetCoords(); - var hiddenSpawns = GetCoords(); + if (!TryGetRandomStation(out var station)) + return; + + var glimmerSources = GetCoords(station.Value); + var normalSpawns = GetCoords(station.Value); + var hiddenSpawns = GetCoords(station.Value); var psionics = EntityQuery().Count(); var baseCount = Math.Max(1, psionics / comp.MobsPerPsionic); @@ -43,15 +48,19 @@ protected override void Started(EntityUid uid, GlimmerMobRuleComponent comp, Gam } } - private List GetCoords() where T : IComponent + private List GetCoords(EntityUid station) where T : IComponent { var coords = new List(); var query = EntityQueryEnumerator(); + while (query.MoveNext(out var xform, out _)) { - coords.Add(xform.Coordinates); - } + if (xform.GridUid == null) + continue; + if (_stationSystem.GetOwningStation(xform.GridUid.Value) == station) + coords.Add(xform.Coordinates); + } return coords; } diff --git a/Content.Server/Destructible/Thresholds/Behaviors/TimerStartBehavior.cs b/Content.Server/Destructible/Thresholds/Behaviors/TimerStartBehavior.cs new file mode 100644 index 00000000000..97a5f8b7ef5 --- /dev/null +++ b/Content.Server/Destructible/Thresholds/Behaviors/TimerStartBehavior.cs @@ -0,0 +1,10 @@ +namespace Content.Server.Destructible.Thresholds.Behaviors; + +[DataDefinition] +public sealed partial class TimerStartBehavior : IThresholdBehavior +{ + public void Execute(EntityUid owner, DestructibleSystem system, EntityUid? cause = null) + { + system.TriggerSystem.StartTimer(owner, cause); + } +} diff --git a/Content.Server/Explosion/Components/TimerStartOnSignalComponent.cs b/Content.Server/Explosion/Components/TimerStartOnSignalComponent.cs new file mode 100644 index 00000000000..9adc6dab871 --- /dev/null +++ b/Content.Server/Explosion/Components/TimerStartOnSignalComponent.cs @@ -0,0 +1,15 @@ +using Content.Shared.DeviceLinking; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; + +namespace Content.Server.Explosion.Components +{ + /// + /// Sends a trigger when signal is received. + /// + [RegisterComponent] + public sealed partial class TimerStartOnSignalComponent : Component + { + [DataField("port", customTypeSerializer: typeof(PrototypeIdSerializer))] + public string Port = "Timer"; + } +} diff --git a/Content.Server/Explosion/EntitySystems/ExplosionSystem.Processing.cs b/Content.Server/Explosion/EntitySystems/ExplosionSystem.Processing.cs index b1546600da8..6335a9b32cd 100644 --- a/Content.Server/Explosion/EntitySystems/ExplosionSystem.Processing.cs +++ b/Content.Server/Explosion/EntitySystems/ExplosionSystem.Processing.cs @@ -487,9 +487,12 @@ private void ProcessEntity( && physics.BodyType == BodyType.Dynamic) { var pos = _transformSystem.GetWorldPosition(xform); + var dir = pos - epicenter.Position; + if (dir.IsLengthZero()) + dir = _robustRandom.NextVector2().Normalized(); _throwingSystem.TryThrow( uid, - pos - epicenter.Position, + dir, physics, xform, _projectileQuery, diff --git a/Content.Server/Explosion/EntitySystems/TriggerSystem.Signal.cs b/Content.Server/Explosion/EntitySystems/TriggerSystem.Signal.cs index ffd47f0257b..ce4d201f289 100644 --- a/Content.Server/Explosion/EntitySystems/TriggerSystem.Signal.cs +++ b/Content.Server/Explosion/EntitySystems/TriggerSystem.Signal.cs @@ -11,6 +11,9 @@ private void InitializeSignal() { SubscribeLocalEvent(OnSignalReceived); SubscribeLocalEvent(OnInit); + + SubscribeLocalEvent(OnTimerSignalReceived); + SubscribeLocalEvent(OnTimerSignalInit); } private void OnSignalReceived(EntityUid uid, TriggerOnSignalComponent component, ref SignalReceivedEvent args) @@ -24,5 +27,17 @@ private void OnInit(EntityUid uid, TriggerOnSignalComponent component, Component { _signalSystem.EnsureSinkPorts(uid, component.Port); } + + private void OnTimerSignalReceived(EntityUid uid, TimerStartOnSignalComponent component, ref SignalReceivedEvent args) + { + if (args.Port != component.Port) + return; + + StartTimer(uid, args.Trigger); + } + private void OnTimerSignalInit(EntityUid uid, TimerStartOnSignalComponent component, ComponentInit args) + { + _signalSystem.EnsureSinkPorts(uid, component.Port); + } } } diff --git a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs index 57847551aa7..57e8e9cb62f 100644 --- a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs +++ b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs @@ -212,7 +212,8 @@ private void HandleRattleTrigger(EntityUid uid, RattleComponent component, Trigg return; // Gets location of the implant - var posText = FormattedMessage.RemoveMarkupOrThrow(_navMap.GetNearestBeaconString(uid)); + var position = _transformSystem.GetMapCoordinates(Transform(uid)).Position; // DeltaV + var posText = FormattedMessage.RemoveMarkupOrThrow(_navMap.GetNearestBeaconString(uid) + $" ({(int)position[0]}, {(int)position[1]})"); // DeltaV modified, adds the GPS coordinates on the message. var critMessage = Loc.GetString(component.CritMessage, ("user", implanted.ImplantedEntity.Value), ("position", posText)); var deathMessage = Loc.GetString(component.DeathMessage, ("user", implanted.ImplantedEntity.Value), ("position", posText)); diff --git a/Content.Server/Shuttles/Systems/ShuttleConsoleSystem.FTL.cs b/Content.Server/Shuttles/Systems/ShuttleConsoleSystem.FTL.cs index 02b15242923..eac2535e8b2 100644 --- a/Content.Server/Shuttles/Systems/ShuttleConsoleSystem.FTL.cs +++ b/Content.Server/Shuttles/Systems/ShuttleConsoleSystem.FTL.cs @@ -124,6 +124,9 @@ private void ConsoleFTL(Entity ent, EntityCoordinates t if (!TryComp(shuttleUid, out ShuttleComponent? shuttleComp)) return; + if (shuttleComp.Enabled == false) + return; + // Check shuttle can even FTL if (!_shuttle.CanFTL(shuttleUid.Value, out var reason)) { diff --git a/Content.Server/Shuttles/Systems/ShuttleSystem.FasterThanLight.cs b/Content.Server/Shuttles/Systems/ShuttleSystem.FasterThanLight.cs index ce6a914847f..d0aab9aad55 100644 --- a/Content.Server/Shuttles/Systems/ShuttleSystem.FasterThanLight.cs +++ b/Content.Server/Shuttles/Systems/ShuttleSystem.FasterThanLight.cs @@ -225,18 +225,28 @@ public void RemoveFTLDestination(EntityUid uid) /// public bool CanFTL(EntityUid shuttleUid, [NotNullWhen(false)] out string? reason) { + // Currently in FTL already if (HasComp(shuttleUid)) { reason = Loc.GetString("shuttle-console-in-ftl"); return false; } - if (FTLMassLimit > 0 && - TryComp(shuttleUid, out PhysicsComponent? shuttlePhysics) && - shuttlePhysics.Mass > FTLMassLimit) + if (TryComp(shuttleUid, out var shuttlePhysics)) { - reason = Loc.GetString("shuttle-console-mass"); - return false; + // Static physics type is set when station anchor is enabled + if (shuttlePhysics.BodyType == BodyType.Static) + { + reason = Loc.GetString("shuttle-console-static"); + return false; + } + + // Too large to FTL + if (FTLMassLimit > 0 && shuttlePhysics.Mass > FTLMassLimit) + { + reason = Loc.GetString("shuttle-console-mass"); + return false; + } } if (HasComp(shuttleUid)) diff --git a/Content.Shared/Hands/Components/HandsComponent.cs b/Content.Shared/Hands/Components/HandsComponent.cs index f218455c0bb..b3cb51ae359 100644 --- a/Content.Shared/Hands/Components/HandsComponent.cs +++ b/Content.Shared/Hands/Components/HandsComponent.cs @@ -80,6 +80,12 @@ public sealed partial class HandsComponent : Component [DataField] public DisplacementData? HandDisplacement; + + /// + /// If false, hands cannot be stripped, and they do not show up in the stripping menu. + /// + [DataField] + public bool CanBeStripped = true; } [Serializable, NetSerializable] diff --git a/Content.Shared/Strip/SharedStrippableSystem.cs b/Content.Shared/Strip/SharedStrippableSystem.cs index a68bf755d42..e1c3d8ef0d8 100644 --- a/Content.Shared/Strip/SharedStrippableSystem.cs +++ b/Content.Shared/Strip/SharedStrippableSystem.cs @@ -118,6 +118,9 @@ private void StripHand( !Resolve(target, ref targetStrippable)) return; + if (!target.Comp.CanBeStripped) + return; + if (!_handsSystem.TryGetHand(target.Owner, handId, out var handSlot)) return; @@ -349,6 +352,9 @@ private bool CanStripInsertHand( !Resolve(target, ref target.Comp)) return false; + if (!target.Comp.CanBeStripped) + return false; + if (user.Comp.ActiveHand == null) return false; @@ -449,6 +455,9 @@ private bool CanStripRemoveHand( if (!Resolve(target, ref target.Comp)) return false; + if (!target.Comp.CanBeStripped) + return false; + if (!_handsSystem.TryGetHand(target, handName, out var handSlot, target.Comp)) { _popupSystem.PopupCursor(Loc.GetString("strippable-component-item-slot-free-message", ("owner", Identity.Name(target, EntityManager, user)))); diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index d29f410c515..d51092849de 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,127 +1,4 @@ Entries: -- author: Cojoke-dot - changes: - - message: Fix infinite QSI linking range - type: Fix - id: 6977 - time: '2024-07-24T20:57:45.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30332 -- author: deltanedas - changes: - - message: Borgs can no longer unlock the robotics console or other borgs. - type: Tweak - id: 6978 - time: '2024-07-25T03:54:52.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/27888 -- author: themias - changes: - - message: Fixed the ripley control panel not loading - type: Fix - id: 6979 - time: '2024-07-25T05:23:53.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30325 -- author: Timur2011 - changes: - - message: Space adders are now butcherable. - type: Add - - message: Snakes now drop snake meat when butchered. - type: Fix - - message: Snakes now appear lying when in critical state. - type: Tweak - id: 6980 - time: '2024-07-25T10:52:18.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29629 -- author: Plykiya - changes: - - message: You can now build atmos gas pipes through things like walls. - type: Tweak - id: 6981 - time: '2024-07-25T23:26:06.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/28707 -- author: Ilya246 - changes: - - message: Nuclear operative reinforcements now come with full nuclear operative - gear (and a toy carp) at no additional cost. - type: Tweak - - message: Nuclear operative reinforcements now get nuclear operative names. - type: Tweak - id: 6982 - time: '2024-07-25T23:37:54.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30173 -- author: Cojoke-dot - changes: - - message: Engineering goggles and other similar-looking eyewear now help block - identity. - type: Tweak - - message: Radiation suit's hood now blocks identity. - type: Fix - id: 6983 - time: '2024-07-26T05:26:05.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30305 -- author: Moomoobeef - changes: - - message: Some radio channel colors have been tweaked in order to be more easily - distinguishable. - type: Tweak - id: 6984 - time: '2024-07-26T06:47:20.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30133 -- author: Errant - changes: - - message: Replay ghosts now actually spawn on the proper station, take two. - type: Fix - id: 6985 - time: '2024-07-26T12:59:43.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30273 -- author: themias - changes: - - message: Arcade machines are functional again - type: Fix - id: 6986 - time: '2024-07-26T17:30:50.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30376 -- author: themias - changes: - - message: Zombies now get uncuffed upon transformation - type: Fix - id: 6987 - time: '2024-07-26T18:48:03.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30321 -- author: metalgearsloth - changes: - - message: Fix grid labels getting spammed from VGRoid. - type: Fix - id: 6988 - time: '2024-07-27T01:54:38.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/29946 -- author: GoldenCan - changes: - - message: Added a Security Clown Mask which is obtainable by hacking a SecDrobe. - type: Add - id: 6989 - time: '2024-07-27T04:09:24.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30249 -- author: Plykiya - changes: - - message: Thief game rule now properly selects more than one thief. - type: Fix - id: 6990 - time: '2024-07-27T07:27:21.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30393 -- author: BombasterDS - changes: - - message: Added new plant mutations for apple, sugarcane and galaxythistle - type: Add - id: 6991 - time: '2024-07-27T15:08:49.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/28993 -- author: Spessmann - changes: - - message: Thief objectives for figurines and stamps now require less items - type: Tweak - id: 6992 - time: '2024-07-27T23:11:27.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/30390 - author: metalgearsloth changes: - message: Moved VGRoid from 1,000m away to ~500m. @@ -3912,3 +3789,125 @@ id: 7476 time: '2024-10-02T10:53:19.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/32594 +- author: deltanedas + changes: + - message: Fixed the Instigator shuttle event never happening. + type: Fix + id: 7477 + time: '2024-10-02T11:44:12.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32597 +- author: FluffMe + changes: + - message: Fixed accidental erase of paper contents by spamming save action. + type: Fix + id: 7478 + time: '2024-10-02T12:00:31.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32598 +- author: PJB3005 + changes: + - message: Removed bioluminescence plant mutations due to it breaking the rendering + engine. + type: Remove + id: 7479 + time: '2024-10-02T13:52:14.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32561 +- author: PJB3005 + changes: + - message: Fixed borg "hands" showing up in their stripping menu. + type: Fix + id: 7480 + time: '2024-10-03T00:11:56.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32606 +- author: ArtisticRoomba + changes: + - message: X-ray cannons and stinger grenades are now security restricted. HoS's + armored trench coat and its variants are security and command restricted. + type: Fix + id: 7481 + time: '2024-10-03T10:01:58.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32614 +- author: Myra + changes: + - message: Medibots and Janibots can no longer become sentient via the sentience + event. + type: Remove + id: 7482 + time: '2024-10-03T10:32:11.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32383 +- author: eoineoineoin + changes: + - message: Action bar can be reconfigured again + type: Fix + id: 7483 + time: '2024-10-03T14:01:01.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32552 +- author: Southbridge + changes: + - message: Box station's recycler has been properly connected. + type: Fix + - message: Box station's singlo substation has been rewired to the station-wide + HV network. + type: Tweak + - message: Box station now has AI law boards in the upload room. + type: Add + id: 7484 + time: '2024-10-04T01:12:59.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32608 +- author: Plykiya + changes: + - message: You can no longer FTL the station. + type: Fix + id: 7485 + time: '2024-10-04T02:55:36.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32558 +- author: SoulFN + changes: + - message: Dragon can now pull things using tail. + type: Add + id: 7486 + time: '2024-10-04T05:39:50.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32568 +- author: SaphireLattice + changes: + - message: Explosives throw a container they are in + type: Tweak + id: 7487 + time: '2024-10-04T08:43:45.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32428 +- author: SaphireLattice + changes: + - message: Syndicate C4 now starts a countdown on signal, rather than exploding + instantly. + type: Tweak + id: 7488 + time: '2024-10-04T09:34:49.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32423 +- author: slarticodefast + changes: + - message: Light bulbs now fit into the trash bag again. + type: Fix + id: 7489 + time: '2024-10-05T18:44:47.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32452 +- author: Just_Art + changes: + - message: Added a flower wreath and hairflower to loadout! + type: Add + id: 7490 + time: '2024-10-06T12:48:49.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32097 +- author: Golinth + changes: + - message: Removed clown waddling until implemented properly + type: Remove + id: 7491 + time: '2024-10-06T13:33:02.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32652 +- author: SaphireLattice + changes: + - message: Minibomb is now explosion resistant and will start counting down if damaged + by a C4 + type: Tweak + id: 7492 + time: '2024-10-07T22:42:43.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/32429 diff --git a/Resources/Changelog/DeltaVChangelog.yml b/Resources/Changelog/DeltaVChangelog.yml index f011d89647f..474cc6567cf 100644 --- a/Resources/Changelog/DeltaVChangelog.yml +++ b/Resources/Changelog/DeltaVChangelog.yml @@ -1,28 +1,4 @@ Entries: -- author: FluffiestFloof - changes: - - message: Added Mothroaches in the vents. - type: Add - id: 107 - time: '2023-10-28T02:00:22.0000000+00:00' -- author: Colin-Tel - changes: - - message: Adjusted event weights so rounds are not as exciting. - type: Tweak - id: 108 - time: '2023-10-28T03:14:19.0000000+00:00' -- author: FluffiestFloof - changes: - - message: Added the classic Moth markings back, still can't be coloured. - type: Add - id: 109 - time: '2023-10-28T19:05:29.0000000+00:00' -- author: JJ - changes: - - message: Add Psionic Antag Objectives - type: Add - id: 110 - time: '2023-10-28T19:06:51.0000000+00:00' - author: DebugOk changes: - message: The 10 reserved whitelist slots have been removed until further notice. @@ -3667,3 +3643,35 @@ id: 606 time: '2024-10-13T14:29:01.0000000+00:00' url: https://github.com/DeltaV-Station/Delta-v/pull/1988 +- author: deltanedas + changes: + - message: Merged this week's changes from upstream. + type: Add + - message: Made C4 detonate on signal like it used to. + type: Tweak + id: 607 + time: '2024-10-14T18:05:19.0000000+00:00' + url: https://github.com/DeltaV-Station/Delta-v/pull/1982 +- author: Radezolid + changes: + - message: Now tracking and death rattle implant messages show the coordinates at + the same time as the nearest beacon. + type: Tweak + id: 608 + time: '2024-10-14T18:06:50.0000000+00:00' + url: https://github.com/DeltaV-Station/Delta-v/pull/1983 +- author: Radezolid + changes: + - message: Added the foam toys set to the cargo request catalog! Go play war with + the clown or friends in the hallways! + type: Add + id: 609 + time: '2024-10-14T18:07:41.0000000+00:00' + url: https://github.com/DeltaV-Station/Delta-v/pull/1985 +- author: MilonPL + changes: + - message: Glimmer mobs will no longer spawn on CentCom or the evac shuttle. + type: Fix + id: 610 + time: '2024-10-14T23:43:17.0000000+00:00' + url: https://github.com/DeltaV-Station/Delta-v/pull/1980 diff --git a/Resources/Locale/en-US/machine-linking/receiver_ports.ftl b/Resources/Locale/en-US/machine-linking/receiver_ports.ftl index a0d2fd3ec40..d7a2636e11b 100644 --- a/Resources/Locale/en-US/machine-linking/receiver_ports.ftl +++ b/Resources/Locale/en-US/machine-linking/receiver_ports.ftl @@ -28,6 +28,9 @@ signal-port-description-doorbolt = Bolts door when HIGH. signal-port-name-trigger = Trigger signal-port-description-trigger = Triggers some mechanism on the device. +signal-port-name-timer = Timer +signal-port-description-timer = Starts the timer countdown of the device. + signal-port-name-order-sender = Order sender signal-port-description-order-sender = Cargo console order sender diff --git a/Resources/Locale/en-US/shuttles/console.ftl b/Resources/Locale/en-US/shuttles/console.ftl index 80e61a28126..6143c995529 100644 --- a/Resources/Locale/en-US/shuttles/console.ftl +++ b/Resources/Locale/en-US/shuttles/console.ftl @@ -4,6 +4,7 @@ shuttle-pilot-end = Stopped piloting shuttle-console-in-ftl = Currently in FTL shuttle-console-mass = Too large to FTL shuttle-console-prevent = You are unable to pilot this ship +shuttle-console-static = Grid is static # NAV diff --git a/Resources/Migrations/migration.yml b/Resources/Migrations/migration.yml index c96d0afd03b..54c071f541c 100644 --- a/Resources/Migrations/migration.yml +++ b/Resources/Migrations/migration.yml @@ -424,3 +424,6 @@ HatBase: null # 2024-09-19 BlueprintFlare: null + +# 2024-10-04 +BaseAdvancedPen: Pen diff --git a/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_fun.yml b/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_fun.yml index ddf3ebdb9e1..a7a64686dd5 100644 --- a/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_fun.yml +++ b/Resources/Prototypes/DeltaV/Catalog/Cargo/cargo_fun.yml @@ -17,3 +17,13 @@ cost: 1000 category: Fun group: market + +- type: cargoProduct + id: FoamWeapons + icon: + sprite: Objects/Weapons/Guns/Rifles/foam_rifle.rsi + state: icon + product: CrateFoamWeapons + cost: 1400 + category: Fun + group: market diff --git a/Resources/Prototypes/DeltaV/Catalog/Fills/Crates/fun.yml b/Resources/Prototypes/DeltaV/Catalog/Fills/Crates/fun.yml index 18185d975e3..c2b42985f41 100644 --- a/Resources/Prototypes/DeltaV/Catalog/Fills/Crates/fun.yml +++ b/Resources/Prototypes/DeltaV/Catalog/Fills/Crates/fun.yml @@ -23,3 +23,18 @@ amount: 2 - id: BoxCartridgeCap amount: 2 + +- type: entity + name: foam toys set + description: Foam weapon kit to play war with the clowns. + id: CrateFoamWeapons + parent: CrateToyBox + components: + - type: StorageFill + contents: + - id: WeaponRifleFoam + amount: 1 + - id: BoxDonkSoftBox + amount: 1 + - id: GrenadeFoamDart + amount: 2 diff --git a/Resources/Prototypes/DeviceLinking/sink_ports.yml b/Resources/Prototypes/DeviceLinking/sink_ports.yml index 339b8141751..a5313fcc4e4 100644 --- a/Resources/Prototypes/DeviceLinking/sink_ports.yml +++ b/Resources/Prototypes/DeviceLinking/sink_ports.yml @@ -48,6 +48,11 @@ name: signal-port-name-trigger description: signal-port-description-trigger +- type: sinkPort + id: Timer + name: signal-port-name-timer + description: signal-port-description-timer + - type: sinkPort id: OrderReceiver name: signal-port-name-order-receiver diff --git a/Resources/Prototypes/DeviceLinking/source_ports.yml b/Resources/Prototypes/DeviceLinking/source_ports.yml index 1988f29e45c..5c327347268 100644 --- a/Resources/Prototypes/DeviceLinking/source_ports.yml +++ b/Resources/Prototypes/DeviceLinking/source_ports.yml @@ -2,13 +2,13 @@ id: Pressed name: signal-port-name-pressed description: signal-port-description-pressed - defaultLinks: [ Toggle, Trigger ] + defaultLinks: [ Toggle, Trigger, Timer ] - type: sourcePort id: On name: signal-port-name-on-transmitter description: signal-port-description-on-transmitter - defaultLinks: [ On, Open, Forward, Trigger ] + defaultLinks: [ On, Open, Forward, Trigger, Timer ] - type: sourcePort id: Off @@ -25,13 +25,13 @@ id: Left name: signal-port-name-left description: signal-port-description-left - defaultLinks: [ On, Open, Forward, Trigger ] + defaultLinks: [ On, Open, Forward, Trigger, Timer ] - type: sourcePort id: Right name: signal-port-name-right description: signal-port-description-right - defaultLinks: [ On, Open, Reverse, Trigger ] + defaultLinks: [ On, Open, Reverse, Trigger, Timer ] - type: sourcePort id: Middle @@ -76,7 +76,7 @@ id: Timer name: signal-port-name-timer-trigger description: signal-port-description-timer-trigger - defaultLinks: [ AutoClose, On, Open, Forward, Trigger ] + defaultLinks: [ AutoClose, On, Open, Forward, Trigger, Timer ] - type: sourcePort id: Start @@ -94,7 +94,7 @@ id: OutputHigh name: signal-port-name-logic-output-high description: signal-port-description-logic-output-high - defaultLinks: [ On, Open, Forward, Trigger ] + defaultLinks: [ On, Open, Forward, Trigger, Timer ] - type: sourcePort id: OutputLow diff --git a/Resources/Prototypes/Entities/Clothing/Head/misc.yml b/Resources/Prototypes/Entities/Clothing/Head/misc.yml index 5a3110faf5e..b85f5c26b71 100644 --- a/Resources/Prototypes/Entities/Clothing/Head/misc.yml +++ b/Resources/Prototypes/Entities/Clothing/Head/misc.yml @@ -312,3 +312,14 @@ - WhitelistChameleon - type: StaticPrice price: 1 + +- type: entity + parent: ClothingHeadBase + id: ClothingHeadHatHairflower + name: hairflower + description: A beautiful hairflower that can be inserted between locks of hair. + components: + - type: Sprite + sprite: Clothing/Head/Misc/hairflower.rsi + - type: Clothing + sprite: Clothing/Head/Misc/hairflower.rsi diff --git a/Resources/Prototypes/Entities/Clothing/Neck/pins.yml b/Resources/Prototypes/Entities/Clothing/Neck/pins.yml index 9f0ff79b20b..a7dcf03f28c 100644 --- a/Resources/Prototypes/Entities/Clothing/Neck/pins.yml +++ b/Resources/Prototypes/Entities/Clothing/Neck/pins.yml @@ -7,6 +7,10 @@ components: - type: Item size: Tiny + - type: Sprite + sprite: Clothing/Neck/Misc/pins.rsi + - type: Clothing + sprite: Clothing/Neck/Misc/pins.rsi - type: entity parent: ClothingNeckPinBase @@ -15,14 +19,9 @@ description: Be gay do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: lgbt + state: lgbt - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: lgbt-equipped + equippedPrefix: lgbt - type: entity parent: ClothingNeckPinBase @@ -31,14 +30,9 @@ description: Be aro do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: aro + state: aro - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: aro-equipped + equippedPrefix: aro - type: entity parent: ClothingNeckPinBase @@ -47,14 +41,9 @@ description: Be ace do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: asex + state: asex - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: asex-equipped + equippedPrefix: asex - type: entity parent: ClothingNeckPinBase @@ -63,14 +52,9 @@ description: Be bi do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: bi + state: bi - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: bi-equipped + equippedPrefix: bi - type: entity parent: ClothingNeckPinBase @@ -79,14 +63,9 @@ description: Be gay~ do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: gay + state: gay - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: gay-equipped + equippedPrefix: gay - type: entity parent: ClothingNeckPinBase @@ -95,14 +74,9 @@ description: Be intersex do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: inter + state: inter - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: inter-equipped + equippedPrefix: inter - type: entity parent: ClothingNeckPinBase @@ -111,14 +85,9 @@ description: Be lesbian do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: les + state: les - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: les-equipped + equippedPrefix: les - type: entity parent: ClothingNeckPinBase @@ -127,14 +96,9 @@ description: "01100010 01100101 00100000 01100101 01101110 01100010 01111001 00100000 01100100 01101111 00100000 01100011 01110010 01101001 01101101 01100101" components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: non + state: non - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: non-equipped + equippedPrefix: non - type: entity parent: ClothingNeckPinBase @@ -143,14 +107,9 @@ description: Be pan do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: pan + state: pan - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: pan-equipped + equippedPrefix: pan - type: entity parent: ClothingNeckPinBase @@ -159,14 +118,9 @@ description: Be trans do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/pins.rsi - layers: - - state: trans + state: trans - type: Clothing - sprite: Clothing/Neck/Misc/pins.rsi - clothingVisuals: - neck: - - state: trans-equipped + equippedPrefix: trans - type: entity parent: ClothingNeckPinBase @@ -175,14 +129,9 @@ description: Be autism do crime. components: - type: Sprite - sprite: Clothing/Neck/Misc/autismpin.rsi - layers: - - state: autism + state: autism - type: Clothing - sprite: Clothing/Neck/Misc/autismpin.rsi - clothingVisuals: - neck: - - state: autism-equipped + equippedPrefix: autism - type: entity parent: ClothingNeckPinBase @@ -191,11 +140,6 @@ description: Be autism do warcrime. components: - type: Sprite - sprite: Clothing/Neck/Misc/goldautismpin.rsi - layers: - - state: goldautism + state: goldautism - type: Clothing - sprite: Clothing/Neck/Misc/goldautismpin.rsi - clothingVisuals: - neck: - - state: goldautism-equipped + equippedPrefix: goldautism diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/coats.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/coats.yml index 559e9d36686..7ef4d615abe 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/coats.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/coats.yml @@ -83,7 +83,7 @@ damageCoefficient: 0.9 - type: entity - parent: [ClothingOuterArmorHoS, ClothingOuterStorageBase] + parent: [ClothingOuterArmorHoS, ClothingOuterStorageBase, BaseSecurityCommandContraband] id: ClothingOuterCoatHoSTrench name: head of security's armored trenchcoat description: A greatcoat enhanced with a special alloy for some extra protection and style for those with a commanding presence. @@ -380,7 +380,7 @@ sprite: Clothing/OuterClothing/Coats/windbreaker_paramedic.rsi - type: entity - parent: ClothingOuterStorageBase + parent: [ClothingOuterStorageBase, BaseSyndicateContraband] id: ClothingOuterCoatSyndieCap name: syndicate's coat description: The syndicate's coat is made of durable fabric, with gilded patterns. @@ -391,7 +391,7 @@ sprite: Clothing/OuterClothing/Coats/syndicate/coatsyndiecap.rsi - type: entity - parent: ClothingOuterCoatHoSTrench + parent: [BaseSyndicateContraband, ClothingOuterCoatHoSTrench] # BaseSyndicateContraband as first parent so contraband system takes that as priority, yeah I know id: ClothingOuterCoatSyndieCapArmored name: syndicate's armored coat description: The syndicate's armored coat is made of durable fabric, with gilded patterns. diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml index 266f3604f28..e9856e6dc66 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml @@ -366,7 +366,7 @@ ########################################################## - type: entity - parent: [ClothingOuterArmorHoS, ClothingOuterWinterCoatToggleable, BaseCommandContraband] + parent: [ClothingOuterArmorHoS, ClothingOuterWinterCoatToggleable, BaseSecurityCommandContraband] id: ClothingOuterWinterHoS name: head of security's armored winter coat description: A sturdy, utilitarian winter coat designed to protect a head of security from any brig-bound threats and hypothermic events. @@ -380,7 +380,7 @@ ########################################################## - type: entity - parent: [ClothingOuterWinterCoatToggleable, BaseCommandContraband] + parent: [ClothingOuterWinterCoatToggleable, BaseSecurityCommandContraband] id: ClothingOuterWinterHoSUnarmored name: head of security's winter coat description: A sturdy coat, a warm coat, but not an armored coat. diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/misc.yml b/Resources/Prototypes/Entities/Clothing/Shoes/misc.yml index 2f5e3ef3946..73f6b45a17b 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/misc.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/misc.yml @@ -47,7 +47,7 @@ collection: FootstepDuck params: variation: 0.07 - - type: WaddleWhenWorn + - type: WaddleWhenWorn # DeltaV: upstream removed waddling tumbleIntensity: 10 # smaller than clown shoes - type: Construction graph: ClothingShoeSlippersDuck diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml b/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml index bd37135e98d..0838ecd914e 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/specific.yml @@ -15,7 +15,7 @@ parent: [ClothingShoesBaseButcherable, ClothingSlotBase] id: ClothingShoesClownBase components: - - type: WaddleWhenWorn + - type: WaddleWhenWorn # DeltaV: upstream removed waddling - type: ItemSlots slots: item: diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml index 11b8064f739..b4cee6b0915 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml @@ -85,6 +85,7 @@ - type: Hands showInHands: false disableExplosionRecursion: true + canBeStripped: false - type: ComplexInteraction - type: IntrinsicRadioReceiver - type: IntrinsicRadioTransmitter diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml index 7d988c6fe95..e13ee1c3cbc 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml @@ -258,7 +258,7 @@ - type: Construction graph: CleanBot node: bot - - type: SentienceTarget + - type: SentienceTarget # DeltaV: upstream removed it, cleanbot works when player controlled flavorKind: station-event-random-sentience-flavor-mechanical - type: Absorbent pickupAmount: 10 @@ -331,8 +331,6 @@ - type: Construction graph: MediBot node: bot - - type: SentienceTarget - flavorKind: station-event-random-sentience-flavor-mechanical - type: Anchorable - type: InteractionPopup interactSuccessString: petting-success-medibot diff --git a/Resources/Prototypes/Entities/Mobs/Player/dragon.yml b/Resources/Prototypes/Entities/Mobs/Player/dragon.yml index 16e3038fcd2..c750b568b40 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/dragon.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/dragon.yml @@ -150,7 +150,9 @@ tags: - CannotSuicide - DoorBumpOpener - + - type: Puller + needsHands: false + - type: entity parent: BaseMobDragon id: MobDragon diff --git a/Resources/Prototypes/Entities/Objects/Power/lights.yml b/Resources/Prototypes/Entities/Objects/Power/lights.yml index 3bd8d3ddf6a..c0cc138cc21 100644 --- a/Resources/Prototypes/Entities/Objects/Power/lights.yml +++ b/Resources/Prototypes/Entities/Objects/Power/lights.yml @@ -129,6 +129,7 @@ - type: Tag tags: - LightBulb + - Trash - type: entity parent: BaseLightbulb @@ -147,6 +148,7 @@ - type: Tag tags: - LightBulb + - Trash - type: entity parent: LightBulb @@ -160,9 +162,6 @@ lightEnergy: 0.3 # old incandescents just arent as bright lightRadius: 6 lightSoftness: 1.1 - - type: Tag - tags: - - LightBulb - type: entity suffix: Broken @@ -190,6 +189,7 @@ - type: Tag tags: - LightBulb + - Trash - type: entity parent: BaseLightTube diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Bombs/plastic.yml b/Resources/Prototypes/Entities/Objects/Weapons/Bombs/plastic.yml index 772dd15ab80..cf331c5519d 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Bombs/plastic.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Bombs/plastic.yml @@ -54,10 +54,10 @@ beepSound: /Audio/Machines/Nuke/general_beep.ogg startOnStick: true canToggleStartOnStick: true - - type: TriggerOnSignal + - type: TriggerOnSignal # DeltaV: use old behaviour instead of TimerStartOnSignal - type: DeviceLinkSink ports: - - Trigger + - Trigger # DeltaV: replace Timer with Trigger for TriggerOnSignal - type: Explosive # Powerful explosion in a very small radius. Doesn't break underplating. explosionType: DemolitionCharge totalIntensity: 60 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 a12a60d0b8d..62eaf20f783 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml @@ -382,7 +382,7 @@ - type: entity name: x-ray cannon - parent: [BaseWeaponBattery, BaseGunWieldable] + parent: [BaseWeaponBattery, BaseGunWieldable, BaseSecurityContraband] id: WeaponXrayCannon description: An experimental weapon that uses concentrated x-ray energy against its target. components: diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml index b4f540ae53d..b041349d26e 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/clusterbang.yml @@ -116,7 +116,7 @@ cluster-payload: !type:Container - type: entity - parent: [GrenadeBase, BaseSyndicateContraband] + parent: [GrenadeBase, BaseSecurityContraband] id: GrenadeStinger name: stinger grenade description: Nothing to see here, please disperse. diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml index 3de77897c41..a4c70262439 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml @@ -109,6 +109,22 @@ components: - type: Sprite sprite: Objects/Weapons/Grenades/syndgrenade.rsi + - type: ExplosionResistance + damageCoefficient: 0.1 + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 10 + behaviors: + - !type:TimerStartBehavior + - trigger: + !type:DamageTrigger + damage: 45 + behaviors: + - !type:TriggerBehavior + - !type:DoActsBehavior + acts: ["Destruction"] - type: OnUseTimerTrigger delay: 5 - type: ExplodeOnTrigger diff --git a/Resources/Prototypes/GameRules/unknown_shuttles.yml b/Resources/Prototypes/GameRules/unknown_shuttles.yml index db036c270e3..cde980debf5 100644 --- a/Resources/Prototypes/GameRules/unknown_shuttles.yml +++ b/Resources/Prototypes/GameRules/unknown_shuttles.yml @@ -7,7 +7,7 @@ - id: UnknownShuttleCargoLost - id: UnknownShuttleTravelingCuisine - id: UnknownShuttleDisasterEvacPod - # - id: UnknownShuttleHonki #DeltaV - Removes the Clown Shuttle + #- id: UnknownShuttleHonki #DeltaV - Removes the Clown Shuttle #- id: UnknownShuttleNTQuark # DeltaV - removed until theyre individually looked at #- id: UnknownShuttleCruiser #- id: UnknownShuttleCryptid @@ -20,7 +20,7 @@ #- id: UnknownShuttleMeatZone #- id: UnknownShuttleMicroshuttle #- id: UnknownShuttleSpacebus - #- id: UnknownShuttleInstigator # DeltaV - remove random ops (preemptively since original pr didnt add it lmao) + #- id: UnknownShuttleInstigator # DeltaV - remove random ops - type: entityTable id: UnknownShuttlesFreelanceTable diff --git a/Resources/Prototypes/Hydroponics/randomMutations.yml b/Resources/Prototypes/Hydroponics/randomMutations.yml index 88df438ce9d..77ae2288f3a 100644 --- a/Resources/Prototypes/Hydroponics/randomMutations.yml +++ b/Resources/Prototypes/Hydroponics/randomMutations.yml @@ -1,10 +1,11 @@ - type: RandomPlantMutationList id: RandomPlantMutations - mutations: - - name: Bioluminescent - baseOdds: 0.036 - appliesToPlant: false - effect: !type:Glow + mutations: + # disabled until 50 morbillion point lights don't cause the renderer to die + #- name: Bioluminescent + # baseOdds: 0.036 + # appliesToPlant: false + # effect: !type:Glow - name: Sentient baseOdds: 0.0072 appliesToProduce: false diff --git a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml index ea70828ce4a..14c1174a7d0 100644 --- a/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml +++ b/Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml @@ -8,6 +8,19 @@ department: Command time: 3600 # 1 hour +# Flowers +- type: loadout + id: FlowerWreath + storage: + back: + - ClothingHeadHatFlowerWreath + +- type: loadout + id: Hairflower + storage: + back: + - ClothingHeadHatHairflower + # Plushies - type: loadout id: PlushieLizard diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index 25b6dfa2132..36ffaaa138d 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -5,6 +5,8 @@ minLimit: 0 maxLimit: 3 loadouts: + - FlowerWreath + - Hairflower - PlushieLizard - PlushieSpaceLizard - Lighter diff --git a/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/equipped-HELMET.png new file mode 100644 index 00000000000..d1a436b8379 Binary files /dev/null and b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/equipped-HELMET.png differ diff --git a/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/icon.png b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/icon.png new file mode 100644 index 00000000000..cd68c5efcba Binary files /dev/null and b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/meta.json new file mode 100644 index 00000000000..a3ec217bca5 --- /dev/null +++ b/Resources/Textures/Clothing/Head/Misc/hairflower.rsi/meta.json @@ -0,0 +1,18 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "icon sprited by Just_Art, equipped-HELMET sprite taken from tgstation at commit https://github.com/tgstation/tgstation/commit/4f6190e2895e09116663ef282d3ce1d8b35c032e", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-HELMET", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Neck/Misc/autismpin.rsi/meta.json b/Resources/Textures/Clothing/Neck/Misc/autismpin.rsi/meta.json deleted file mode 100644 index e82672f071c..00000000000 --- a/Resources/Textures/Clothing/Neck/Misc/autismpin.rsi/meta.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "version": 1, - "license": "CC-BY-NC-4.0", - "copyright": "Terraspark's work", - "size": { - "x": 32, - "y": 32 - }, - "states": [ - { - "name": "autism" - }, - { - "name": "autism-equipped", - "directions": 4 - } - ] -} diff --git a/Resources/Textures/Clothing/Neck/Misc/goldautismpin.rsi/meta.json b/Resources/Textures/Clothing/Neck/Misc/goldautismpin.rsi/meta.json deleted file mode 100644 index 6848744ab8a..00000000000 --- a/Resources/Textures/Clothing/Neck/Misc/goldautismpin.rsi/meta.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "version": 1, - "license": "CC-BY-NC-4.0", - "copyright": "Terraspark's work", - "size": { - "x": 32, - "y": 32 - }, - "states": [ - { - "name": "goldautism" - }, - { - "name": "goldautism-equipped", - "directions": 4 - } - ] -} diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/aro-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/aro-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/aro-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/aro-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/asex-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/asex-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/asex-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/asex-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/autismpin.rsi/autism-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/autism-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/autismpin.rsi/autism-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/autism-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/autismpin.rsi/autism.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/autism.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/autismpin.rsi/autism.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/autism.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/bi-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/bi-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/bi-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/bi-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/gay-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/gay-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/gay-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/gay-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/goldautismpin.rsi/goldautism-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/goldautism-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/goldautismpin.rsi/goldautism-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/goldautism-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/goldautismpin.rsi/goldautism.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/goldautism.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/goldautismpin.rsi/goldautism.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/goldautism.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/inter-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/inter-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/inter-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/inter-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/les-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/les-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/les-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/les-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/lgbt-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/lgbt-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/lgbt-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/lgbt-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/meta.json b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/meta.json index aab069b5478..0619f962df3 100644 --- a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/meta.json +++ b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "PixelTK leaves his mark on upstream, BackeTako made the gay", + "copyright": "PixelTK leaves his mark on upstream, BackeTako made the gay, autism pins by Terraspark", "size": { "x": 32, "y": 32 @@ -11,70 +11,84 @@ "name": "aro" }, { - "name": "aro-equipped", + "name": "aro-equipped-NECK", "directions": 4 }, { "name": "asex" }, { - "name": "asex-equipped", + "name": "asex-equipped-NECK", + "directions": 4 + }, + { + "name": "autism" + }, + { + "name": "autism-equipped-NECK", "directions": 4 }, { "name": "bi" }, { - "name": "bi-equipped", + "name": "bi-equipped-NECK", "directions": 4 }, { "name": "gay" }, { - "name": "gay-equipped", + "name": "gay-equipped-NECK", + "directions": 4 + }, + { + "name": "goldautism" + }, + { + "name": "goldautism-equipped-NECK", "directions": 4 }, { "name": "inter" }, { - "name": "inter-equipped", + "name": "inter-equipped-NECK", "directions": 4 }, { "name": "les" }, { - "name": "les-equipped", + "name": "les-equipped-NECK", "directions": 4 }, { "name": "lgbt" }, { - "name": "lgbt-equipped", + "name": "lgbt-equipped-NECK", "directions": 4 }, { "name": "non" }, { - "name": "non-equipped", + "name": "non-equipped-NECK", "directions": 4 }, { "name": "pan" }, { - "name": "pan-equipped", + "name": "pan-equipped-NECK", "directions": 4 }, { "name": "trans" }, { - "name": "trans-equipped", + "name": "trans-equipped-NECK", "directions": 4 } ] diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/non-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/non-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/non-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/non-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/pan-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/pan-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/pan-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/pan-equipped-NECK.png diff --git a/Resources/Textures/Clothing/Neck/Misc/pins.rsi/trans-equipped.png b/Resources/Textures/Clothing/Neck/Misc/pins.rsi/trans-equipped-NECK.png similarity index 100% rename from Resources/Textures/Clothing/Neck/Misc/pins.rsi/trans-equipped.png rename to Resources/Textures/Clothing/Neck/Misc/pins.rsi/trans-equipped-NECK.png diff --git a/Resources/Textures/Tiles/steel.png b/Resources/Textures/Tiles/steel.png index b7792ef138e..e41e7a1804e 100644 Binary files a/Resources/Textures/Tiles/steel.png and b/Resources/Textures/Tiles/steel.png differ diff --git a/Resources/clientCommandPerms.yml b/Resources/clientCommandPerms.yml index 99e0fea0c5a..04961185d04 100644 --- a/Resources/clientCommandPerms.yml +++ b/Resources/clientCommandPerms.yml @@ -20,13 +20,10 @@ - net_watchent - devwindow - fill - - dumpentities - ">" - gcf - gc - gc_mode - - resetent - - resetallents - cvar - midipanic - replay_recording_start @@ -53,6 +50,8 @@ - hidemechanisms - showmechanisms - menuvis + - resetent + - resetallents - showhealthbars - toggledecals - nodevis @@ -72,7 +71,8 @@ - detachent - localdelete - fullstatereset - - fuckrules + - dumpentities + - fuckrules # DeltaV: move fuckrules to DEBUG - Flags: MAPPING Commands: