SUPER CAMERA(OCHKO) (#501)

* SUPER CAMERA(OCHKO)

* Удобный монитор камер и портативный мониторинг для детектива. (#25)

* Улучшение мониторинга камер

* Портативный монитор камер для дека

* чейнжлог

* Revert "Удобный монитор камер и портативный мониторинг для детектива. (#25)"

This reverts commit adf35bb8f6ddd6256b18841a81b330224ebff103.

* Revert "Revert "Удобный монитор камер и портативный мониторинг для детектива. (#25)""

This reverts commit bd30fe45046b7b8508e8277f8c186d03338354cd.

* cleanups

* its so over

---------

Co-authored-by: Vigers Ray <60344369+VigersRay@users.noreply.github.com>
Co-authored-by: drdth <drdtheuser@gmail.com>
This commit is contained in:
RedBurningPhoenix
2024-07-27 20:47:27 +05:00
committed by GitHub
parent a1f562d181
commit 3ed0f2c4bb
22 changed files with 385 additions and 263 deletions

View File

@@ -1,3 +1,4 @@
using Robust.Shared.Map;
using Robust.Shared.Serialization;
namespace Content.Shared.SurveillanceCamera;
@@ -17,30 +18,39 @@ public sealed class SurveillanceCameraMonitorUiState : BoundUserInterfaceState
public string ActiveAddress;
// Currently active subnet.
public string ActiveSubnet { get; }
// Known cameras, by address and name.
public Dictionary<string, string> Cameras { get; }
public Dictionary<NetEntity, CameraData> Cameras { get; }
public SurveillanceCameraMonitorUiState(NetEntity? activeCamera, HashSet<string> subnets, string activeAddress, string activeSubnet, Dictionary<string, string> cameras)
public SurveillanceCameraMonitorUiState(NetEntity? activeCamera, HashSet<string> subnets, string activeAddress, Dictionary<NetEntity, CameraData> cameras)
{
ActiveCamera = activeCamera;
Subnets = subnets;
ActiveAddress = activeAddress;
ActiveSubnet = activeSubnet;
Cameras = cameras;
}
}
// Sunrise-start
[Serializable, NetSerializable]
[DataDefinition]
public partial class CameraData
{
public string CameraAddress { get; set; }
public string SubnetAddress { get; set; }
public string Name { get; set; }
public NetCoordinates Coordinates { get; set; }
public Color SubnetColor { get; set; }
}
// Sunrise-end
[Serializable, NetSerializable]
public sealed class SurveillanceCameraMonitorSwitchMessage : BoundUserInterfaceMessage
{
public string Address { get; }
public NetEntity CameraNetEntity { get; }
public SurveillanceCameraMonitorSwitchMessage(string address)
public SurveillanceCameraMonitorSwitchMessage(NetEntity camera)
{
Address = address;
CameraNetEntity = camera;
}
}