mirror of
https://github.com/DeltaV-Station/Delta-v.git
synced 2026-09-29 23:57:29 +00:00
Adds Silvia the snake, a pet for CMO (#1488)
* Adds Silvia the snake, a pet for CMO * yeet extra line * tweaks to attack rate and butcher products * fix copy/paste typo * Add Silvia meat --------- Co-authored-by: Velcroboy <velcroboy333@hotmail.com>
This commit is contained in:
@@ -22,3 +22,7 @@ ghost-role-information-recruiter-rules =
|
||||
Set up shop in maints or use your ship as a portable hiring office!
|
||||
|
||||
You are just a recruiter so do not act like a full-on antagonist, i.e. no killing people.
|
||||
|
||||
ghost-role-information-silvia-name = Silvia
|
||||
ghost-role-information-silvia-description = You are Silvia the space snake and the CMO's charming companion.
|
||||
ghost-role-information-silvia-rules = Keep the medical team company and help out in emergencies with your omnizine venom. Stick close to the CMO in case they need emergency healing.
|
||||
|
||||
@@ -64,3 +64,17 @@
|
||||
- type: ConditionalSpawner
|
||||
prototypes:
|
||||
- MobCarpLegal
|
||||
|
||||
- type: entity
|
||||
name: Silvia Spawner
|
||||
id: SpawnMobCMOPetSilvia
|
||||
parent: MarkerBase
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: green
|
||||
- state: silvia
|
||||
sprite: DeltaV/Mobs/Pets/silvia.rsi
|
||||
- type: ConditionalSpawner
|
||||
prototypes:
|
||||
- MobCobraSilvia
|
||||
|
||||
@@ -78,3 +78,130 @@
|
||||
department: Justice
|
||||
time: 3600 # 1 hours
|
||||
- type: GhostTakeoverAvailable
|
||||
|
||||
- type: entity
|
||||
name: Silvia
|
||||
id: MobCobraSilvia
|
||||
parent: MobSpaceBasic
|
||||
description: With needle-sharp fangs and an alluring gaze, will you let her bite you?
|
||||
components:
|
||||
- type: HTN
|
||||
rootTask:
|
||||
task: IdleCompound
|
||||
- type: Sprite
|
||||
drawdepth: Mobs
|
||||
sprite: DeltaV/Mobs/Pets/silvia.rsi
|
||||
layers:
|
||||
- map: [ "enum.DamageStateVisualLayers.Base" ]
|
||||
state: silvia
|
||||
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
|
||||
state: glow
|
||||
shader: unshaded
|
||||
- type: FootstepModifier
|
||||
footstepSoundCollection:
|
||||
collection: FootstepSnake
|
||||
- type: MobThresholds
|
||||
thresholds:
|
||||
0: Alive
|
||||
125: Dead
|
||||
- type: DamageStateVisuals
|
||||
states:
|
||||
Alive:
|
||||
Base: silvia
|
||||
BaseUnshaded: glow
|
||||
Dead:
|
||||
Base: dead_silvia
|
||||
- type: Butcherable
|
||||
spawned:
|
||||
- id: FoodMeatSnakeSilvia
|
||||
maxAmount: 3
|
||||
- id: ClothingShoesSnakeskinBoots #different version? wysi
|
||||
amount: 1
|
||||
prob: 0.2
|
||||
- type: Bloodstream
|
||||
bloodMaxVolume: 200
|
||||
bloodReagent: Cryoxadone
|
||||
- type: Fixtures
|
||||
fixtures:
|
||||
fix1:
|
||||
shape:
|
||||
!type:PhysShapeCircle
|
||||
radius: 0.40
|
||||
density: 120
|
||||
mask:
|
||||
- MobMask
|
||||
layer:
|
||||
- MobLayer
|
||||
- type: MeleeWeapon
|
||||
attackRate: 1.75 #faster attack rate to compensate for healing in self defense situations
|
||||
hidden: true
|
||||
soundHit:
|
||||
path: /Audio/Effects/bite.ogg
|
||||
angle: 0
|
||||
animation: WeaponArcBite
|
||||
damage:
|
||||
types:
|
||||
Piercing: 6 #take dmg to heal dmg
|
||||
- type: SolutionContainerManager
|
||||
solutions:
|
||||
melee:
|
||||
maxVol: 30
|
||||
reagents:
|
||||
- ReagentId: Omnizine
|
||||
Quantity: 30 #5 bites to heal 90hp/1 min
|
||||
- type: MeleeChemicalInjector
|
||||
solution: melee
|
||||
transferAmount: 6 #heals 24 burn/brute/air/toxin in 12seconds/minus 6 brute per bite
|
||||
- type: SolutionRegeneration
|
||||
solution: melee
|
||||
duration: 30 #regen 1u every 30 seconds. 15 mins to full
|
||||
generated:
|
||||
reagents:
|
||||
- ReagentId: Omnizine
|
||||
Quantity: 1
|
||||
- type: ReplacementAccent
|
||||
accent: xeno #Add cool snake accent later. wyci
|
||||
- type: PointLight
|
||||
radius: 1.1
|
||||
energy: 0.25
|
||||
color: "#00ff80"
|
||||
- type: Stealth
|
||||
enabledOnDeath: false
|
||||
maxVisibility: 1.2
|
||||
- type: StealthOnMove
|
||||
passiveVisibilityRate: -0.15
|
||||
movementVisibilityRate: 0.30
|
||||
- type: GhostRole
|
||||
makeSentient: true
|
||||
allowSpeech: true
|
||||
allowMovement: true
|
||||
name: ghost-role-information-silvia-name
|
||||
description: ghost-role-information-silvia-description
|
||||
rules: ghost-role-information-silvia-rules
|
||||
requirements: #No raiders
|
||||
- !type:DepartmentTimeRequirement
|
||||
department: Medical
|
||||
time: 14400 #4 hours
|
||||
- type: GhostTakeoverAvailable
|
||||
- type: InteractionPopup
|
||||
successChance: 0.65
|
||||
interactSuccessString: petting-success-snake
|
||||
interactFailureString: petting-failure-generic
|
||||
interactSuccessSpawn: EffectHearts
|
||||
interactSuccessSound:
|
||||
path: /Audio/Animals/snake_hiss.ogg
|
||||
- type: NpcFactionMember
|
||||
factions:
|
||||
- PetsNT
|
||||
- type: Grammar
|
||||
attributes:
|
||||
proper: true
|
||||
gender: female
|
||||
- type: Tag
|
||||
tags:
|
||||
- CannotSuicide
|
||||
- VimPilot
|
||||
- DoorBumpOpener
|
||||
- FootstepSound
|
||||
- type: StealTarget
|
||||
stealGroup: AnimalSilvia
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
- type: entity
|
||||
parent: FoodMeatSnake
|
||||
id: FoodMeatSnakeSilvia
|
||||
components:
|
||||
- type: SolutionContainerManager
|
||||
solutions:
|
||||
food:
|
||||
reagents:
|
||||
- ReagentId: UncookedAnimalProteins
|
||||
Quantity: 8
|
||||
- ReagentId: Omnizine
|
||||
Quantity: 8
|
||||
@@ -26,4 +26,9 @@
|
||||
sprite: DeltaV/Objects/Misc/stamps.rsi
|
||||
state: stamp-notary
|
||||
|
||||
|
||||
- type: stealTargetGroup
|
||||
id: AnimalSilvia
|
||||
name: Silvia
|
||||
sprite:
|
||||
sprite: DeltaV/Mobs/Pets/silvia.rsi
|
||||
state: silvia
|
||||
|
||||
@@ -41,4 +41,13 @@
|
||||
stealGroup: RubberStampNotary
|
||||
owner: job-name-clerk
|
||||
|
||||
|
||||
- type: entity
|
||||
abstract: true
|
||||
parent: BaseTraitorStealObjective
|
||||
id: SilviaStealObjective
|
||||
components:
|
||||
- type: NotJobRequirement
|
||||
job: ChiefMedicalOfficer
|
||||
- type: StealCondition
|
||||
stealGroup: AnimalSilvia
|
||||
owner: job-name-cmo
|
||||
|
||||
@@ -120,6 +120,7 @@
|
||||
RenaultStealObjective: 1
|
||||
ShivaStealObjective: 1
|
||||
TropicoStealObjective: 1
|
||||
SilviaStealObjective: 1 #DeltaV - CMO steal objective, see Resources/Prototypes/DeltaV/Objectives/traitor.yml
|
||||
|
||||
- type: weightedRandom
|
||||
id: ThiefObjectiveGroupEscape
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 873 B |
Binary file not shown.
|
After Width: | Height: | Size: 3.4 KiB |
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Sprited by Nimfar11 (Github) for Space Station 14, re-shaded by Velcroboy for Delta V ",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "silvia",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3],
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3],
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3],
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "glow",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3],
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3],
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3],
|
||||
[0.3,0.2,0.2,0.4,0.2,0.2,0.3]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "dead_silvia"
|
||||
}
|
||||
]
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 7.7 KiB |
Reference in New Issue
Block a user