diff --git a/Resources/Audio/_CP14/Animals/attributions.yml b/Resources/Audio/_CP14/Animals/attributions.yml index 2cb5224dce..0997ea2be7 100644 --- a/Resources/Audio/_CP14/Animals/attributions.yml +++ b/Resources/Audio/_CP14/Animals/attributions.yml @@ -41,4 +41,9 @@ - files: ["owl9.ogg"] license: "CC-BY-4.0" copyright: 'by Benboncan of Freesound.org. Cropped and mixed from stereo to mono.' - source: "https://freesound.org/people/Benboncan/sounds/64544/" \ No newline at end of file + source: "https://freesound.org/people/Benboncan/sounds/64544/" + +- files: ["dino1.ogg, dino2.ogg, dino3.ogg"] + license: "CC-BY-4.0" + copyright: 'by GreatNate98 of Freesound.org. Cropped and mixed from stereo to mono.' + source: "https://freesound.org/people/GreatNate98/sounds/586547/" diff --git a/Resources/Audio/_CP14/Animals/dino1.ogg b/Resources/Audio/_CP14/Animals/dino1.ogg new file mode 100644 index 0000000000..84ae1176d6 Binary files /dev/null and b/Resources/Audio/_CP14/Animals/dino1.ogg differ diff --git a/Resources/Audio/_CP14/Animals/dino2.ogg b/Resources/Audio/_CP14/Animals/dino2.ogg new file mode 100644 index 0000000000..fe5ca05c23 Binary files /dev/null and b/Resources/Audio/_CP14/Animals/dino2.ogg differ diff --git a/Resources/Audio/_CP14/Animals/dino3.ogg b/Resources/Audio/_CP14/Animals/dino3.ogg new file mode 100644 index 0000000000..adaa7c766e Binary files /dev/null and b/Resources/Audio/_CP14/Animals/dino3.ogg differ diff --git a/Resources/Prototypes/_CP14/Damage/modifier_sets.yml b/Resources/Prototypes/_CP14/Damage/modifier_sets.yml index 5ff59f98f6..55c0dd404d 100644 --- a/Resources/Prototypes/_CP14/Damage/modifier_sets.yml +++ b/Resources/Prototypes/_CP14/Damage/modifier_sets.yml @@ -25,3 +25,13 @@ Heat: 1.5 Cold: 0.4 Poison: 0 + +- type: damageModifierSet + id: CP14Dinosaur + coefficients: + Blunt: 0.9 + Slash: 0.7 + Piercing: 1.2 + Heat: 0.8 + Cold: 1.4 + Poison: 0.8 diff --git a/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml b/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml index 7cb4702736..56e7f791c4 100644 --- a/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml +++ b/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml @@ -29,3 +29,19 @@ - type: ConditionalSpawner prototypes: - CP14MobRabbit + +- type: entity + name: yumkaraptor spawner + id: CP14SpawnMobDinoYumkaraptor + parent: MarkerBase + categories: [ ForkFiltered ] + components: + - type: Sprite + layers: + - sprite: Markers/cross.rsi + state: green + - sprite: _CP14/Mobs/Animals/dino.rsi + state: dino + - type: ConditionalSpawner + prototypes: + - CP14MobDinoYumkaraptor diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/dinosaurs.yml b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/dinosaurs.yml new file mode 100644 index 0000000000..80c87bbc02 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/dinosaurs.yml @@ -0,0 +1,88 @@ +- type: entity + id: CP14MobDinoYumkaraptor + parent: SimpleMobBase + name: yumkaraptor + description: A large scaly lizard, an obvious predator that liked to snack on meat. + categories: [ ForkFiltered ] + components: + - type: HTN + rootTask: + task: SimpleHostileCompound + blackboard: + NavClimb: !type:Bool + true + NavSmash: !type:Bool + true + - type: NpcFactionMember + factions: + - CP14AggressiveAnimals + - type: Sprite + drawdepth: Mobs + layers: + - map: ["enum.DamageStateVisualLayers.Base"] + sprite: _CP14/Mobs/Animals/dino.rsi + state: dino + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 500 + mask: + - MobMask + layer: + - MobLayer + - type: ReplacementAccent + accent: xeno + - type: Damageable + damageContainer: Biological + damageModifierSet: CP14Dinosaur + - type: Appearance + - type: Body + prototype: Animal + - type: MobThresholds + thresholds: + 0: Alive + 70: Dead + - type: SlowOnDamage + speedModifierThresholds: + 55: 0.6 + - type: Stamina + critThreshold: 200 + - type: CombatMode + - type: MeleeWeapon + angle: 0 + animation: WeaponArcBite + damage: + types: + Slash: 8 + Piercing: 2 + - type: MovementSpeedModifier + baseWalkSpeed: 5 + baseSprintSpeed: 6 + acceleration: 16.0 + - type: DamageStateVisuals + states: + Alive: + Base: dino + Dead: + Base: dino_dead + - type: Butcherable + spawned: + - id: CP14FoodMeatLamb # to replace the dino meat + amount: 5 + - type: Bloodstream + bloodMaxVolume: 200 + - type: Grammar + attributes: + gender: female + - type: SpamEmitSound + minInterval: 20 + maxInterval: 40 + sound: + collection: CP14Dinosaurs + params: + volume: -8 + variation: 0.125 + - type: SoundWhileAlive diff --git a/Resources/Prototypes/_CP14/SoundCollections/animals.yml b/Resources/Prototypes/_CP14/SoundCollections/animals.yml new file mode 100644 index 0000000000..fca4ae0b06 --- /dev/null +++ b/Resources/Prototypes/_CP14/SoundCollections/animals.yml @@ -0,0 +1,6 @@ +- type: soundCollection + id: CP14Dinosaurs + files: + - /Audio/_CP14/Animals/dino1.ogg + - /Audio/_CP14/Animals/dino2.ogg + - /Audio/_CP14/Animals/dino3.ogg diff --git a/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/dino.png b/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/dino.png new file mode 100644 index 0000000000..0629125dee Binary files /dev/null and b/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/dino.png differ diff --git a/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/dino_dead.png b/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/dino_dead.png new file mode 100644 index 0000000000..bc2e445459 Binary files /dev/null and b/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/dino_dead.png differ diff --git a/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/meta.json b/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/meta.json new file mode 100644 index 0000000000..293f03a762 --- /dev/null +++ b/Resources/Textures/_CP14/Mobs/Animals/dino.rsi/meta.json @@ -0,0 +1,22 @@ +{ + "version": 1, + "size": + { + "x": 48, + "y": 48 + }, + "license": "CC-BY-SA-3.0", + "copyright": "Created by Pelemonk (Github) for CrystallPunk 14", + "states": + [ + { + "name": "dino", + "directions": 4 + }, + + { + "name": "dino_dead", + "directions": 1 + } + ] +}