]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Space Sharkminnow (#20658)
authorNim <128169402+Nimfar11@users.noreply.github.com>
Mon, 13 Nov 2023 00:42:48 +0000 (02:42 +0200)
committerGitHub <noreply@github.com>
Mon, 13 Nov 2023 00:42:48 +0000 (17:42 -0700)
* sharkminnow

* fix

* salvage

14 files changed:
Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
Resources/Prototypes/Body/Organs/Animal/bloodsucker.yml [new file with mode: 0644]
Resources/Prototypes/Body/Prototypes/Animal/bloodsucker.yml [new file with mode: 0644]
Resources/Prototypes/Chemistry/metabolizer_types.yml
Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml
Resources/Prototypes/Entities/Markers/Spawners/mobs.yml
Resources/Prototypes/Entities/Mobs/NPCs/carp.yml
Resources/Prototypes/Reagents/biological.yml
Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/alive.png [new file with mode: 0644]
Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead.png [new file with mode: 0644]
Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead_mouth.png [new file with mode: 0644]
Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/icon.png [new file with mode: 0644]
Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/mouth.png [new file with mode: 0644]

index 9208827bf42e662a88da1d52f8c8e4284ebeb77d..7694d452cd749ca2dd5c32863d33cfffca0b1444 100644 (file)
@@ -58,6 +58,9 @@ ghost-role-information-salvage-carp-description = Defend the loot inside the sal
 ghost-role-information-sentient-carp-name = Sentient Carp
 ghost-role-information-sentient-carp-description = Help the dragon flood the station with carps!
 
+ghost-role-information-salvage-shark-name = Space sharkminnow on salvage wreck
+ghost-role-information-salvage-shark-description = Help the younger fellow carp protect their prey. Smell the blood!
+
 ghost-role-information-willow-name = Willow the kangaroo
 ghost-role-information-willow-description = You're a kangaroo named willow! willow likes to box.
 
diff --git a/Resources/Prototypes/Body/Organs/Animal/bloodsucker.yml b/Resources/Prototypes/Body/Organs/Animal/bloodsucker.yml
new file mode 100644 (file)
index 0000000..8a1afc3
--- /dev/null
@@ -0,0 +1,26 @@
+- type: entity
+  id: OrganBloodsuckerStomach
+  parent: OrganAnimalStomach
+  name: stomach
+  noSpawn: true
+  components:
+  - type: Metabolizer
+    metabolizerTypes: [ Bloodsucker ]
+
+- type: entity
+  id: OrganBloodsuckerLiver
+  parent: OrganAnimalLiver
+  name: liver
+  noSpawn: true
+  components:
+  - type: Metabolizer
+    metabolizerTypes: [ Bloodsucker ]
+
+- type: entity
+  id: OrganBloodsuckerHeart
+  parent: OrganAnimalHeart
+  name: heart
+  noSpawn: true
+  components:
+  - type: Metabolizer
+    metabolizerTypes: [ Bloodsucker ]
diff --git a/Resources/Prototypes/Body/Prototypes/Animal/bloodsucker.yml b/Resources/Prototypes/Body/Prototypes/Animal/bloodsucker.yml
new file mode 100644 (file)
index 0000000..dd87507
--- /dev/null
@@ -0,0 +1,21 @@
+- type: body
+  id: Bloodsucker
+  name: "bloodsucker"
+  root: torso
+  slots:
+    torso:
+      part: TorsoAnimal
+      connections:
+      - legs
+      organs:
+        lungs: OrganAnimalLungs
+        stomach: OrganBloodsuckerStomach
+        liver: OrganBloodsuckerLiver
+        heart: OrganBloodsuckerHeart
+        kidneys: OrganAnimalKidneys
+    legs:
+      part: LegsAnimal
+      connections:
+      - feet
+    feet:
+      part: FeetAnimal
index 568958601431daf223ae53a9844323ab16794268..259387b6d5c764fbb3d3d4dad4096a888506d6f7 100644 (file)
@@ -5,6 +5,10 @@
   id: Animal
   name: animal
 
+- type: metabolizerType
+  id: Bloodsucker
+  name: bloodsucker
+
 - type: metabolizerType
   id: Dragon
   name: dragon
index a933a7ecbb97102402608d13be6f92be76db93f8..80e3aa94606d7a1d28887b44fcf079ed0aee8e9c 100644 (file)
         - sprite: Mobs/Aliens/Carps/space.rsi
           state: icon
     - type: RandomSpawner
+      rarePrototypes:
+      - MobSharkSalvage
+      rareChance: 0.2
       prototypes:
         - MobCarpSalvage
         - MobCarpSalvage
   suffix: 75
   components:
   - type: RandomSpawner
+    rarePrototypes:
+    - MobSharkSalvage
+    rareChance: 0.2
     prototypes:
     - MobCarpSalvage
     - MobCarpSalvage
index bf47656008424836c549f66616435b25f6f4ba16..542198fd2406066fa6ccc4564ed43355ea2c86dd 100644 (file)
     prototypes:
     - MobCarpHolo
 
+- type: entity
+  name: Space Sharkminnow Spawner
+  id: SpawnMobShark
+  parent: MarkerBase
+  components:
+  - type: Sprite
+    layers:
+    - state: green
+    - state: icon
+      sprite: Mobs/Aliens/Carps/sharkminnow.rsi
+  - type: ConditionalSpawner
+    prototypes:
+    - MobShark
+
 - type: entity
   name: Hamster Hamlet Spawner
   id: SpawnMobHamsterHamlet
index 2726fdb69713d4c13acad3c7ed24fa32837de3a1..dc49f0dbadbddd3b39402e7d218b6cd524e4e563 100644 (file)
     damage:
       types:
         Slash: 6
+
+- type: entity
+  name: sharkminnow
+  parent: BaseMobCarp
+  id: MobShark
+  description: A dangerous shark from the blackness of endless space, who loves to drink blood.
+  components:
+    - type: Sprite
+      sprite: Mobs/Aliens/Carps/sharkminnow.rsi
+      layers:
+      - map: [ "enum.DamageStateVisualLayers.Base" ]
+        state: alive
+      - map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
+        state: mouth
+        shader: unshaded
+    - type: Fixtures
+      fixtures:
+        fix1:
+          shape:
+            !type:PhysShapeCircle
+            radius: 0.40
+          density: 100
+          mask:
+            - FlyingMobMask
+          layer:
+            - FlyingMobLayer
+    - type: MobThresholds
+      thresholds:
+        0: Alive
+        180: Dead
+    - type: Stamina
+      critThreshold: 150
+    - type: DamageStateVisuals
+      states:
+        Alive:
+          Base: alive
+          BaseUnshaded: mouth
+        Dead:
+          Base: dead
+          BaseUnshaded: dead_mouth
+    - type: Body
+      prototype: Bloodsucker
+      requiredLegs: 1
+    - type: Butcherable
+      spawned:
+        - id: FoodMeatFish
+          amount: 4
+    - type: MeleeWeapon
+      damage:
+        types:
+          Slash: 12
+          Bloodloss: 5
+
+- type: entity
+  id: MobSharkSalvage
+  parent: MobShark
+  suffix: "Salvage Ruleset"
+  components:
+    - type: GhostRole
+      prob: 0.2
+      name: ghost-role-information-salvage-shark-name
+      allowMovement: true
+      allowSpeech: true
+      description: ghost-role-information-salvage-shark-description
+    - type: GhostTakeoverAvailable
+    - type: SalvageMobRestrictions
index 45311604107570784371b666cfc3f9657fb5e74b..a96b65666d4643b2eceed56a98f5c1b22aa46fab 100644 (file)
         - !type:AdjustReagent
           reagent: UncookedAnimalProteins
           amount: 0.5
+    Medicine:
+      effects:
+      - !type:HealthChange
+        conditions:
+        - !type:OrganType
+          type: Bloodsucker
+        damage:
+          groups:
+            Brute: -4
+            Burn: -2
   plantMetabolism:
     - !type:PlantAdjustWater
       amount: 0.5
diff --git a/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/alive.png b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/alive.png
new file mode 100644 (file)
index 0000000..b4429e3
Binary files /dev/null and b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/alive.png differ
diff --git a/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead.png b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead.png
new file mode 100644 (file)
index 0000000..3d74b18
Binary files /dev/null and b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead.png differ
diff --git a/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead_mouth.png b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead_mouth.png
new file mode 100644 (file)
index 0000000..dab110c
Binary files /dev/null and b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/dead_mouth.png differ
diff --git a/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/icon.png b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/icon.png
new file mode 100644 (file)
index 0000000..5b4faa8
Binary files /dev/null and b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/icon.png differ
diff --git a/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/meta.json b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/meta.json
new file mode 100644 (file)
index 0000000..2f8d02b
--- /dev/null
@@ -0,0 +1,72 @@
+{
+  "version": 1,
+  "size": {
+    "x": 48,
+    "y": 48
+  },
+  "license": "CC-BY-SA-3.0",
+  "copyright": "Sprited by Nimfar11 (Github) for Space Station 14",
+  "states": [
+    {
+      "name": "icon"
+    },
+    {
+      "name": "mouth",
+      "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
+        ]
+      ]
+    },
+    {
+      "name": "dead_mouth"
+    },
+    {
+      "name": "dead"
+    },
+    {
+      "name": "alive",
+      "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
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/mouth.png b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/mouth.png
new file mode 100644 (file)
index 0000000..c8b97b5
Binary files /dev/null and b/Resources/Textures/Mobs/Aliens/Carps/sharkminnow.rsi/mouth.png differ