Skip to content

Commit

Permalink
Merge pull request #190 from dvir001/Emotional-Support-Animals
Browse files Browse the repository at this point in the history
Emotional Support Animals
  • Loading branch information
Cheackraze committed Aug 13, 2023
2 parents e0d6069 + 917f021 commit 12c4335
Show file tree
Hide file tree
Showing 9 changed files with 346 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ghost-role-information-emotional-support-name = Emotional support pet
ghost-role-information-emotional-support-description = You're an emotional support pet! Loyal to your owner, make sure to cheer them up!
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ent-LivestockEmotionalSupport = { ent-CrateNPCEmotionalSupport }
.desc = { ent-CrateNPCEmotionalSupport.desc }
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ent-CrateNPCEmotionalSupport = Emotional support pet crate
.desc = A crate containing a single emotional support pet.
15 changes: 15 additions & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2020,6 +2020,21 @@
interactFailureString: petting-failure-generic
interactSuccessSound:
path: /Audio/Animals/cat_meow.ogg
- type: Barotrauma
damage:
types:
Blunt: 0.0 #per second, scales with pressure and other constants.
- type: Temperature
heatDamageThreshold: 360
coldDamageThreshold: 0
currentTemperature: 310.15
coldDamage:
types:
Cold : 0.1 #per second, scales with temperature & other constants
specificHeat: 42
heatDamage:
types:
Heat : 0.1 #per second, scales with temperature & other constants

- type: entity
name: caracal cat
Expand Down
9 changes: 9 additions & 0 deletions Resources/Prototypes/_NF/Catalog/Cargo/cargo_livestock.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
- type: cargoProduct
id: LivestockEmotionalSupport
icon:
sprite: Mobs/Pets/cat.rsi
state: cat
product: CrateNPCEmotionalSupport
cost: 10000
category: Livestock
group: market
30 changes: 30 additions & 0 deletions Resources/Prototypes/_NF/Catalog/Fills/Crates/npc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
- type: entity
id: CrateNPCEmotionalSupport
parent: CrateLivestock
components:
- type: StorageFill
contents:
- id: MobCatGhost
prob: 1
orGroup: MobCatGhost
- id: MobCatCalicoGhost
prob: 1
orGroup: MobCatGhost
- id: MobCatCaracalGhost
prob: 0.15
orGroup: MobCatGhost
- id: MobBingusGhost
prob: 0.15
orGroup: MobCatGhost
- id: MobCatSpaceGhost
prob: 0.15
orGroup: MobCatGhost
- id: MobCorgiGhost
prob: 1
orGroup: MobCatGhost
- id: MobCorgiPuppyGhost
prob: 0.15
orGroup: MobCatGhost
- id: MobChickenGhost
prob: 0.15
orGroup: MobCatGhost
Original file line number Diff line number Diff line change
@@ -0,0 +1,239 @@
- type: entity
name: cat
suffix: Ghost
parent: MobCat
id: MobCatGhost
description: Feline pet, very funny.
components:
- type: GhostRole
name: ghost-role-information-emotional-support-name
description: ghost-role-information-emotional-support-description
makeSentient: true
allowSpeech: true
allowMovement: true
- type: GhostTakeoverAvailable
- type: CombatMode
combatToggleAction:
enabled: false
autoPopulate: false
name: action-name-combat
- type: ReplacementAccent
accent: cat
- type: Grammar
attributes:
gender: epicene
- type: Vocal
sounds:
Male: Cat
Female: Cat
Unsexed: Cat
wilhelmProbability: 0.001
- type: Tag
tags:
- CannotSuicide
- DoorBumpOpener

- type: entity
name: calico cat
suffix: Ghost
id: MobCatCalicoGhost
parent: MobCatGhost
description: Feline pet, very funny.
components:
- type: Sprite
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: cat2
- type: DamageStateVisuals
states:
Alive:
Base: cat2
Dead:
Base: cat2_dead

- type: entity
name: caracal cat
suffix: Ghost
id: MobCatCaracalGhost
parent: MobCatGhost
description: Hilarious.
components:
- type: Sprite
sprite: Mobs/Pets/caracal.rsi
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: caracal_flop
- type: DamageStateVisuals
states:
Alive:
Base: caracal_flop
Dead:
Base: caracal_dead

- type: entity
name: space cat
suffix: Ghost
parent: MobCatGhost
id: MobCatSpaceGhost
description: Feline pet, prepared for the worst.
components:
- type: Sprite
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: spacecat
- type: DamageStateVisuals
states:
Alive:
Base: spacecat
Dead:
Base: spacecat_dead
- type: InteractionPopup
successChance: 0.7
interactSuccessString: petting-success-space-cat
interactFailureString: petting-failure-generic
interactSuccessSound:
path: /Audio/Animals/cat_meow.ogg
- type: Barotrauma
damage:
types:
Blunt: 0.0 #per second, scales with pressure and other constants.
- type: Temperature
heatDamageThreshold: 360
coldDamageThreshold: 0
currentTemperature: 310.15
coldDamage:
types:
Cold : 0.1 #per second, scales with temperature & other constants
specificHeat: 42
heatDamage:
types:
Heat : 0.1 #per second, scales with temperature & other constants

