]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Strobes added (#26083)
authorKo4ergaPunk <62609550+Ko4ergaPunk@users.noreply.github.com>
Fri, 12 Apr 2024 08:02:06 +0000 (11:02 +0300)
committerGitHub <noreply@github.com>
Fri, 12 Apr 2024 08:02:06 +0000 (11:02 +0300)
* Done

* Adds new

* empty

* attributions

* empty

* strobe admin deleted

Resources/Audio/Effects/Lightning/attributions.yml
Resources/Audio/Effects/Lightning/strobe.ogg [new file with mode: 0644]
Resources/Audio/Effects/Lightning/strobeepsilon.ogg [new file with mode: 0644]
Resources/Prototypes/Entities/Structures/Lighting/strobe_lighting.yml [new file with mode: 0644]
Resources/Prototypes/Recipes/Construction/Graphs/structures/lighting.yml
Resources/Prototypes/Recipes/Construction/structures.yml
Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/base.png [new file with mode: 0644]
Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/broken.png [new file with mode: 0644]
Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/empty.png [new file with mode: 0644]
Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/glow.png [new file with mode: 0644]
Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/meta.json [new file with mode: 0644]

index fa6cc9d165f0d263aafab85cbe81c5f28e416b8b..0bd92af1bbcbe07f66577001386ada5875dba0c3 100644 (file)
@@ -2,3 +2,13 @@
   license: CC-BY-NC-SA-3.0
   copyright: Citadel Station 13
   source: https://github.com/Citadel-Station-13/Citadel-Station-13/commit/35a1723e98a60f375df590ca572cc90f1bb80bd5
+
+- files: ["strobeepsilon.ogg"]
+  license: "CC-BY-SA-3.0"
+  copyright: "Made by dj-34 (https://github.com/dj-34). Modified by Ko4erga"
+  source: "https://github.com/ss220-space/Paradise/blob/05043bcfb35c2e7bcf1efbdbfbf976e1a2504bc2/sound/effects/epsilon.ogg" 
+
+- files: ["strobe.ogg"]
+  source: "https://freesound.org/people/blukotek/sounds/431651/"
+  license: "CC0-1.0"
+  copyright: "Piotr Zaczek (blukotek) on freesound.org. Modified by Ko4erga"
diff --git a/Resources/Audio/Effects/Lightning/strobe.ogg b/Resources/Audio/Effects/Lightning/strobe.ogg
new file mode 100644 (file)
index 0000000..0d8228c
Binary files /dev/null and b/Resources/Audio/Effects/Lightning/strobe.ogg differ
diff --git a/Resources/Audio/Effects/Lightning/strobeepsilon.ogg b/Resources/Audio/Effects/Lightning/strobeepsilon.ogg
new file mode 100644 (file)
index 0000000..9f77e93
Binary files /dev/null and b/Resources/Audio/Effects/Lightning/strobeepsilon.ogg differ
diff --git a/Resources/Prototypes/Entities/Structures/Lighting/strobe_lighting.yml b/Resources/Prototypes/Entities/Structures/Lighting/strobe_lighting.yml
new file mode 100644 (file)
index 0000000..8eceb76
--- /dev/null
@@ -0,0 +1,148 @@
+- type: entity
+  id: AlwaysPoweredStrobeLight
+  name: strobe
+  description: "UH?! Sorry, all I can hear is WEE-OOO-WEE-OOO!"
+  suffix: Always powered
+  components:
+  - type: AmbientSound
+    volume: -15
+    range: 2
+    sound:
+      path: /Audio/Ambience/Objects/light_hum.ogg
+  - type: MeleeSound
+    soundGroups:
+      Brute:
+        collection: GlassSmash
+  - type: Transform
+    anchored: true
+  - type: Clickable
+  - type: InteractionOutline
+  - type: Construction
+    graph: LightFixture
+    node: bulbLight
+  - type: Sprite
+    sprite: Structures/Wallmounts/Lighting/strobe_light.rsi
+    drawdepth: WallMountedItems
+    layers:
+    - map: ["enum.PoweredLightLayers.Base"]
+      state: base
+    - map: ["enum.PoweredLightLayers.Glow"]
+      state: glow
+      shader: unshaded
+    state: base
+  - type: PointLight
+    mask: /Textures/Effects/LightMasks/double_cone.png
+    color: "#FFE4CE"
+    energy: 5
+    radius: 10
+    softness: 1
+    offset: "0, 0.35"
+  - type: RotatingLight
+  - type: Damageable
+    damageContainer: Inorganic
+    damageModifierSet: Metallic
+  - type: Destructible
+    thresholds:
+    - trigger:
+        !type:DamageTrigger
+        damage: 100
+      behaviors: #excess damage, don't spawn entities.
+      - !type:DoActsBehavior
+        acts: [ "Destruction" ]
+    - trigger:
+        !type:DamageTrigger
+        damage: 25
+      behaviors:
+      - !type:EmptyAllContainersBehaviour
+      - !type:SpawnEntitiesBehavior
+        spawn:
+          SheetSteel1:
+            min: 1
+            max: 1
+      - !type:DoActsBehavior
+        acts: ["Destruction"]
+  placement:
+    mode: SnapgridCenter
+    snap:
+    - Wallmount
+
+- type: entity
+  name: strobe
+  description: "UH?! Sorry, all I can hear is WEE-OOO-WEE-OOO!"
+  id: PoweredStrobeLightEmpty
+  suffix: Empty
+  parent: AlwaysPoweredStrobeLight
+  components:
+  - type: Sprite
+    sprite: Structures/Wallmounts/Lighting/strobe_light.rsi
+    state: empty
+  - type: AmbientSound
+    enabled: false
+  - type: PointLight
+    enabled: false
+    offset: "0, 0.35"
+  - type: ContainerContainer
+    containers:
+      light_bulb: !type:ContainerSlot
+  - type: PoweredLight
+    bulb: Bulb
+    on: false
+    damage:
+      types:
+        Heat: 5
+  - type: ApcPowerReceiver
+  - type: ExtensionCableReceiver
+  - type: DeviceNetwork
+    deviceNetId: Wireless
+    receiveFrequencyId: SmartLight
+  - type: WirelessNetworkConnection
+    range: 200
+  - type: Appearance
+  - type: PoweredLightVisuals
+    spriteStateMap:
+      empty: empty
+      broken: broken
+      burned: broken
+      off: base
+      on: base
+  - type: DeviceLinkSink
+    ports:
+      - On
+      - Off
+      - Toggle
+  - type: Construction
+    graph: LightFixture
+    node: strobeLight
+
+- type: entity
+  id: PoweredStrobeLightPolice
+  suffix: "Empty, police"
+  parent: PoweredStrobeLightEmpty
+  components:
+  - type: AmbientSound
+    volume: 0
+    range: 10
+    sound:
+      path: "/Audio/Effects/Lightning/strobe.ogg"
+
+- type: entity
+  id: PoweredStrobeLightSiren
+  suffix: "Empty, siren"
+  parent: PoweredStrobeLightEmpty
+  components:
+  - type: AmbientSound
+    volume: 0
+    range: 10
+    sound:
+      path: "/Audio/Misc/siren.ogg"
+
+- type: entity
+  id: PoweredStrobeLightEpsilon
+  suffix: "Empty, epsilon"
+  parent: PoweredStrobeLightEmpty
+  components:
+  - type: AmbientSound
+    volume: 0
+    range: 10
+    sound:
+      path: "/Audio/Effects/Lightning/strobeepsilon.ogg"
\ No newline at end of file
index 111d8ebcd7212986993231a6aaa0b76d0abf9c1c..f70a44efe3c1ef641bd8941b1d671bd5d177fc84 100644 (file)
             - material: Steel
               amount: 5
               doAfter: 2.0
+        - to: strobeLight
+          steps:
+            - material: Steel
+              amount: 1
+              doAfter: 2.0
     - node: tubeLight
       entity: PoweredlightEmpty
       edges:
             - !type:SpawnPrototype
               prototype: SheetSteel1
               amount: 5
+            - !type:DeleteEntity {}
+    - node: strobeLight
+      entity: PoweredStrobeLightEmpty
+      edges:
+        - to: start
+          conditions:
+            - !type:ContainerEmpty
+              container: "light_bulb"
+          steps:
+            - tool: Screwing
+              doAfter: 2.0
+          completed:
+            - !type:SpawnPrototype
+              prototype: SheetSteel1
+              amount: 1
             - !type:DeleteEntity {}
\ No newline at end of file
index a1f370cc1bd23e758f96576cbe9793c44e0043f0..46f61807f3fdc9514d3b5509e430b26df7bd3d33 100644 (file)
   conditions:
     - !type:TileNotBlocked
 
+- type: construction
+  name: strobe light
+  id: LightStrobeFixture
+  graph: LightFixture
+  startNode: start
+  targetNode: strobeLight
+  category: construction-category-structures
+  description: A wall light fixture. Use light bulbs.
+  icon:
+    sprite: Structures/Wallmounts/Lighting/strobe_light.rsi
+    state: base
+  objectType: Structure
+  placementMode: SnapgridCenter
+  canRotate: true
+  canBuildInImpassable: false
+  conditions:
+    - !type:TileNotBlocked
+
 #conveyor
 - type: construction
   name: conveyor belt
diff --git a/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/base.png b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/base.png
new file mode 100644 (file)
index 0000000..a68dfc9
Binary files /dev/null and b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/base.png differ
diff --git a/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/broken.png b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/broken.png
new file mode 100644 (file)
index 0000000..e2a4ab4
Binary files /dev/null and b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/broken.png differ
diff --git a/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/empty.png b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/empty.png
new file mode 100644 (file)
index 0000000..b48cc5a
Binary files /dev/null and b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/empty.png differ
diff --git a/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/glow.png b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/glow.png
new file mode 100644 (file)
index 0000000..0e8645b
Binary files /dev/null and b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/glow.png differ
diff --git a/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/meta.json b/Resources/Textures/Structures/Wallmounts/Lighting/strobe_light.rsi/meta.json
new file mode 100644 (file)
index 0000000..865473f
--- /dev/null
@@ -0,0 +1,27 @@
+{
+  "version": 1,
+  "license": "CC-BY-SA-3.0",
+  "copyright": "by Ko4erga (discord)",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "base",
+      "directions": 4
+    },
+    {
+      "name": "empty",
+      "directions": 4
+    },
+         {
+      "name": "glow",
+      "directions": 4
+    },
+    {
+      "name": "broken",
+      "directions": 4
+    }
+  ]
+}