Content update for NetEntities (#18935)

This commit is contained in:
metalgearsloth
2023-09-11 09:42:41 +10:00
committed by GitHub
parent 389c8d1a2c
commit 5a0fc68be2
526 changed files with 3058 additions and 2215 deletions

View File

@@ -2,13 +2,18 @@
using Robust.Shared.Containers;
using Robust.Shared.GameStates;
using Robust.Shared.Map;
using Robust.Shared.Network;
namespace Content.Shared.CartridgeLoader;
public abstract class SharedCartridgeLoaderSystem : EntitySystem
{
public const string InstalledContainerId = "program-container";
[Dependency] private readonly ItemSlotsSystem _itemSlotsSystem = default!;
[Dependency] private readonly SharedAppearanceSystem _appearanceSystem = default!;
[Dependency] private readonly SharedContainerSystem _container = default!;
[Dependency] private readonly INetManager _netMan = default!;
public override void Initialize()
{
@@ -36,11 +41,8 @@ public abstract class SharedCartridgeLoaderSystem : EntitySystem
private void OnComponentRemove(EntityUid uid, CartridgeLoaderComponent loader, ComponentRemove args)
{
_itemSlotsSystem.RemoveItemSlot(uid, loader.CartridgeSlot);
foreach (var program in loader.InstalledPrograms)
{
EntityManager.QueueDeleteEntity(program);
}
if (_container.TryGetContainer(uid, InstalledContainerId, out var cont))
cont.Shutdown(EntityManager, _netMan);
}
protected virtual void OnItemInserted(EntityUid uid, CartridgeLoaderComponent loader, EntInsertedIntoContainerMessage args)