Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sanek31 portable camera monitor #820

Merged
merged 12 commits into from
Dec 13, 2024
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
ent-HandHeldCameras = ручной монитор камер
.desc = Портативное устройство для удаленного мониторинга камер безопасности станции.
ent-HandHeldCamerasEmpty = { ent-HandHeldCameras }
.desc = { ent-HandHeldCameras.desc }
.suffix = Пустой
1 change: 1 addition & 0 deletions Resources/Prototypes/Roles/Jobs/Security/warden.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,4 @@
storage:
back:
- Flash
- HandHeldCameras
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
- type: entity
name: handheld cameras monitor
parent: BaseHandheldComputer
id: HandHeldCameras
description: The ability to monitoring discreetly anywhere and anytime, just in your pocket.
components:
- type: Item
shape:
- 0,0,1,1
- type: Sprite
sprite: Backmen/Objects/Tools/handheld_camera_monitor.rsi
state: off
layers:
- state: off
- state: on
visible: true
map: [ "enum.PowerDeviceVisualLayers.Powered" ]
- type: Appearance
- type: GenericVisualizer
visuals:
enum.PowerCellSlotVisuals.Enabled:
enum.PowerDeviceVisualLayers.Powered:
True: { visible: true }
False: { visible: false }
- type: PowerCellDraw
drawRate: 3
useRate: 100
- type: ActivatableUIRequiresPowerCell
- type: ToggleCellDraw
- type: ActivatableUI
key: enum.SurveillanceCameraMonitorUiKey.Key
inHandsOnly: true
- type: UserInterface
interfaces:
enum.SurveillanceCameraMonitorUiKey.Key:
type: SurveillanceCameraMonitorBoundUserInterface
- type: StaticPrice
price: 150
- type: SurveillanceCameraMonitor
- type: DeviceNetwork
deviceNetId: Wired
receiveFrequencyId: SurveillanceCamera
transmitFrequencyId: SurveillanceCamera
- type: WiredNetworkConnection
Comment on lines +39 to +44
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Consider adding access restrictions for surveillance data

As this is intended for warden use, consider implementing access restrictions to prevent unauthorized users from accessing surveillance data through the device network.

Consider adding:

  1. Access level checks in the SurveillanceCameraMonitor component
  2. Encryption for network transmission
  3. Authentication requirements for device network access


- type: entity
id: HandHeldCamerasEmpty
parent: HandHeldCameras
suffix: Empty
components:
- type: ItemSlots
slots:
cell_slot:
name: power-cell-slot-component-slot-name-default
- type: Sprite
sprite: Backmen/Objects/Tools/handheld_camera_monitor.rsi
state: icon
layers:
- state: off
- state: on
shader: unshaded
visible: false
map: [ "enum.PowerDeviceVisualLayers.Powered" ]
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
"copyright": "Taken from Frontier Station, created by Tem Armoff https://github.com/new-frontiers-14/frontier-station-14/pull/484/files",
"states": [
{
"name": "on",
"directions": 1,
"delays": [
[
0.5,
0.5
]
]
},
{
"name": "off",
"directions": 1
}
]
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading