Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the Adolescent Dragon to the Game. #309

Merged
merged 12 commits into from
Oct 31, 2024
225 changes: 225 additions & 0 deletions Resources/Prototypes/Floof/Entities/Mobs/NPCs/Adolescent_dragon.yml
fenndragon marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,225 @@
- type: entity
parent:
- SimpleSpaceMobBase
- FlyingMobBase
id: MobDragonPet
name: adolescent space dragon
description: A younger Space dragon with a friendly demeanor.
components:
- type: Body
prototype: Animal
- type: Climbing
- type: NameIdentifier
group: GenericNumber
- type: SlowOnDamage
speedModifierThresholds:
60: 0.7
80: 0.5
- type: LayingDown
- type: MobPrice
price: 2000
- type: Perishable
- type: Hunger
thresholds:
Overfed: 100
Okay: 50
Peckish: 25
Starving: 10
Dead: 0
baseDecayRate: 0.00925925925926 # Guy needs to eat and drink
- type: Thirst
thresholds:
OverHydrated: 200
Okay: 150
Thirsty: 100
Parched: 50
Dead: 0
baseDecayRate: 0.04
- type: StatusEffects
allowed:
- Stun
- KnockedDown
- SlowedDown
- Stutter
- Electrocution
- ForcedSleep
- TemporaryBlindness
- Pacified
- StaminaModifier
- type: Bloodstream
bloodMaxVolume: 650
- type: FloatingVisuals
- type: NpcFactionMember
factions:
- PetsNT
- type: Speech
speechVerb: SmallMob
- type: HTN
rootTask:
task: SimpleHostileCompound
- type: CombatMode
- type: MobMover
- type: InputMover
- type: Emoting
- type: MovementSpeedModifier
baseWalkSpeed: 3
baseSprintSpeed: 5
weightlessModifier: 1.5
- type: RandomSprite
available:
- enum.DamageStateVisualLayers.Base:
alive: Rainbow
- type: Sprite
sprite: Floof/Mobs/Animals/baby_dragon.rsi
noRot: true
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: alive
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
state: alive-unshaded
shader: unshaded
- type: Appearance
- type: DamageStateVisuals
states:
Alive:
Base: alive
BaseUnshaded: alive-unshaded
Critical:
Base: crit
Dead:
Base: dead
BaseUnshaded: dead-unshaded
- type: Physics
bodyType: KinematicController
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.40
density: 100
mask:
- FlyingMobMask
layer:
- FlyingMobLayer
- type: MobState
- type: MobStateActions
actions:
Critical:
- ActionCritSuccumb
- ActionCritLastWords
- type: MobThresholds
thresholds:
0: Alive
200: Critical
300: Dead
- type: Metabolizer
solutionOnBody: false
metabolizerTypes: [ Dragon ]
groups:
- id: Medicine
- id: Poison
- type: Butcherable
spawned:
- id: FoodMeatDragon
amount: 1
- type: InteractionPopup
successChance: 0.85 # It's no goose, but you better smell like carp.
interactSuccessString: petting-success-dragon
interactFailureString: petting-failure-dragon
interactFailureSound:
path: /Audio/Animals/space_dragon_roar.ogg
soundPerceivedByOthers: false # A 75% chance for a loud roar would get old fast.
- type: MeleeWeapon
altDisarm: false
angle: 0
animation: WeaponArcBite
soundHit:
path: /Audio/Weapons/Xeno/alien_claw_flesh3.ogg
damage:
types:
Piercing: 5
Slash: 5
- type: Puller
needsHands: false
- type: ReplacementAccent
accent: genericAggressive
- type: Tag
tags:
- CannotSuicide
- DoorBumpOpener
- type: ActionGun
action: ActionDragonsBreath
gunProto: DragonsSparkGun
- type: LanguageKnowledge
speaks:
- TauCetiBasic
understands:
- TauCetiBasic

- type: entity
categories: [ HideSpawnMenu ]
id: DragonsSparkGun
name: dragon's spark
description: For dragon's breathing
components:
- type: RechargeBasicEntityAmmo
rechargeCooldown: 30
rechargeSound:
path: /Audio/Animals/space_dragon_roar.ogg
- type: BasicEntityAmmoProvider
proto: DragonSpark
capacity: 3
count: 1
- type: Gun
soundGunshot:
path: /Audio/Animals/space_dragon_roar.ogg
soundEmpty: null
projectileSpeed: 15

- type: entity
id: DragonSpark
name: dragon ember spark
categories: [ HideSpawnMenu ]
components:
- type: Physics
bodyType: Dynamic
fixedRotation: false
- type: EmbeddableProjectile
deleteOnRemove: true
- type: Fixtures
fixtures:
projectile:
shape:
!type:PhysShapeAabb
bounds: "-0.1,-0.1,0.1,0.1"
mask:
- BulletImpassable
- type: Sprite
sprite: Objects/Weapons/Guns/Projectiles/projectiles2.rsi
state: buckshot-flare
- type: IgnitionSource
ignited: true
temperature: 1000
- type: TimedDespawn
lifetime: 120
- type: AmbientSound
enabled: true
volume: 0
range: 7
sound:
path: /Audio/Items/Flare/flare_burn.ogg
params:
loop: true
- type: IgniteOnCollide
fireStacks: 1
- type: PointLight
enabled: true
color: "#E25822"
radius: 7.0
energy: 5.0
- type: Projectile
deleteOnCollide: false
damage:
types:
Heat: 15
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
84 changes: 84 additions & 0 deletions Resources/Textures/Floof/Mobs/Animals/baby_dragon.rsi/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-4.0",
"copyright": "Made by @Stagnation on frontier discord. asleep by @fenndragon on floofstation discord",
"states": [
{
"name": "alive",
"directions": 4,
"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,
0.2
]
]
},
{
"name": "asleep",
"directions": 4
},
{
"name": "alive-unshaded",
"directions": 4,
"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,
0.2
]
]
},
{
"name": "crit"
},
{
"name": "dead"
},
{
"name": "dead-unshaded"
}
]
}
Binary file modified Resources/Textures/Mobs/Aliens/FXS/rouny.rsi/running.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading