diff --git a/Resources/Audio/Effects/hug.ogg b/Resources/Audio/Effects/hug.ogg new file mode 100644 index 0000000000..934ec6350f Binary files /dev/null and b/Resources/Audio/Effects/hug.ogg differ diff --git a/Resources/Audio/Effects/licenses.txt b/Resources/Audio/Effects/licenses.txt new file mode 100644 index 0000000000..6a6c0f662c --- /dev/null +++ b/Resources/Audio/Effects/licenses.txt @@ -0,0 +1 @@ +hug.ogg taken from /tg/station at https://github.com/tgstation/tgstation/blob/e6624ac8aed150668bb4e61c3a48372cc757bfd4/sound/weapons/thudswoosh.ogg - Under license: CC BY-SA 3.0 diff --git a/Resources/Locale/en-US/interaction/interaction-popup-component.ftl b/Resources/Locale/en-US/interaction/interaction-popup-component.ftl index fe8644961f..1dedff22cc 100644 --- a/Resources/Locale/en-US/interaction/interaction-popup-component.ftl +++ b/Resources/Locale/en-US/interaction/interaction-popup-component.ftl @@ -35,3 +35,7 @@ petting-failure-holo = You reach out to pet {THE($target)}, but {POSS-ADJ($targe # Shown when knocking on a window comp-window-knock = *knock knock* + +## Hugging players + +hugging-success-generic = You hug {THE($target)}. \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Mobs/Player/dwarf.yml b/Resources/Prototypes/Entities/Mobs/Player/dwarf.yml index ee78226f03..5a58b2b4e6 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/dwarf.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/dwarf.yml @@ -5,6 +5,10 @@ id: MobDwarf description: A miserable pile of secrets. components: + - type: InteractionPopup + successChance: 1 + interactSuccessString: hugging-success-generic + interactSuccessSound: /Audio/Effects/hug.ogg - type: Mind showExamineInfo: true - type: Input @@ -19,4 +23,4 @@ - type: CanHostGuardian - type: AiFactionTag factions: - - NanoTrasen + - NanoTrasen \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Mobs/Player/human.yml b/Resources/Prototypes/Entities/Mobs/Player/human.yml index 36f70b2499..0688a0c535 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/human.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/human.yml @@ -5,6 +5,10 @@ id: MobHuman description: A miserable pile of secrets. components: + - type: InteractionPopup + successChance: 1 + interactSuccessString: hugging-success-generic + interactSuccessSound: /Audio/Effects/hug.ogg - type: Mind showExamineInfo: true - type: Input diff --git a/Resources/Prototypes/Entities/Mobs/Player/reptilian.yml b/Resources/Prototypes/Entities/Mobs/Player/reptilian.yml index 75e0c23404..399f70a88e 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/reptilian.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/reptilian.yml @@ -5,6 +5,10 @@ id: MobReptilian description: A miserable pile of scales. components: + - type: InteractionPopup + successChance: 1 + interactSuccessString: hugging-success-generic + interactSuccessSound: /Audio/Effects/hug.ogg - type: Mind showExamineInfo: true - type: Input diff --git a/Resources/Prototypes/Entities/Mobs/Player/slime.yml b/Resources/Prototypes/Entities/Mobs/Player/slime.yml index 5f7f01696e..473050e33d 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/slime.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/slime.yml @@ -3,6 +3,11 @@ parent: MobSlimePersonBase id: MobSlimePerson components: + - type: InteractionPopup + successChance: 0.9 + interactSuccessString: hugging-success-generic + interactSuccessSound: /Audio/Effects/hug.ogg + interactFailureString: hugging-failure-generic - type: Mind showExamineInfo: true - type: Input diff --git a/Resources/Prototypes/Entities/Mobs/Player/vox.yml b/Resources/Prototypes/Entities/Mobs/Player/vox.yml index da533f0385..b47587134a 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/vox.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/vox.yml @@ -4,6 +4,10 @@ parent: BaseVox id: Vox components: + - type: InteractionPopup + successChance: 1 + interactSuccessString: hugging-success-generic + interactSuccessSound: /Audio/Effects/hug.ogg - type: Mind showExamineInfo: true - type: Input