PDA UI refactor and cartridges (#11335)
* Work on cartridges * Work on PDA UI * Work on PDA UIs program list * Work on PDA UI borders * Add DeviceNetworkingComponent to the pda base prototype * Fix submodule version * Fix cartridge loader ui key * Fix pda menu xaml * Implement relaying ui messages * Finish implementing the notekeeper cartridge * Fix submodule version * Fix errors from merging master * Fix test failing * Implement setting preinstalled programs * Add some documentation to CartridgeLoaderSystem * Add more doc comments * Add localization to program names * Implement review suggestions * Fix background programs receiving events twice when active
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
using Content.Shared.Containers.ItemSlots;
|
||||
|
||||
namespace Content.Shared.CartridgeLoader;
|
||||
|
||||
[Access(typeof(SharedCartridgeLoaderSystem))]
|
||||
public abstract class SharedCartridgeLoaderComponent : Component
|
||||
{
|
||||
public const string CartridgeSlotId = "Cartridge-Slot";
|
||||
|
||||
[DataField("cartridgeSlot")]
|
||||
public ItemSlot CartridgeSlot = new();
|
||||
|
||||
/// <summary>
|
||||
/// List of programs that come preinstalled with this cartridge loader
|
||||
/// </summary>
|
||||
[DataField("preinstalled")]
|
||||
public List<string> PreinstalledPrograms = new();
|
||||
|
||||
/// <summary>
|
||||
/// The currently running program that has its ui showing
|
||||
/// </summary>
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
public EntityUid? ActiveProgram = default;
|
||||
|
||||
/// <summary>
|
||||
/// The list of programs running in the background, listening to certain events
|
||||
/// </summary>
|
||||
[ViewVariables]
|
||||
public readonly List<EntityUid> BackgroundPrograms = new();
|
||||
|
||||
/// <summary>
|
||||
/// The list of program entities that are spawned into the cartridge loaders program container
|
||||
/// </summary>
|
||||
[DataField("installedCartridges")]
|
||||
public List<EntityUid> InstalledPrograms = new();
|
||||
}
|
||||
Reference in New Issue
Block a user