Files
crystall-punk-14/Content.Client/Inventory/ClientInventorySystem.cs

306 lines
11 KiB
C#
Raw Normal View History

get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
using Content.Client.Clothing;
using Content.Client.Examine;
using Content.Client.Verbs.UI;
using Content.Shared.Interaction;
using Content.Shared.Inventory;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
using Content.Shared.Inventory.Events;
2023-09-11 21:20:46 +10:00
using Content.Shared.Storage;
using JetBrains.Annotations;
using Robust.Client.Player;
using Robust.Client.UserInterface;
using Robust.Shared.Containers;
using Robust.Shared.Input.Binding;
using Robust.Shared.Player;
2019-07-20 13:11:42 +02:00
2021-06-09 22:19:39 +02:00
namespace Content.Client.Inventory
2019-07-20 13:11:42 +02:00
{
[UsedImplicitly]
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
public sealed class ClientInventorySystem : InventorySystem
2019-07-20 13:11:42 +02:00
{
[Dependency] private readonly IPlayerManager _playerManager = default!;
[Dependency] private readonly IUserInterfaceManager _ui = default!;
[Dependency] private readonly ClientClothingSystem _clothingVisualsSystem = default!;
[Dependency] private readonly ExamineSystem _examine = default!;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
public Action<SlotData>? EntitySlotUpdate = null;
public Action<SlotData>? OnSlotAdded = null;
public Action<SlotData>? OnSlotRemoved = null;
public Action<EntityUid, InventorySlotsComponent>? OnLinkInventorySlots = null;
public Action? OnUnlinkInventory = null;
public Action<SlotSpriteUpdate>? OnSpriteUpdate = null;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
private readonly Queue<(InventorySlotsComponent comp, EntityEventArgs args)> _equipEventsQueue = new();
2019-07-20 13:11:42 +02:00
public override void Initialize()
{
UpdatesOutsidePrediction = true;
2019-07-20 13:11:42 +02:00
base.Initialize();
SubscribeLocalEvent<InventorySlotsComponent, LocalPlayerAttachedEvent>(OnPlayerAttached);
SubscribeLocalEvent<InventorySlotsComponent, LocalPlayerDetachedEvent>(OnPlayerDetached);
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
SubscribeLocalEvent<InventoryComponent, ComponentShutdown>(OnShutdown);
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
SubscribeLocalEvent<InventorySlotsComponent, DidEquipEvent>((_, comp, args) =>
_equipEventsQueue.Enqueue((comp, args)));
SubscribeLocalEvent<InventorySlotsComponent, DidUnequipEvent>((_, comp, args) =>
_equipEventsQueue.Enqueue((comp, args)));
}
public override void Update(float frameTime)
{
base.Update(frameTime);
2022-03-13 04:05:11 +13:00
while (_equipEventsQueue.TryDequeue(out var tuple))
{
var (component, args) = tuple;
switch (args)
{
case DidEquipEvent equipped:
OnDidEquip(component, equipped);
break;
case DidUnequipEvent unequipped:
OnDidUnequip(component, unequipped);
break;
default:
throw new InvalidOperationException($"Received queued event of unknown type: {args.GetType()}");
}
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
private void OnDidUnequip(InventorySlotsComponent component, DidUnequipEvent args)
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
{
UpdateSlot(args.Equipee, component, args.Slot);
if (args.Equipee != _playerManager.LocalEntity)
return;
var update = new SlotSpriteUpdate(null, args.SlotGroup, args.Slot, false);
OnSpriteUpdate?.Invoke(update);
}
private void OnDidEquip(InventorySlotsComponent component, DidEquipEvent args)
{
UpdateSlot(args.Equipee, component, args.Slot);
if (args.Equipee != _playerManager.LocalEntity)
return;
var update = new SlotSpriteUpdate(args.Equipment, args.SlotGroup, args.Slot,
2023-09-11 21:20:46 +10:00
HasComp<StorageComponent>(args.Equipment));
OnSpriteUpdate?.Invoke(update);
}
private void OnShutdown(EntityUid uid, InventoryComponent component, ComponentShutdown args)
{
if (uid == _playerManager.LocalEntity)
OnUnlinkInventory?.Invoke();
}
private void OnPlayerDetached(EntityUid uid, InventorySlotsComponent component, LocalPlayerDetachedEvent args)
{
OnUnlinkInventory?.Invoke();
}
private void OnPlayerAttached(EntityUid uid, InventorySlotsComponent component, LocalPlayerAttachedEvent args)
{
if (TryGetSlots(uid, out var definitions))
{
foreach (var definition in definitions)
{
if (!TryGetSlotContainer(uid, definition.Name, out var container, out _))
continue;
if (!component.SlotData.TryGetValue(definition.Name, out var data))
{
data = new SlotData(definition);
component.SlotData[definition.Name] = data;
}
data.Container = container;
}
}
OnLinkInventorySlots?.Invoke(uid, component);
}
public override void Shutdown()
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
{
CommandBinds.Unregister<ClientInventorySystem>();
base.Shutdown();
}
2022-10-16 17:16:27 +13:00
protected override void OnInit(EntityUid uid, InventoryComponent component, ComponentInit args)
{
2022-10-16 17:16:27 +13:00
base.OnInit(uid, component, args);
_clothingVisualsSystem.InitClothing(uid, component);
if (!TryComp(uid, out InventorySlotsComponent? inventorySlots))
return;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
foreach (var slot in component.Slots)
{
TryAddSlotDef(uid, inventorySlots, slot);
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
public void ReloadInventory(InventorySlotsComponent? component = null)
{
var player = _playerManager.LocalEntity;
2022-10-28 16:34:28 +13:00
if (player == null || !Resolve(player.Value, ref component, false))
{
return;
}
OnUnlinkInventory?.Invoke();
OnLinkInventorySlots?.Invoke(player.Value, component);
}
public void SetSlotHighlight(EntityUid owner, InventorySlotsComponent component, string slotName, bool state)
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
{
var oldData = component.SlotData[slotName];
var newData = component.SlotData[slotName] = new SlotData(oldData, state);
if (owner == _playerManager.LocalEntity)
EntitySlotUpdate?.Invoke(newData);
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
public void UpdateSlot(EntityUid owner, InventorySlotsComponent component, string slotName,
bool? blocked = null, bool? highlight = null)
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
{
var oldData = component.SlotData[slotName];
var newHighlight = oldData.Highlighted;
var newBlocked = oldData.Blocked;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
if (blocked != null)
newBlocked = blocked.Value;
if (highlight != null)
newHighlight = highlight.Value;
var newData = component.SlotData[slotName] =
new SlotData(component.SlotData[slotName], newHighlight, newBlocked);
if (owner == _playerManager.LocalEntity)
EntitySlotUpdate?.Invoke(newData);
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
public bool TryAddSlotDef(EntityUid owner, InventorySlotsComponent component, SlotDefinition newSlotDef)
{
SlotData newSlotData = newSlotDef; //convert to slotData
if (!component.SlotData.TryAdd(newSlotDef.Name, newSlotData))
return false;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
if (owner == _playerManager.LocalEntity)
OnSlotAdded?.Invoke(newSlotData);
return true;
}
public void UIInventoryActivate(string slot)
{
Upstream sync (#1509) * Fix the tail wagging action being blocked by cuffs. (#38454) Update types.yml * Automatic changelog update * Remove redundant IoC Resolve in `EmptyOrWindowValidInTile` (#38446) Remove redundant IoC Resolve in EmptyOrWindowValidInTile * fix: trim five minutes of silence from bottle_clunk_2 (#38463) * Update patrons (#38470) * Forbid string literals for `SharedActionsSystem` methods (#38472) Forbid string literals for SharedActionsSystem methods * Chameleon Controller Implants can be deimplanted (#38439) * Automatic changelog update * Cleanup duplicate dependency in `AdminVerbSystem.Smites` (#38473) Cleanup duplicate dependency in AdminVerbSystem.Smites * fix: set correct layer visibility for power cell sprites (#38458) * fix: set correct layer visibility for power cell sprites * fix: use a default charge level for power cell sprites' appearance data * Remove Icon Smoothing for Airlocks, Doors, and Plastic Flaps, and Shutters from Walls (#38456) * Nuke Icon Smoothing * Update highsec.yml * Update plastic_flaps.yml * Scurrets (#38218) * Scurrets. * Add missing equipment YAML * Fix count of NamesFirstScurret * Resolve PR comments, wa. Also add like a bunch more wa replacements * ed * Update Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json * :rivflabbergasted: * Fixed spacings in scurret_last.ftl * Fix mangled endings of some last names * wawa * the scug has a spear for self defence * Automatic changelog update * Fail if we attempt to run publish on master (#38431) * Fail if we attempt to run publish on master BREAKING: FORKS REMOVE THIS * Update publish.yml * Fix styling for Admin Menu lists (#38261) * remove styleclass from playertab 'button' lines * cvar, fix button-style header alignment * Fix requested changes And also the extra cvar things I was meant to remove in the upstream merge * Tiny tweaks --------- Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> * Automatic changelog update * Add interaction test for retractable arm blade (#38452) * Add interaction test for retractable arm blade * Update for HandsSystem refactor * Revert "Update for HandsSystem refactor" This reverts commit e01bb9a7e318dd916240d57b30f48af9594bff1f. * Combine WaitAssertion blocks * Make... sloths... speak... slowly... (#38142) * Add SlowAccent * Apply SlowAccent to sloths * xmldocs * Automatic changelog update * Make gas tank UI a bit more network-happy (#38184) * fix: network gas tank output pressure * fix: don't overwrite gas tank output pressure during editing * allow to publish news without ui (#35262) * allow to publish news without ui * the hell was that * apply * apply review * sure Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * okay --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * add some documentation for visiting entity (#38475) * add some documentation for visiting entity to prevent someone from spending 5 minutes diving into the codebase * reviews Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> --------- Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> * SignalSwitchSystem: Check button is locked before toggling (#38474) Check button is locked before toggling * Automatic changelog update * Fix compile (#38477) * Fix wallmount interaction (#38111) * Automatic changelog update * Fix debug asserts when unequipping items (#38274) * Flask Visual Overhaul & YML Organizing (#38032) * Adding Back Baseline V1 Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Readability Change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * icon_open implementation, tidy up & attributions (fix lith/shiny flask ugly af open sprites) Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * good enough Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * No mo closed spills Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 1 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 2 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Flask Sounds & Attributions Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Cap flask inhands change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Lith flask Inhand Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Spacing * Fix? * Man... * Attributions Back in... * Im loosing it.. * REAL! * :/ * Again... * again :/ * Plz??? --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Automatic changelog update * Kills TurfHelpers (#37939) * Create TurfSystem equivalent for and obsolete TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.TryGetTileRef * Fix construction condition uses of TurfHelpers.GetTileRef * Fix last use of TurfHelpers.IsBlockedTurf * Create TurfSystem equivalent to and obsolete TurfHelpers.GetContentTileDefinition * Fix uses of TurfHelpers.GetContentTileDefinition(TileRef) * Fix uses of TurfHelpers.GetContentTileDefinition(Tile) * Create TurfSystem equivalent to and obsolete TurfHelpers.IsSpace * Fix EntitySystem uses of TurfHelpers.IsSpace(Tile) * Fix EntitySystem uses of TurfHelpers.IsSpace(TileRef) * Fix remaining uses of TurfHelpers.IsSpace * Fix uses of TurfHelpers.GetEntitiesInTile * Delete TurfHelpers.cs * Add GetEntitiesInTile lookup methods * Convert some GetEntitiesInTile methods to LookupSystem extension methods * Use new GetEntitiesInTile methods * Recycle spiderweb hashset * Recycle floor tile hashset * Allow Maintainers to use customvote command (#38385) Changed from Moderator perm to Round perm * Automatic changelog update * Make role ban pannel pretty (#37952) * Make role ban pannel pretty * Removed unused depencency * refactor: wider panel (no jumping due to scroll in english lang) minor readability improvements --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Automatic changelog update * Generic Numeric Alerts (#38370) * Fix styles for group button in loadout menu (#38488) * Fix styles color for group button in loadout menu * Show selected item count in loadout group UI Updated the loadout group container to display the number of selected items in a group. Added a new localization string to support this feature in the UI. * Resolve required changes * Automatic changelog update * fix: mops with liquid can hit people again (#38486) * Automatic changelog update * Treat duplicate dependency warnings as errors (#38480) * Treat duplicate dependency warnings as errors * GitHub workflows * commas * Maybe we just don't use these? * I think we can get rid of these? * Retractable items get removed by handcuffs (#38441) * init * oops * happens * review * fix * Update Credits (#38493) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * Fixed dirt tiles having identical names (#38500) * added prefix to planet dirt/grass * prefixes don't work, just doing renaming instead. * Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182) * adds hypereutactic back into the uplinks * Disables hum * Adds the Hypereutatic Blade for Nukies * Actually makes the sound so quiet no one can hear it * Apply suggestions from code review * Update Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Allow admins to export round logs to CSV files (#38206) * Automatic changelog update * MINOR SPELLING ERROR!!1!!1! (#38510) Spelling fix in the code of conduct Comunity ->Community * Staff of Healing for Pacifists (#38509) * Automatic changelog update * Command resolves. (#38519) * banlist-command * open-admin-notes-command * stealthmin-command * set-alert-level-command * remove unused usings * whitelist commands * Emotional Support Scurret locstrings (#38518) Missed during the atomization of the Wa Wa PR. * Content fix for `LocalizedCommands` `Loc` change (#38133) * Content fix for LocalizedCommands Loc change * Switch to LocalizationManager * Predict Flashes (#37640) Co-authored-by: ScarKy0 <scarky0@onet.eu> * Automatic changelog update * Remove excess `SingularityLevelChangedEvent` subscriptions (#38536) * Remove excess SingularityLevelChangedEvent subscriptions * RadiationSourceComponent too * Cleanup commented out code * Revisions and cleanup to dock and shuttle commands. (#38533) commit * Add wall-based ambient occlusion (#38276) * Add wall ambient occlusion * wawawewa * Work * cvars * Comment to make slart happy * Automatic changelog update * Update submodule to 263.0.0 (#38524) * update oasis (#37770) * Add uplink command minor revision and cleanup (#38532) * commit * Update AddUplinkCommand.cs * Fix IsSpace call (#38548) * Crew manifest command cleanup and LEC (#38544) commit * Re-Add Stamina Damage Resistances to Nukie & ERT Suits after the Test Merge. (#38526) * Add stamina damage resists to the bloodred suits. * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Update cmd-adminwho-desc (#38539) Update admin-who-command.ftl * Added a handheld station map to the cyborg thruster module (#38541) * Added a station map to the borg thruster module * Removed HandheldStationMapBorg & replaced it with HandheldStationMapUnpowered * Automatic changelog update * fix: correct wall AO having weird sharp edges (macOS only?) (#38552) * Fix displacement map rendering in UI (#38042) Fix displacement map rendering 918709cb4742d02e9822a651cf8e74727ba997de changed the way humans work to completely remove the stencil mask thing for clothing cutouts, in favor of displacement maps. Except it didn't actually remove the stencil parameters from the shader prototype, so this caused the shader to render incorrectly in SpriteView instances. I introduced a new DisplacedDraw shader that doesn't have the stencil in use, as removing the old one would probably be a more annoying breaking change. Fixes #37629 * Automatic changelog update * remove suffix from ChameleonControllerImplanter (#38554) * Update implanters.yml * Update Resources/Prototypes/Entities/Objects/Misc/implanters.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Bulldog desc fix (#38558) Co-authored-by: Vasilis The Pikachu <vasilis@pikachu.systems> * Automatic changelog update * cleanup air_alarm.yml and fire_alarm.yml (#38559) * Update air_alarm.yml * that too * Update air_alarm.yml * Fix cutter machine having free techmaint floor tiles (#38557) Fix BaseMaintTileRecipe Changed BaseTileRecipe to BaseMaintTileRecipe * Automatic changelog update * Lobby Audio from static to CVar (#38375) * Changed LobbyMusiccollection over to a Cvar and edited ContentAudioSystem.cs to use Cvar Values * Addedd Ability to modify the lobbyMusiccollection from the command line * Fixed changing lobby music while in the round * Deleted uneeded duplicate line * Removed additional duplicate lobbyplaylist line * Alphabatized imports and refactored to use Subs.CVar * Added error checking and default behaviour to CVar sub. * Refactored to use TryIndex and Allowed for a empty soundcollection when a sound collection is not found. Edited Cvar comment to reflect changes. * Made _lobbyMusicCollection nullable and addedd handling for null case where used. Also Changed LobbyMusicCollection Cvar over to audio rather than ambience. * Update Content.Server/Audio/ContentAudioSystem.cs --------- Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Electrocute command cleanup and localization (#38563) * hey look I knocked out a todo :shockedface: * Update Resources/Locale/en-US/electrocution/electrocute-command.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * allow combat mode toggling when unable to interact (#38573) allow combat mode toggling when cuffed or crit * update xeno techmaint floor name (#38555) Update tiles.yml * New status effect system (#37238) * spectra * documentation * added into liquid anomaly * Update TemporaryStealthComponent.cs * Update TemporaryStealthComponent.cs * integrated * new system * mark old status effect system as obsolete * ForcedSleeping new status effect * work with reagents * networking??? * Revert "integrated" This reverts commit bca02b82bae18ae131af593d7eb86e6de2745157. * Revert "Update TemporaryStealthComponent.cs" This reverts commit 4a5be8c4b704a0d1ff9544b2e245d8b2701ec580. * Revert "Update TemporaryStealthComponent.cs" This reverts commit a4875bcb41347638854bd723d96a51c3e6d38034. * Revert "added into liquid anomaly" This reverts commit df5086b14bb35f1467158a36807c0f2163a16d99. * Revert "documentation" This reverts commit 3629b9466758cbdfa4dd5e67ece122fa2f181138. * Revert "spectra" This reverts commit 2d03d88c16d16ad6831c19a7921b84600daeb284. * drowsiness status effect remove * reagents work * polish, remove test changes * first Fildrance review part * Update misc.yml * more fildrance review * final part * fix trailing spaces * sleeping status effect * drowsiness status effect * Create ModifyStatusEffect.cs * some tweak * Yay!!! Manual networking * minor nitpick * oopsie * refactor: xml-docs, notnullwhen attributes, whitespaces * fildrance and emo review * refactor: simplify check in SharedStatusEffectsSystem by using pattern matching, TryEffectsWithComp now returns set of Entity<T, StatusEffectComponent> --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Properly evaluate publish condition for master branch (#38556) * HandsSystem Refactor (#38438) * checkpoint * pt 2 * pt... i forgot * pt 4 * patch * More test fixes * optimization!!! * the REAL hand system * fix RetractableItemActionSystem.cs oversight * the review * test * remove test usage of body prototype * Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * hellcode * hellcode 2 * Minor cleanup * test * Chasing the last of the bugs * changes --------- Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * Fix PowerCellDrawComponent draw rate (#38562) * fix power cell draw rate * comment * Hand refactor bugfix (#38576) * Fix hand refactor 2 (#38578) * fix unwielding * hand refactor bugfix 2 * Added a ConfirmableAction component to ActionRevertPolymorph (#38570) * Added a ConfirmableAction component to ActionRevertPolymorph * Update Resources/Locale/en-US/actions/actions/polymorph.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Fixup Sericulture to be clonable (#38516) * Add CloningEvent and an action entity prototype * Remove redundant action prototype from Yaml * Add a field that might be changed * CR * CR - guard statement and Dirty * Convert DumpReagentGuideText command to LEC. (#38569) * commit * revert linq conversion * fix: EyeOffset when eyes are closed (#38534) * fix: EyeOffset when eyes are closed * fix: Relay only blocked on eyes closed action * cleanup: whitespace * fix: missing cancel on PVS, dependencies * remove: namespace import * change: apply from review * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Updated hat descriptions (#38156) * Updated hat descriptions * final touches * typo fix * final touchups * Quote fixes * Automatic changelog update * Add /showaccessreaders to +MAPPING and +DEBUG (#37759) feat: add /showaccessreaders to +MAPPING and +DEBUG * ShowHealthBarsCommand to LEC. (#38588) * mfw * Update Content.Client/Commands/ShowHealthBarsCommand.cs --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Forgor changelog for permission change (#38593) * Automatic changelog update * MapRenderer code fixes (#38357) * Fix MapRenderer integration test usage to properly show output. Added an ITestContextLike interface that can be used to properly run the integration test infrastructure OUTSIDE A TEST. * Use System.Test.Json instead of Newtonsoft.Json for MapRenderer * Fix map renderer JSON output being broken I love not testing or even reading the surrounding code. * Fix un-reusable integration instances getting leaked. The pair state was always getting set to Ready even if the instance was killed, meaning it was getting put back into the pool even if killed. * Mark map renderer integration instances as destructive to avoid memory leak. * Fix file specification handling. Map file specification is now backwards compatible again (loose filename match to search prototypes). It also supports proper direct OS filename arguments. The former is the fallback scenario is extremely important for the map server still. Cleaned up the way that target map files are passed through the application, so mixed file/prototype specifications are now handled properly (which can be caused by the fallback behavior). Fixes JSON data export to use the proper user-facing map name. This only works if a prototype ID is specified *or* the legacy file behavior is used. Restructured MapPainter into an instance that has multiple functions called on it, so not all data has to be passed through a single Paint() call. Clean up the godawful map/grid detection code. Now we just load both in a single call, because yes you can do that. This relies on LogOrphanedGrids = false in the map loader options, which I think is fine for our purposes. Improved error handling in much of the program. * Fix duplicate map names in map renderer output I'm not sure *what* this output is used for, but I'm sure having it duplicated per grid isn't intentional. * Make maprenderer command line parsing bail on unknown - options * Fix incorrect docs for --viewer maprenderer argument It doesn't change directory layout * Fix parallax layer specification to not use imgur as a fucking CDN Files are now copied to a separate folder _parallax, and these files are referenced by the parallax configuration. Parallax data is only output when instructed to via --parallax. This will break parallax on current map server builds, but it should be graceful. Also, that's fucking good considering we shouldn't be using imgur links. Purge it. * Fix incorrect assert in test pair clean return * Restore other map viewer parallax layers, fix attribution. * This isn't a valid copyright statement but the validator forces me to enter something here. * Hide mechanism and show mechanism commands to LEC (#38587) commit * Fix multi handed items (#38603) * Automatic changelog update * fix smart equip (#38605) * Automatic changelog update * New Status Effects system: Relay events (#38579) * Fixed Snacks Mispredicting on Clients (#38522) * Well this works * Removed merge conflict bait * PredictedDel * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Improve lathe queue performance (#38583) * Use an actual Queue * Store ProtoIds instead of prototypes * Network as NetListAsArray * Remove Serializable & NetSerializable from LatheRecipePrototype * Convert CurrentlyProducing too * No point using NetListAsArray<T> if you're going to .ToArray() it anyways. --------- Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com> * Quartermaster's PDA has AstroNav preinstalled (#38445) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Bladed flatcaps are minor contraband (#38597) * Automatic changelog update * Stop network serializing prototypes (#38602) * Stop network serializing prototypes Send the damn proto ID instead. * Fix sandbox violation * Clean up all missing `EntitySystem` proxy method uses (#38353) * Cleanup SharedRoleCodewordSystem (#38310) * cleanup * Update Content.Shared/Roles/RoleCodeword/SharedRoleCodewordSystem.cs Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Toy/Plushie Inhands and Wearables (#38514) * Automatic changelog update * Thief Guidebook Refresh (#38586) * Automatic changelog update * RespiratorSystem Cleanup (#38572) * Respirator Debodied * Forgot about alerts (also respirator testa and events) * Fix Urist eating air and not giving it back * Stop nuke ops from taking in a breath then taking in a second breath causing them to get a headache from carbon dioxide poisoning and failing TryStopNukeOpsFromConstantlyFailing(); * Consts are smelly, * Actually we don't need to raise the entity, just the component * Don't forget to remove the unused code today, said me yesterday * Remove all fallbacks * Debody that too --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> * Fix the sensor monitoring console forcing a GC every 3 seconds (#38146) * Optimize sensor monitoring window graph drawing * Add shared static Vector2 pool for all GraphView instances * Address requested changes * remove lock * New Status Effects API Overload (#38617) * I love API changes * Update Content.Shared/StatusEffectNew/StatusEffectSystem.API.cs * fix --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix silicons looking at their laws crashing the server (#38623) * fix RCD ghosts not disappearing when changing hand to empty (#38622) * Automatic changelog update * Refactor SeeingRainbows to new status effect system (#38620) * Make Review Requested label get applied to all opened PRs (#38625) It previously only applied automatically to PRs that have reviews requested, which happens if the PR touches files owned by code owners. Now it applies to *all* opened PRs. * Fix vocalization emotes (#38627) * Update submodule to 264.0.0 (#38629) * HoP's beret (#38601) * added HoP beret * added beret to loadout * added craft to machine * added beret to hop ddresser * Updated the authorship * Change on request * added 4-spaced * Hot fix of dresser * patchfor broken NetworkConfiguratorLinkMenu (#38632) fix * Fix solutions flickering when transferring contents (#34838) * Use Solution clones when applying SolutionComponent states * Revert "Use Solution clones when applying SolutionComponent states" This reverts commit 013fd111cf92b22562e00f98a7aaa49bc4b4ed62. * Make Solution implement ICloneable and rename Clone method. * Copy CanReact value when cloning a Solution * Convert to IRobustCloneable * Automatic changelog update * Fix typos in guidebook: Buisness → Business (#38636) * Fix typo in `MinorAntagonists.xml` Buisness → Business * Fix typo in `YourFirstCharacter.xml` Buisness → Business * AddBodyPartCommand localization. (#38612) commit * Automatic changelog update * Various Headphones Fixes and Tweaks (#38479) * sprites, wearables * neck * icon-on sprite * Automatic changelog update * Cleanup prototype instantiation in `DamageTest` (#38639) Cleanup prototype instantiation in DamageTest * Cleanup prototype instantiation in `ExplosionSystem` (#38642) Cleanup prototype instantiation in ExplosionSystem * Update Credits (#38646) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * fix ItemSlotsSystem debug assert (#38655) * Automatic changelog update * Allow the Command & Super door remotes to use the access of their user. (Re-creation of PR due to changes to game balance) (#35536) * Automatic changelog update * Added directional beacons (#38284) * Added directional beacons Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Fixed names Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Power stat and nuke codes commands get some LEC love. (#38585) * commit * requested changes. * Tweaks to admin CSV exporting (#38531) * Automatic changelog update * Dsay Dirty and Follow commands converted to LEC and localized. (#38666) * commit * whoopwhoopwhoop * Retro laser sprite fix (#38676) * Fixed everything except the icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fixed icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fix water coolers (#38681) * Automatic changelog update * Monochromacy typo fix (#38686) * fixes the typo * Fixed cloning looking for the trait, not the component, RE https://github.com/space-wizards/space-station-14/pull/38686#issuecomment-3025093504 * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Validate `CloningSettingsPrototype`s (#38688) * Validate CloningSettingsPrototypes * Update Content.IntegrationTests/Tests/Cloning/CloningSettingsPrototypeTest.cs Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Check EventComponents too --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Add test of objective-related console commands (#36400) * Add test of objective add/list/remove commands * Not sure why we're validating test prototypes, but sure * We don't need a map * CC Genpop and other misc fixes (#37494) * First commit: genpop and AI satellite * Revert AI satellite, add representative locker. * Automatic changelog update * Improvements and fixups for New Status Effect API (#38660) * ci: include pull request id in changelog link (#38504) Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> * Resolving Wizard casting recall on nuke disk making it impossible to disarm (#38661) * Resolving Wizard Recall on Nuke disk making it impossible to disarm - Adding a DisarmBomb case to nuke status update loop - Changing a few methods and parameters to properly follow formatting standards - Updating some names to follow camelCase * Updating missed tag * Reverting DataField change Should prevent this preventative bugfix being a breaking change. * Automatic changelog update * Predict healing and bloodstream (#38690) * initial commit * reapply 38126 * fix rootable * someone missed an important minus sign here * try this * fix * fix * reenable crit hits * cleanup * fix status time dirtying * fix * camelCase * make telesci wreck easier (#37569) rel * Reduce most salvage mob health, reduce most salvage weapon damage. (#38131) * Automatic changelog update * Switch HSV to the default colorspace for character customization (#38434) * Made HSV default for character editor * Adds/fixes comments to HSV defaulting * Added dropbox fix, potentially cursed * Revert "Added dropbox fix, potentially cursed" This reverts commit a709883366fbee813e839742125e70844672af29. --------- Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> * Automatic changelog update * Centcomm update (#38697) * Biome rework (#37735) * DungeonData rework Back to fields, serializes better, just make new layers dumby. * wawawewa * Fix this * Fixes * Port the work over * wawawewa * zoom * Kinda workin * Adjust wawa * Unloading work * Ore + entitytable fixes Iterate every dungeon not just last. * Big shot * wawawewa * Fixes * true * Fixes # Conflicts: # Content.Server/Procedural/DungeonJob/DungeonJob.cs * wawawewa * Fixes * Fix * Lot of work * wawawewa * Fixing * eh? * a * Fix a heap of stuff * Better ignored check * Reserve tile changes * biome * changes * wawawewa * Fixes & snow * Shadow fixes * wawawewa * smol * Add layer API * More work * wawawewa * Preloads and running again * wawawewa * Modified * Replacements and command * Runtime support * werk * Fix expeds + dungeon alltiles * reh --------- Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> * Fix: Don't deploy foldables when clicking on items inside containers (#38709) * Fix * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix world generation (#38713) * Fix world generation * Remove unused impoty * Scurrets - Audio Improvements (#38482) * Scurret audio tuning * Add new sfx * Update sneezing sfx * YAML support * Rename a folder * Pressure Relief Valve (#36708) * initial system (this math is probably WRONG) * General code cleanup and OnExamined support (holy moly this code sucks) * UICode and related events foundation TODO: - Actually write the XAML UI and the underlying system - Un-shitcode the entire thing - Actually test everything... * Working UI code TODO: Make predicted, as this certainly isn't predicted. Even though I said it was. It isn't. * Remove one TODO for unshitcoding the examine code * Add reminder yea * Make predicted (defenitely isn't) (also defenitely isn't a copypaste from pressure pump code) * It's predicted! TODO: - Give it snazzy predicted visuals! - Have a different field for pressure entry, lest it gets bulldozed every UI update. * Improve gas pressure relief valve UI TODO: Reminder to reduce amount of dirties using deltafields * Implement DirtyField prediction * Entity<T> cleanup A lot of Entity<T> conversions and lukewarm cleanup. Also got caught copy pasting code in 4K UHD but it's not like you couldn't tell. * More cleanup and comments * Remove TODO comment on bulldozing window title * """refactoring""" - Move appearance out of shared and finally fix it. Pointless to predict appearance in this instance. - More Entity<T> conversions because I like them. - Move UI creation handling over entirely to the ActivatableUI system. - Fix a hardcoded locale string (why????). * Add visuals * Revert debugging variable replacememt yea * Revert skissue * Remove unused using directives and remove TODO * Localize, cleanup, document * Fix adminlogging discrepancy * Add ability to construct, add guidebook entry * Clear up comment * Add guidebook tooltip to valve * Convert GasPressureReliefValveBoundUserInterface declaration into primary constructor * Adds more input handling and adds autofill on open * Un-deepfry input validator shitcode Genuinely what was I smoking * improve visuals logic * Refactor again - Update math to the correct implementation - Moved code that could be re-used in the future into a helper method under AtmosphereSystem.Gases.cs * I'm sorry but I hate warnings * Remove unused using directive in AtmosphereSystem.Gases.cs * Review and cleanup * Lukewarm UI glossup * Maintainer for the upstream project btw * Remove redundant state sets and messy logic * Unduplicate valve updater code * Redo UI (im sorry Slarti) * run tests * Test refactored UI messaging * Second round of UI improvements - God please find a way to improve this system. Feels bad. * Update loop implementation * Further predict UI * Clear up SetToCurrentThreshold * cleanup * Update to master + pipe layers and bug fixes want to run tests * fixes * Deploy rename pipebomb * Documentation and requested changes * Rename the method that wiggled away * Undo rounding changes * Fix comment * Rename and cleanup * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Revert biome rework (#38724) * Revert "Fix world generation (#38713)" This reverts commit 10fa6ff4af32f0ae59ed01f243164fcf6b31f965. * Revert "Biome rework (#37735)" This reverts commit fe7b96147c05afc160c33f033deca384e2886755. * Exo - Minor balance changes and fixes (#38689) * Automatic changelog update * Fix TextLinkTag (#32203) * Scurret PDA slot fix (#38777) * Scurrets get emergency EVA suit access (#38778) * Scurrets - spacing protection via adorable outfits * ALPHABETIZATION!! * Revert "HoP's beret (#38601)" This reverts commit e9c90fe66dec0ed9579847807d9babe934a66bae. Please check the maintainer meeting for details * Revert "Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182)" This reverts commit c03afeb29cf3ed5e751e8d206e79f9f24981484e. Please check the maintainer meeting for details * Changelog removal * Scurret naming fixes (#38776) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Scurret displacement map fixes (#38775) * sanitize MIDI parser (#38806) Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Add Breach of Permanent Confinement to Space Law (#38663) * Initial commit * Fix category in text * ADAPTATION --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> Signed-off-by: Nox38 <nebulousnox38@gmail.com> Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Kyle Tyo <36606155+VerinSenpai@users.noreply.github.com> Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> Co-authored-by: Tayrtahn <tayrtahn@gmail.com> Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com> Co-authored-by: Qerd <73325910+BigfootBravo@users.noreply.github.com> Co-authored-by: Ps3Moira <113228053+ps3moira@users.noreply.github.com> Co-authored-by: Hannah Giovanna Dawson <karakkaraz@gmail.com> Co-authored-by: Myra <vasilis@pikachu.systems> Co-authored-by: crazybrain23 <44417085+crazybrain23@users.noreply.github.com> Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: Just-a-Unity-Dev <67359748+Just-a-Unity-Dev@users.noreply.github.com> Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com> Co-authored-by: Prole <172158352+Prole0@users.noreply.github.com> Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com> Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com> Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Co-authored-by: qrwas <aleksandr.vernigora93@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com> Co-authored-by: keronshb <54602815+keronshb@users.noreply.github.com> Co-authored-by: Skybailey-dev <skybailey.01@gmail.com> Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Co-authored-by: ScarKy0 <scarky0@onet.eu> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com> Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com> Co-authored-by: Kittygyat <202250949+Kittygyat@users.noreply.github.com> Co-authored-by: John <50085876+AreYouConfused@users.noreply.github.com> Co-authored-by: Dragonjspider <140023808+Dragonjspider@users.noreply.github.com> Co-authored-by: beesterman <72782957+beesterman@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> Co-authored-by: qwerltaz <69696513+qwerltaz@users.noreply.github.com> Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Co-authored-by: rumaks <me@rumaks.xyz> Co-authored-by: poklj <compgeek223@gmail.com> Co-authored-by: Łukasz Mędrek <lukasz@lukaszm.xyz> Co-authored-by: Hitlinemoss <209321380+Hitlinemoss@users.noreply.github.com> Co-authored-by: Southbridge <7013162+southbridge-fur@users.noreply.github.com> Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> Co-authored-by: Tiniest Shark <head.rebel@yahoo.com> Co-authored-by: Andrew Malcolm O'Neill <105134723+maland1@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Princess-Cheeseballs@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: 96flo <163569033+96flo@users.noreply.github.com> Co-authored-by: Łukasz Lindert <lukasz.lindert@protonmail.com> Co-authored-by: Stefano Pigozzi <me@steffo.eu> Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com> Co-authored-by: Nox <nebulousnox38@gmail.com> Co-authored-by: Kowlin <10947836+Kowlin@users.noreply.github.com> Co-authored-by: imatsoup <93290208+imatsoup@users.noreply.github.com> Co-authored-by: UpAndLeaves <92269094+Alpha-Two@users.noreply.github.com> Co-authored-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com> Co-authored-by: Mora <46364955+TrixxedHeart@users.noreply.github.com> Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com> Co-authored-by: Winkarst-cpu <74284083+Winkarst-cpu@users.noreply.github.com> Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
2025-07-08 11:59:20 +03:00
RaisePredictiveEvent(new UseSlotNetworkMessage(slot));
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
public void UIInventoryStorageActivate(string slot)
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
{
Upstream sync (#1509) * Fix the tail wagging action being blocked by cuffs. (#38454) Update types.yml * Automatic changelog update * Remove redundant IoC Resolve in `EmptyOrWindowValidInTile` (#38446) Remove redundant IoC Resolve in EmptyOrWindowValidInTile * fix: trim five minutes of silence from bottle_clunk_2 (#38463) * Update patrons (#38470) * Forbid string literals for `SharedActionsSystem` methods (#38472) Forbid string literals for SharedActionsSystem methods * Chameleon Controller Implants can be deimplanted (#38439) * Automatic changelog update * Cleanup duplicate dependency in `AdminVerbSystem.Smites` (#38473) Cleanup duplicate dependency in AdminVerbSystem.Smites * fix: set correct layer visibility for power cell sprites (#38458) * fix: set correct layer visibility for power cell sprites * fix: use a default charge level for power cell sprites' appearance data * Remove Icon Smoothing for Airlocks, Doors, and Plastic Flaps, and Shutters from Walls (#38456) * Nuke Icon Smoothing * Update highsec.yml * Update plastic_flaps.yml * Scurrets (#38218) * Scurrets. * Add missing equipment YAML * Fix count of NamesFirstScurret * Resolve PR comments, wa. Also add like a bunch more wa replacements * ed * Update Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json * :rivflabbergasted: * Fixed spacings in scurret_last.ftl * Fix mangled endings of some last names * wawa * the scug has a spear for self defence * Automatic changelog update * Fail if we attempt to run publish on master (#38431) * Fail if we attempt to run publish on master BREAKING: FORKS REMOVE THIS * Update publish.yml * Fix styling for Admin Menu lists (#38261) * remove styleclass from playertab 'button' lines * cvar, fix button-style header alignment * Fix requested changes And also the extra cvar things I was meant to remove in the upstream merge * Tiny tweaks --------- Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> * Automatic changelog update * Add interaction test for retractable arm blade (#38452) * Add interaction test for retractable arm blade * Update for HandsSystem refactor * Revert "Update for HandsSystem refactor" This reverts commit e01bb9a7e318dd916240d57b30f48af9594bff1f. * Combine WaitAssertion blocks * Make... sloths... speak... slowly... (#38142) * Add SlowAccent * Apply SlowAccent to sloths * xmldocs * Automatic changelog update * Make gas tank UI a bit more network-happy (#38184) * fix: network gas tank output pressure * fix: don't overwrite gas tank output pressure during editing * allow to publish news without ui (#35262) * allow to publish news without ui * the hell was that * apply * apply review * sure Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * okay --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * add some documentation for visiting entity (#38475) * add some documentation for visiting entity to prevent someone from spending 5 minutes diving into the codebase * reviews Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> --------- Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> * SignalSwitchSystem: Check button is locked before toggling (#38474) Check button is locked before toggling * Automatic changelog update * Fix compile (#38477) * Fix wallmount interaction (#38111) * Automatic changelog update * Fix debug asserts when unequipping items (#38274) * Flask Visual Overhaul & YML Organizing (#38032) * Adding Back Baseline V1 Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Readability Change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * icon_open implementation, tidy up & attributions (fix lith/shiny flask ugly af open sprites) Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * good enough Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * No mo closed spills Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 1 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 2 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Flask Sounds & Attributions Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Cap flask inhands change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Lith flask Inhand Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Spacing * Fix? * Man... * Attributions Back in... * Im loosing it.. * REAL! * :/ * Again... * again :/ * Plz??? --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Automatic changelog update * Kills TurfHelpers (#37939) * Create TurfSystem equivalent for and obsolete TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.TryGetTileRef * Fix construction condition uses of TurfHelpers.GetTileRef * Fix last use of TurfHelpers.IsBlockedTurf * Create TurfSystem equivalent to and obsolete TurfHelpers.GetContentTileDefinition * Fix uses of TurfHelpers.GetContentTileDefinition(TileRef) * Fix uses of TurfHelpers.GetContentTileDefinition(Tile) * Create TurfSystem equivalent to and obsolete TurfHelpers.IsSpace * Fix EntitySystem uses of TurfHelpers.IsSpace(Tile) * Fix EntitySystem uses of TurfHelpers.IsSpace(TileRef) * Fix remaining uses of TurfHelpers.IsSpace * Fix uses of TurfHelpers.GetEntitiesInTile * Delete TurfHelpers.cs * Add GetEntitiesInTile lookup methods * Convert some GetEntitiesInTile methods to LookupSystem extension methods * Use new GetEntitiesInTile methods * Recycle spiderweb hashset * Recycle floor tile hashset * Allow Maintainers to use customvote command (#38385) Changed from Moderator perm to Round perm * Automatic changelog update * Make role ban pannel pretty (#37952) * Make role ban pannel pretty * Removed unused depencency * refactor: wider panel (no jumping due to scroll in english lang) minor readability improvements --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Automatic changelog update * Generic Numeric Alerts (#38370) * Fix styles for group button in loadout menu (#38488) * Fix styles color for group button in loadout menu * Show selected item count in loadout group UI Updated the loadout group container to display the number of selected items in a group. Added a new localization string to support this feature in the UI. * Resolve required changes * Automatic changelog update * fix: mops with liquid can hit people again (#38486) * Automatic changelog update * Treat duplicate dependency warnings as errors (#38480) * Treat duplicate dependency warnings as errors * GitHub workflows * commas * Maybe we just don't use these? * I think we can get rid of these? * Retractable items get removed by handcuffs (#38441) * init * oops * happens * review * fix * Update Credits (#38493) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * Fixed dirt tiles having identical names (#38500) * added prefix to planet dirt/grass * prefixes don't work, just doing renaming instead. * Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182) * adds hypereutactic back into the uplinks * Disables hum * Adds the Hypereutatic Blade for Nukies * Actually makes the sound so quiet no one can hear it * Apply suggestions from code review * Update Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Allow admins to export round logs to CSV files (#38206) * Automatic changelog update * MINOR SPELLING ERROR!!1!!1! (#38510) Spelling fix in the code of conduct Comunity ->Community * Staff of Healing for Pacifists (#38509) * Automatic changelog update * Command resolves. (#38519) * banlist-command * open-admin-notes-command * stealthmin-command * set-alert-level-command * remove unused usings * whitelist commands * Emotional Support Scurret locstrings (#38518) Missed during the atomization of the Wa Wa PR. * Content fix for `LocalizedCommands` `Loc` change (#38133) * Content fix for LocalizedCommands Loc change * Switch to LocalizationManager * Predict Flashes (#37640) Co-authored-by: ScarKy0 <scarky0@onet.eu> * Automatic changelog update * Remove excess `SingularityLevelChangedEvent` subscriptions (#38536) * Remove excess SingularityLevelChangedEvent subscriptions * RadiationSourceComponent too * Cleanup commented out code * Revisions and cleanup to dock and shuttle commands. (#38533) commit * Add wall-based ambient occlusion (#38276) * Add wall ambient occlusion * wawawewa * Work * cvars * Comment to make slart happy * Automatic changelog update * Update submodule to 263.0.0 (#38524) * update oasis (#37770) * Add uplink command minor revision and cleanup (#38532) * commit * Update AddUplinkCommand.cs * Fix IsSpace call (#38548) * Crew manifest command cleanup and LEC (#38544) commit * Re-Add Stamina Damage Resistances to Nukie & ERT Suits after the Test Merge. (#38526) * Add stamina damage resists to the bloodred suits. * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Update cmd-adminwho-desc (#38539) Update admin-who-command.ftl * Added a handheld station map to the cyborg thruster module (#38541) * Added a station map to the borg thruster module * Removed HandheldStationMapBorg & replaced it with HandheldStationMapUnpowered * Automatic changelog update * fix: correct wall AO having weird sharp edges (macOS only?) (#38552) * Fix displacement map rendering in UI (#38042) Fix displacement map rendering 918709cb4742d02e9822a651cf8e74727ba997de changed the way humans work to completely remove the stencil mask thing for clothing cutouts, in favor of displacement maps. Except it didn't actually remove the stencil parameters from the shader prototype, so this caused the shader to render incorrectly in SpriteView instances. I introduced a new DisplacedDraw shader that doesn't have the stencil in use, as removing the old one would probably be a more annoying breaking change. Fixes #37629 * Automatic changelog update * remove suffix from ChameleonControllerImplanter (#38554) * Update implanters.yml * Update Resources/Prototypes/Entities/Objects/Misc/implanters.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Bulldog desc fix (#38558) Co-authored-by: Vasilis The Pikachu <vasilis@pikachu.systems> * Automatic changelog update * cleanup air_alarm.yml and fire_alarm.yml (#38559) * Update air_alarm.yml * that too * Update air_alarm.yml * Fix cutter machine having free techmaint floor tiles (#38557) Fix BaseMaintTileRecipe Changed BaseTileRecipe to BaseMaintTileRecipe * Automatic changelog update * Lobby Audio from static to CVar (#38375) * Changed LobbyMusiccollection over to a Cvar and edited ContentAudioSystem.cs to use Cvar Values * Addedd Ability to modify the lobbyMusiccollection from the command line * Fixed changing lobby music while in the round * Deleted uneeded duplicate line * Removed additional duplicate lobbyplaylist line * Alphabatized imports and refactored to use Subs.CVar * Added error checking and default behaviour to CVar sub. * Refactored to use TryIndex and Allowed for a empty soundcollection when a sound collection is not found. Edited Cvar comment to reflect changes. * Made _lobbyMusicCollection nullable and addedd handling for null case where used. Also Changed LobbyMusicCollection Cvar over to audio rather than ambience. * Update Content.Server/Audio/ContentAudioSystem.cs --------- Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Electrocute command cleanup and localization (#38563) * hey look I knocked out a todo :shockedface: * Update Resources/Locale/en-US/electrocution/electrocute-command.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * allow combat mode toggling when unable to interact (#38573) allow combat mode toggling when cuffed or crit * update xeno techmaint floor name (#38555) Update tiles.yml * New status effect system (#37238) * spectra * documentation * added into liquid anomaly * Update TemporaryStealthComponent.cs * Update TemporaryStealthComponent.cs * integrated * new system * mark old status effect system as obsolete * ForcedSleeping new status effect * work with reagents * networking??? * Revert "integrated" This reverts commit bca02b82bae18ae131af593d7eb86e6de2745157. * Revert "Update TemporaryStealthComponent.cs" This reverts commit 4a5be8c4b704a0d1ff9544b2e245d8b2701ec580. * Revert "Update TemporaryStealthComponent.cs" This reverts commit a4875bcb41347638854bd723d96a51c3e6d38034. * Revert "added into liquid anomaly" This reverts commit df5086b14bb35f1467158a36807c0f2163a16d99. * Revert "documentation" This reverts commit 3629b9466758cbdfa4dd5e67ece122fa2f181138. * Revert "spectra" This reverts commit 2d03d88c16d16ad6831c19a7921b84600daeb284. * drowsiness status effect remove * reagents work * polish, remove test changes * first Fildrance review part * Update misc.yml * more fildrance review * final part * fix trailing spaces * sleeping status effect * drowsiness status effect * Create ModifyStatusEffect.cs * some tweak * Yay!!! Manual networking * minor nitpick * oopsie * refactor: xml-docs, notnullwhen attributes, whitespaces * fildrance and emo review * refactor: simplify check in SharedStatusEffectsSystem by using pattern matching, TryEffectsWithComp now returns set of Entity<T, StatusEffectComponent> --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Properly evaluate publish condition for master branch (#38556) * HandsSystem Refactor (#38438) * checkpoint * pt 2 * pt... i forgot * pt 4 * patch * More test fixes * optimization!!! * the REAL hand system * fix RetractableItemActionSystem.cs oversight * the review * test * remove test usage of body prototype * Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * hellcode * hellcode 2 * Minor cleanup * test * Chasing the last of the bugs * changes --------- Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * Fix PowerCellDrawComponent draw rate (#38562) * fix power cell draw rate * comment * Hand refactor bugfix (#38576) * Fix hand refactor 2 (#38578) * fix unwielding * hand refactor bugfix 2 * Added a ConfirmableAction component to ActionRevertPolymorph (#38570) * Added a ConfirmableAction component to ActionRevertPolymorph * Update Resources/Locale/en-US/actions/actions/polymorph.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Fixup Sericulture to be clonable (#38516) * Add CloningEvent and an action entity prototype * Remove redundant action prototype from Yaml * Add a field that might be changed * CR * CR - guard statement and Dirty * Convert DumpReagentGuideText command to LEC. (#38569) * commit * revert linq conversion * fix: EyeOffset when eyes are closed (#38534) * fix: EyeOffset when eyes are closed * fix: Relay only blocked on eyes closed action * cleanup: whitespace * fix: missing cancel on PVS, dependencies * remove: namespace import * change: apply from review * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Updated hat descriptions (#38156) * Updated hat descriptions * final touches * typo fix * final touchups * Quote fixes * Automatic changelog update * Add /showaccessreaders to +MAPPING and +DEBUG (#37759) feat: add /showaccessreaders to +MAPPING and +DEBUG * ShowHealthBarsCommand to LEC. (#38588) * mfw * Update Content.Client/Commands/ShowHealthBarsCommand.cs --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Forgor changelog for permission change (#38593) * Automatic changelog update * MapRenderer code fixes (#38357) * Fix MapRenderer integration test usage to properly show output. Added an ITestContextLike interface that can be used to properly run the integration test infrastructure OUTSIDE A TEST. * Use System.Test.Json instead of Newtonsoft.Json for MapRenderer * Fix map renderer JSON output being broken I love not testing or even reading the surrounding code. * Fix un-reusable integration instances getting leaked. The pair state was always getting set to Ready even if the instance was killed, meaning it was getting put back into the pool even if killed. * Mark map renderer integration instances as destructive to avoid memory leak. * Fix file specification handling. Map file specification is now backwards compatible again (loose filename match to search prototypes). It also supports proper direct OS filename arguments. The former is the fallback scenario is extremely important for the map server still. Cleaned up the way that target map files are passed through the application, so mixed file/prototype specifications are now handled properly (which can be caused by the fallback behavior). Fixes JSON data export to use the proper user-facing map name. This only works if a prototype ID is specified *or* the legacy file behavior is used. Restructured MapPainter into an instance that has multiple functions called on it, so not all data has to be passed through a single Paint() call. Clean up the godawful map/grid detection code. Now we just load both in a single call, because yes you can do that. This relies on LogOrphanedGrids = false in the map loader options, which I think is fine for our purposes. Improved error handling in much of the program. * Fix duplicate map names in map renderer output I'm not sure *what* this output is used for, but I'm sure having it duplicated per grid isn't intentional. * Make maprenderer command line parsing bail on unknown - options * Fix incorrect docs for --viewer maprenderer argument It doesn't change directory layout * Fix parallax layer specification to not use imgur as a fucking CDN Files are now copied to a separate folder _parallax, and these files are referenced by the parallax configuration. Parallax data is only output when instructed to via --parallax. This will break parallax on current map server builds, but it should be graceful. Also, that's fucking good considering we shouldn't be using imgur links. Purge it. * Fix incorrect assert in test pair clean return * Restore other map viewer parallax layers, fix attribution. * This isn't a valid copyright statement but the validator forces me to enter something here. * Hide mechanism and show mechanism commands to LEC (#38587) commit * Fix multi handed items (#38603) * Automatic changelog update * fix smart equip (#38605) * Automatic changelog update * New Status Effects system: Relay events (#38579) * Fixed Snacks Mispredicting on Clients (#38522) * Well this works * Removed merge conflict bait * PredictedDel * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Improve lathe queue performance (#38583) * Use an actual Queue * Store ProtoIds instead of prototypes * Network as NetListAsArray * Remove Serializable & NetSerializable from LatheRecipePrototype * Convert CurrentlyProducing too * No point using NetListAsArray<T> if you're going to .ToArray() it anyways. --------- Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com> * Quartermaster's PDA has AstroNav preinstalled (#38445) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Bladed flatcaps are minor contraband (#38597) * Automatic changelog update * Stop network serializing prototypes (#38602) * Stop network serializing prototypes Send the damn proto ID instead. * Fix sandbox violation * Clean up all missing `EntitySystem` proxy method uses (#38353) * Cleanup SharedRoleCodewordSystem (#38310) * cleanup * Update Content.Shared/Roles/RoleCodeword/SharedRoleCodewordSystem.cs Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Toy/Plushie Inhands and Wearables (#38514) * Automatic changelog update * Thief Guidebook Refresh (#38586) * Automatic changelog update * RespiratorSystem Cleanup (#38572) * Respirator Debodied * Forgot about alerts (also respirator testa and events) * Fix Urist eating air and not giving it back * Stop nuke ops from taking in a breath then taking in a second breath causing them to get a headache from carbon dioxide poisoning and failing TryStopNukeOpsFromConstantlyFailing(); * Consts are smelly, * Actually we don't need to raise the entity, just the component * Don't forget to remove the unused code today, said me yesterday * Remove all fallbacks * Debody that too --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> * Fix the sensor monitoring console forcing a GC every 3 seconds (#38146) * Optimize sensor monitoring window graph drawing * Add shared static Vector2 pool for all GraphView instances * Address requested changes * remove lock * New Status Effects API Overload (#38617) * I love API changes * Update Content.Shared/StatusEffectNew/StatusEffectSystem.API.cs * fix --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix silicons looking at their laws crashing the server (#38623) * fix RCD ghosts not disappearing when changing hand to empty (#38622) * Automatic changelog update * Refactor SeeingRainbows to new status effect system (#38620) * Make Review Requested label get applied to all opened PRs (#38625) It previously only applied automatically to PRs that have reviews requested, which happens if the PR touches files owned by code owners. Now it applies to *all* opened PRs. * Fix vocalization emotes (#38627) * Update submodule to 264.0.0 (#38629) * HoP's beret (#38601) * added HoP beret * added beret to loadout * added craft to machine * added beret to hop ddresser * Updated the authorship * Change on request * added 4-spaced * Hot fix of dresser * patchfor broken NetworkConfiguratorLinkMenu (#38632) fix * Fix solutions flickering when transferring contents (#34838) * Use Solution clones when applying SolutionComponent states * Revert "Use Solution clones when applying SolutionComponent states" This reverts commit 013fd111cf92b22562e00f98a7aaa49bc4b4ed62. * Make Solution implement ICloneable and rename Clone method. * Copy CanReact value when cloning a Solution * Convert to IRobustCloneable * Automatic changelog update * Fix typos in guidebook: Buisness → Business (#38636) * Fix typo in `MinorAntagonists.xml` Buisness → Business * Fix typo in `YourFirstCharacter.xml` Buisness → Business * AddBodyPartCommand localization. (#38612) commit * Automatic changelog update * Various Headphones Fixes and Tweaks (#38479) * sprites, wearables * neck * icon-on sprite * Automatic changelog update * Cleanup prototype instantiation in `DamageTest` (#38639) Cleanup prototype instantiation in DamageTest * Cleanup prototype instantiation in `ExplosionSystem` (#38642) Cleanup prototype instantiation in ExplosionSystem * Update Credits (#38646) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * fix ItemSlotsSystem debug assert (#38655) * Automatic changelog update * Allow the Command & Super door remotes to use the access of their user. (Re-creation of PR due to changes to game balance) (#35536) * Automatic changelog update * Added directional beacons (#38284) * Added directional beacons Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Fixed names Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Power stat and nuke codes commands get some LEC love. (#38585) * commit * requested changes. * Tweaks to admin CSV exporting (#38531) * Automatic changelog update * Dsay Dirty and Follow commands converted to LEC and localized. (#38666) * commit * whoopwhoopwhoop * Retro laser sprite fix (#38676) * Fixed everything except the icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fixed icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fix water coolers (#38681) * Automatic changelog update * Monochromacy typo fix (#38686) * fixes the typo * Fixed cloning looking for the trait, not the component, RE https://github.com/space-wizards/space-station-14/pull/38686#issuecomment-3025093504 * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Validate `CloningSettingsPrototype`s (#38688) * Validate CloningSettingsPrototypes * Update Content.IntegrationTests/Tests/Cloning/CloningSettingsPrototypeTest.cs Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Check EventComponents too --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Add test of objective-related console commands (#36400) * Add test of objective add/list/remove commands * Not sure why we're validating test prototypes, but sure * We don't need a map * CC Genpop and other misc fixes (#37494) * First commit: genpop and AI satellite * Revert AI satellite, add representative locker. * Automatic changelog update * Improvements and fixups for New Status Effect API (#38660) * ci: include pull request id in changelog link (#38504) Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> * Resolving Wizard casting recall on nuke disk making it impossible to disarm (#38661) * Resolving Wizard Recall on Nuke disk making it impossible to disarm - Adding a DisarmBomb case to nuke status update loop - Changing a few methods and parameters to properly follow formatting standards - Updating some names to follow camelCase * Updating missed tag * Reverting DataField change Should prevent this preventative bugfix being a breaking change. * Automatic changelog update * Predict healing and bloodstream (#38690) * initial commit * reapply 38126 * fix rootable * someone missed an important minus sign here * try this * fix * fix * reenable crit hits * cleanup * fix status time dirtying * fix * camelCase * make telesci wreck easier (#37569) rel * Reduce most salvage mob health, reduce most salvage weapon damage. (#38131) * Automatic changelog update * Switch HSV to the default colorspace for character customization (#38434) * Made HSV default for character editor * Adds/fixes comments to HSV defaulting * Added dropbox fix, potentially cursed * Revert "Added dropbox fix, potentially cursed" This reverts commit a709883366fbee813e839742125e70844672af29. --------- Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> * Automatic changelog update * Centcomm update (#38697) * Biome rework (#37735) * DungeonData rework Back to fields, serializes better, just make new layers dumby. * wawawewa * Fix this * Fixes * Port the work over * wawawewa * zoom * Kinda workin * Adjust wawa * Unloading work * Ore + entitytable fixes Iterate every dungeon not just last. * Big shot * wawawewa * Fixes * true * Fixes # Conflicts: # Content.Server/Procedural/DungeonJob/DungeonJob.cs * wawawewa * Fixes * Fix * Lot of work * wawawewa * Fixing * eh? * a * Fix a heap of stuff * Better ignored check * Reserve tile changes * biome * changes * wawawewa * Fixes & snow * Shadow fixes * wawawewa * smol * Add layer API * More work * wawawewa * Preloads and running again * wawawewa * Modified * Replacements and command * Runtime support * werk * Fix expeds + dungeon alltiles * reh --------- Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> * Fix: Don't deploy foldables when clicking on items inside containers (#38709) * Fix * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix world generation (#38713) * Fix world generation * Remove unused impoty * Scurrets - Audio Improvements (#38482) * Scurret audio tuning * Add new sfx * Update sneezing sfx * YAML support * Rename a folder * Pressure Relief Valve (#36708) * initial system (this math is probably WRONG) * General code cleanup and OnExamined support (holy moly this code sucks) * UICode and related events foundation TODO: - Actually write the XAML UI and the underlying system - Un-shitcode the entire thing - Actually test everything... * Working UI code TODO: Make predicted, as this certainly isn't predicted. Even though I said it was. It isn't. * Remove one TODO for unshitcoding the examine code * Add reminder yea * Make predicted (defenitely isn't) (also defenitely isn't a copypaste from pressure pump code) * It's predicted! TODO: - Give it snazzy predicted visuals! - Have a different field for pressure entry, lest it gets bulldozed every UI update. * Improve gas pressure relief valve UI TODO: Reminder to reduce amount of dirties using deltafields * Implement DirtyField prediction * Entity<T> cleanup A lot of Entity<T> conversions and lukewarm cleanup. Also got caught copy pasting code in 4K UHD but it's not like you couldn't tell. * More cleanup and comments * Remove TODO comment on bulldozing window title * """refactoring""" - Move appearance out of shared and finally fix it. Pointless to predict appearance in this instance. - More Entity<T> conversions because I like them. - Move UI creation handling over entirely to the ActivatableUI system. - Fix a hardcoded locale string (why????). * Add visuals * Revert debugging variable replacememt yea * Revert skissue * Remove unused using directives and remove TODO * Localize, cleanup, document * Fix adminlogging discrepancy * Add ability to construct, add guidebook entry * Clear up comment * Add guidebook tooltip to valve * Convert GasPressureReliefValveBoundUserInterface declaration into primary constructor * Adds more input handling and adds autofill on open * Un-deepfry input validator shitcode Genuinely what was I smoking * improve visuals logic * Refactor again - Update math to the correct implementation - Moved code that could be re-used in the future into a helper method under AtmosphereSystem.Gases.cs * I'm sorry but I hate warnings * Remove unused using directive in AtmosphereSystem.Gases.cs * Review and cleanup * Lukewarm UI glossup * Maintainer for the upstream project btw * Remove redundant state sets and messy logic * Unduplicate valve updater code * Redo UI (im sorry Slarti) * run tests * Test refactored UI messaging * Second round of UI improvements - God please find a way to improve this system. Feels bad. * Update loop implementation * Further predict UI * Clear up SetToCurrentThreshold * cleanup * Update to master + pipe layers and bug fixes want to run tests * fixes * Deploy rename pipebomb * Documentation and requested changes * Rename the method that wiggled away * Undo rounding changes * Fix comment * Rename and cleanup * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Revert biome rework (#38724) * Revert "Fix world generation (#38713)" This reverts commit 10fa6ff4af32f0ae59ed01f243164fcf6b31f965. * Revert "Biome rework (#37735)" This reverts commit fe7b96147c05afc160c33f033deca384e2886755. * Exo - Minor balance changes and fixes (#38689) * Automatic changelog update * Fix TextLinkTag (#32203) * Scurret PDA slot fix (#38777) * Scurrets get emergency EVA suit access (#38778) * Scurrets - spacing protection via adorable outfits * ALPHABETIZATION!! * Revert "HoP's beret (#38601)" This reverts commit e9c90fe66dec0ed9579847807d9babe934a66bae. Please check the maintainer meeting for details * Revert "Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182)" This reverts commit c03afeb29cf3ed5e751e8d206e79f9f24981484e. Please check the maintainer meeting for details * Changelog removal * Scurret naming fixes (#38776) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Scurret displacement map fixes (#38775) * sanitize MIDI parser (#38806) Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Add Breach of Permanent Confinement to Space Law (#38663) * Initial commit * Fix category in text * ADAPTATION --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> Signed-off-by: Nox38 <nebulousnox38@gmail.com> Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Kyle Tyo <36606155+VerinSenpai@users.noreply.github.com> Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> Co-authored-by: Tayrtahn <tayrtahn@gmail.com> Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com> Co-authored-by: Qerd <73325910+BigfootBravo@users.noreply.github.com> Co-authored-by: Ps3Moira <113228053+ps3moira@users.noreply.github.com> Co-authored-by: Hannah Giovanna Dawson <karakkaraz@gmail.com> Co-authored-by: Myra <vasilis@pikachu.systems> Co-authored-by: crazybrain23 <44417085+crazybrain23@users.noreply.github.com> Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: Just-a-Unity-Dev <67359748+Just-a-Unity-Dev@users.noreply.github.com> Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com> Co-authored-by: Prole <172158352+Prole0@users.noreply.github.com> Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com> Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com> Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Co-authored-by: qrwas <aleksandr.vernigora93@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com> Co-authored-by: keronshb <54602815+keronshb@users.noreply.github.com> Co-authored-by: Skybailey-dev <skybailey.01@gmail.com> Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Co-authored-by: ScarKy0 <scarky0@onet.eu> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com> Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com> Co-authored-by: Kittygyat <202250949+Kittygyat@users.noreply.github.com> Co-authored-by: John <50085876+AreYouConfused@users.noreply.github.com> Co-authored-by: Dragonjspider <140023808+Dragonjspider@users.noreply.github.com> Co-authored-by: beesterman <72782957+beesterman@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> Co-authored-by: qwerltaz <69696513+qwerltaz@users.noreply.github.com> Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Co-authored-by: rumaks <me@rumaks.xyz> Co-authored-by: poklj <compgeek223@gmail.com> Co-authored-by: Łukasz Mędrek <lukasz@lukaszm.xyz> Co-authored-by: Hitlinemoss <209321380+Hitlinemoss@users.noreply.github.com> Co-authored-by: Southbridge <7013162+southbridge-fur@users.noreply.github.com> Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> Co-authored-by: Tiniest Shark <head.rebel@yahoo.com> Co-authored-by: Andrew Malcolm O'Neill <105134723+maland1@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Princess-Cheeseballs@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: 96flo <163569033+96flo@users.noreply.github.com> Co-authored-by: Łukasz Lindert <lukasz.lindert@protonmail.com> Co-authored-by: Stefano Pigozzi <me@steffo.eu> Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com> Co-authored-by: Nox <nebulousnox38@gmail.com> Co-authored-by: Kowlin <10947836+Kowlin@users.noreply.github.com> Co-authored-by: imatsoup <93290208+imatsoup@users.noreply.github.com> Co-authored-by: UpAndLeaves <92269094+Alpha-Two@users.noreply.github.com> Co-authored-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com> Co-authored-by: Mora <46364955+TrixxedHeart@users.noreply.github.com> Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com> Co-authored-by: Winkarst-cpu <74284083+Winkarst-cpu@users.noreply.github.com> Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
2025-07-08 11:59:20 +03:00
RaisePredictiveEvent(new OpenSlotStorageNetworkMessage(slot));
}
public void UIInventoryExamine(string slot, EntityUid uid)
{
if (!TryGetSlotEntity(uid, slot, out var item))
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
return;
_examine.DoExamine(item.Value);
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
public void UIInventoryOpenContextMenu(string slot, EntityUid uid)
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
{
if (!TryGetSlotEntity(uid, slot, out var item))
return;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
_ui.GetUIController<VerbMenuUIController>().OpenVerbMenu(item.Value);
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
public void UIInventoryActivateItem(string slot, EntityUid uid)
{
if (!TryGetSlotEntity(uid, slot, out var item))
return;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
Upstream sync (#1509) * Fix the tail wagging action being blocked by cuffs. (#38454) Update types.yml * Automatic changelog update * Remove redundant IoC Resolve in `EmptyOrWindowValidInTile` (#38446) Remove redundant IoC Resolve in EmptyOrWindowValidInTile * fix: trim five minutes of silence from bottle_clunk_2 (#38463) * Update patrons (#38470) * Forbid string literals for `SharedActionsSystem` methods (#38472) Forbid string literals for SharedActionsSystem methods * Chameleon Controller Implants can be deimplanted (#38439) * Automatic changelog update * Cleanup duplicate dependency in `AdminVerbSystem.Smites` (#38473) Cleanup duplicate dependency in AdminVerbSystem.Smites * fix: set correct layer visibility for power cell sprites (#38458) * fix: set correct layer visibility for power cell sprites * fix: use a default charge level for power cell sprites' appearance data * Remove Icon Smoothing for Airlocks, Doors, and Plastic Flaps, and Shutters from Walls (#38456) * Nuke Icon Smoothing * Update highsec.yml * Update plastic_flaps.yml * Scurrets (#38218) * Scurrets. * Add missing equipment YAML * Fix count of NamesFirstScurret * Resolve PR comments, wa. Also add like a bunch more wa replacements * ed * Update Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json * :rivflabbergasted: * Fixed spacings in scurret_last.ftl * Fix mangled endings of some last names * wawa * the scug has a spear for self defence * Automatic changelog update * Fail if we attempt to run publish on master (#38431) * Fail if we attempt to run publish on master BREAKING: FORKS REMOVE THIS * Update publish.yml * Fix styling for Admin Menu lists (#38261) * remove styleclass from playertab 'button' lines * cvar, fix button-style header alignment * Fix requested changes And also the extra cvar things I was meant to remove in the upstream merge * Tiny tweaks --------- Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> * Automatic changelog update * Add interaction test for retractable arm blade (#38452) * Add interaction test for retractable arm blade * Update for HandsSystem refactor * Revert "Update for HandsSystem refactor" This reverts commit e01bb9a7e318dd916240d57b30f48af9594bff1f. * Combine WaitAssertion blocks * Make... sloths... speak... slowly... (#38142) * Add SlowAccent * Apply SlowAccent to sloths * xmldocs * Automatic changelog update * Make gas tank UI a bit more network-happy (#38184) * fix: network gas tank output pressure * fix: don't overwrite gas tank output pressure during editing * allow to publish news without ui (#35262) * allow to publish news without ui * the hell was that * apply * apply review * sure Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * okay --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * add some documentation for visiting entity (#38475) * add some documentation for visiting entity to prevent someone from spending 5 minutes diving into the codebase * reviews Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> --------- Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> * SignalSwitchSystem: Check button is locked before toggling (#38474) Check button is locked before toggling * Automatic changelog update * Fix compile (#38477) * Fix wallmount interaction (#38111) * Automatic changelog update * Fix debug asserts when unequipping items (#38274) * Flask Visual Overhaul & YML Organizing (#38032) * Adding Back Baseline V1 Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Readability Change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * icon_open implementation, tidy up & attributions (fix lith/shiny flask ugly af open sprites) Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * good enough Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * No mo closed spills Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 1 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 2 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Flask Sounds & Attributions Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Cap flask inhands change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Lith flask Inhand Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Spacing * Fix? * Man... * Attributions Back in... * Im loosing it.. * REAL! * :/ * Again... * again :/ * Plz??? --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Automatic changelog update * Kills TurfHelpers (#37939) * Create TurfSystem equivalent for and obsolete TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.TryGetTileRef * Fix construction condition uses of TurfHelpers.GetTileRef * Fix last use of TurfHelpers.IsBlockedTurf * Create TurfSystem equivalent to and obsolete TurfHelpers.GetContentTileDefinition * Fix uses of TurfHelpers.GetContentTileDefinition(TileRef) * Fix uses of TurfHelpers.GetContentTileDefinition(Tile) * Create TurfSystem equivalent to and obsolete TurfHelpers.IsSpace * Fix EntitySystem uses of TurfHelpers.IsSpace(Tile) * Fix EntitySystem uses of TurfHelpers.IsSpace(TileRef) * Fix remaining uses of TurfHelpers.IsSpace * Fix uses of TurfHelpers.GetEntitiesInTile * Delete TurfHelpers.cs * Add GetEntitiesInTile lookup methods * Convert some GetEntitiesInTile methods to LookupSystem extension methods * Use new GetEntitiesInTile methods * Recycle spiderweb hashset * Recycle floor tile hashset * Allow Maintainers to use customvote command (#38385) Changed from Moderator perm to Round perm * Automatic changelog update * Make role ban pannel pretty (#37952) * Make role ban pannel pretty * Removed unused depencency * refactor: wider panel (no jumping due to scroll in english lang) minor readability improvements --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Automatic changelog update * Generic Numeric Alerts (#38370) * Fix styles for group button in loadout menu (#38488) * Fix styles color for group button in loadout menu * Show selected item count in loadout group UI Updated the loadout group container to display the number of selected items in a group. Added a new localization string to support this feature in the UI. * Resolve required changes * Automatic changelog update * fix: mops with liquid can hit people again (#38486) * Automatic changelog update * Treat duplicate dependency warnings as errors (#38480) * Treat duplicate dependency warnings as errors * GitHub workflows * commas * Maybe we just don't use these? * I think we can get rid of these? * Retractable items get removed by handcuffs (#38441) * init * oops * happens * review * fix * Update Credits (#38493) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * Fixed dirt tiles having identical names (#38500) * added prefix to planet dirt/grass * prefixes don't work, just doing renaming instead. * Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182) * adds hypereutactic back into the uplinks * Disables hum * Adds the Hypereutatic Blade for Nukies * Actually makes the sound so quiet no one can hear it * Apply suggestions from code review * Update Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Allow admins to export round logs to CSV files (#38206) * Automatic changelog update * MINOR SPELLING ERROR!!1!!1! (#38510) Spelling fix in the code of conduct Comunity ->Community * Staff of Healing for Pacifists (#38509) * Automatic changelog update * Command resolves. (#38519) * banlist-command * open-admin-notes-command * stealthmin-command * set-alert-level-command * remove unused usings * whitelist commands * Emotional Support Scurret locstrings (#38518) Missed during the atomization of the Wa Wa PR. * Content fix for `LocalizedCommands` `Loc` change (#38133) * Content fix for LocalizedCommands Loc change * Switch to LocalizationManager * Predict Flashes (#37640) Co-authored-by: ScarKy0 <scarky0@onet.eu> * Automatic changelog update * Remove excess `SingularityLevelChangedEvent` subscriptions (#38536) * Remove excess SingularityLevelChangedEvent subscriptions * RadiationSourceComponent too * Cleanup commented out code * Revisions and cleanup to dock and shuttle commands. (#38533) commit * Add wall-based ambient occlusion (#38276) * Add wall ambient occlusion * wawawewa * Work * cvars * Comment to make slart happy * Automatic changelog update * Update submodule to 263.0.0 (#38524) * update oasis (#37770) * Add uplink command minor revision and cleanup (#38532) * commit * Update AddUplinkCommand.cs * Fix IsSpace call (#38548) * Crew manifest command cleanup and LEC (#38544) commit * Re-Add Stamina Damage Resistances to Nukie & ERT Suits after the Test Merge. (#38526) * Add stamina damage resists to the bloodred suits. * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Update cmd-adminwho-desc (#38539) Update admin-who-command.ftl * Added a handheld station map to the cyborg thruster module (#38541) * Added a station map to the borg thruster module * Removed HandheldStationMapBorg & replaced it with HandheldStationMapUnpowered * Automatic changelog update * fix: correct wall AO having weird sharp edges (macOS only?) (#38552) * Fix displacement map rendering in UI (#38042) Fix displacement map rendering 918709cb4742d02e9822a651cf8e74727ba997de changed the way humans work to completely remove the stencil mask thing for clothing cutouts, in favor of displacement maps. Except it didn't actually remove the stencil parameters from the shader prototype, so this caused the shader to render incorrectly in SpriteView instances. I introduced a new DisplacedDraw shader that doesn't have the stencil in use, as removing the old one would probably be a more annoying breaking change. Fixes #37629 * Automatic changelog update * remove suffix from ChameleonControllerImplanter (#38554) * Update implanters.yml * Update Resources/Prototypes/Entities/Objects/Misc/implanters.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Bulldog desc fix (#38558) Co-authored-by: Vasilis The Pikachu <vasilis@pikachu.systems> * Automatic changelog update * cleanup air_alarm.yml and fire_alarm.yml (#38559) * Update air_alarm.yml * that too * Update air_alarm.yml * Fix cutter machine having free techmaint floor tiles (#38557) Fix BaseMaintTileRecipe Changed BaseTileRecipe to BaseMaintTileRecipe * Automatic changelog update * Lobby Audio from static to CVar (#38375) * Changed LobbyMusiccollection over to a Cvar and edited ContentAudioSystem.cs to use Cvar Values * Addedd Ability to modify the lobbyMusiccollection from the command line * Fixed changing lobby music while in the round * Deleted uneeded duplicate line * Removed additional duplicate lobbyplaylist line * Alphabatized imports and refactored to use Subs.CVar * Added error checking and default behaviour to CVar sub. * Refactored to use TryIndex and Allowed for a empty soundcollection when a sound collection is not found. Edited Cvar comment to reflect changes. * Made _lobbyMusicCollection nullable and addedd handling for null case where used. Also Changed LobbyMusicCollection Cvar over to audio rather than ambience. * Update Content.Server/Audio/ContentAudioSystem.cs --------- Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Electrocute command cleanup and localization (#38563) * hey look I knocked out a todo :shockedface: * Update Resources/Locale/en-US/electrocution/electrocute-command.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * allow combat mode toggling when unable to interact (#38573) allow combat mode toggling when cuffed or crit * update xeno techmaint floor name (#38555) Update tiles.yml * New status effect system (#37238) * spectra * documentation * added into liquid anomaly * Update TemporaryStealthComponent.cs * Update TemporaryStealthComponent.cs * integrated * new system * mark old status effect system as obsolete * ForcedSleeping new status effect * work with reagents * networking??? * Revert "integrated" This reverts commit bca02b82bae18ae131af593d7eb86e6de2745157. * Revert "Update TemporaryStealthComponent.cs" This reverts commit 4a5be8c4b704a0d1ff9544b2e245d8b2701ec580. * Revert "Update TemporaryStealthComponent.cs" This reverts commit a4875bcb41347638854bd723d96a51c3e6d38034. * Revert "added into liquid anomaly" This reverts commit df5086b14bb35f1467158a36807c0f2163a16d99. * Revert "documentation" This reverts commit 3629b9466758cbdfa4dd5e67ece122fa2f181138. * Revert "spectra" This reverts commit 2d03d88c16d16ad6831c19a7921b84600daeb284. * drowsiness status effect remove * reagents work * polish, remove test changes * first Fildrance review part * Update misc.yml * more fildrance review * final part * fix trailing spaces * sleeping status effect * drowsiness status effect * Create ModifyStatusEffect.cs * some tweak * Yay!!! Manual networking * minor nitpick * oopsie * refactor: xml-docs, notnullwhen attributes, whitespaces * fildrance and emo review * refactor: simplify check in SharedStatusEffectsSystem by using pattern matching, TryEffectsWithComp now returns set of Entity<T, StatusEffectComponent> --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Properly evaluate publish condition for master branch (#38556) * HandsSystem Refactor (#38438) * checkpoint * pt 2 * pt... i forgot * pt 4 * patch * More test fixes * optimization!!! * the REAL hand system * fix RetractableItemActionSystem.cs oversight * the review * test * remove test usage of body prototype * Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * hellcode * hellcode 2 * Minor cleanup * test * Chasing the last of the bugs * changes --------- Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * Fix PowerCellDrawComponent draw rate (#38562) * fix power cell draw rate * comment * Hand refactor bugfix (#38576) * Fix hand refactor 2 (#38578) * fix unwielding * hand refactor bugfix 2 * Added a ConfirmableAction component to ActionRevertPolymorph (#38570) * Added a ConfirmableAction component to ActionRevertPolymorph * Update Resources/Locale/en-US/actions/actions/polymorph.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Fixup Sericulture to be clonable (#38516) * Add CloningEvent and an action entity prototype * Remove redundant action prototype from Yaml * Add a field that might be changed * CR * CR - guard statement and Dirty * Convert DumpReagentGuideText command to LEC. (#38569) * commit * revert linq conversion * fix: EyeOffset when eyes are closed (#38534) * fix: EyeOffset when eyes are closed * fix: Relay only blocked on eyes closed action * cleanup: whitespace * fix: missing cancel on PVS, dependencies * remove: namespace import * change: apply from review * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Updated hat descriptions (#38156) * Updated hat descriptions * final touches * typo fix * final touchups * Quote fixes * Automatic changelog update * Add /showaccessreaders to +MAPPING and +DEBUG (#37759) feat: add /showaccessreaders to +MAPPING and +DEBUG * ShowHealthBarsCommand to LEC. (#38588) * mfw * Update Content.Client/Commands/ShowHealthBarsCommand.cs --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Forgor changelog for permission change (#38593) * Automatic changelog update * MapRenderer code fixes (#38357) * Fix MapRenderer integration test usage to properly show output. Added an ITestContextLike interface that can be used to properly run the integration test infrastructure OUTSIDE A TEST. * Use System.Test.Json instead of Newtonsoft.Json for MapRenderer * Fix map renderer JSON output being broken I love not testing or even reading the surrounding code. * Fix un-reusable integration instances getting leaked. The pair state was always getting set to Ready even if the instance was killed, meaning it was getting put back into the pool even if killed. * Mark map renderer integration instances as destructive to avoid memory leak. * Fix file specification handling. Map file specification is now backwards compatible again (loose filename match to search prototypes). It also supports proper direct OS filename arguments. The former is the fallback scenario is extremely important for the map server still. Cleaned up the way that target map files are passed through the application, so mixed file/prototype specifications are now handled properly (which can be caused by the fallback behavior). Fixes JSON data export to use the proper user-facing map name. This only works if a prototype ID is specified *or* the legacy file behavior is used. Restructured MapPainter into an instance that has multiple functions called on it, so not all data has to be passed through a single Paint() call. Clean up the godawful map/grid detection code. Now we just load both in a single call, because yes you can do that. This relies on LogOrphanedGrids = false in the map loader options, which I think is fine for our purposes. Improved error handling in much of the program. * Fix duplicate map names in map renderer output I'm not sure *what* this output is used for, but I'm sure having it duplicated per grid isn't intentional. * Make maprenderer command line parsing bail on unknown - options * Fix incorrect docs for --viewer maprenderer argument It doesn't change directory layout * Fix parallax layer specification to not use imgur as a fucking CDN Files are now copied to a separate folder _parallax, and these files are referenced by the parallax configuration. Parallax data is only output when instructed to via --parallax. This will break parallax on current map server builds, but it should be graceful. Also, that's fucking good considering we shouldn't be using imgur links. Purge it. * Fix incorrect assert in test pair clean return * Restore other map viewer parallax layers, fix attribution. * This isn't a valid copyright statement but the validator forces me to enter something here. * Hide mechanism and show mechanism commands to LEC (#38587) commit * Fix multi handed items (#38603) * Automatic changelog update * fix smart equip (#38605) * Automatic changelog update * New Status Effects system: Relay events (#38579) * Fixed Snacks Mispredicting on Clients (#38522) * Well this works * Removed merge conflict bait * PredictedDel * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Improve lathe queue performance (#38583) * Use an actual Queue * Store ProtoIds instead of prototypes * Network as NetListAsArray * Remove Serializable & NetSerializable from LatheRecipePrototype * Convert CurrentlyProducing too * No point using NetListAsArray<T> if you're going to .ToArray() it anyways. --------- Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com> * Quartermaster's PDA has AstroNav preinstalled (#38445) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Bladed flatcaps are minor contraband (#38597) * Automatic changelog update * Stop network serializing prototypes (#38602) * Stop network serializing prototypes Send the damn proto ID instead. * Fix sandbox violation * Clean up all missing `EntitySystem` proxy method uses (#38353) * Cleanup SharedRoleCodewordSystem (#38310) * cleanup * Update Content.Shared/Roles/RoleCodeword/SharedRoleCodewordSystem.cs Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Toy/Plushie Inhands and Wearables (#38514) * Automatic changelog update * Thief Guidebook Refresh (#38586) * Automatic changelog update * RespiratorSystem Cleanup (#38572) * Respirator Debodied * Forgot about alerts (also respirator testa and events) * Fix Urist eating air and not giving it back * Stop nuke ops from taking in a breath then taking in a second breath causing them to get a headache from carbon dioxide poisoning and failing TryStopNukeOpsFromConstantlyFailing(); * Consts are smelly, * Actually we don't need to raise the entity, just the component * Don't forget to remove the unused code today, said me yesterday * Remove all fallbacks * Debody that too --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> * Fix the sensor monitoring console forcing a GC every 3 seconds (#38146) * Optimize sensor monitoring window graph drawing * Add shared static Vector2 pool for all GraphView instances * Address requested changes * remove lock * New Status Effects API Overload (#38617) * I love API changes * Update Content.Shared/StatusEffectNew/StatusEffectSystem.API.cs * fix --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix silicons looking at their laws crashing the server (#38623) * fix RCD ghosts not disappearing when changing hand to empty (#38622) * Automatic changelog update * Refactor SeeingRainbows to new status effect system (#38620) * Make Review Requested label get applied to all opened PRs (#38625) It previously only applied automatically to PRs that have reviews requested, which happens if the PR touches files owned by code owners. Now it applies to *all* opened PRs. * Fix vocalization emotes (#38627) * Update submodule to 264.0.0 (#38629) * HoP's beret (#38601) * added HoP beret * added beret to loadout * added craft to machine * added beret to hop ddresser * Updated the authorship * Change on request * added 4-spaced * Hot fix of dresser * patchfor broken NetworkConfiguratorLinkMenu (#38632) fix * Fix solutions flickering when transferring contents (#34838) * Use Solution clones when applying SolutionComponent states * Revert "Use Solution clones when applying SolutionComponent states" This reverts commit 013fd111cf92b22562e00f98a7aaa49bc4b4ed62. * Make Solution implement ICloneable and rename Clone method. * Copy CanReact value when cloning a Solution * Convert to IRobustCloneable * Automatic changelog update * Fix typos in guidebook: Buisness → Business (#38636) * Fix typo in `MinorAntagonists.xml` Buisness → Business * Fix typo in `YourFirstCharacter.xml` Buisness → Business * AddBodyPartCommand localization. (#38612) commit * Automatic changelog update * Various Headphones Fixes and Tweaks (#38479) * sprites, wearables * neck * icon-on sprite * Automatic changelog update * Cleanup prototype instantiation in `DamageTest` (#38639) Cleanup prototype instantiation in DamageTest * Cleanup prototype instantiation in `ExplosionSystem` (#38642) Cleanup prototype instantiation in ExplosionSystem * Update Credits (#38646) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * fix ItemSlotsSystem debug assert (#38655) * Automatic changelog update * Allow the Command & Super door remotes to use the access of their user. (Re-creation of PR due to changes to game balance) (#35536) * Automatic changelog update * Added directional beacons (#38284) * Added directional beacons Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Fixed names Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Power stat and nuke codes commands get some LEC love. (#38585) * commit * requested changes. * Tweaks to admin CSV exporting (#38531) * Automatic changelog update * Dsay Dirty and Follow commands converted to LEC and localized. (#38666) * commit * whoopwhoopwhoop * Retro laser sprite fix (#38676) * Fixed everything except the icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fixed icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fix water coolers (#38681) * Automatic changelog update * Monochromacy typo fix (#38686) * fixes the typo * Fixed cloning looking for the trait, not the component, RE https://github.com/space-wizards/space-station-14/pull/38686#issuecomment-3025093504 * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Validate `CloningSettingsPrototype`s (#38688) * Validate CloningSettingsPrototypes * Update Content.IntegrationTests/Tests/Cloning/CloningSettingsPrototypeTest.cs Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Check EventComponents too --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Add test of objective-related console commands (#36400) * Add test of objective add/list/remove commands * Not sure why we're validating test prototypes, but sure * We don't need a map * CC Genpop and other misc fixes (#37494) * First commit: genpop and AI satellite * Revert AI satellite, add representative locker. * Automatic changelog update * Improvements and fixups for New Status Effect API (#38660) * ci: include pull request id in changelog link (#38504) Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> * Resolving Wizard casting recall on nuke disk making it impossible to disarm (#38661) * Resolving Wizard Recall on Nuke disk making it impossible to disarm - Adding a DisarmBomb case to nuke status update loop - Changing a few methods and parameters to properly follow formatting standards - Updating some names to follow camelCase * Updating missed tag * Reverting DataField change Should prevent this preventative bugfix being a breaking change. * Automatic changelog update * Predict healing and bloodstream (#38690) * initial commit * reapply 38126 * fix rootable * someone missed an important minus sign here * try this * fix * fix * reenable crit hits * cleanup * fix status time dirtying * fix * camelCase * make telesci wreck easier (#37569) rel * Reduce most salvage mob health, reduce most salvage weapon damage. (#38131) * Automatic changelog update * Switch HSV to the default colorspace for character customization (#38434) * Made HSV default for character editor * Adds/fixes comments to HSV defaulting * Added dropbox fix, potentially cursed * Revert "Added dropbox fix, potentially cursed" This reverts commit a709883366fbee813e839742125e70844672af29. --------- Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> * Automatic changelog update * Centcomm update (#38697) * Biome rework (#37735) * DungeonData rework Back to fields, serializes better, just make new layers dumby. * wawawewa * Fix this * Fixes * Port the work over * wawawewa * zoom * Kinda workin * Adjust wawa * Unloading work * Ore + entitytable fixes Iterate every dungeon not just last. * Big shot * wawawewa * Fixes * true * Fixes # Conflicts: # Content.Server/Procedural/DungeonJob/DungeonJob.cs * wawawewa * Fixes * Fix * Lot of work * wawawewa * Fixing * eh? * a * Fix a heap of stuff * Better ignored check * Reserve tile changes * biome * changes * wawawewa * Fixes & snow * Shadow fixes * wawawewa * smol * Add layer API * More work * wawawewa * Preloads and running again * wawawewa * Modified * Replacements and command * Runtime support * werk * Fix expeds + dungeon alltiles * reh --------- Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> * Fix: Don't deploy foldables when clicking on items inside containers (#38709) * Fix * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix world generation (#38713) * Fix world generation * Remove unused impoty * Scurrets - Audio Improvements (#38482) * Scurret audio tuning * Add new sfx * Update sneezing sfx * YAML support * Rename a folder * Pressure Relief Valve (#36708) * initial system (this math is probably WRONG) * General code cleanup and OnExamined support (holy moly this code sucks) * UICode and related events foundation TODO: - Actually write the XAML UI and the underlying system - Un-shitcode the entire thing - Actually test everything... * Working UI code TODO: Make predicted, as this certainly isn't predicted. Even though I said it was. It isn't. * Remove one TODO for unshitcoding the examine code * Add reminder yea * Make predicted (defenitely isn't) (also defenitely isn't a copypaste from pressure pump code) * It's predicted! TODO: - Give it snazzy predicted visuals! - Have a different field for pressure entry, lest it gets bulldozed every UI update. * Improve gas pressure relief valve UI TODO: Reminder to reduce amount of dirties using deltafields * Implement DirtyField prediction * Entity<T> cleanup A lot of Entity<T> conversions and lukewarm cleanup. Also got caught copy pasting code in 4K UHD but it's not like you couldn't tell. * More cleanup and comments * Remove TODO comment on bulldozing window title * """refactoring""" - Move appearance out of shared and finally fix it. Pointless to predict appearance in this instance. - More Entity<T> conversions because I like them. - Move UI creation handling over entirely to the ActivatableUI system. - Fix a hardcoded locale string (why????). * Add visuals * Revert debugging variable replacememt yea * Revert skissue * Remove unused using directives and remove TODO * Localize, cleanup, document * Fix adminlogging discrepancy * Add ability to construct, add guidebook entry * Clear up comment * Add guidebook tooltip to valve * Convert GasPressureReliefValveBoundUserInterface declaration into primary constructor * Adds more input handling and adds autofill on open * Un-deepfry input validator shitcode Genuinely what was I smoking * improve visuals logic * Refactor again - Update math to the correct implementation - Moved code that could be re-used in the future into a helper method under AtmosphereSystem.Gases.cs * I'm sorry but I hate warnings * Remove unused using directive in AtmosphereSystem.Gases.cs * Review and cleanup * Lukewarm UI glossup * Maintainer for the upstream project btw * Remove redundant state sets and messy logic * Unduplicate valve updater code * Redo UI (im sorry Slarti) * run tests * Test refactored UI messaging * Second round of UI improvements - God please find a way to improve this system. Feels bad. * Update loop implementation * Further predict UI * Clear up SetToCurrentThreshold * cleanup * Update to master + pipe layers and bug fixes want to run tests * fixes * Deploy rename pipebomb * Documentation and requested changes * Rename the method that wiggled away * Undo rounding changes * Fix comment * Rename and cleanup * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Revert biome rework (#38724) * Revert "Fix world generation (#38713)" This reverts commit 10fa6ff4af32f0ae59ed01f243164fcf6b31f965. * Revert "Biome rework (#37735)" This reverts commit fe7b96147c05afc160c33f033deca384e2886755. * Exo - Minor balance changes and fixes (#38689) * Automatic changelog update * Fix TextLinkTag (#32203) * Scurret PDA slot fix (#38777) * Scurrets get emergency EVA suit access (#38778) * Scurrets - spacing protection via adorable outfits * ALPHABETIZATION!! * Revert "HoP's beret (#38601)" This reverts commit e9c90fe66dec0ed9579847807d9babe934a66bae. Please check the maintainer meeting for details * Revert "Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182)" This reverts commit c03afeb29cf3ed5e751e8d206e79f9f24981484e. Please check the maintainer meeting for details * Changelog removal * Scurret naming fixes (#38776) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Scurret displacement map fixes (#38775) * sanitize MIDI parser (#38806) Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Add Breach of Permanent Confinement to Space Law (#38663) * Initial commit * Fix category in text * ADAPTATION --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> Signed-off-by: Nox38 <nebulousnox38@gmail.com> Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Kyle Tyo <36606155+VerinSenpai@users.noreply.github.com> Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> Co-authored-by: Tayrtahn <tayrtahn@gmail.com> Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com> Co-authored-by: Qerd <73325910+BigfootBravo@users.noreply.github.com> Co-authored-by: Ps3Moira <113228053+ps3moira@users.noreply.github.com> Co-authored-by: Hannah Giovanna Dawson <karakkaraz@gmail.com> Co-authored-by: Myra <vasilis@pikachu.systems> Co-authored-by: crazybrain23 <44417085+crazybrain23@users.noreply.github.com> Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: Just-a-Unity-Dev <67359748+Just-a-Unity-Dev@users.noreply.github.com> Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com> Co-authored-by: Prole <172158352+Prole0@users.noreply.github.com> Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com> Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com> Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Co-authored-by: qrwas <aleksandr.vernigora93@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com> Co-authored-by: keronshb <54602815+keronshb@users.noreply.github.com> Co-authored-by: Skybailey-dev <skybailey.01@gmail.com> Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Co-authored-by: ScarKy0 <scarky0@onet.eu> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com> Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com> Co-authored-by: Kittygyat <202250949+Kittygyat@users.noreply.github.com> Co-authored-by: John <50085876+AreYouConfused@users.noreply.github.com> Co-authored-by: Dragonjspider <140023808+Dragonjspider@users.noreply.github.com> Co-authored-by: beesterman <72782957+beesterman@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> Co-authored-by: qwerltaz <69696513+qwerltaz@users.noreply.github.com> Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Co-authored-by: rumaks <me@rumaks.xyz> Co-authored-by: poklj <compgeek223@gmail.com> Co-authored-by: Łukasz Mędrek <lukasz@lukaszm.xyz> Co-authored-by: Hitlinemoss <209321380+Hitlinemoss@users.noreply.github.com> Co-authored-by: Southbridge <7013162+southbridge-fur@users.noreply.github.com> Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> Co-authored-by: Tiniest Shark <head.rebel@yahoo.com> Co-authored-by: Andrew Malcolm O'Neill <105134723+maland1@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Princess-Cheeseballs@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: 96flo <163569033+96flo@users.noreply.github.com> Co-authored-by: Łukasz Lindert <lukasz.lindert@protonmail.com> Co-authored-by: Stefano Pigozzi <me@steffo.eu> Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com> Co-authored-by: Nox <nebulousnox38@gmail.com> Co-authored-by: Kowlin <10947836+Kowlin@users.noreply.github.com> Co-authored-by: imatsoup <93290208+imatsoup@users.noreply.github.com> Co-authored-by: UpAndLeaves <92269094+Alpha-Two@users.noreply.github.com> Co-authored-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com> Co-authored-by: Mora <46364955+TrixxedHeart@users.noreply.github.com> Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com> Co-authored-by: Winkarst-cpu <74284083+Winkarst-cpu@users.noreply.github.com> Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
2025-07-08 11:59:20 +03:00
RaisePredictiveEvent(
new InteractInventorySlotEvent(GetNetEntity(item.Value), altInteract: false));
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
public void UIInventoryAltActivateItem(string slot, EntityUid uid)
{
if (!TryGetSlotEntity(uid, slot, out var item))
return;
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
Upstream sync (#1509) * Fix the tail wagging action being blocked by cuffs. (#38454) Update types.yml * Automatic changelog update * Remove redundant IoC Resolve in `EmptyOrWindowValidInTile` (#38446) Remove redundant IoC Resolve in EmptyOrWindowValidInTile * fix: trim five minutes of silence from bottle_clunk_2 (#38463) * Update patrons (#38470) * Forbid string literals for `SharedActionsSystem` methods (#38472) Forbid string literals for SharedActionsSystem methods * Chameleon Controller Implants can be deimplanted (#38439) * Automatic changelog update * Cleanup duplicate dependency in `AdminVerbSystem.Smites` (#38473) Cleanup duplicate dependency in AdminVerbSystem.Smites * fix: set correct layer visibility for power cell sprites (#38458) * fix: set correct layer visibility for power cell sprites * fix: use a default charge level for power cell sprites' appearance data * Remove Icon Smoothing for Airlocks, Doors, and Plastic Flaps, and Shutters from Walls (#38456) * Nuke Icon Smoothing * Update highsec.yml * Update plastic_flaps.yml * Scurrets (#38218) * Scurrets. * Add missing equipment YAML * Fix count of NamesFirstScurret * Resolve PR comments, wa. Also add like a bunch more wa replacements * ed * Update Resources/Textures/Mobs/Animals/scurret/displacement.rsi/meta.json * :rivflabbergasted: * Fixed spacings in scurret_last.ftl * Fix mangled endings of some last names * wawa * the scug has a spear for self defence * Automatic changelog update * Fail if we attempt to run publish on master (#38431) * Fail if we attempt to run publish on master BREAKING: FORKS REMOVE THIS * Update publish.yml * Fix styling for Admin Menu lists (#38261) * remove styleclass from playertab 'button' lines * cvar, fix button-style header alignment * Fix requested changes And also the extra cvar things I was meant to remove in the upstream merge * Tiny tweaks --------- Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> * Automatic changelog update * Add interaction test for retractable arm blade (#38452) * Add interaction test for retractable arm blade * Update for HandsSystem refactor * Revert "Update for HandsSystem refactor" This reverts commit e01bb9a7e318dd916240d57b30f48af9594bff1f. * Combine WaitAssertion blocks * Make... sloths... speak... slowly... (#38142) * Add SlowAccent * Apply SlowAccent to sloths * xmldocs * Automatic changelog update * Make gas tank UI a bit more network-happy (#38184) * fix: network gas tank output pressure * fix: don't overwrite gas tank output pressure during editing * allow to publish news without ui (#35262) * allow to publish news without ui * the hell was that * apply * apply review * sure Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * okay --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * add some documentation for visiting entity (#38475) * add some documentation for visiting entity to prevent someone from spending 5 minutes diving into the codebase * reviews Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> --------- Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> * SignalSwitchSystem: Check button is locked before toggling (#38474) Check button is locked before toggling * Automatic changelog update * Fix compile (#38477) * Fix wallmount interaction (#38111) * Automatic changelog update * Fix debug asserts when unequipping items (#38274) * Flask Visual Overhaul & YML Organizing (#38032) * Adding Back Baseline V1 Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Readability Change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * icon_open implementation, tidy up & attributions (fix lith/shiny flask ugly af open sprites) Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * good enough Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * No mo closed spills Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 1 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Inhands & Attributions Part 2 Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Flask Sounds & Attributions Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Cap flask inhands change Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Lith flask Inhand Changes Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Spacing * Fix? * Man... * Attributions Back in... * Im loosing it.. * REAL! * :/ * Again... * again :/ * Plz??? --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> * Automatic changelog update * Kills TurfHelpers (#37939) * Create TurfSystem equivalent for and obsolete TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.GetTileRef * Fix EntitySystem uses of TurfHelpers.TryGetTileRef * Fix construction condition uses of TurfHelpers.GetTileRef * Fix last use of TurfHelpers.IsBlockedTurf * Create TurfSystem equivalent to and obsolete TurfHelpers.GetContentTileDefinition * Fix uses of TurfHelpers.GetContentTileDefinition(TileRef) * Fix uses of TurfHelpers.GetContentTileDefinition(Tile) * Create TurfSystem equivalent to and obsolete TurfHelpers.IsSpace * Fix EntitySystem uses of TurfHelpers.IsSpace(Tile) * Fix EntitySystem uses of TurfHelpers.IsSpace(TileRef) * Fix remaining uses of TurfHelpers.IsSpace * Fix uses of TurfHelpers.GetEntitiesInTile * Delete TurfHelpers.cs * Add GetEntitiesInTile lookup methods * Convert some GetEntitiesInTile methods to LookupSystem extension methods * Use new GetEntitiesInTile methods * Recycle spiderweb hashset * Recycle floor tile hashset * Allow Maintainers to use customvote command (#38385) Changed from Moderator perm to Round perm * Automatic changelog update * Make role ban pannel pretty (#37952) * Make role ban pannel pretty * Removed unused depencency * refactor: wider panel (no jumping due to scroll in english lang) minor readability improvements --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Automatic changelog update * Generic Numeric Alerts (#38370) * Fix styles for group button in loadout menu (#38488) * Fix styles color for group button in loadout menu * Show selected item count in loadout group UI Updated the loadout group container to display the number of selected items in a group. Added a new localization string to support this feature in the UI. * Resolve required changes * Automatic changelog update * fix: mops with liquid can hit people again (#38486) * Automatic changelog update * Treat duplicate dependency warnings as errors (#38480) * Treat duplicate dependency warnings as errors * GitHub workflows * commas * Maybe we just don't use these? * I think we can get rid of these? * Retractable items get removed by handcuffs (#38441) * init * oops * happens * review * fix * Update Credits (#38493) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * Fixed dirt tiles having identical names (#38500) * added prefix to planet dirt/grass * prefixes don't work, just doing renaming instead. * Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182) * adds hypereutactic back into the uplinks * Disables hum * Adds the Hypereutatic Blade for Nukies * Actually makes the sound so quiet no one can hear it * Apply suggestions from code review * Update Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Allow admins to export round logs to CSV files (#38206) * Automatic changelog update * MINOR SPELLING ERROR!!1!!1! (#38510) Spelling fix in the code of conduct Comunity ->Community * Staff of Healing for Pacifists (#38509) * Automatic changelog update * Command resolves. (#38519) * banlist-command * open-admin-notes-command * stealthmin-command * set-alert-level-command * remove unused usings * whitelist commands * Emotional Support Scurret locstrings (#38518) Missed during the atomization of the Wa Wa PR. * Content fix for `LocalizedCommands` `Loc` change (#38133) * Content fix for LocalizedCommands Loc change * Switch to LocalizationManager * Predict Flashes (#37640) Co-authored-by: ScarKy0 <scarky0@onet.eu> * Automatic changelog update * Remove excess `SingularityLevelChangedEvent` subscriptions (#38536) * Remove excess SingularityLevelChangedEvent subscriptions * RadiationSourceComponent too * Cleanup commented out code * Revisions and cleanup to dock and shuttle commands. (#38533) commit * Add wall-based ambient occlusion (#38276) * Add wall ambient occlusion * wawawewa * Work * cvars * Comment to make slart happy * Automatic changelog update * Update submodule to 263.0.0 (#38524) * update oasis (#37770) * Add uplink command minor revision and cleanup (#38532) * commit * Update AddUplinkCommand.cs * Fix IsSpace call (#38548) * Crew manifest command cleanup and LEC (#38544) commit * Re-Add Stamina Damage Resistances to Nukie & ERT Suits after the Test Merge. (#38526) * Add stamina damage resists to the bloodred suits. * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Update cmd-adminwho-desc (#38539) Update admin-who-command.ftl * Added a handheld station map to the cyborg thruster module (#38541) * Added a station map to the borg thruster module * Removed HandheldStationMapBorg & replaced it with HandheldStationMapUnpowered * Automatic changelog update * fix: correct wall AO having weird sharp edges (macOS only?) (#38552) * Fix displacement map rendering in UI (#38042) Fix displacement map rendering 918709cb4742d02e9822a651cf8e74727ba997de changed the way humans work to completely remove the stencil mask thing for clothing cutouts, in favor of displacement maps. Except it didn't actually remove the stencil parameters from the shader prototype, so this caused the shader to render incorrectly in SpriteView instances. I introduced a new DisplacedDraw shader that doesn't have the stencil in use, as removing the old one would probably be a more annoying breaking change. Fixes #37629 * Automatic changelog update * remove suffix from ChameleonControllerImplanter (#38554) * Update implanters.yml * Update Resources/Prototypes/Entities/Objects/Misc/implanters.yml --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Bulldog desc fix (#38558) Co-authored-by: Vasilis The Pikachu <vasilis@pikachu.systems> * Automatic changelog update * cleanup air_alarm.yml and fire_alarm.yml (#38559) * Update air_alarm.yml * that too * Update air_alarm.yml * Fix cutter machine having free techmaint floor tiles (#38557) Fix BaseMaintTileRecipe Changed BaseTileRecipe to BaseMaintTileRecipe * Automatic changelog update * Lobby Audio from static to CVar (#38375) * Changed LobbyMusiccollection over to a Cvar and edited ContentAudioSystem.cs to use Cvar Values * Addedd Ability to modify the lobbyMusiccollection from the command line * Fixed changing lobby music while in the round * Deleted uneeded duplicate line * Removed additional duplicate lobbyplaylist line * Alphabatized imports and refactored to use Subs.CVar * Added error checking and default behaviour to CVar sub. * Refactored to use TryIndex and Allowed for a empty soundcollection when a sound collection is not found. Edited Cvar comment to reflect changes. * Made _lobbyMusicCollection nullable and addedd handling for null case where used. Also Changed LobbyMusicCollection Cvar over to audio rather than ambience. * Update Content.Server/Audio/ContentAudioSystem.cs --------- Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Electrocute command cleanup and localization (#38563) * hey look I knocked out a todo :shockedface: * Update Resources/Locale/en-US/electrocution/electrocute-command.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * allow combat mode toggling when unable to interact (#38573) allow combat mode toggling when cuffed or crit * update xeno techmaint floor name (#38555) Update tiles.yml * New status effect system (#37238) * spectra * documentation * added into liquid anomaly * Update TemporaryStealthComponent.cs * Update TemporaryStealthComponent.cs * integrated * new system * mark old status effect system as obsolete * ForcedSleeping new status effect * work with reagents * networking??? * Revert "integrated" This reverts commit bca02b82bae18ae131af593d7eb86e6de2745157. * Revert "Update TemporaryStealthComponent.cs" This reverts commit 4a5be8c4b704a0d1ff9544b2e245d8b2701ec580. * Revert "Update TemporaryStealthComponent.cs" This reverts commit a4875bcb41347638854bd723d96a51c3e6d38034. * Revert "added into liquid anomaly" This reverts commit df5086b14bb35f1467158a36807c0f2163a16d99. * Revert "documentation" This reverts commit 3629b9466758cbdfa4dd5e67ece122fa2f181138. * Revert "spectra" This reverts commit 2d03d88c16d16ad6831c19a7921b84600daeb284. * drowsiness status effect remove * reagents work * polish, remove test changes * first Fildrance review part * Update misc.yml * more fildrance review * final part * fix trailing spaces * sleeping status effect * drowsiness status effect * Create ModifyStatusEffect.cs * some tweak * Yay!!! Manual networking * minor nitpick * oopsie * refactor: xml-docs, notnullwhen attributes, whitespaces * fildrance and emo review * refactor: simplify check in SharedStatusEffectsSystem by using pattern matching, TryEffectsWithComp now returns set of Entity<T, StatusEffectComponent> --------- Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> * Properly evaluate publish condition for master branch (#38556) * HandsSystem Refactor (#38438) * checkpoint * pt 2 * pt... i forgot * pt 4 * patch * More test fixes * optimization!!! * the REAL hand system * fix RetractableItemActionSystem.cs oversight * the review * test * remove test usage of body prototype * Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * hellcode * hellcode 2 * Minor cleanup * test * Chasing the last of the bugs * changes --------- Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * Fix PowerCellDrawComponent draw rate (#38562) * fix power cell draw rate * comment * Hand refactor bugfix (#38576) * Fix hand refactor 2 (#38578) * fix unwielding * hand refactor bugfix 2 * Added a ConfirmableAction component to ActionRevertPolymorph (#38570) * Added a ConfirmableAction component to ActionRevertPolymorph * Update Resources/Locale/en-US/actions/actions/polymorph.ftl --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Fixup Sericulture to be clonable (#38516) * Add CloningEvent and an action entity prototype * Remove redundant action prototype from Yaml * Add a field that might be changed * CR * CR - guard statement and Dirty * Convert DumpReagentGuideText command to LEC. (#38569) * commit * revert linq conversion * fix: EyeOffset when eyes are closed (#38534) * fix: EyeOffset when eyes are closed * fix: Relay only blocked on eyes closed action * cleanup: whitespace * fix: missing cancel on PVS, dependencies * remove: namespace import * change: apply from review * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Updated hat descriptions (#38156) * Updated hat descriptions * final touches * typo fix * final touchups * Quote fixes * Automatic changelog update * Add /showaccessreaders to +MAPPING and +DEBUG (#37759) feat: add /showaccessreaders to +MAPPING and +DEBUG * ShowHealthBarsCommand to LEC. (#38588) * mfw * Update Content.Client/Commands/ShowHealthBarsCommand.cs --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Forgor changelog for permission change (#38593) * Automatic changelog update * MapRenderer code fixes (#38357) * Fix MapRenderer integration test usage to properly show output. Added an ITestContextLike interface that can be used to properly run the integration test infrastructure OUTSIDE A TEST. * Use System.Test.Json instead of Newtonsoft.Json for MapRenderer * Fix map renderer JSON output being broken I love not testing or even reading the surrounding code. * Fix un-reusable integration instances getting leaked. The pair state was always getting set to Ready even if the instance was killed, meaning it was getting put back into the pool even if killed. * Mark map renderer integration instances as destructive to avoid memory leak. * Fix file specification handling. Map file specification is now backwards compatible again (loose filename match to search prototypes). It also supports proper direct OS filename arguments. The former is the fallback scenario is extremely important for the map server still. Cleaned up the way that target map files are passed through the application, so mixed file/prototype specifications are now handled properly (which can be caused by the fallback behavior). Fixes JSON data export to use the proper user-facing map name. This only works if a prototype ID is specified *or* the legacy file behavior is used. Restructured MapPainter into an instance that has multiple functions called on it, so not all data has to be passed through a single Paint() call. Clean up the godawful map/grid detection code. Now we just load both in a single call, because yes you can do that. This relies on LogOrphanedGrids = false in the map loader options, which I think is fine for our purposes. Improved error handling in much of the program. * Fix duplicate map names in map renderer output I'm not sure *what* this output is used for, but I'm sure having it duplicated per grid isn't intentional. * Make maprenderer command line parsing bail on unknown - options * Fix incorrect docs for --viewer maprenderer argument It doesn't change directory layout * Fix parallax layer specification to not use imgur as a fucking CDN Files are now copied to a separate folder _parallax, and these files are referenced by the parallax configuration. Parallax data is only output when instructed to via --parallax. This will break parallax on current map server builds, but it should be graceful. Also, that's fucking good considering we shouldn't be using imgur links. Purge it. * Fix incorrect assert in test pair clean return * Restore other map viewer parallax layers, fix attribution. * This isn't a valid copyright statement but the validator forces me to enter something here. * Hide mechanism and show mechanism commands to LEC (#38587) commit * Fix multi handed items (#38603) * Automatic changelog update * fix smart equip (#38605) * Automatic changelog update * New Status Effects system: Relay events (#38579) * Fixed Snacks Mispredicting on Clients (#38522) * Well this works * Removed merge conflict bait * PredictedDel * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Improve lathe queue performance (#38583) * Use an actual Queue * Store ProtoIds instead of prototypes * Network as NetListAsArray * Remove Serializable & NetSerializable from LatheRecipePrototype * Convert CurrentlyProducing too * No point using NetListAsArray<T> if you're going to .ToArray() it anyways. --------- Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com> * Quartermaster's PDA has AstroNav preinstalled (#38445) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Bladed flatcaps are minor contraband (#38597) * Automatic changelog update * Stop network serializing prototypes (#38602) * Stop network serializing prototypes Send the damn proto ID instead. * Fix sandbox violation * Clean up all missing `EntitySystem` proxy method uses (#38353) * Cleanup SharedRoleCodewordSystem (#38310) * cleanup * Update Content.Shared/Roles/RoleCodeword/SharedRoleCodewordSystem.cs Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> * Toy/Plushie Inhands and Wearables (#38514) * Automatic changelog update * Thief Guidebook Refresh (#38586) * Automatic changelog update * RespiratorSystem Cleanup (#38572) * Respirator Debodied * Forgot about alerts (also respirator testa and events) * Fix Urist eating air and not giving it back * Stop nuke ops from taking in a breath then taking in a second breath causing them to get a headache from carbon dioxide poisoning and failing TryStopNukeOpsFromConstantlyFailing(); * Consts are smelly, * Actually we don't need to raise the entity, just the component * Don't forget to remove the unused code today, said me yesterday * Remove all fallbacks * Debody that too --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> * Fix the sensor monitoring console forcing a GC every 3 seconds (#38146) * Optimize sensor monitoring window graph drawing * Add shared static Vector2 pool for all GraphView instances * Address requested changes * remove lock * New Status Effects API Overload (#38617) * I love API changes * Update Content.Shared/StatusEffectNew/StatusEffectSystem.API.cs * fix --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix silicons looking at their laws crashing the server (#38623) * fix RCD ghosts not disappearing when changing hand to empty (#38622) * Automatic changelog update * Refactor SeeingRainbows to new status effect system (#38620) * Make Review Requested label get applied to all opened PRs (#38625) It previously only applied automatically to PRs that have reviews requested, which happens if the PR touches files owned by code owners. Now it applies to *all* opened PRs. * Fix vocalization emotes (#38627) * Update submodule to 264.0.0 (#38629) * HoP's beret (#38601) * added HoP beret * added beret to loadout * added craft to machine * added beret to hop ddresser * Updated the authorship * Change on request * added 4-spaced * Hot fix of dresser * patchfor broken NetworkConfiguratorLinkMenu (#38632) fix * Fix solutions flickering when transferring contents (#34838) * Use Solution clones when applying SolutionComponent states * Revert "Use Solution clones when applying SolutionComponent states" This reverts commit 013fd111cf92b22562e00f98a7aaa49bc4b4ed62. * Make Solution implement ICloneable and rename Clone method. * Copy CanReact value when cloning a Solution * Convert to IRobustCloneable * Automatic changelog update * Fix typos in guidebook: Buisness → Business (#38636) * Fix typo in `MinorAntagonists.xml` Buisness → Business * Fix typo in `YourFirstCharacter.xml` Buisness → Business * AddBodyPartCommand localization. (#38612) commit * Automatic changelog update * Various Headphones Fixes and Tweaks (#38479) * sprites, wearables * neck * icon-on sprite * Automatic changelog update * Cleanup prototype instantiation in `DamageTest` (#38639) Cleanup prototype instantiation in DamageTest * Cleanup prototype instantiation in `ExplosionSystem` (#38642) Cleanup prototype instantiation in ExplosionSystem * Update Credits (#38646) Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> * fix ItemSlotsSystem debug assert (#38655) * Automatic changelog update * Allow the Command & Super door remotes to use the access of their user. (Re-creation of PR due to changes to game balance) (#35536) * Automatic changelog update * Added directional beacons (#38284) * Added directional beacons Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Fixed names Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * Power stat and nuke codes commands get some LEC love. (#38585) * commit * requested changes. * Tweaks to admin CSV exporting (#38531) * Automatic changelog update * Dsay Dirty and Follow commands converted to LEC and localized. (#38666) * commit * whoopwhoopwhoop * Retro laser sprite fix (#38676) * Fixed everything except the icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fixed icon Signed-off-by: Nox38 <nebulousnox38@gmail.com> --------- Signed-off-by: Nox38 <nebulousnox38@gmail.com> * fix water coolers (#38681) * Automatic changelog update * Monochromacy typo fix (#38686) * fixes the typo * Fixed cloning looking for the trait, not the component, RE https://github.com/space-wizards/space-station-14/pull/38686#issuecomment-3025093504 * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Validate `CloningSettingsPrototype`s (#38688) * Validate CloningSettingsPrototypes * Update Content.IntegrationTests/Tests/Cloning/CloningSettingsPrototypeTest.cs Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Check EventComponents too --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Add test of objective-related console commands (#36400) * Add test of objective add/list/remove commands * Not sure why we're validating test prototypes, but sure * We don't need a map * CC Genpop and other misc fixes (#37494) * First commit: genpop and AI satellite * Revert AI satellite, add representative locker. * Automatic changelog update * Improvements and fixups for New Status Effect API (#38660) * ci: include pull request id in changelog link (#38504) Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> * Resolving Wizard casting recall on nuke disk making it impossible to disarm (#38661) * Resolving Wizard Recall on Nuke disk making it impossible to disarm - Adding a DisarmBomb case to nuke status update loop - Changing a few methods and parameters to properly follow formatting standards - Updating some names to follow camelCase * Updating missed tag * Reverting DataField change Should prevent this preventative bugfix being a breaking change. * Automatic changelog update * Predict healing and bloodstream (#38690) * initial commit * reapply 38126 * fix rootable * someone missed an important minus sign here * try this * fix * fix * reenable crit hits * cleanup * fix status time dirtying * fix * camelCase * make telesci wreck easier (#37569) rel * Reduce most salvage mob health, reduce most salvage weapon damage. (#38131) * Automatic changelog update * Switch HSV to the default colorspace for character customization (#38434) * Made HSV default for character editor * Adds/fixes comments to HSV defaulting * Added dropbox fix, potentially cursed * Revert "Added dropbox fix, potentially cursed" This reverts commit a709883366fbee813e839742125e70844672af29. --------- Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> * Automatic changelog update * Centcomm update (#38697) * Biome rework (#37735) * DungeonData rework Back to fields, serializes better, just make new layers dumby. * wawawewa * Fix this * Fixes * Port the work over * wawawewa * zoom * Kinda workin * Adjust wawa * Unloading work * Ore + entitytable fixes Iterate every dungeon not just last. * Big shot * wawawewa * Fixes * true * Fixes # Conflicts: # Content.Server/Procedural/DungeonJob/DungeonJob.cs * wawawewa * Fixes * Fix * Lot of work * wawawewa * Fixing * eh? * a * Fix a heap of stuff * Better ignored check * Reserve tile changes * biome * changes * wawawewa * Fixes & snow * Shadow fixes * wawawewa * smol * Add layer API * More work * wawawewa * Preloads and running again * wawawewa * Modified * Replacements and command * Runtime support * werk * Fix expeds + dungeon alltiles * reh --------- Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> * Fix: Don't deploy foldables when clicking on items inside containers (#38709) * Fix * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Fix world generation (#38713) * Fix world generation * Remove unused impoty * Scurrets - Audio Improvements (#38482) * Scurret audio tuning * Add new sfx * Update sneezing sfx * YAML support * Rename a folder * Pressure Relief Valve (#36708) * initial system (this math is probably WRONG) * General code cleanup and OnExamined support (holy moly this code sucks) * UICode and related events foundation TODO: - Actually write the XAML UI and the underlying system - Un-shitcode the entire thing - Actually test everything... * Working UI code TODO: Make predicted, as this certainly isn't predicted. Even though I said it was. It isn't. * Remove one TODO for unshitcoding the examine code * Add reminder yea * Make predicted (defenitely isn't) (also defenitely isn't a copypaste from pressure pump code) * It's predicted! TODO: - Give it snazzy predicted visuals! - Have a different field for pressure entry, lest it gets bulldozed every UI update. * Improve gas pressure relief valve UI TODO: Reminder to reduce amount of dirties using deltafields * Implement DirtyField prediction * Entity<T> cleanup A lot of Entity<T> conversions and lukewarm cleanup. Also got caught copy pasting code in 4K UHD but it's not like you couldn't tell. * More cleanup and comments * Remove TODO comment on bulldozing window title * """refactoring""" - Move appearance out of shared and finally fix it. Pointless to predict appearance in this instance. - More Entity<T> conversions because I like them. - Move UI creation handling over entirely to the ActivatableUI system. - Fix a hardcoded locale string (why????). * Add visuals * Revert debugging variable replacememt yea * Revert skissue * Remove unused using directives and remove TODO * Localize, cleanup, document * Fix adminlogging discrepancy * Add ability to construct, add guidebook entry * Clear up comment * Add guidebook tooltip to valve * Convert GasPressureReliefValveBoundUserInterface declaration into primary constructor * Adds more input handling and adds autofill on open * Un-deepfry input validator shitcode Genuinely what was I smoking * improve visuals logic * Refactor again - Update math to the correct implementation - Moved code that could be re-used in the future into a helper method under AtmosphereSystem.Gases.cs * I'm sorry but I hate warnings * Remove unused using directive in AtmosphereSystem.Gases.cs * Review and cleanup * Lukewarm UI glossup * Maintainer for the upstream project btw * Remove redundant state sets and messy logic * Unduplicate valve updater code * Redo UI (im sorry Slarti) * run tests * Test refactored UI messaging * Second round of UI improvements - God please find a way to improve this system. Feels bad. * Update loop implementation * Further predict UI * Clear up SetToCurrentThreshold * cleanup * Update to master + pipe layers and bug fixes want to run tests * fixes * Deploy rename pipebomb * Documentation and requested changes * Rename the method that wiggled away * Undo rounding changes * Fix comment * Rename and cleanup * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Automatic changelog update * Revert biome rework (#38724) * Revert "Fix world generation (#38713)" This reverts commit 10fa6ff4af32f0ae59ed01f243164fcf6b31f965. * Revert "Biome rework (#37735)" This reverts commit fe7b96147c05afc160c33f033deca384e2886755. * Exo - Minor balance changes and fixes (#38689) * Automatic changelog update * Fix TextLinkTag (#32203) * Scurret PDA slot fix (#38777) * Scurrets get emergency EVA suit access (#38778) * Scurrets - spacing protection via adorable outfits * ALPHABETIZATION!! * Revert "HoP's beret (#38601)" This reverts commit e9c90fe66dec0ed9579847807d9babe934a66bae. Please check the maintainer meeting for details * Revert "Readds the Hypereutactic Blade for traitors, adds Hypereutatic blade for Nukies (#37182)" This reverts commit c03afeb29cf3ed5e751e8d206e79f9f24981484e. Please check the maintainer meeting for details * Changelog removal * Scurret naming fixes (#38776) Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * Scurret displacement map fixes (#38775) * sanitize MIDI parser (#38806) Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> * Add Breach of Permanent Confinement to Space Law (#38663) * Initial commit * Fix category in text * ADAPTATION --------- Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com> Signed-off-by: Nox38 <nebulousnox38@gmail.com> Signed-off-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Kyle Tyo <36606155+VerinSenpai@users.noreply.github.com> Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com> Co-authored-by: Tayrtahn <tayrtahn@gmail.com> Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com> Co-authored-by: Qerd <73325910+BigfootBravo@users.noreply.github.com> Co-authored-by: Ps3Moira <113228053+ps3moira@users.noreply.github.com> Co-authored-by: Hannah Giovanna Dawson <karakkaraz@gmail.com> Co-authored-by: Myra <vasilis@pikachu.systems> Co-authored-by: crazybrain23 <44417085+crazybrain23@users.noreply.github.com> Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: Just-a-Unity-Dev <67359748+Just-a-Unity-Dev@users.noreply.github.com> Co-authored-by: LaCumbiaDelCoronavirus <90893484+LaCumbiaDelCoronavirus@users.noreply.github.com> Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com> Co-authored-by: Prole <172158352+Prole0@users.noreply.github.com> Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com> Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com> Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Co-authored-by: qrwas <aleksandr.vernigora93@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com> Co-authored-by: keronshb <54602815+keronshb@users.noreply.github.com> Co-authored-by: Skybailey-dev <skybailey.01@gmail.com> Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com> Co-authored-by: ScarKy0 <scarky0@onet.eu> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com> Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com> Co-authored-by: Kittygyat <202250949+Kittygyat@users.noreply.github.com> Co-authored-by: John <50085876+AreYouConfused@users.noreply.github.com> Co-authored-by: Dragonjspider <140023808+Dragonjspider@users.noreply.github.com> Co-authored-by: beesterman <72782957+beesterman@users.noreply.github.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> Co-authored-by: qwerltaz <69696513+qwerltaz@users.noreply.github.com> Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Co-authored-by: rumaks <me@rumaks.xyz> Co-authored-by: poklj <compgeek223@gmail.com> Co-authored-by: Łukasz Mędrek <lukasz@lukaszm.xyz> Co-authored-by: Hitlinemoss <209321380+Hitlinemoss@users.noreply.github.com> Co-authored-by: Southbridge <7013162+southbridge-fur@users.noreply.github.com> Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> Co-authored-by: Tiniest Shark <head.rebel@yahoo.com> Co-authored-by: Andrew Malcolm O'Neill <105134723+maland1@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Princess-Cheeseballs@users.noreply.github.com> Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com> Co-authored-by: 96flo <163569033+96flo@users.noreply.github.com> Co-authored-by: Łukasz Lindert <lukasz.lindert@protonmail.com> Co-authored-by: Stefano Pigozzi <me@steffo.eu> Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com> Co-authored-by: Nox <nebulousnox38@gmail.com> Co-authored-by: Kowlin <10947836+Kowlin@users.noreply.github.com> Co-authored-by: imatsoup <93290208+imatsoup@users.noreply.github.com> Co-authored-by: UpAndLeaves <92269094+Alpha-Two@users.noreply.github.com> Co-authored-by: little-meow-meow <204685920+little-meow-meow@users.noreply.github.com> Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com> Co-authored-by: Mora <46364955+TrixxedHeart@users.noreply.github.com> Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com> Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com> Co-authored-by: Winkarst-cpu <74284083+Winkarst-cpu@users.noreply.github.com> Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
2025-07-08 11:59:20 +03:00
RaisePredictiveEvent(new InteractInventorySlotEvent(GetNetEntity(item.Value), altInteract: true));
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
Borg type switching. (#32586) * Borg type switching. This allows borgs (new spawn or constructed) to select their chassis type on creation, like in SS13. This removes the need for the many different chassis types, and means round-start borgs can actually play the game immediately instead of waiting for science to unlock everything. New borgs have an additional action that allows them to select their type. This opens a nice window with basic information about the borgs and a select button. Once a type has been selected it is permanent for that borg chassis. These borg types also immediately start the borg with specific modules, so they do not need to be printed. Additional modules can still be inserted for upgrades, though this is now less critical. The built-in modules cannot be removed, but are shown in the UI. The modules that each borg type starts with: * Generic: tools * Engineering: advanced tools, construction, RCD, cable * Salvage: Grappling gun, appraisal, mining * Janitor: cleaning, light replacer * Medical: treatment * Service: music, service, clowning Specialized borgs have 3 additional module slots available on top of the ones listed above, generic borgs have 5. Borg types are specified in a new BorgTypePrototype. These prototypes specify all information about the borg type. It is assigned to the borg entity through a mix of client side, server, and shared code. Some of the involved components were made networked, others are just ensured they're set on both sides of the wire. The most gnarly change is the inventory template prototype, which needs to change purely to modify the borg hat offset. I managed to bodge this in with an API that *probably* won't explode for specifically for this use case, but it's still not the most clean of API designs. Parts for specific borg chassis have been removed (so much deleted YAML) and specialized borg modules that are in the base set of a type have been removed from the exosuit fab as there's no point to printing those. The ability to "downgrade" a borg so it can select a new chassis, like in SS13, is something that would be nice, but was not high enough priority for me to block the feature on. I did keep it in mind with some of the code, so it may be possible in the future. There is no fancy animation when selecting borg types like in SS13, because I didn't think it was high priority, and it would add a lot of complex code. * Fix sandbox failure due to collection expression. * Module tweak Fix salvage borg modules still having research/lathe recipes Engie borg has regular tool module, not advanced. * Fix inventory system breakage * Fix migrations Some things were missing * Guidebook rewordings & review * MinWidth on confirm selection button
2024-11-14 18:08:35 +01:00
protected override void UpdateInventoryTemplate(Entity<InventoryComponent> ent)
{
base.UpdateInventoryTemplate(ent);
if (TryComp(ent, out InventorySlotsComponent? inventorySlots))
{
foreach (var slot in ent.Comp.Slots)
{
if (inventorySlots.SlotData.TryGetValue(slot.Name, out var slotData))
slotData.SlotDef = slot;
}
}
}
public sealed class SlotData
{
Borg type switching. (#32586) * Borg type switching. This allows borgs (new spawn or constructed) to select their chassis type on creation, like in SS13. This removes the need for the many different chassis types, and means round-start borgs can actually play the game immediately instead of waiting for science to unlock everything. New borgs have an additional action that allows them to select their type. This opens a nice window with basic information about the borgs and a select button. Once a type has been selected it is permanent for that borg chassis. These borg types also immediately start the borg with specific modules, so they do not need to be printed. Additional modules can still be inserted for upgrades, though this is now less critical. The built-in modules cannot be removed, but are shown in the UI. The modules that each borg type starts with: * Generic: tools * Engineering: advanced tools, construction, RCD, cable * Salvage: Grappling gun, appraisal, mining * Janitor: cleaning, light replacer * Medical: treatment * Service: music, service, clowning Specialized borgs have 3 additional module slots available on top of the ones listed above, generic borgs have 5. Borg types are specified in a new BorgTypePrototype. These prototypes specify all information about the borg type. It is assigned to the borg entity through a mix of client side, server, and shared code. Some of the involved components were made networked, others are just ensured they're set on both sides of the wire. The most gnarly change is the inventory template prototype, which needs to change purely to modify the borg hat offset. I managed to bodge this in with an API that *probably* won't explode for specifically for this use case, but it's still not the most clean of API designs. Parts for specific borg chassis have been removed (so much deleted YAML) and specialized borg modules that are in the base set of a type have been removed from the exosuit fab as there's no point to printing those. The ability to "downgrade" a borg so it can select a new chassis, like in SS13, is something that would be nice, but was not high enough priority for me to block the feature on. I did keep it in mind with some of the code, so it may be possible in the future. There is no fancy animation when selecting borg types like in SS13, because I didn't think it was high priority, and it would add a lot of complex code. * Fix sandbox failure due to collection expression. * Module tweak Fix salvage borg modules still having research/lathe recipes Engie borg has regular tool module, not advanced. * Fix inventory system breakage * Fix migrations Some things were missing * Guidebook rewordings & review * MinWidth on confirm selection button
2024-11-14 18:08:35 +01:00
public SlotDefinition SlotDef;
public EntityUid? HeldEntity => Container?.ContainedEntity;
public bool Blocked;
public bool Highlighted;
2022-10-16 17:16:27 +13:00
[ViewVariables]
public ContainerSlot? Container;
public bool HasSlotGroup => SlotDef.SlotGroup != "Default";
public Vector2i ButtonOffset => SlotDef.UIWindowPosition;
public string SlotName => SlotDef.Name;
public bool ShowInWindow => SlotDef.ShowInWindow;
public string SlotGroup => SlotDef.SlotGroup;
public string SlotDisplayName => SlotDef.DisplayName;
public string TextureName => "Slots/" + SlotDef.TextureName;
public string FullTextureName => SlotDef.FullTextureName;
public SlotData(SlotDefinition slotDef, ContainerSlot? container = null, bool highlighted = false,
bool blocked = false)
{
SlotDef = slotDef;
Highlighted = highlighted;
Blocked = blocked;
Container = container;
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
public SlotData(SlotData oldData, bool highlighted = false, bool blocked = false)
{
SlotDef = oldData.SlotDef;
Highlighted = highlighted;
Container = oldData.Container;
Blocked = blocked;
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
public static implicit operator SlotData(SlotDefinition s)
{
return new SlotData(s);
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
public static implicit operator SlotDefinition(SlotData s)
{
return s.SlotDef;
}
get that crap outta here (completely rewrites inventorysystem) (#5807) * some work * equip: done unequip: todo * unequipping done & refactored events * workin * movin * reee namespaces * stun * mobstate * fixes * some work on events * removes serverside itemcomp & misc fixes * work * smol merge fix * ports template to prototype & finishes ui * moves relay & adds containerenumerator * actions & cuffs * my god what is actioncode * more fixes * im loosing my grasp on reality * more fixes * more work * explosions * yes * more work * more fixes * merge master & misc fixed because i forgot to commit before merging master * more fixes * fixes * moar * more work * moar fixes * suffixmap * more work on client * motivation low * no. no containers * mirroring client to server * fixes * move serverinvcomp * serverinventorycomponent is dead * gaming * only strippable & ai left... * only ai and richtext left * fixes ai * fixes * fixes sprite layers * more fixes * resolves optional * yes * stable:tm: * fixes * moar fixes * moar * fix some tests * lmao * no comment * good to merge:tm: * fixes build but for real * adresses some reviews * adresses some more reviews * nullables, yo * fixes lobbyscreen * timid refactor to differentiate actor & target * adresses more reviews * more * my god what a mess * removed the rest of duplicates * removed duplicate slotflags and renamed shoes to feet * removes another unused one * yes * fixes lobby & makes tryunequip return unequipped item * fixes * some funny renames * fixes * misc improvements to attemptevents * fixes * merge fixes Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
}
public readonly record struct SlotSpriteUpdate(
EntityUid? Entity,
string Group,
string Name,
bool ShowStorage
);
2019-07-20 13:11:42 +02:00
}
}