-- files:
+- files:
- "whistle_1.ogg"
- "whistle_2.ogg"
- "whistle_3.ogg"
- "whistle_7.ogg"
license: "CC0-1.0"
copyright: "User strongbot on freesound.org. Modified by Fahasor on github"
- source: "https://freesound.org/people/strongbot/sounds/568995/"
\ No newline at end of file
+ source: "https://freesound.org/people/strongbot/sounds/568995/"
+
+- files:
+ - "trench_whistle_1.ogg"
+ - "trench_whistle_2.ogg"
+ - "trench_whistle_3.ogg"
+ license: "CC0-1.0"
+ copyright: "Deleted user on freesound.org."
+ source: "https://freesound.org/people/deleted_user_2104797/sounds/324539/"
uplink-emp-kit-name = Electrical Disruptor Kit
uplink-emp-kit-desc = The ultimate reversal on energy-based weaponry: Disables disablers, stuns stunbatons, discharges laser guns! Contains 3 EMP grenades and an EMP implanter. Note: Does not disrupt actual firearms.
+uplink-decoy-kit-name = Decoy Kit
+uplink-decoy-kit-desc = State-of-the-art distraction technology straight from RND. Comes with five realistic balloons, four decoy grenades, and some snap poppers!
+
uplink-chemistry-kit-name = Chemical Synthesis Kit
uplink-chemistry-kit-desc = A starter kit for the aspiring chemist, includes toxin and vestine for all your criminal needs!
- id: ClothingHandsGlovesNitrile
- id: SyringeTranexamicAcid
- id: SyringeHyronalin
+
+- type: entity
+ parent: ClothingBackpackDuffelSyndicateBundle
+ id: ClothingBackpackDuffelSyndicateDecoyKitFilled
+ name: decoy bundle
+ description: "Contains distractions, both auditory and visual. Smell coming soon."
+ components:
+ - type: StorageFill
+ contents:
+ - id: BalloonOperative
+ - id: BalloonAgent
+ - id: BalloonElite
+ - id: BalloonJuggernaut
+ - id: BalloonCommander
+ - id: SnapPopBox
+ - id: GrenadeDummy
+ amount: 2
+ - id: SyndieTrickyBomb
+ amount: 2
components:
- type: StorageFill
contents:
+ - id: SnapPopBox
- id: CrazyGlue
amount: 2
- id: PlasticBanana
description: uplink-binary-translator-key-desc
icon: { sprite: /Textures/Objects/Devices/encryption_keys.rsi, state: rd_label }
productEntity: EncryptionKeyBinary
- cost:
+ cost:
Telecrystal: 1
categories:
categories:
- UplinkBundles
+- type: listing
+ id: UplinkDecoyKit
+ name: uplink-decoy-kit-name
+ description: uplink-decoy-kit-desc
+ icon: { sprite: /Textures/Objects/Tools/Decoys/operative_decoy.rsi, state: folded }
+ productEntity: ClothingBackpackDuffelSyndicateDecoyKitFilled
+ cost:
+ Telecrystal: 6
+ categories:
+ - UplinkBundles
+
- type: listing
id: UplinkMedsBundle
name: uplink-meds-bundle-name
--- /dev/null
+- type: entity
+ parent: BaseItem
+ id: SnapPop
+ name: snap pop
+ description: Throw it at the floor and listen to it POP!
+ components:
+ - type: Sprite
+ sprite: Objects/Fun/toys.rsi
+ state: snappop
+ - type: Item
+ size: Tiny
+ - type: Damageable
+ damageContainer: Inorganic
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 1
+ behaviors:
+ - !type:DoActsBehavior
+ acts: ["Destruction"]
+ - !type:PlaySoundBehavior
+ sound:
+ path: /Audio/Effects/snap.ogg
+ - !type:ExplodeBehavior
+ - type: DamageOnLand
+ damage:
+ types:
+ Blunt: 3
+ - type: Explosive
+ explosionType: Default
+ # Cosmetic explosion :tf:
+ maxIntensity: 0.01
+ intensitySlope: 1
+ totalIntensity: 0.01
+ - type: Tag
+ tags:
+ - SnapPop
+
+- type: entity
+ parent: BaseStorageItem
+ id: SnapPopBox
+ name: snap pop box
+ description: Contains twenty snap pops for a few minutes of popping fun!
+ components:
+ - type: Item
+ size: Normal
+ - type: Sprite
+ sprite: Objects/Fun/toys.rsi
+ state: spbox
+ - type: Storage
+ grid:
+ - 0,0,4,3
+ areaInsert: true
+ maxItemSize: Tiny
+ - type: StorageFill
+ contents:
+ - id: SnapPop
+ amount: 20
+ - type: Dumpable
+
- type: UseDelay
delay: 3
- type: EmitSoundOnUse
- sound:
+ sound:
collection: BaseWhistle
- type: Whistle
distance: 5
sprite: Objects/Fun/whistle.rsi
state: securityWhistle
- type: Item
- sprite: Objects/Fun/whistle.rsi
\ No newline at end of file
+ sprite: Objects/Fun/whistle.rsi
+
+- type: entity
+ parent: BaseWhistle
+ id: SyndicateWhistle
+ name: trench whistle
+ description: A whistle used by Syndicate commanders to draw attention. Avanti!
+ components:
+ - type: Sprite
+ sprite: Clothing/Neck/Misc/whistles.rsi
+ state: icon
+ - type: Clothing
+ sprite: Clothing/Neck/Misc/whistles.rsi
+ quickEquip: False
+ slots:
+ - neck
+ - type: EmitSoundOnUse
+ sound:
+ collection: TrenchWhistle
+ - type: Whistle
+ distance: 15 # Let your enemies hear the sound of death approaching
--- /dev/null
+
+# Operative Balloons, looks just like the real thing!
+
+- type: entity
+ parent: [BaseItem, BaseFoldable]
+ id: BaseDecoy
+ abstract: true
+ components:
+ - type: Rotatable
+ - type: Sprite
+ sprite: Objects/Tools/Decoys/operative_decoy.rsi
+ layers:
+ - state: oballoon
+ map: ["unfoldedLayer"]
+ - state: folded
+ map: ["foldedLayer"]
+ visible: false
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 100
+ behaviors:
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - !type:PlaySoundBehavior
+ sound:
+ path: /Audio/Effects/pop_high.ogg
+ - type: Appearance
+ - type: Item
+ size: Normal
+ - type: RandomMetadata # No metagaming these, jimbo.
+ nameSegments:
+ - SyndicateNamesPrefix
+ - SyndicateNamesNormal
+ - type: Damageable
+ damageContainer: Inorganic
+ - type: ToggleableLightVisuals
+ - type: Foldable
+ folded: true
+ - type: PowerCellSlot
+ cellSlotId: cell_slot
+ - type: ItemSlots
+ slots:
+ cell_slot:
+ name: power-cell-slot-component-slot-name-default
+ startingItem: PowerCellHigh
+ - type: ContainerContainer
+ containers:
+ cell_slot: !type:ContainerSlot
+ - type: Tag
+ tags:
+ - Balloon
+ - Flashlight
+
+- type: entity
+ parent: BaseDecoy
+ id: BalloonOperative
+ name: operative balloon
+ description: Upon closer inspection, this Syndicate operative is actually a balloon.
+ components:
+ - type: HandheldLight
+ addPrefix: false
+ - type: Sprite
+ sprite: Objects/Tools/Decoys/operative_decoy.rsi
+ layers:
+ - state: oballoon
+ map: ["unfoldedLayer"]
+ - state: folded
+ map: ["foldedLayer"]
+ visible: false
+ - type: PointLight # Just like the real thing...
+ autoRot: true
+ radius: 1.5
+ energy: 2.3
+ offset: 0, -1
+ color: green
+ netsync: false
+
+- type: entity
+ parent: BaseDecoy
+ id: BalloonAgent
+ name: agent balloon
+ description: Upon closer inspection, this Syndicate agent is actually a balloon.
+ components:
+ - type: HandheldLight
+ addPrefix: false
+ - type: Sprite
+ sprite: Objects/Tools/Decoys/agent_decoy.rsi
+ layers:
+ - state: aballoon
+ map: ["unfoldedLayer"]
+ - state: folded
+ map: ["foldedLayer"]
+ visible: false
+ - type: PointLight
+ radius: 1.5
+ energy: 2.3
+ offset: 0, -1
+ color: green
+ netsync: false
+
+- type: entity
+ parent: BaseDecoy
+ id: BalloonElite
+ name: elite operative balloon
+ description: Upon closer inspection, this Syndicate elite operative is actually a balloon.
+ components:
+ - type: HandheldLight
+ addPrefix: false
+ - type: Sprite
+ sprite: Objects/Tools/Decoys/elite_decoy.rsi
+ layers:
+ - state: eballoon
+ map: ["unfoldedLayer"]
+ - state: folded
+ map: ["foldedLayer"]
+ visible: false
+ - type: PointLight
+ radius: 1.5
+ energy: 2.3
+ offset: 0, -1
+ color: red
+ netsync: false
+
+- type: entity
+ parent: BaseDecoy
+ id: BalloonJuggernaut
+ name: juggernaut balloon
+ description: Upon closer inspection, this Syndicate juggernaut is actually a balloon.
+ components:
+ - type: HandheldLight
+ addPrefix: false
+ - type: Sprite
+ sprite: Objects/Tools/Decoys/juggernaut_decoy.rsi
+ layers:
+ - state: jballoon
+ map: ["unfoldedLayer"]
+ - state: folded
+ map: ["foldedLayer"]
+ visible: false
+ - type: PointLight # Inbuilt flashlight, I guess?
+ radius: 1.5
+ energy: 2.3
+ offset: 0, -1
+ netsync: false
+
+- type: entity
+ parent: BaseDecoy
+ id: BalloonCommander
+ name: commander balloon
+ description: Upon closer inspection, this Syndicate commander is actually a balloon.
+ components:
+ - type: HandheldLight
+ addPrefix: false
+ - type: Sprite
+ sprite: Objects/Tools/Decoys/commander_decoy.rsi
+ layers:
+ - state: cballoon
+ map: ["unfoldedLayer"]
+ - state: folded
+ map: ["foldedLayer"]
+ visible: false
+ - type: PointLight
+ radius: 1.5
+ energy: 2.3
+ offset: 0, -1
+ color: green
+ netsync: false
reagents:
- ReagentId: TearGas
Quantity: 50
+
+# Non-explosive "dummy" grenades to use as a distraction.
+
+- type: entity
+ name: trick grenade
+ description: All the grenade without any of the boom.
+ parent: GrenadeBase
+ id: GrenadeDummy
+ components:
+ - type: Sprite
+ sprite: Objects/Weapons/Grenades/grenade.rsi
+ - type: DeleteOnTrigger
+ - type: SpawnOnTrigger
+ proto: GrenadeFlashEffect
+ - type: SoundOnTrigger
+ sound:
+ path: /Audio/Effects/Emotes/parp1.ogg
+ - type: Appearance
+ - type: TimerTriggerVisuals
+ primingSound:
+ path: /Audio/Effects/countdown.ogg
+
+- type: entity
+ name: syndicate trickybomb
+ description: A syndicate-manufactured explosive used to make an excellent distraction.
+ parent: GrenadeDummy
+ id: SyndieTrickyBomb
+ components:
+ - type: Sprite
+ sprite: Objects/Weapons/Grenades/syndgrenade.rsi
+ - type: SoundOnTrigger
+ sound:
+ path: /Audio/Effects/Emotes/parp1.ogg
+ - type: Appearance
+ - type: TimerTriggerVisuals
+ primingSound:
+ path: /Audio/Effects/minibombcountdown.ogg
+ params:
+ volume: 12
mask: ClothingMaskGasSyndicate
eyes: ClothingEyesHudSyndicate
ears: ClothingHeadsetAltSyndicate
+ neck: SyndicateWhistle
gloves: ClothingHandsGlovesCombat
outerClothing: ClothingOuterHardsuitSyndieCommander
shoes: ClothingShoesBootsCombatFilled
- /Audio/Items/Whistle/whistle_5.ogg
- /Audio/Items/Whistle/whistle_6.ogg
- /Audio/Items/Whistle/whistle_7.ogg
+
+- type: soundCollection
+ id: TrenchWhistle
+ files:
+ - /Audio/Items/Whistle/trench_whistle_1.ogg
+ - /Audio/Items/Whistle/trench_whistle_2.ogg
+ - /Audio/Items/Whistle/trench_whistle_3.ogg
- type: Tag
id: SmallMech
+- type: Tag
+ id: SnapPop
+
- type: Tag
id: Smokable
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Drawn by Firewatchin on Discord.",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+
+ "states": [
+ {
+ "name": "equipped-NECK",
+ "directions": 4
+ },
+ {
+ "name": "icon"
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Modified from existing sprites.",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "folded"
+ },
+ {
+ "name": "aballoon",
+ "directions": 4
+ }
+]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Modified from existing sprites.",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "folded"
+ },
+ {
+ "name": "cballoon",
+ "directions": 4
+ }
+]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Modified from existing sprites.",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "folded"
+ },
+ {
+ "name": "eballoon",
+ "directions": 4
+ }
+]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Modified from existing sprites.",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "folded"
+ },
+ {
+ "name": "jballoon",
+ "directions": 4
+ }
+]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Modified from existing sprites.",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "folded"
+ },
+ {
+ "name": "oballoon",
+ "directions": 4
+ }
+]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from vgstation and modified by Swept at https://github.com/vgstation-coders/vgstation13/blob/Bleeding-Edge/icons/obj/lighting.dmi",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "flashlight"
+ },
+ {
+ "name": "flashlight-on"
+ },
+ {
+ "name": "flashlight-overlay"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ },
+ {
+ "name": "inhand-left-light",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right-light",
+ "directions": 4
+ },
+ {
+ "name": "equipped-BELT",
+ "directions": 4
+ }
+ ]
+}