- type: entity
name: bingus
suffix: Ghost
parent: MobBingus
id: MobBingusGhost
description: Bingus my beloved...
components:
- type: GhostRole
name: ghost-role-information-emotional-support-name
description: ghost-role-information-emotional-support-description
makeSentient: true
allowSpeech: true
allowMovement: true
- type: GhostTakeoverAvailable
- type: CombatMode
combatToggleAction:
enabled: false
autoPopulate: false
name: action-name-combat
- type: ReplacementAccent
accent: cat
- type: Grammar
attributes:
gender: epicene
- type: Vocal
sounds:
Male: Cat
Female: Cat
Unsexed: Cat
wilhelmProbability: 0.001
- type: Tag
tags:
- CannotSuicide
- DoorBumpOpener

- type: entity
name: corgi
suffix: Ghost
parent: MobCorgi
id: MobCorgiGhost
description: Finally, a space corgi!
components:
- type: GhostRole
name: ghost-role-information-emotional-support-name
description: ghost-role-information-emotional-support-description
makeSentient: true
allowSpeech: true
allowMovement: true
- type: GhostTakeoverAvailable
- type: CombatMode
combatToggleAction:
enabled: false
autoPopulate: false
name: action-name-combat
- type: ReplacementAccent
accent: dog
- type: Grammar
attributes:
gender: epicene
- type: Vocal
sounds:
Male: Dog
Female: Dog
Unsexed: Dog
wilhelmProbability: 0.001
- type: Tag
tags:
- CannotSuicide
- DoorBumpOpener

- type: entity
name: corgi puppy
suffix: Ghost
parent: MobCorgiGhost
id: MobCorgiPuppyGhost
description: A little corgi! Aww...
components:
- type: Sprite
drawdepth: Mobs
sprite: Mobs/Pets/corgi.rsi
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: puppy
- type: Inventory
speciesId: puppy
templateId: pet
- type: InventorySlots
- type: DamageStateVisuals
states:
Alive:
Base: puppy
Dead:
Base: puppy_dead

- type: entity
name: chicken
suffix: Ghost
parent: MobChicken
id: MobChickenGhost
description: Comes before an egg, and IS a dinosaur!
components:
- type: GhostRole
name: ghost-role-information-emotional-support-name
description: ghost-role-information-emotional-support-description
makeSentient: true
allowSpeech: true
allowMovement: true
- type: GhostTakeoverAvailable
- type: CombatMode
combatToggleAction:
enabled: false
autoPopulate: false
name: action-name-combat
- type: ReplacementAccent
accent: chicken
- type: Grammar
attributes:
gender: epicene
- type: Vocal
sounds:
Male: Chicken
Female: Chicken
Unsexed: Chicken
wilhelmProbability: 0.001
- type: Tag
tags:
- CannotSuicide
- DoorBumpOpener
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
- type: entity
name: Random Animal Spawner
suffix: Emotional Support
parent: MarkerBase
id: RandomAnimalSpawnerEmotionalSupport
components:
- type: Sprite
layers:
- state: red
- sprite: Mobs/Animals/chicken.rsi
state: icon-1
- type: RandomSpawner
offset: 0
prototypes:
- MobCatGhost
- MobCatCalicoGhost
- MobCatCaracalGhost
- MobCorgiGhost
chance: 1
rarePrototypes:
- MobBingusGhost
- MobCatSpaceGhost
- MobCorgiPuppyGhost
- MobChickenGhost
rareChance: 0.15
23 changes: 22 additions & 1 deletion Resources/Prototypes/_NF/Voice/speech_emote_sounds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,25 @@
Scream:
path: /Audio/Voice/Moth/scream_moth.ogg
Laugh:
path: /Audio/Voice/Moth/laugh_moth.ogg
path: /Audio/Voice/Moth/laugh_moth.ogg

- type: emoteSounds
id: Cat
sound:
path: /Audio/Animals/cat_meow.ogg
params:
variation: 0.125

- type: emoteSounds
id: Dog
sound:
path: /Audio/Animals/small_dog_bark_happy.ogg
params:
variation: 0.125

- type: emoteSounds
id: Chicken
sound:
path: /Audio/Animals/chicken_cluck_happy.ogg
params:
variation: 0.125

0 comments on commit 12c4335

Please sign in to comment.