diff --git a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml index 44aa65f930a529..7cea578fcdd816 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/silicon.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/silicon.yml @@ -44,28 +44,93 @@ type: RadarConsoleBoundUserInterface enum.CrewMonitoringUIKey.Key: type: CrewMonitoringBoundUserInterface - enum.GeneralStationRecordConsoleKey.Key: - type: GeneralStationRecordConsoleBoundUserInterface +#SS220 Station Ai Actions start +# enum.GeneralStationRecordConsoleKey.Key: +# type: GeneralStationRecordConsoleBoundUserInterface +#SS220 Station Ai Actions end enum.SiliconLawsUiKey.Key: type: SiliconLawBoundUserInterface enum.CommunicationsConsoleUiKey.Key: type: CommunicationsConsoleBoundUserInterface + #SS220 Station Ai Actions start + enum.SolarControlConsoleUiKey.Key: + type: SolarControlConsoleBoundUserInterface + enum.CargoConsoleUiKey.Orders: + type: CargoOrderConsoleBoundUserInterface + enum.CriminalRecordsUiKey.Key: + type: CriminalRecordsBoundUserInterface + enum.PowerMonitoringConsoleUiKey.Key: + type: PowerMonitoringConsoleBoundUserInterface + enum.AtmosAlertsComputerUiKey.Key: + type: AtmosAlertsComputerBoundUserInterface + enum.ResearchConsoleUiKey.Key: + type: ResearchConsoleBoundUserInterface + enum.ResearchClientUiKey.Key: + type: ResearchClientBoundUserInterface + enum.SuperMatterObserverUiKey.Key: + type: SuperMatterObserverBUI + enum.RoboticsConsoleUiKey.Key: + type: RoboticsConsoleBoundUserInterface + enum.StationMapUiKey.Key: + type: StationMapBoundUserInterface + #SS220 Station Ai Actions end - type: IntrinsicUI uis: + #SS220 Station Ai Actions start enum.RadarConsoleUiKey.Key: - toggleAction: ActionAGhostShowRadar + toggleAction: ActionAiShowRadar enum.CrewMonitoringUIKey.Key: - toggleAction: ActionAGhostShowCrewMonitoring - enum.GeneralStationRecordConsoleKey.Key: - toggleAction: ActionAGhostShowStationRecords + toggleAction: ActionAiShowCrewMonitoring enum.CommunicationsConsoleUiKey.Key: - toggleAction: ActionAGhostShowCommunications + toggleAction: ActionAiShowCommunications + enum.SolarControlConsoleUiKey.Key: + toggleAction: ActionAiShowSolar + enum.CargoConsoleUiKey.Orders: + toggleAction: ActionAiShowCargo +#SS220 Station Ai Actions end +#SS220 Station Ai Actions start + # enum.GeneralStationRecordConsoleKey.Key: + # toggleAction: ActionAiShowStationRecords +#SS220 Station Ai Actions end +#SS220 Station Ai Actions start + enum.CriminalRecordsUiKey.Key: + toggleAction: ActionAiShowCriminalRecords + enum.PowerMonitoringConsoleUiKey.Key: + toggleAction: ActionAiShowPowerMonitoring + enum.AtmosAlertsComputerUiKey.Key: + toggleAction: ActionAiShowAlertInterface + enum.ResearchConsoleUiKey.Key: + toggleAction: ActionAiShowResearchAndDevelopmentInterface + enum.SuperMatterObserverUiKey.Key: + toggleAction: ActionAiShowSMInterface + enum.RoboticsConsoleUiKey.Key: + toggleAction: ActionAiShowRoboticsConsole + enum.StationMapUiKey.Key: + toggleAction: ActionAiStationMapConsole + #SS220 Station Ai Actions end - type: CrewMonitoringConsole - - type: GeneralStationRecordConsole + #- type: GeneralStationRecordConsole #SS220 Station Ai Actions + #SS220 Station Ai Actions start + - type: SolarControlConsole + - type: CargoOrderConsole + - type: CriminalRecordsConsole220 + - type: PowerMonitoringConsole + - type: AtmosAlertsComputer + - type: ResearchConsole + - type: ResearchClient + - type: TechnologyDatabase + - type: SuperMatterObserver #SS220_TODO: Добавить отоброжение СМа Для ИИ + - type: SuperMatterObserverReceiver + - type: ApcPowerReceiver + needsPower: false + powerLoad: 0 + # - type: RoboticsConsole #SS220_TODO:Добавить множественный приём DeviceNetwork + #SS220 Station Ai Actions end - type: DeviceNetwork deviceNetId: Wireless - receiveFrequencyId: CrewMonitor + receiveFrequencyId: CrewMonitor transmitFrequencyId: ShuttleTimer + - type: StationMap #SS220 Station Ai Actions end - type: RadarConsole followEntity: false - type: CommunicationsConsole @@ -527,4 +592,4 @@ prototypes: - PlayerBorgSyndicateAssaultGhostRole - PlayerBorgSyndicateAssaultGhostRole # Saboteurs are kinda like cyborg medics, we want less. - - PlayerBorgSyndicateSaboteurGhostRole + - PlayerBorgSyndicateSaboteurGhostRole \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Dispensers/chem.yml b/Resources/Prototypes/Entities/Structures/Dispensers/chem.yml index cf51ca9b1f6d59..2967bf62c57941 100644 --- a/Resources/Prototypes/Entities/Structures/Dispensers/chem.yml +++ b/Resources/Prototypes/Entities/Structures/Dispensers/chem.yml @@ -16,6 +16,7 @@ pack: ChemDispenserStandardInventory - type: ApcPowerReceiver - type: ExtensionCableReceiver + - type: StationAiWhitelist #SS220 AI Access - type: Destructible thresholds: - trigger: @@ -55,5 +56,6 @@ suffix: Empty parent: ChemDispenser components: + - type: StationAiWhitelist #SS220 AI Access - type: ReagentDispenser - pack: EmptyInventory + pack: EmptyInventory \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Machines/chem_master.yml b/Resources/Prototypes/Entities/Structures/Machines/chem_master.yml index d78ed1182cd725..71bea40d9680f8 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/chem_master.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/chem_master.yml @@ -21,6 +21,7 @@ pillDosageLimit: 20 - type: Physics bodyType: Static + - type: StationAiWhitelist #SS220 AI Access - type: Fixtures fixtures: fix1: @@ -92,4 +93,4 @@ - type: GuideHelp guides: - Chemicals - - Chemist + - Chemist \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index 856739c1d983a7..e5f74952243e1b 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml @@ -18,6 +18,7 @@ layer: - MachineLayer - type: Lathe + - type: StationAiWhitelist #SS220 AI Access - type: MaterialStorage - type: Destructible thresholds: @@ -1532,4 +1533,4 @@ - Wooden - RawMaterial - Plastic - - Ingot + - Ingot \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml index 9f21e45a9635c6..dd136b9bfc8ccb 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml @@ -64,6 +64,7 @@ - type: Construction graph: GasBinary node: pressurepump + - type: StationAiWhitelist #SS220 AI Access - type: AmbientSound enabled: false volume: -9 @@ -104,6 +105,7 @@ Off: { state: pumpVolume } Blocked: { state: pumpVolumeBlocked } - type: PipeColorVisuals + - type: StationAiWhitelist #SS220 AI Access - type: GasVolumePump enabled: false - type: UserInterface @@ -449,4 +451,4 @@ pipeDirection: South - type: Construction graph: GasBinary - node: radiator + node: radiator \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/bar_sign.yml b/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/bar_sign.yml index 96b77f9b60a976..1d8944425b05d1 100644 --- a/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/bar_sign.yml +++ b/Resources/Prototypes/Entities/Structures/Wallmounts/Signs/bar_sign.yml @@ -10,6 +10,7 @@ collection: GlassSmash - type: WallMount arc: 360 + - type: StationAiWhitelist #SS220 AI Access - type: Sprite drawdepth: AboveFovOverlay #SS220 Perpective-wall-fov sprite: Structures/Wallmounts/barsign.rsi @@ -265,4 +266,4 @@ description: You can't get away from them, even in space, and even after we started calling them 'spesos' instead. components: - type: BarSign - current: Spacebucks + current: Spacebucks \ No newline at end of file diff --git a/Resources/Prototypes/SS220/Entities/Mobs/Player/silicon.yml b/Resources/Prototypes/SS220/Entities/Mobs/Player/silicon.yml new file mode 100644 index 00000000000000..957771158fed22 --- /dev/null +++ b/Resources/Prototypes/SS220/Entities/Mobs/Player/silicon.yml @@ -0,0 +1,142 @@ +- type: entity + id: ActionAiShowCrewMonitoring + name: Crew Monitoring Interface + description: View a Crew Monitoring Interface. + components: + - type: InstantAction + icon: Interface/Actions/actions_ai.rsi/crew_monitor.png #Off sprite + iconOn: Interface/Actions/actions_ai.rsi/crew_monitor.png #Off sprite + keywords: [ "AI", "console", "interface" ] + priority: -21 + event: !type:ToggleIntrinsicUIEvent { key: enum.CrewMonitoringUIKey.Key } + +- type: entity + id: ActionAiShowCommunications + name: Communications Interface + description: View a Communications Interface. + components: + - type: InstantAction + icon: Interface/Actions/actions_ai.rsi/comms_console.png #Off sprite + iconOn: Interface/Actions/actions_ai.rsi/comms_console.png # Off-sprite + keywords: [ "AI", "console", "interface" ] + priority: -20 + event: !type:ToggleIntrinsicUIEvent { key: enum.CommunicationsConsoleUiKey.Key } +- type: entity + id: ActionAiShowCriminalRecords + name: Criminal Records Interface + description: View a Station Criminal Record + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/criminal_records.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/criminal_records.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -19 + event: !type:ToggleIntrinsicUIEvent { key: enum.CriminalRecordsUiKey.Key } + +- type: entity + id: ActionAiShowRoboticsConsole + name: Robotics Console Interface + description: View a Borg info + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/robotics_console.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/robotics_console.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -18 + event: !type:ToggleIntrinsicUIEvent { key: enum.RoboticsConsoleUiKey.Key } + +- type: entity + id: ActionAiStationMapConsole + name: Statione Map Interface + description: View a Station Map + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/station_map.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/station_map.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -17 + event: !type:ToggleIntrinsicUIEvent { key: enum.StationMapUiKey.Key } + +- type: entity + id: ActionAiShowPowerMonitoring + name: Power Monitoring Interface + description: View a Power of Station + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/power_console.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/power_console.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -16 + event: !type:ToggleIntrinsicUIEvent { key: enum.PowerMonitoringConsoleUiKey.Key } + +- type: entity + id: ActionAiShowAlertInterface + name: Alert Interface + description: View a Alerts on Station + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/alert_console.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/alert_console.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -15 + event: !type:ToggleIntrinsicUIEvent { key: enum.AtmosAlertsComputerUiKey.Key } + +- type: entity + id: ActionAiShowRadar + name: Mass Scanner Interface + description: View a Mass Scanner Interface. + components: + - type: InstantAction + icon: Interface/Actions/actions_ai.rsi/mass_scanner.png # Off-sprite + iconOn: Interface/Actions/actions_ai.rsi/mass_scanner.png # Off-sprite + keywords: [ "AI", "console", "interface" ] + priority: -14 + event: !type:ToggleIntrinsicUIEvent { key: enum.RadarConsoleUiKey.Key } + +- type: entity + id: ActionAiShowCargo + name: Cargo Ordering Interface + description: View a Cargo Ordering Interface. + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/cargo_console.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/cargo_console.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -13 + event: !type:ToggleIntrinsicUIEvent { key: enum.CargoConsoleUiKey.Orders } + +- type: entity + id: ActionAiShowResearchAndDevelopmentInterface + name: RaD Interface + description: View a RaD interface + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/rad_console.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/rad_console.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -12 + event: !type:ToggleIntrinsicUIEvent { key: enum.ResearchConsoleUiKey.Key } + +- type: entity + id: ActionAiShowSolar + name: Solar Control Interface + description: View a Solar Control Interface. + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/solar_console.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/solar_console.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -11 + event: !type:ToggleIntrinsicUIEvent { key: enum.SolarControlConsoleUiKey.Key } + +- type: entity + id: ActionAiShowSMInterface + name: Super Matter Observer Interface + description: View a SM interface + components: + - type: InstantAction + icon: SS220/Interface/Actions/actions_ai.rsi/sm_console.png # SS220-Resprite + iconOn: SS220/Interface/Actions/actions_ai.rsi/sm_console.png # SS220-Resprite + keywords: [ "AI", "console", "interface" ] + priority: -10 + event: !type:ToggleIntrinsicUIEvent { key: enum.SuperMatterObserverUiKey.Key } \ No newline at end of file diff --git a/Resources/Prototypes/SS220/Entities/Structures/Machines/photocopier.yml b/Resources/Prototypes/SS220/Entities/Structures/Machines/photocopier.yml index 1a7b19cb926c6a..79aec286a94297 100644 --- a/Resources/Prototypes/SS220/Entities/Structures/Machines/photocopier.yml +++ b/Resources/Prototypes/SS220/Entities/Structures/Machines/photocopier.yml @@ -34,6 +34,7 @@ shape: !type:PhysShapeCircle radius: 0.2 + - type: StationAiWhitelist #SS220 AI Access - type: Photocopier formCollections: [ "nanotrasen_station" ] contrabandFormCollections: [ "syndicate" ] @@ -84,6 +85,7 @@ parent: PhotocopierBase name: central command photocopier components: + - type: StationAiWhitelist #SS220 AI Access - type: Photocopier formCollections: [ "nanotrasen_station", "nanotrasen_central_command" ] tonerSlot: @@ -132,4 +134,4 @@ capacity: 10000 charges: 10000 - type: StaticPrice - price: 2500 + price: 2500 \ No newline at end of file diff --git a/Resources/Prototypes/SS220/Entities/Structures/Power/Generation/Supermatter/observer.yml b/Resources/Prototypes/SS220/Entities/Structures/Power/Generation/Supermatter/observer.yml index 6ab6a828b10125..380bbd3f99097f 100644 --- a/Resources/Prototypes/SS220/Entities/Structures/Power/Generation/Supermatter/observer.yml +++ b/Resources/Prototypes/SS220/Entities/Structures/Power/Generation/Supermatter/observer.yml @@ -22,6 +22,7 @@ - type: Computer board: SuperMatterObserverCircuitboard - type: SuperMatterObserver + - type: StationAiWhitelist #SS220 AI Access - type: SuperMatterObserverReceiver - type: ActivatableUIRequiresPower - type: ActivatableUI @@ -52,4 +53,4 @@ completetime: 4 materials: Steel: 100 - Glass: 500 + Glass: 500 \ No newline at end of file diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/alert_console.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/alert_console.png new file mode 100644 index 00000000000000..bd8ed1ccb583d7 Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/alert_console.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/cargo_console.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/cargo_console.png new file mode 100644 index 00000000000000..05f2d77754de1f Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/cargo_console.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/criminal_records.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/criminal_records.png new file mode 100644 index 00000000000000..70ce70b23d8672 Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/criminal_records.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/meta.json b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/meta.json new file mode 100644 index 00000000000000..966afae21a186a --- /dev/null +++ b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/meta.json @@ -0,0 +1,38 @@ +{ + "version": 1, + "license": "EULA/CLA with a hosting restriction, full text: https://raw.githubusercontent.com/SerbiaStrong-220/space-station-14/master/CLA.txt", + "copyright": "Sprited by burenka._. (Discord) for SS220", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "alert_console" + }, + { + "name": "power_console" + }, + { + "name": "rad_console" + }, + { + "name": "robotics_console" + }, + { + "name": "sm_console" + }, + { + "name": "station_map" + }, + { + "name": "cargo_console" + }, + { + "name": "criminal_records" + }, + { + "name": "solar_console" + } + ] +} diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/power_console.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/power_console.png new file mode 100644 index 00000000000000..9d663d7657d10b Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/power_console.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/rad_console.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/rad_console.png new file mode 100644 index 00000000000000..4144165793d836 Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/rad_console.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/robotics_console.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/robotics_console.png new file mode 100644 index 00000000000000..4899b28d125e24 Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/robotics_console.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/sm_console.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/sm_console.png new file mode 100644 index 00000000000000..2375f9ff26f758 Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/sm_console.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/solar_console.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/solar_console.png new file mode 100644 index 00000000000000..28451aaea2876f Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/solar_console.png differ diff --git a/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/station_map.png b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/station_map.png new file mode 100644 index 00000000000000..46cbd5409ec747 Binary files /dev/null and b/Resources/Textures/SS220/Interface/Actions/actions_ai.rsi/station_map.png differ