]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Cockroach + Glockroach Admeme + Mothroach (#19752)
authorpotato1234_x <79580518+potato1234x@users.noreply.github.com>
Tue, 31 Oct 2023 20:28:42 +0000 (06:28 +1000)
committerGitHub <noreply@github.com>
Tue, 31 Oct 2023 20:28:42 +0000 (13:28 -0700)
* cockroach

* Update Resources/Textures/Mobs/Animals/cockroach.rsi/meta.json

Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
* parenting fixe

* d

* rsi fail

* mothroach!!!!

* cockroach vent event + critters in trashcart

* linter

* fix

* commit

---------

Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
22 files changed:
Resources/Locale/en-US/accent/accents.ftl
Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
Resources/Prototypes/Accents/full_replacements.yml
Resources/Prototypes/Catalog/Fills/Crates/service.yml
Resources/Prototypes/Damage/modifier_sets.yml
Resources/Prototypes/Entities/Markers/Spawners/Conditional/timed.yml
Resources/Prototypes/Entities/Markers/Spawners/mobs.yml
Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
Resources/Prototypes/GameRules/events.yml
Resources/Prototypes/NPCs/mob.yml
Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_dead.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_icon.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/cockroach.rsi/meta.json
Resources/Textures/Mobs/Animals/mothroach.rsi/0-equipped-HELMET.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/icon.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-left.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-right.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_dead.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_lazy.png [new file with mode: 0644]
Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_sleep.png [new file with mode: 0644]

index a414294b2c48ab3e471d0cc1b5c6e690d607bf92..fd9b99a5ec11fd81114052afc0b701dc2d449bf0 100644 (file)
@@ -88,3 +88,6 @@ accent-words-slimes-2 = Blimpuf?
 accent-words-slimes-3 = Blump!
 accent-words-slimes-4 = Bluuump...
 accent-words-slimes-5 = Blabl blump!
+
+# Mothroach
+accent-words-mothroach-1 = Chirp!
index 568500589136fd0dded132526d144e8899017ccd..2b0c0e2aed6eb20d52ee9b1b76a3910fd23067c2 100644 (file)
@@ -6,6 +6,9 @@ ghost-role-component-default-rules = You don't remember any of your previous lif
 ghost-role-information-mouse-name = Mouse
 ghost-role-information-mouse-description = A hungry and mischievous mouse.
 
+ghost-role-information-mothroach-name = Mothroach
+ghost-role-information-mothroach-description = A cute but mischievous mothroach.
+
 ghost-role-information-giant-spider-name = Giant spider
 ghost-role-information-giant-spider-description = Wreak havoc on the station's inhabitants!
 
index 5c5fc8bd09882a373ff2bcae7dd96257d85feb19..d4efc806c2eb9a0982a97ddd92b6dee5f985a488 100644 (file)
   - accent-words-mouse-6 
   - accent-words-mouse-7
 
+- type: accent
+  id: mothroach
+  fullReplacements:
+  - accent-words-mothroach-1
+  - accent-words-mouse-1
+  - accent-words-mouse-2
+  - accent-words-mouse-3
+  - accent-words-mouse-4
+
 - type: accent
   id: mumble
   fullReplacements:
index 2b7c5db0f7751a2daed6fcd0ac36640c6739b093..d9ff3ef3aa8dbbd2e93fefc15aa83abca696f997 100644 (file)
   components:
     - type: StorageFill
       contents:
+          # Creatures
+        - id: MobCockroach
+          prob: 0.05
+        - id: MobMothroach
+          prob: 0.03
+        - id: MobMouse
+          prob: 0.05
           # Food Packaging
         - id: FoodPacketBoritosTrash
           prob: 0.1
           prob: 0.15
         - id: LightBulbBroken
           prob: 0.15
-        - id: CableApcStack10
-          prob: 0.15
         - id: MobMouseDead
           prob: 0.1
-        - id: RagItem
-          prob: 0.1
-        - id: FoodKebabSkewer
-          prob: 0.1
         - id: Syringe
           prob: 0.1
         - id: ShardGlassPlasma
index dcd152a0517a83008f1a813b082803515dd54033..d83379d2c19e7a7acef898465b07be89ba76f323 100644 (file)
     Cellular: 0.0
     Radiation: 0.2
     Caustic: 0.0
+
+- type: damageModifierSet
+  id: Cockroach
+  coefficients:
+    Blunt: 1.0
+    Slash: 1.0
+    Piercing: 1.0
+    Cold: 1.0
+    Poison: 1.0
+    Cellular: 1.0
+    Radiation: 0.0 # hehe funny cockroach immune to rads
+    Caustic: 1.0
index fe5ee0544e148a8fcab0b315b438542f1628084e..26d4e3f1d28eda2d94cc3ca579d5f55b65dce6f6 100644 (file)
       minimumEntitiesSpawned: 1
       maximumEntitiesSpawned: 1
 
+- type: entity
+  name: Cockroach Timed Spawner
+  id: CockroachTimedSpawner
+  parent: MouseTimedSpawner
+  components:
+    - type: Sprite
+      layers:
+        - state: blue
+        - sprite: Mobs/Animals/cockroach.rsi
+          state: cockroach_icon
+        - state: timed
+    - type: TimedSpawner
+      prototypes:
+        - MobCockroach
index 3bc1b637ffe9b82997fdd277487b77df949d6a57..70efaed9018a4ea9ef2c186908ccfe8992968375 100644 (file)
       - MobMouse1
       - MobMouse2
 
+- type: entity
+  name: Cockroach Spawner
+  id: SpawnMobCockroach
+  parent: MarkerBase
+  components:
+  - type: Sprite
+    layers:
+      - state: green
+      - sprite: Mobs/Animals/cockroach.rsi
+        state: cockroach_icon
+      - state: ai
+  - type: ConditionalSpawner
+    prototypes:
+      - MobCockroach
+
 - type: entity
   name: HoP Corgi Spawner
   id: SpawnMobCorgi
index 404fe768f7004ce3653292c1e330912e8abd7ff7..262f63b1d62a2fbf865f0106db5a8589550e00d4 100644 (file)
   - type: TimedDespawn #delete the egg after the chicken spawns
     lifetime: 21
 
+- type: entity # TODO: figure out how to make these guys gib when stepped on
+  name: cockroach
+  parent: SimpleMobBase
+  id: MobCockroach
+  description: This station is just crawling with bugs.
+  components:
+  - type: Sprite
+    drawdepth: SmallMobs
+    sprite: Mobs/Animals/cockroach.rsi
+    layers:
+    - map: ["enum.DamageStateVisualLayers.Base"]
+      state: cockroach
+  - type: Item
+    size: 2
+  - type: HTN
+    rootTask:
+      task: MouseCompound
+  - type: Physics
+  - type: Fixtures
+    fixtures:
+      fix1:
+        shape:
+          !type:PhysShapeCircle
+          radius: 0.2
+        density: 100
+        mask:
+        - SmallMobMask
+        layer:
+        - SmallMobLayer
+  - type: MobState
+  - type: MobThresholds
+    thresholds:
+      0: Alive
+      1: Dead
+  - type: MovementSpeedModifier
+    baseWalkSpeed : 5
+    baseSprintSpeed : 5
+  - type: DamageStateVisuals
+    states:
+      Alive:
+        Base: cockroach
+      Dead:
+        Base: cockroach_dead
+  - type: Food
+  - type: Hunger
+    baseDecayRate: 0.25
+  - type: Extractable
+    grindableSolutionName: food
+  - type: SolutionContainerManager
+    solutions:
+      food:
+        reagents:
+        - ReagentId: Slime
+          Quantity: 5
+  - type: Butcherable
+    spawned:
+    - id: FoodMeatSlime
+  - type: Damageable
+    damageContainer: Biological
+    damageModifierSet: Cockroach
+  - type: Bloodstream
+    bloodReagent: Slime
+    bloodMaxVolume: 20
+  - type: Tag
+    tags:
+    - Trash
+    - VimPilot
+  - type: Destructible
+    thresholds:
+    - trigger:
+        !type:DamageTypeTrigger
+        damageType: Blunt
+        damage: 10
+      behaviors:
+      - !type:GibBehavior { }
+
+- type: entity
+  name: glockroach
+  parent: MobCockroach
+  suffix: Admeme
+  id: MobGlockroach
+  description: This station is just crawling with bu- OH GOD THAT COCKROACH HAS A GUN!!!
+  components:
+  - type: Sprite
+    layers:
+    - map: ["enum.DamageStateVisualLayers.Base"]
+      state: glockroach
+  - type: Gun
+    fireRate: 2
+    useKey: false
+    selectedMode: SemiAuto
+    availableModes:
+      - SemiAuto
+    soundGunshot: /Audio/Weapons/Guns/Gunshots/pistol.ogg
+  - type: BallisticAmmoProvider
+    proto: CartridgeCaselessRifle
+    capacity: 500
+  - type: CombatMode
+  - type: HTN
+    rootTask:
+      task: GlockroachCompound
+  - type: NpcFactionMember
+    factions:
+    - SimpleHostile
+  - type: Butcherable
+    spawned:
+    - id: FoodMeatSlime
+
+- type: entity
+  name: mothroach
+  parent: MobCockroach
+  id: MobMothroach
+  description: This is the adorable by-product of multiple attempts at genetically mixing mothpeople with cockroaches.
+  components:
+  - type: GhostRole
+    makeSentient: true
+    allowSpeech: true
+    allowMovement: true
+    whitelistRequired: false
+    name: ghost-role-information-mothroach-name
+    description: ghost-role-information-mothroach-description
+  - type: GhostTakeoverAvailable
+  - type: Speech
+    speechVerb: Moth
+    speechSounds: Squeak
+  - type: Sprite
+    sprite: Mobs/Animals/mothroach.rsi
+    layers:
+    - map: ["enum.DamageStateVisualLayers.Base"]
+      state: mothroach
+  - type: Item
+    size: 15
+  - type: Clothing
+    quickEquip: false
+    sprite: Mobs/Animals/mothroach.rsi
+    equippedPrefix: 0
+    slots:
+    - HEAD
+  - type: Appearance
+  - type: DamageStateVisuals
+    states:
+      Alive:
+        Base: mothroach
+      Critical:
+        Base: mothroach_dead
+      Dead:
+        Base: mothroach_dead
+  - type: MobThresholds
+    thresholds:
+      0: Alive
+      25: Critical
+      50: Dead
+  - type: MovementSpeedModifier
+    baseWalkSpeed : 2.5
+    baseSprintSpeed : 4.5
+    weightlessAcceleration: 1.5
+    weightlessFriction: 1
+    weightlessModifier: 1
+  - type: Damageable
+    damageContainer: Biological
+    damageModifierSet: Moth
+  - type: Respirator
+    damage:
+      types:
+        Asphyxiation: 0.5
+    damageRecovery:
+      types:
+        Asphyxiation: -0.5
+  - type: CombatMode
+  - type: Butcherable
+    spawned:
+    - id: FoodMeatSlime
+      amount: 2
+  - type: Extractable
+    grindableSolutionName: food
+  - type: ReplacementAccent
+    accent: mothroach
+  - type: Vocal
+    sounds:
+      Male: UnisexMoth
+      Female: UnisexMoth
+      Unsexed: UnisexMoth
+    wilhelmProbability: 0.001
+  - type: MobPrice
+    price: 60
+  - type: Tag
+    tags:
+    - Trash
+    - CannotSuicide
+  - type: CanEscapeInventory
+  - type: NpcFactionMember
+    factions:
+    - Mouse
+  - type: Body
+    prototype: Moth
+  - type: TypingIndicator
+    proto: moth
+
 - type: entity
   name: mallard duck #Quack
   parent: SimpleMobBase
index e51f9749fb6a30f0e5f5fded19654721af33b04d..b19762de196d9401cf5855f4daf658e5bffdb3a0 100644 (file)
     - id: SpawnPointGhostRatKing
       prob: 0.005
 
+- type: entity
+  id: CockroachMigration
+  parent: BaseGameRule
+  noSpawn: true
+  components:
+  - type: StationEvent
+    weight: 5
+    duration: 50
+  - type: VentCrittersRule
+    entries:
+    - id: MobCockroach
+      prob: 0.03
+    - id: MobMothroach
+      prob: 0.008
+
 - type: entity
   id: PowerGridCheck
   parent: BaseGameRule
index 5b25f85a795a8019fcdd630b732bf4ad2eeb2080..740f7ca5767bb305c6a53fe367b640ccaf60c450 100644 (file)
         - !type:HTNCompoundTask
           task: IdleCompound
 
+- type: htnCompound
+  id: GlockroachCompound
+  branches:
+    - tasks:
+        - !type:HTNCompoundTask
+          task: InnateRangedCombatCompound
+    - tasks:
+        - !type:HTNCompoundTask
+          task: FoodCompound
+    - tasks:
+        - !type:HTNCompoundTask
+          task: IdleCompound
+
 - type: htnCompound
   id: RuminantCompound
   branches:
diff --git a/Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_dead.png b/Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_dead.png
new file mode 100644 (file)
index 0000000..399811d
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_dead.png differ
diff --git a/Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_icon.png b/Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_icon.png
new file mode 100644 (file)
index 0000000..a05f708
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/cockroach.rsi/cockroach_icon.png differ
index 358ae88446f49b5877ff640d6112a05b05948f4a..32c7e82510760dd21c869eb0a6161c1193f003a8 100644 (file)
           0.25
         ]
       ]
