From 512d9324223da37ccfe9f085e022a7dfc80e3027 Mon Sep 17 00:00:00 2001 From: Firewatch <54725557+musicmanvr@users.noreply.github.com> Date: Tue, 26 Mar 2024 15:08:19 -0400 Subject: [PATCH] more ayaaa --- .../ghost/roles/ghost-role-component.ftl | 3 ++ .../interaction-popup-component.ftl | 4 ++ .../Catalog/Fills/Boxes/general.yml | 4 +- .../Prototypes/Entities/Objects/Fun/toys.yml | 35 ++++++++++++++++++ .../Fun/pet_rock_box.rsi/icon-open.png | Bin 0 -> 2925 bytes .../Objects/Fun/pet_rock_box.rsi/icon.png | Bin 0 -> 3009 bytes .../Fun/pet_rock_box.rsi/inhand-left.png | Bin 0 -> 563 bytes .../Fun/pet_rock_box.rsi/inhand-right.png | Bin 0 -> 632 bytes .../Objects/Fun/pet_rock_box.rsi/meta.json | 25 +++++++++++++ 9 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 Resources/Textures/Objects/Fun/pet_rock_box.rsi/icon-open.png create mode 100644 Resources/Textures/Objects/Fun/pet_rock_box.rsi/icon.png create mode 100644 Resources/Textures/Objects/Fun/pet_rock_box.rsi/inhand-left.png create mode 100644 Resources/Textures/Objects/Fun/pet_rock_box.rsi/inhand-right.png create mode 100644 Resources/Textures/Objects/Fun/pet_rock_box.rsi/meta.json diff --git a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl index 8f2c7481c3692d..32f7d345806a4b 100644 --- a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl +++ b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl @@ -33,6 +33,9 @@ ghost-role-information-smile-description = The sweetest creature in the world. S ghost-role-information-punpun-name = Pun Pun ghost-role-information-punpun-description = An honorable member of the monkey society in charge of the bar and helping the bartenders in any way he can. +ghost-role-information-petrock-name = Pet rock +ghost-role-information-petrock-description = You are a sentient pet rock, exist in a perpetual state of harmony as a mineral aboard a space station. + ghost-role-information-xeno-name = Xeno ghost-role-information-xeno-description = You are a xeno, co-operate with your hive to kill all crewmembers! ghost-role-information-xeno-rules = You are an antagonist, smack, slash, and wack! diff --git a/Resources/Locale/en-US/interaction/interaction-popup-component.ftl b/Resources/Locale/en-US/interaction/interaction-popup-component.ftl index bb56233ff14f2a..879536590218a6 100644 --- a/Resources/Locale/en-US/interaction/interaction-popup-component.ftl +++ b/Resources/Locale/en-US/interaction/interaction-popup-component.ftl @@ -88,3 +88,7 @@ hugging-success-generic-target = { CAPITALIZE(THE($user)) } hugs you. petting-success-tesla = You pet {THE($target)}, violating the laws of nature and physics. petting-failure-tesla = You reach out towards {THE($target)}, but it zaps your hand away. + +petting-success-rock = You pet {THE($target)} on {POSS-ADJ($target)} rocky little head. + +petting-failure-rock = You fail to pet {THE($target)}, a non-moving object. Good job! diff --git a/Resources/Prototypes/Catalog/Fills/Boxes/general.yml b/Resources/Prototypes/Catalog/Fills/Boxes/general.yml index 0f9cc6c501c44d..fe3cadea559013 100644 --- a/Resources/Prototypes/Catalog/Fills/Boxes/general.yml +++ b/Resources/Prototypes/Catalog/Fills/Boxes/general.yml @@ -500,5 +500,5 @@ grid: - 0,0,1,1 - type: Sprite - sprite: - state: + sprite: Objects/Fun/pet_rock_box.rsi + state: icon diff --git a/Resources/Prototypes/Entities/Objects/Fun/toys.yml b/Resources/Prototypes/Entities/Objects/Fun/toys.yml index 1822252d9688d0..6f02cfded7113d 100644 --- a/Resources/Prototypes/Entities/Objects/Fun/toys.yml +++ b/Resources/Prototypes/Entities/Objects/Fun/toys.yml @@ -1504,14 +1504,28 @@ description: A normal rock. abstract: true components: + - type: InteractionPopup + successChance: 0.99 + interactSuccessString: petting-success-rock + interactFailureString: petting-failure-rock + interactSuccessSpawn: EffectHearts - type: Item size: Tiny + - type: Anchorable # Only known way to pet the rock. - type: Sprite sprite: Objects/Fun/pet_rock.rsi state: icon - type: EmitSoundOnCollide sound: path: /Audio/Effects/hit_kick.ogg + - type: GhostRole + prob: 1 + makeSentient: true + allowSpeech: true + allowMovement: false + name: ghost-role-information-petrock-name + description: ghost-role-information-petrock-description + - type: GhostTakeoverAvailable - type: Clothing quickEquip: false sprite: Objects/Fun/pet_rock.rsi @@ -1533,6 +1547,8 @@ - type: Sprite sprite: Objects/Fun/pet_rock.rsi state: icon + - type: GhostRole + prob: 0 - type: PhysicalComposition materialComposition: Steel: 10 @@ -1554,6 +1570,25 @@ - type: StaticPrice price: 1 +- type: entity + parent: BasePetRock + id: NamedPetRock + name: pet rock + suffix: Random Name + description: + components: + - type: RandomMetadata # He's your best friend. + nameSegments: + - names_first_male + - type: Sprite + sprite: Objects/Fun/pet_rock.rsi + state: icon + - type: PhysicalComposition + materialComposition: + Steel: 10 + - type: StaticPrice + price: 1 + - type: entity parent: BasePetRock id: FredRock diff --git a/Resources/Textures/Objects/Fun/pet_rock_box.rsi/icon-open.png b/Resources/Textures/Objects/Fun/pet_rock_box.rsi/icon-open.png new file mode 100644 index 0000000000000000000000000000000000000000..46c6bc82135fdc17370f240c191abd623c8f0a18 GIT binary patch literal 2925 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 Dubaq! literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Fun/pet_rock_box.rsi/inhand-left.png b/Resources/Textures/Objects/Fun/pet_rock_box.rsi/inhand-left.png new file mode 100644 index 0000000000000000000000000000000000000000..dc458a0a3ff911dc3102ee1a0e1655b7e6b19495 GIT binary patch literal 563 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D%zFMGN;hE&XX zduy+^Q=$mlhv#h!nfiK7krkV)E_Ke>USCnDJ*)lvvd38+aZKy({@J>{-h8*h zEcLTq%thYGVV@>BH!s@R@IkfU{};8YEvr5|t>oO8qaSRPqrLSNgTtoJ91I1Yc4}JT# zX((g7b%Wt8)0T~lw^%chnYVCXIL4MCzF_TB>4c|q7l?c}o$jk!&$a<1`&*nhBaKJ@ zR)ddCj?%?Roi5&Kxs_fKz4LaHx=O32aXsj@Q zwu#yC8}^>+N%zEBUPuPmiv90>ZV?b?FHoYQe~qDc@%yYa+olL+E`IrI?l-S4xvnfA vxOI;Hy}~m}3FS%4fpN{38sVAd>&u`8WOD#92wV!D45B<;{an^LB{Ts5bHwCB literal 0 HcmV?d00001 diff --git a/Resources/Textures/Objects/Fun/pet_rock_box.rsi/inhand-right.png b/Resources/Textures/Objects/Fun/pet_rock_box.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..49b15d7ac2b2f45646caf8b0b6f594ce448b14f9 GIT binary patch literal 632 zcmV-;0*C#HP)Px%7)eAyRCt{2+P_NzVHgMS=b~uJ0+)VZQw;@Wzq6^Kq&Wq3sLe@gXlU?naA`7V zZb%^;8~Q;FfoSBQ)FMGsMN_&&5O0H>+-be%d-ryaw=LI@#* z5JCtcgb+f=7sgoil^^eip^Y`h7{iXGqs{o;%San<=kVsbu7#KDyv4ZoDYyrqXJNvy z0t#sA5U$XUa|@c^fLgc3{%@peEoQ8wCKdyxgC_{qx(OI{PR2TZpB^ z@^T9h^@SC0_fe(s*H!b$Y!vl{b%UONXP0}t;UIW1y;s>dKeiC7d2tI6KS%={q^s{w zA8&N~WnRu?h-e{1&wrTAhrkTD}Ju4uZAR8;s??Dd}M_w0sYs z0$>NgMg_nQfQ<@(9RM2@06PFSDgbr>Y*Ya30N7f-0K&J!s@lKDc$)dvx#fER6#zQ` zHd6&CxCiQ%&i^XYJ;2Uq1tK92I9)~NbQM`}&LOq%!dHRdoP$9pz{*D%)G&!mN$TJ0 zKhZ9I%VO#>i22MwWwCaifuuDJ)AN8>GS~1jw8)&{JE^TmbzAmQz3Bqj{mj5`E!7Km zqnW{uxTF0000