Good Intercoms (#17950)

* crystal anomaly

* Good intercoms

* fixes

* fix construction fail

* Revert "crystal anomaly"

This reverts commit 0d9e3f62ff82c79e72f882b9c7f4ca1b9c6e6dd8.

* migration
This commit is contained in:
Nemanja
2023-07-11 19:58:18 -04:00
committed by GitHub
parent f89e85c1e9
commit 6dbfbc52c0
21 changed files with 407 additions and 98 deletions

View File

@@ -0,0 +1,5 @@
intercom-menu-title = Intercom
intercom-channel-label = Channel:
intercom-button-text-mic = Mic.
intercom-button-text-speaker = Speak
intercom-flavor-text-left = Keep lines free of chatter

View File

@@ -51,6 +51,8 @@
type: TransferAmountBoundUserInterface
- key: enum.InstrumentUiKey.Key
type: InstrumentBoundUserInterface
- key: enum.IntercomUiKey.Key
type: IntercomBoundUserInterface
- type: Appearance
- type: Item
size: 40

View File

@@ -28,6 +28,8 @@
type: TransferAmountBoundUserInterface
- key: enum.InstrumentUiKey.Key
type: InstrumentBoundUserInterface
- key: enum.IntercomUiKey.Key
type: IntercomBoundUserInterface
- type: Reactive
groups:
Acidic: [Touch]

View File

@@ -2,6 +2,7 @@
id: Intercom
name: intercom
description: An intercom. For when the station just needs to know something.
abstract: true
components:
- type: WallMount
- type: ApcPowerReceiver
@@ -12,6 +13,11 @@
powerRequired: true
unobstructedRequired: true
listenRange: 2
toggleOnInteract: false
- type: RadioSpeaker
toggleOnInteract: false
- type: Intercom
- type: Speech
- type: ExtensionCableReceiver
- type: Clickable
- type: InteractionOutline
@@ -23,10 +29,15 @@
- state: base
- state: unshaded
map: ["enum.PowerDeviceVisualLayers.Powered"]
shader: unshaded
- state: broadcasting
map: ["enum.RadioDeviceVisualLayers.Broadcasting"]
shader: unshaded
visible: false
- state: speaker
map: ["enum.RadioDeviceVisualLayers.Speaker"]
shader: unshaded
visible: false
- type: Transform
noRot: false
anchored: true
@@ -34,6 +45,13 @@
- type: Wires
BoardName: "Intercom"
LayoutId: Intercom
- type: ActivatableUIRequiresPower
- type: ActivatableUI
key: enum.IntercomUiKey.Key
- type: UserInterface
interfaces:
- key: enum.IntercomUiKey.Key
type: IntercomBoundUserInterface
- type: Construction
graph: Intercom
node: intercom
@@ -67,6 +85,10 @@
enum.RadioDeviceVisualLayers.Broadcasting:
True: { visible: true }
False: { visible: false }
enum.RadioDeviceVisuals.Speaker:
enum.RadioDeviceVisualLayers.Speaker:
True: { visible: true }
False: { visible: false }
placement:
mode: SnapgridCenter
snap:
@@ -93,15 +115,21 @@
snap:
- Wallmount
- type: entity
id: IntercomCommon
parent: Intercom
suffix: Common
components:
- type: Intercom
supportedChannels:
- Common
- type: entity
id: IntercomCommand
parent: Intercom
suffix: Command
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Command
@@ -111,10 +139,7 @@
parent: Intercom
suffix: Engineering
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Engineering
@@ -124,10 +149,7 @@
parent: Intercom
suffix: Medical
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Medical
@@ -137,10 +159,7 @@
parent: Intercom
suffix: Science
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Science
@@ -150,10 +169,7 @@
parent: Intercom
suffix: Security
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Security
@@ -163,10 +179,7 @@
parent: Intercom
suffix: Service
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Service
@@ -176,10 +189,7 @@
parent: Intercom
suffix: Supply
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Supply
@@ -189,10 +199,7 @@
parent: Intercom
suffix: All
components:
- type: RadioMicrophone
powerRequired: true
unobstructedRequired: true
listenRange: 2
- type: Intercom
supportedChannels:
- Common
- Command

View File

@@ -41,7 +41,7 @@
- id: RandomPainting
prob: 0.05
orGroup: content
- id: Intercom
- id: IntercomCommon
prob: 0.1
orGroup: content
@@ -124,7 +124,7 @@
- id: RandomPainting
prob: 0.05
orGroup: content
- id: Intercom
- id: IntercomCommon
prob: 0.1
orGroup: content

View File

@@ -57,7 +57,7 @@
doAfter: 2
- node: intercom
entity: Intercom #TODO: make this work with encryption keys
entity: IntercomCommon #TODO: make this work with encryption keys
edges:
- to: wired
conditions:

View File

@@ -7,7 +7,15 @@
permanentComponents:
- type: RadioMicrophone
powerRequired: false
toggleOnInteract: false
listenRange: 3
- type: Speech
- type: RadioSpeaker
toggleOnInteract: false
- type: ActivatableUI
key: enum.IntercomUiKey.Key
- type: Intercom
requiresPower: false
supportedChannels:
- Common
- CentCom

View File

@@ -19,6 +19,10 @@
"name": "build",
"directions": 4
},
{
"name": "speaker",
"directions": 4
},
{
"name": "unshaded",
"directions": 4

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 369 B

After

Width:  |  Height:  |  Size: 328 B

View File

@@ -101,4 +101,7 @@ ClothingHeadHelmetHelmetOld: ClothingHeadHelmetBasic
# 2023-07-04
# Bulletproof armor is almost statistically identical to kevlar, however, before this kevlar armor was the closest thing there was to "basic" armor. It makes the most sense to replace it with this.
ClothingOuterVestKevlar: ClothingOuterArmorBasic
ClothingOuterVestKevlar: ClothingOuterArmorBasic
# 2023-07-10
Intercom: IntercomCommon