+    },
+       {
+      "name": "cockroach_dead"
+    },
+       {
+      "name": "cockroach_icon"
     },
     {
       "name": "glockroach",
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/0-equipped-HELMET.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/0-equipped-HELMET.png
new file mode 100644 (file)
index 0000000..abb43f8
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/0-equipped-HELMET.png differ
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/icon.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/icon.png
new file mode 100644 (file)
index 0000000..9113f1c
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/icon.png differ
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-left.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-left.png
new file mode 100644 (file)
index 0000000..671c450
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-right.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-right.png
new file mode 100644 (file)
index 0000000..cd3d1b0
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/meta.json b/Resources/Textures/Mobs/Animals/mothroach.rsi/meta.json
new file mode 100644 (file)
index 0000000..e7b8658
--- /dev/null
@@ -0,0 +1,42 @@
+{
+  "version": 1,
+  "license": "CC-BY-SA-3.0",
+  "copyright": "Taken from fulpstation at https://github.com/fulpstation/fulpstation/commit/edb232b692ec9f356ec554ea1971da552b9bc447",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "icon"
+    },
+    {
+      "name": "mothroach",
+      "directions": 4
+    },
+    {
+      "name": "mothroach_lazy",
+      "directions": 4
+    },
+    {
+      "name": "mothroach_sleep",
+      "directions": 4
+    },
+    {
+      "name": "mothroach_dead",
+      "directions": 4
+    },
+    {
+      "name": "inhand-left",
+      "directions": 4
+    },
+    {
+      "name": "inhand-right",
+      "directions": 4
+    },
+    {
+      "name": "0-equipped-HELMET",
+      "directions": 4
+    }
+  ]
+}
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach.png
new file mode 100644 (file)
index 0000000..305f8fb
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach.png differ
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_dead.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_dead.png
new file mode 100644 (file)
index 0000000..1637f99
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_dead.png differ
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_lazy.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_lazy.png
new file mode 100644 (file)
index 0000000..c44dd1c
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_lazy.png differ
diff --git a/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_sleep.png b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_sleep.png
new file mode 100644 (file)
index 0000000..5e9179d
Binary files /dev/null and b/Resources/Textures/Mobs/Animals/mothroach.rsi/mothroach_sleep.png differ