]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Advanced Clowning Module (#35797)
authorThatGuyUSA <thatguyusa123@gmail.com>
Sun, 3 Aug 2025 02:19:17 +0000 (19:19 -0700)
committerGitHub <noreply@github.com>
Sun, 3 Aug 2025 02:19:17 +0000 (22:19 -0400)
* pAIs can now accept keys, but can't talk in said channels

* added dummy module

* added adv clown module alongside projector

* holopeel & projector sprite added, it's destroyable too

* added experimental pie cannon

* exp pie thrower throws pies, added tool icon, added bananium horn

* removed the weird pAI changes, my bad!

* okay NOW the pAI stuff is all gone

* added icon, recipe, renamed tech for unlocking

* removed bananium horn

* Added in-hand sprites, credited to TiniestShark. Changed holopeel projector description to let the user know it recharges over time.

17 files changed:
Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml
Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml
Resources/Prototypes/Entities/Objects/Weapons/Guns/pneumatic_cannon.yml
Resources/Prototypes/Entities/Structures/Holographic/projections.yml
Resources/Prototypes/Recipes/Lathes/Packs/robotics.yml
Resources/Prototypes/Recipes/Lathes/robot_modules.yml
Resources/Prototypes/Research/civilianservices.yml
Resources/Textures/Interface/Actions/actions_borg.rsi/adv-clowning-module.png [new file with mode: 0644]
Resources/Textures/Interface/Actions/actions_borg.rsi/meta.json
Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/icon.png [new file with mode: 0644]
Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-left.png [new file with mode: 0644]
Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-right.png [new file with mode: 0644]
Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Objects/Specific/Robotics/borgmodule.rsi/icon-clown-adv.png [new file with mode: 0644]
Resources/Textures/Objects/Specific/Robotics/borgmodule.rsi/meta.json
Resources/Textures/Structures/Holo/peel.rsi/icon.png [new file with mode: 0644]
Resources/Textures/Structures/Holo/peel.rsi/meta.json [new file with mode: 0644]

index 8acac471339260acc6823f1a94632f2e037f880d..e1a15b7493527b1e99156b247a73863a0c038d2b 100644 (file)
         disableEject: true
         swap: false
 
+- type: entity
+  parent: Holoprojector
+  id: HoloprojectorClownBorg
+  name: holopeel projector
+  description: A holopeel projector that creates a slippery, hard light banana peel. It recharges, so that the fun never ends!
+  suffix: borg
+  components:
+  - type: HolosignProjector
+    signProto: HoloPeel
+    chargeUse: 240
+  - type: Sprite
+    sprite: Objects/Devices/Holoprojectors/peel.rsi
+    state: icon
+  - type: ItemSlots
+    slots:
+      cell_slot:
+        name: power-cell-slot-component-slot-name-default
+        startingItem: PowerCellMicroreactor
+        disableEject: true
+        swap: false
+
 - type: entity
   parent: Holoprojector
   id: HolofanProjector
   parent: HolofanProjector
   id: HolofanProjectorBorg
   name: integrated holofan
-  description: Stops idiots from causing more crew harm during atmospheric emergencies. Installed directly into an engineering cyborg, it  recharges over time.
+  description: Stops idiots from causing more crew harm during atmospheric emergencies. Installed directly into an engineering cyborg, it recharges over time.
   components:
   - type: ItemSlots
     slots:
index 96780dda80049e85be7b6b7709ff9325da5a8adb..215b0d8e526afa699836080c7aea35ce445f9b8e 100644 (file)
   - type: BorgModuleIcon
     icon: { sprite: Interface/Actions/actions_borg.rsi, state: clowning-module }
 
+- type: entity
+  id: BorgModuleAdvancedClowning
+  parent: [ BaseBorgModuleService, BaseProviderBorgModule ]
+  name: advanced clowning cyborg module
+  description: Advanced service module for only the silliest cyborgs! Comes with a built-in oven that bakes pies automatically over time, a holopeel projector, and a push horn.
+  components:
+  - type: Sprite
+    layers:
+    - state: service
+    - state: icon-clown-adv
+  - type: ItemBorgModule
+    items:
+    - HoloprojectorClownBorg
+    - BorgLauncherCreamPie
+    - ClownRecorder
+    - PushHorn
+    - BikeHornInstrument
+  - type: BorgModuleIcon
+    icon: { sprite: Interface/Actions/actions_borg.rsi, state: adv-clowning-module }
+
 #syndicate modules
 - type: entity
   id: BorgModuleSyndicateWeapon
index 63a7acd2576e86e839df2c04654abd608922d9c0..cadc0f478a0d3f01e7dcf27d7ec55a377b6a32ef 100644 (file)
     containers:
       storagebase: !type:Container
         ents: []
+
+- type: entity
+  name: experimental pie cannon
+  parent: BaseWeaponBattery
+  id: BorgLauncherCreamPie
+  description: Deliver a generous portion of cream directly to the crew! Automatically bakes pies over time.
+  components:
+  - type: Sprite
+    sprite: Objects/Weapons/Guns/Cannons/pie_cannon.rsi
+    layers:
+    - state: piecannon
+  - type: Gun
+    fireRate: 2
+    selectedMode: SemiAuto
+    availableModes:
+    - SemiAuto
+    - FullAuto
+    soundGunshot:
+      path: /Audio/Effects/thunk.ogg
+    soundEmpty:
+      path: /Audio/Items/hiss.ogg
+    clumsyProof: true
+  - type: ProjectileBatteryAmmoProvider
+    proto: FoodPieBananaCream
+    fireCost: 30
+  - type: Battery
+    maxCharge: 90
+    startingCharge: 90
+  - type: BatterySelfRecharger
+    autoRecharge: true
+    autoRechargeRate: 1
+  - type: AmmoCounter
+  - type: Item
+    size: Normal
         
 - type: entity
   name: syringe gun
index f9bf81695e9476936a3134ba60aab31eb0e7a69c..4867fc84d80ecb9ee88d8e7a46641ede5d9757de 100644 (file)
   - type: Airtight
     noAirWhenFullyAirBlocked: false
 
+- type: entity
+  id: HoloPeel
+  parent: HolosignWetFloor
+  name: holopeel
+  description: A banana peel made of slippery hard light, watch your step!
+  components:
+  - type: Sprite
+    sprite: Structures/Holo/peel.rsi
+    state: icon
+  - type: Physics
+    bodyType: Static
+    canCollide: true
+  - type: Slippery
+  - type: StepTrigger
+    intersectRatio: 0.2
+  - type: CollisionWake
+    enabled: false
+  - type: Fixtures
+    fixtures:
+      slips:
+        shape:
+          !type:PhysShapeAabb
+          bounds: "-0.2,-0.2,0.2,0.2"
+        hard: false
+        layer:
+        - SlipLayer
+  - type: TimedDespawn
+    lifetime: 30
+  - type: Clickable
+  - type: Destructible
+    thresholds:
+      - trigger:
+          !type:DamageTrigger
+          damage: 10
+        behaviors:
+          - !type:DoActsBehavior
+            acts: [ "Destruction" ]
+
 - type: entity
   id: HolosignSecurity
   parent: HolosignWetFloor
index 74483c4ebee492604e598e762cba7153825442e4..f22cde9c528889f866fe81a25ea4b5dec2cbae98 100644 (file)
@@ -37,6 +37,7 @@
   recipes:
   - BorgModuleAdvancedCleaning
   - BorgModuleAdvancedTool
+  - BorgModuleAdvancedClowning
   - BorgModuleAdvancedChemical
   - BorgModuleAdvancedMining
 
index d7d112bba05ddc025979844a3857e32ca065b11e..9210529a1d34f232f2cb163a0b3a84264ef66fdc 100644 (file)
 # Science Modules
 
 # Service Modules
+
+- type: latheRecipe
+  parent: BaseGoldBorgModuleRecipe
+  id: BorgModuleAdvancedClowning
+  result: BorgModuleAdvancedClowning
+  materials:
+    Steel: 500
+    Glass: 500
+    Plastic: 250
+    Bananium: 375
index d06b7c1ce59e14a7ea90f5a6d51e17f3df54e608..c32169051c85669ef881945899c2f73991cacf5f 100644 (file)
   cost: 4000
   recipeUnlocks:
   - PushHorn
+  - BorgModuleAdvancedClowning
 
 # Tier 3
 
diff --git a/Resources/Textures/Interface/Actions/actions_borg.rsi/adv-clowning-module.png b/Resources/Textures/Interface/Actions/actions_borg.rsi/adv-clowning-module.png
new file mode 100644 (file)
index 0000000..3f546f2
Binary files /dev/null and b/Resources/Textures/Interface/Actions/actions_borg.rsi/adv-clowning-module.png differ
index fde2ab63a6ae6857e0a8f53927f11b69e58b5bb2..3cc071054f2692df51adc069c3da41eeeeb431a6 100644 (file)
@@ -1,7 +1,7 @@
 {
     "version": 1,
     "license": "CC-BY-SA-3.0",
-    "copyright": "Taken from vgstation at commit https://github.com/vgstation-coders/vgstation13/commit/cdbcb1e858b11f083994a7a269ed67ef5b452ce9, Module actions by Scarky0. chem, adv-chem, and adv-mining by mubururu_, xenoborg actions by Samuka-C (github)",
+    "copyright": "Taken from vgstation at commit https://github.com/vgstation-coders/vgstation13/commit/cdbcb1e858b11f083994a7a269ed67ef5b452ce9, Module actions by Scarky0. chem, adv-chem, and adv-mining by mubururu_, xenoborg actions by Samuka-C (github), advclown by ThatGuyUSA",
     "size": {
         "x": 32,
         "y": 32
@@ -97,6 +97,9 @@
         {
             "name":"clowning-module"
         },
+        {
+            "name":"adv-clowning-module"
+        },
         {
             "name":"syndicate-weapon-module"
         },
diff --git a/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/icon.png b/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/icon.png
new file mode 100644 (file)
index 0000000..193b35c
Binary files /dev/null and b/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-left.png b/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-left.png
new file mode 100644 (file)
index 0000000..3124ab6
Binary files /dev/null and b/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-right.png b/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-right.png
new file mode 100644 (file)
index 0000000..1858c5a
Binary files /dev/null and b/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/meta.json b/Resources/Textures/Objects/Devices/Holoprojectors/peel.rsi/meta.json
new file mode 100644 (file)
index 0000000..0ad72a5
--- /dev/null
@@ -0,0 +1,82 @@
+{
+  "version": 1,
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+     "license": "CC-BY-SA-3.0",
+    "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/f4017da82ae4de7bfaf8ebdbba33d0de81c15587, and resprited by ThatGuyUSA (github). Inhands by TiniestShark (github)",
+    "states": [
+        {
+            "name": "icon",
+            "delays": [
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ]
+            ]
+        },
+        {
+            "name": "inhand-left",
+            "directions": 4,
+            "delays": [
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ],
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ],
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ],
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ]
+            ]
+        },
+        {
+            "name": "inhand-right",
+            "directions": 4,
+            "delays": [
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ],
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ],
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ],
+                [
+                    0.3,
+                    0.3,
+                    0.3,
+                    0.3
+                ]
+            ]
+        }
+    ]
+}
diff --git a/Resources/Textures/Objects/Specific/Robotics/borgmodule.rsi/icon-clown-adv.png b/Resources/Textures/Objects/Specific/Robotics/borgmodule.rsi/icon-clown-adv.png
new file mode 100644 (file)
index 0000000..fa92539
Binary files /dev/null and b/Resources/Textures/Objects/Specific/Robotics/borgmodule.rsi/icon-clown-adv.png differ
index 6819aedeba787225100a9213f1011d8105e1fa4b..3bf41f81ff90e27037ec3d1ff20e716d9247b4fc 100644 (file)
@@ -37,6 +37,9 @@
         {
             "name": "icon-clown"
         },
+        {
+            "name": "icon-clown-adv"
+        },
         {
             "name": "icon-construction"
         },
diff --git a/Resources/Textures/Structures/Holo/peel.rsi/icon.png b/Resources/Textures/Structures/Holo/peel.rsi/icon.png
new file mode 100644 (file)
index 0000000..c3fc629
Binary files /dev/null and b/Resources/Textures/Structures/Holo/peel.rsi/icon.png differ
diff --git a/Resources/Textures/Structures/Holo/peel.rsi/meta.json b/Resources/Textures/Structures/Holo/peel.rsi/meta.json
new file mode 100644 (file)
index 0000000..d6d84c4
--- /dev/null
@@ -0,0 +1,33 @@
+{
+  "version": 1,
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+    "license": "CC-BY-SA-3.0",
+    "copyright": "Made by thatguyusa (discord) / ThatGuyUSA (github) for SS14",
+    "states": [
+        {
+            "name": "icon",
+            "delays": [
+                [
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2,
+                    0.2
+                ]
+            ]
+        }
+    ]
+}