diff --git a/Resources/Locale/en-US/_CP14/interaction/interaction-popup-component.ftl b/Resources/Locale/en-US/_CP14/interaction/interaction-popup-component.ftl new file mode 100644 index 0000000000..767a35b747 --- /dev/null +++ b/Resources/Locale/en-US/_CP14/interaction/interaction-popup-component.ftl @@ -0,0 +1,7 @@ +### Interaction Popup component + +## Petting animals + +cp14-petting-success-rabbit = You pet {THE($target)} on {POSS-ADJ($target)} fluffy little head. + +cp14-petting-failure-rabbit = You reach out to pet {THE($target)}, but {SUBJECT($target)} {CONJUGATE-BASIC($target, "attempt", "attempts")} to bite your finger and only your quick reflexes save you from an almost fatal injury. diff --git a/Resources/Locale/ru-RU/_CP14/interaction/interaction-popup-component.ftl b/Resources/Locale/ru-RU/_CP14/interaction/interaction-popup-component.ftl new file mode 100644 index 0000000000..61a488f973 --- /dev/null +++ b/Resources/Locale/ru-RU/_CP14/interaction/interaction-popup-component.ftl @@ -0,0 +1,9 @@ +### Interaction Popup component + + +## Petting animals + + +cp14-petting-success-rabbit = Вы гладите { $target } по { POSS-ADJ($target) } маленькой пушистой голове. + +cp14-petting-failure-rabbit = Вы тянетесь погладить { $target }, но { $target } пытается укусить вас за палец, и только ваши молниеносные рефлексы спасают вас от почти смертельной травмы. diff --git a/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml b/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml index 65eb09f35a..a5c3230da1 100644 --- a/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml +++ b/Resources/Prototypes/_CP14/Entities/Markers/Spawners/mobs.yml @@ -12,3 +12,18 @@ - type: ConditionalSpawner prototypes: - CP14MobUndeadZombie + +- type: entity + name: rabbit spawner + id: CP14SpawnMobRabbit + parent: MarkerBase + components: + - type: Sprite + layers: + - sprite: Markers/cross.rsi + state: green + - sprite: _CP14/Mobs/Animals/rabbit.rsi + state: rabbit + - type: ConditionalSpawner + prototypes: + - CP14MobRabbit diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/NPC/animals.yml b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/animals.yml new file mode 100644 index 0000000000..e9da64890c --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Mobs/NPC/animals.yml @@ -0,0 +1,76 @@ +- type: entity + id: CP14MobRabbit + parent: SimpleMobBase + name: rabbit + description: A little fluffy rabbit. I could eat it. + components: + - type: HTN + rootTask: + task: RuminantCompound + - type: NpcFactionMember + factions: + - CP14PeacefulAnimals + - type: Sprite + drawdepth: Mobs + layers: + - map: ["enum.DamageStateVisualLayers.Base"] + sprite: _CP14/Mobs/Animals/rabbit.rsi + state: rabbit + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.35 + density: 8 + mask: + - MobMask + layer: + - MobLayer + - type: Tag + tags: + - CP14Rabbit + - type: Reproductive + partnerWhitelist: + tags: + - CP14Rabbit + offspring: + - id: CP14MobRabbit + maxAmount: 2 + - type: ReproductivePartner + - type: Speech + speechVerb: SmallMob + - type: Appearance + - type: MobThresholds + thresholds: + 0: Alive + 30: Dead + - type: CombatMode + - type: MeleeWeapon + angle: 0 + animation: WeaponArcBite + damage: + types: + Piercing: 1 + - type: MovementSpeedModifier + baseWalkSpeed : 4 + baseSprintSpeed : 5 + - type: DamageStateVisuals + states: + Alive: + Base: rabbit + Dead: + Base: rabbit_dead + - type: Butcherable + spawned: + - id: CP14FoodMeatLamb # to replace the rabbit meat + amount: 1 + - type: Bloodstream + bloodMaxVolume: 50 + - type: InteractionPopup + successChance: 0.5 + interactSuccessString: cp14-petting-success-rabbit + interactFailureString: cp14-petting-failure-rabbit + interactSuccessSpawn: EffectHearts + interactSuccessSound: + path: /Audio/Animals/fox_squeak.ogg diff --git a/Resources/Prototypes/_CP14/tags.yml b/Resources/Prototypes/_CP14/tags.yml index 442a162530..4f6cf5c106 100644 --- a/Resources/Prototypes/_CP14/tags.yml +++ b/Resources/Prototypes/_CP14/tags.yml @@ -48,3 +48,6 @@ - type: Tag id: CP14RecipeMeltingFurnace + +- type: Tag + id: CP14Rabbit diff --git a/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/meta.json b/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/meta.json new file mode 100644 index 0000000000..79c61c86c9 --- /dev/null +++ b/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/meta.json @@ -0,0 +1,21 @@ +{ + "version": 1, + "size": + { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "Created by Pelemonk (Github) for CrystallPunk 14", + "states": + [ + { + "name": "rabbit", + "directions": 4 + }, + { + "name": "rabbit_dead", + "directions": 1 + } + ] +} diff --git a/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/rabbit.png b/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/rabbit.png new file mode 100644 index 0000000000..8991e8f10c Binary files /dev/null and b/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/rabbit.png differ diff --git a/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/rabbit_dead.png b/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/rabbit_dead.png new file mode 100644 index 0000000000..c69fe575bc Binary files /dev/null and b/Resources/Textures/_CP14/Mobs/Animals/rabbit.rsi/rabbit_dead.png differ