From c026f4267615fd97d04fe63ca0d441317363c368 Mon Sep 17 00:00:00 2001 From: Cameron653 Date: Sun, 8 Apr 2018 01:03:07 -0400 Subject: [PATCH 01/24] Adds SilencedMP5A5's fluff items https://forum.vore-station.net/viewtopic.php?f=27&t=1302 --- .../clothing/spacesuits/void/void_vr.dm | 15 ++++++++++++-- .../vore/fluffstuff/custom_clothes_vr.dm | 19 ++++++++++++++++++ .../vore/fluffstuff/custom_items_vr.dm | 16 +++++++++++++-- config/custom_items.txt | 7 +++++++ icons/mob/taursuits_vr.dmi | Bin 257596 -> 261025 bytes icons/vore/custom_clothes_vr.dmi | Bin 196996 -> 197376 bytes 6 files changed, 53 insertions(+), 4 deletions(-) diff --git a/code/modules/clothing/spacesuits/void/void_vr.dm b/code/modules/clothing/spacesuits/void/void_vr.dm index 8b47cede28..c792ffc995 100644 --- a/code/modules/clothing/spacesuits/void/void_vr.dm +++ b/code/modules/clothing/spacesuits/void/void_vr.dm @@ -134,7 +134,7 @@ else H << "You need to have a horse, wolf, or naga half to wear this." return 0 - + /obj/item/clothing/suit/space/void/medical/alt/taur name = "taur specific streamlined medical voidsuit" desc = "A more recent model of Vey-Med voidsuit, featuring the latest in radiation shielding technology. It has a sticker saying one size fits all taurs on it. Below the sticker, it states that it only fits horses, wolves, and naga taurs." @@ -231,7 +231,7 @@ else H << "You need to have a horse, wolf, or naga half to wear this." return 0 - + /obj/item/clothing/suit/space/void/security/alt/taur name = "taur specific riot security voidsuit" desc = "A heavily armored voidsuit. It has a sticker saying one size fits all taurs on it. Below the sticker, it states that it only fits horses, wolves, and naga taurs." @@ -368,3 +368,14 @@ else H << "You need to have a horse, wolf, or naga half to wear this." return 0 + +/obj/item/clothing/suit/space/void/security/hasd + name = "HASD EVA bodyplates" + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) + desc = "A series of armor plates painted black, deployed from a back-mounted module. They fit smoothly over the unit's armor plates and projects a skintight bubble shield over the unit's uncovered parts. Faceplate and coolant unit not included." + species_restricted = null + icon = 'icons/mob/taursuits_vr.dmi' + icon_override = 'icons/mob/taursuits_vr.dmi' + icon_state = "hasd_suit" + item_state = "hasd_suit" + pixel_x = -16 \ No newline at end of file diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 45ac6dd99e..18e683759e 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -1760,3 +1760,22 @@ Departamental Swimsuits, for general use icon_state = "tronsiren_shoes" icon = 'icons/vore/custom_clothes_vr.dmi' icon_override = 'icons/vore/custom_onmob_vr.dmi' + +/obj/item/clothing/head/helmet/space/void/security/hasd + name = "HASD EVA faceplate" + desc = "It's a faceplate that slots into the HASD EVA bodyplate assembly. Functionally useless alone." + + icon = 'icons/vore/custom_clothes_vr.dmi' + icon_state = "hasd_helm" + + icon_override = 'icons/vore/custom_clothes_vr.dmi' + item_state = "hasd_helm" + species_restricted = null + + mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) + if(..()) + if(H.ckey != "silencedmp5a5") + H << "...The faceplate is clearly not made for your anatomy, thus, does not fit." + return 0 + else + return 1 \ No newline at end of file diff --git a/code/modules/vore/fluffstuff/custom_items_vr.dm b/code/modules/vore/fluffstuff/custom_items_vr.dm index 48aa1e415e..466380b828 100644 --- a/code/modules/vore/fluffstuff/custom_items_vr.dm +++ b/code/modules/vore/fluffstuff/custom_items_vr.dm @@ -1462,7 +1462,7 @@ else if(L.vore_organs.len) real_dest = pick(L.vore_organs) televored = TRUE - + //Televore fluff stuff if(televored) to_chat(target,"\The [src] teleports you right into \a [lowertext(real_dest.name)]!") @@ -1898,7 +1898,7 @@ user.visible_message(pick("\The [user] is slitting \his stomach open with \the [src]! It looks like [tempgender] trying to commit seppuku.",\ "\The [user] is falling on \the [src]! It looks like [tempgender] trying to commit suicide.")) return (BRUTELOSS|FIRELOSS) - + /obj/item/weapon/melee/fluffstuff/awoosword name = "Wolfgirl Sword Replica" desc = "A replica of a large, scimitar-like sword with a dull edge. Ceremonial... until it isn't." @@ -1942,3 +1942,15 @@ ..() attack_verb = list("bapped", "thwapped", "bonked", "whacked") icon_state = initial(icon_state) + +//SilencedMP5A5 - Serdykov Antoz +/obj/item/device/modkit_conversion/hasd + name = "HASD EVA modification kit" + desc = "A kit containing all the needed tools and parts to modify a suit and helmet into something a HASD unit can use for EVA operations." + icon = 'icons/vore/custom_items_vr.dmi' + icon_state = "modkit" + + from_helmet = /obj/item/clothing/head/helmet/space/void/security + from_suit = /obj/item/clothing/suit/space/void/security/taur + to_helmet = /obj/item/clothing/head/helmet/space/void/security/hasd + to_suit = /obj/item/clothing/suit/space/void/security/hasd \ No newline at end of file diff --git a/config/custom_items.txt b/config/custom_items.txt index a334224ad0..2ed5725ecb 100644 --- a/config/custom_items.txt +++ b/config/custom_items.txt @@ -703,6 +703,13 @@ item_path: /obj/item/clothing/glasses/sunglasses/fluff/alfonso #req_access = 1 #} +#{ +#ckey: silencedmp5a5 +#character_name: Serdykov Antoz +#item_path: /obj/item/device/modkit_conversion/hasd +#req_access = 1 +#} + { ckey: silvertalismen character_name: Tasy Ruffles diff --git a/icons/mob/taursuits_vr.dmi b/icons/mob/taursuits_vr.dmi index effe15809ea0948c7e20ab9e5241167f4f471481..a8e376bfcbf0196df50a74135a37cd5e24d260a9 100644 GIT binary patch delta 11675 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 diff --git a/icons/vore/custom_clothes_vr.dmi b/icons/vore/custom_clothes_vr.dmi index 0108556742597b3c313e8b8436a6a20df628bb7b..5cd12ac238be0548abf05d8fe9c1e697ea194dc6 100644 GIT binary patch delta 11932 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 delta 11549 zcmb_?XH*nj*JUA5C97nCMic}DM55#*B1y?glpsiuEUBSDvSbiNqKXJSWRxV?CJO?R zC1;S(G_irEdoIuWe)D72tTlgTExN0#Zl$~LIs2Tm4?*FSp&^tB+(cgG*PoFyx=(kd zw{^(N3CJPwo~J@;UZxS84x&Fp{vnU}hn%STAM$g$y)fEME7KR>EKk13ps1iI_>}hH z=STPc5#Z8rF>d8IYv1}_`TdC_+GOJW$mM>#)$! z*<4~m8@3x}>YgV-gb-cfq_~~4W>?rAaFLJEy0ug~|o{HV} zTFgwfDzQ^d2YC#Y&TfWN0I6v$VfiRBPNM_Hvct6>vnyJcF@rA{{kTN#lm|eff|~}& z*{}pg5jk7(PdULU@#WDFrw=PR>={Dz7?dqaE#qaX>nR(r=KCFmT&IE7h-$C9g6d+~n&e_V6 z4=F}+o?d#@O_1wbmwCQK@yYnHH5oW1((688;m?FWWB(K$6+*62b;=H5x0_&9$ zZ$I$5Jr6lUEu}vl=gTR@JOECy&bbHkUM0*0;Oee9(5uMR2fe28-aeE%=wW{Q_I(uT zfwn!9kHgH1FNTFn!$fkX-<15o9vPF}sgRHm$G3%+^9bU1k!W^uB42tXlJtu8ivhy)tNYM5-+CFLF} zs_QGK#=&-|HEeQl^aWA4ijJQCT;&t0$|uflCim}0o+e!jrF_iQ=nqitspSZSVaZ zC6*taxY+P@3{NN%rZAzKKkjW6ol>M&6n5*Q6ek5j_Q}IX!S-#iz&3+RUq%bFLZ{E( z96N`w`1U6vh4I=5y*1O%{?P+FzV{*;D${MQ@PpY6Cb>^N{=;h;cpMS}UU(}Gb7#Mu{JoM8*+|LjG& z>IeNFJMe!`{J#wSKSmN1?fXVZs_Y!kef4G!-D5Zd^_Bi z)?!x>ogWlPDU`?(b@=cO7>;)(RWy~@Wy}RQ;O@pj{H=KB^#C4}(UJ~|iSS$__17Qz zFN3ve6bNNwa53u%lI+67hq>FCFhr8g^X>xXaYEgyG{W+|Uhu*uGrL>+#J?&Std`_nc`LgMk%Y zU4>tTggnyIBZkTh5T6h)E_kSCb%~giq_=iE)&4R~va1NMxvAt)=8a=!HMbS)x-7AU!5XuL}z2b_l9rWE{oHk(rEf_VPbuv7l7dU|Eir-}=~M1j2DO|5^=E>H0D6^6FTgZX0D zU8XB8l@SJy^LUqM8Q8Q?`@NXf~Sb9Fx!6~UCYwzk_C zOky-GU&;lpXj;r4v7Yg9X1@k@X#2PnACfutHKGAuNU(%HjIPgZY{d9%vLK|!r13FS zr4`QyzYsw;v@;^t2J@_U7Q0gA0`7uc3Mf_FnMH*WaR%O>RP`Miq3~Bji6Xu|Lyou?0va zY}Qg_2OPXtr~Bc!B)7P-l5>1iuru>U(Q159 za|@|hrDd9pc%61*<4>i=ePnY@JilQP)ECn6_;lwE#rf=4QMtp0v7^aNVc3e_pUyc= zSA5meuJcBVOUZ@qF$yWXNl9tJi3)>nlDW#N@ zRA*P0qLR`%=tD!p)wsAgh|@*q{{7}r3pkcz8do_iPZ(G?w<01UO1*7O_F}p|O3ZPD z^Y(4Ju&^*6j~3(xe?!b2R+wkcpT}=X!|73{q?06^5Z2jw-^R{vVaj`^tuyf&21O(P zp`t?9huQ}FV7xJ^wyusCq9hBcpPHGmXe^zihM0xwM@n}erL(uS7u?IKoMwh-s}RI2 zv1Aif&ZuaiMv6@BhO*(Tr=r&^?AY3DV}nBUa{+&7Zk(+m9G`|9e6y9gCgTTF1B+X7jAef=Vb<3Z?b zEFmL=H}r+O-)_B zIU%vX{#8<2jO86`DKW&Cxz}$m+WCZyXf(O>nxh+uC<_%|W{m7tK?(B?$>G(&t%7pw znI{3C3eB3Lh_G&l=g%3P;`D(-p@3icnpmASYPXR?2^R$QbST`7L|6)!=9P1k*~K<* zG4v7A4jAvJMK78P;z3sF)O&(#Cr@pkb z7$r-YKOuCB1xU;P;7JNE*A zHEkVdZo@Vyx7%ZwLkjfr!1A?mOJwmQM&=h5LMkdmM8(Cs+akaZ5?rORd$-h0v+thg zq5h#Eo8g)~o$U5^7J*Ugqov+{PH@|d=9aXS)W`gM3X8y_>)P3JvfT44OG|U>rA_zD z%&x+JCMG@tV%yrH4rvK;94%?F6mAB{0{+|F+{`a5M4fq8eZ5R!tI=Km1A$+e(&SKN zWMng7ymHq$rOONqTp}VBgC~d|_}5Jc5fOUeY{oUN2=JuX$VdvPxz=OF^Mz^b>O6B*=kA;|%P|xeIBNqsuiRcr_@5VBO05-G5m7YJ3Ug3(P;0C_{mRBIta+^d2 zSK2kj_wx)&Q?>9O@m`6GBE;2%Q$ID^#OD=+hebr71_!?mTAwW?AKwr8+M}`0g);{l zM^1l-3MizOJbu`pwHY8Zk4*n&IkO(OQx8Q}9qKBl z4xjM>xblmON#pbCZwU!?lvAyVA9ZNe_En7?2Ggfg>YQPG?Osg6ieG*~LE=SPq!;Dx z<_JTn8A?V*rpy~{o{ZoGp&vGGL`t!+uoT@r{GkvnZ;dM4m~9EczJre#W0-C$O$V-z z+``S#z|E7j9$`JF&8nsTQ6LbtbakBvE9mO({=>*3fK)<40(){o3_THPx^yht%9A#< zzHjf~@Z(3=#etELXBi}w#Z=DD&Z6Wbbj$hHccc#rjeS#5J%>V{;G!b7TeohlI-H<3 zOAMts?ywZTudDOVyS+^oLUfaFCa}$StB_#hvD}jwP3l$0fSB+|G(|pSU=rA`xc^hO zXGp5)UT(5^AO|pe;H8pm{!}S*g#{FfexE@mQEx{h#J#tStKRcAV;-0a2~7yjDZE!w z%+gfFC%6|b%Zh{boj4Cf9ENx&Yut$SzGx~EHA9v^LeE1%-@o7eSZ>#s72AYc652jI zl&J0QWNrFt*T?=Fv$>h&ztuv(qX|EHd#RxQk&$o^hiYnT6-!5dqC@O)4W-4!swO6^ zkYy{yf{eo9q({7#J11(e+@kGV&?M7L!w<%wQd~{$CQOsJY;s*Z`*fyYoVA}_#eU0h zmHk(9*SA`Gk78B1=B+C7Ru79)o{PMHVq}`MAWH!jOAdPPP2zN`$Q_{84>U4{Ycl@0>ZNp({UVSz)`-}$1wFJJp6WxvPtn+s zZguX&lk`tJDXxu|9csEJ{5$!(_p%kYGQp=|5PjJ2o=>zfH-Io|)|Bi)%RC_yuU3_NMs)O7_6c(;5m4L83_t#%zZfGO61`c^%Q(>FcWfKJAPQ%tI z#AMV5g1_|IfpNIeZMP`WDaLGoE}X0obHc) ztaq0BrfLu4yq`rtkQ{cFSYKbCQ&^Z51a37;OHMvMzQqnz-{ZABX=jrLKe2Pf#Ljn5 z@Pj(?v7qW;F1Mj+YiViilu??jIaH>UxN|SQVDoZ%*4WsX zdKgC?N3=B(M=n^F_qL!`DlByX-BI={NRGP=6Gi^`_Dd0(ckbhOYD8<-H0pU-Qvo;LQm zv(tPN^%NVB;WsZXr$hHmM)V;$yi(=j)^^uy2O(v zBkne@GIX|PD^!(O$aQxa*1C-KPpuC$`QgdHz!08zP3`rCi7rqF(1AU1Rci>kfRi2T zO_y+fOU@h!7NOk#@C6AO+5BepjCid}Ar|+R5%Fe1^`C-*7W}f~j@{N+6isUJ!9-GX zvjUqmCOD%H9M-IT5JsUb#dCd^<0Db;8H~lnUsT_Xj2ObA5)w2=SiL;$HV|Pj&BQdE z2!tZucQ%+@*n7)VGxJZt;VPa_K;R8eFiDIudyurUt5Z2nD89uSsDcY5DIneY;lYU_ z7Lo%L)H!i4mgPDl$D0Y0Cr^X{tIHIL3F`UhVJ&5kOfI>JI154_DyPR64{ZKSnhVL= zcU^)D-9Pt#WyP$_UbaSj>gBk4$h;CF=}vHbXmK;-s~!J0vmU|+Wae3I00DU0+c%9Nvh+Th zF}AV!JUMY~ugeoS)Q7S%TK=I+&O74^Qef3SE#~M$K|eFzIj4mbw>gfMmBD4gfQjas z2q#UCjEutJfR-^(*@{V|YH~pncZpV9Tg4w$?gl(G6 zU%wct=-V?6r>*J-#Gdsqnby6e0ySVrU7fV4nb}ieCSkl1y(tI|ju0iEndFO0tiBukV8}m$1u3 z-5$>o9~VcB+m$EW0afG&-Gaq-SWS%_9GCyRP^ixbwKM-EvZhn;&6XFuknMRn$aGHw z*3dwKcxfrjRAxWG^${!~NM8X=HD2oszkmPMbidt~n1Hvpw+Di&RQJ!HK&J{xOJni$ z^h|X!!e3@&{MmOY*n;R6sQG4p4bK#{(VcD)wP3hfiqH}Wpo&1vJ2Q+L-g?N{(&{r7 zzrt}Jj*=vth?2MJoxHpQ!4C_Ec|rad5p8&1XLF(#8vtQl2QJL5gC+yy@^q^*32 zp^2REp1FRrsG@?N>UMH!L_|c}ijR-a2k~e0bq0^4g22%6AZ6i_6&kzT-Q7Lwb#m}A zg8dctW`w}*?kqQyZ3mEbn&(`>=eAh8%P>_u7X08kO1d!H=-{d)lds!;pf z@bjcx=d+tEpvBjNlD2V!Rj9^d4J;TG$w8UG!WSSQ!%~Pjz>>7u!0x{lGcdG z_7#QKO-|z?P*8k)JhF0sAzq$=#p1oPmDLKr*7!I)u4GN~nT?{He46yC@a9_1AT!U8 zZ|$^{N@RR=D{%G&+GV5D6j{zU6URx-QxDrof+in?MGN_^?$(_urk2Y+N1@egxM zZ{>AOyTHJ}vQZq(GY(^`y^$Vgp~Ii5;o*0@>X$_u zG&cpJ^&Y4-lIv3r-JTk^ACd+A{`-`1#$0NWF!H2*W$Mgg8Z8KMHqX=ZvC{GAr;66G z#J5UKi&1ynbnd^cih4a`zz#XlkIKO0P}zRtC8h8o8H``q8Zb@PWEz+dfLum3f$ zP1hppvMwBUXzl2jK+-?Jn}Z)eWpBT^q)UI+21vjUd{HaUl`bsvT*L zi;z9jH_t9WX_rP={%te)X*Jh2kmJY=nC))eh;lla!fk1 z?ojS1E89N5Esgv%XdOz+1$X~Ji!c*TGv9aZohtv^!4UYXN5qv=o(A;1Yu*c#l4AZj zy_JTIv7j0P;+3v`;}62_`vK!#C%QZ#r$jw)``vwvs@uSIPnpIbDdbCqxKRxDT=+uA z-1YyTlA#&gdnEhHj{!q*o{*%kFOlFcg$%@$90!P+UaZ)3?*a z{uKt=W^LsLxb*lN6(w;^x8h`lk@1AHm$ar#;(mXbSvP*mjwbNCR-pOcB*w?bsCdf! z!w5>MQrykx>swP?Gkxax3S6DLG`!J3zB1^0AIynTxPkpuB6wvhD=P@n?w#It^Hfww zmj`7RsQ)&oARt93f=0{wme+AKqax5qg@G8~Z`|+^)X+dLPpzw~+YUI~$E3jWi+^6n zbubF!Jvu9g=XZ<380CW|+Nenbvl-=!*xA~{^U|aFCrwT1803hc#dbSmEXj6ak!fp;Gdk z>u+V?dh?^FQ0zTo2s8_>__gIA-6@D6Al?E+27(?(UlS&HEL2g3q-N2Ane;F=M=f+b zN~evL>iq@9ghhf)>flC<^7#SDL=U!dH#fsg(vJdiowu*V{!%U}-fldti)3f2$69Lp zl4dNZQqUQ}C|_bB0pzPTu6W5FgLIW<_eiC-v<>4>Hqk--2eg%^B)dQzXBV8qUIJ{({l;PT0o}1^;tpzKcZqfEIkBWhA5m0)z82fU>5l^PuIT!~n{m{jH{Ql)h++#C6DqEq;kEm;_ zK7Ief666LSp&R8I-TR~E-=j<%bTKJe_BwdrV>Z|qeA_?8O$ap)8e724kxo4xHY!A{zj2zpBv`g39;-K0#E zbMkWp$yt{ZX!;jvK}m7jQ7x*gYVA)*D&a^Kgzg>!j_ZpfO`41x7)S{B0pxlnv>s(! zsH8jIf~;LAfi0C$G5h>o@GI;PJsg5N_JQC>l&MY5p|&vmR($ly*)4!rs|YUrh;h91 zX^D)&@<~j7NrCwDgvZIUuQ}e%drV8&#TZTZ`YA-dcELC9u#*E*gM#iTW|=igjELrq zGuyq239A~bk-W@kCL+Zlu;j3b4Hy@EVANr8Sp&VMAcbE(_Q(0o1s}qGsWdcT3AB?0 zyq$o-JlBnUNIk*1_+sddX}c4TP%XB9=(m82x2Kn)msTb2j3E<(3n$KzaQGzxp8=i) zK`GjPwTGx_RfM}xqB#Y* z%;1*ou$>%Ei0LnA56mG5;P}G8fP7-#qqBHL$tL@Y=&Tb0W}LO=noO^^tF`>Je}kX& z1Ch9mrGN!d4vOjtkL<<#L-LGPZZqIL-LZFQEBRQrwzm4$f{wDIvk62H3_^YGPS?I> z-r&>khUB0JF&P`>>foZt*&2Q*jZ~VCb+AR@exZwZc8jh`mn^2~Uor2CQH_(H!uy82 zVU))`C{e%aR_1r@8WE~Ek&Z8n^)P-H{;wFQ3x_h{Z9SM3KZqvS}K69Zh-D=XveAr+d1fSd5qT_SVe&@{De3bz1 zGjH?9^jj^9Kl>uFz%4P0`DCT6yIvQ9_6==jk02y{rwYlpBVx!sbML-J<&*pu0f1zP zoZF)$_%rt&YQK8E8Bmos|4GB05iQwvu=ScFXib|avbj5piSJ!0Pmu}>(}5n8obUaZx8QOS!1U<5zssgCE@kTgyE`lZ zqRs-2HN6Zs*l>fCr1{$@3b+aG*(R%x-Lr~sFE?2QPLpM!m}G)&SR66bLvumt?{A*% zXz#$NJ)Hx~-lU~e+|SYPY*kMMj~~b);Q%D2H(9+%D0adnOVi3DE%RjR3L%{*nMvrM z{oMSY(XDo`WQwPG2>{?{g-_KQ+IH90-Tp>v$!A%YmcYbXw|a#|C)b{TJ)P>Eok)L@ z227O*2#5ca>NlHRa`S%?8O^231>o*9`&$Ji{*T7_-U)Os?#!$xCX>{V`HIgyV$~6?-Q1h@8?|Byy`uELDi)){G|%~)zPM;KNc%Bs8ar!xqw|^d;drX$a$Bo zI_t2S>~%)PMz8Oky66BaxY4HIIM=}LllXLBug~gKqe)?`)pdIlTAUBbMTZaf$+_&; zgLkI=Eg!(Api!j zm@1WynTn6@xTAiG-FZ~letO+zC1?xCn1(4}=z zfQb0yTtB(bm)0E@*h%mEL7LGt9Pl>5P2eOSSKVz+2P~O_S<){fRQD#xA4Eqb$2~!UvHQ_PY_w9w#vvfxtVYPk0*C<)F|8 za=?FKFH z9I20|);Rub9M0Ki-c*e{Ehs5yuMcF8_vN?>zvVgI)Ij1TPGe^bw8N4Ee?ZMhEGZPp z5;!pIsAi6>)2CSY+_WpOILMJ=)Lo9xwSb^WeZI?tVu}}hDfO`zDRdWT{N>)F;k_1W z5|V;PzPXcWYiA`@>w{zcpxHugCQ7oi90W+Lh#NP^^0b+S&HQOWca4k3Qd0x&eFu8{ zkE=qY?=VsB=w<}nGw#_6b?#JP3Ze`NJ}ZG748&Ea=`bJ`y*3mT5%7|VZPXR|h8WVr zpbS~kShQX^2TKTIC0%MU&w0A<@iy)7eW%mxfbBV8b6(>*PlLQ4Ez)1NAaiUm4Zeh!?mfAAe8;|E+fwJ#jxW09r~#hB93H%2J&O_>TP1!9 zSjq1S)d*sv856!4b9)!MY2sHakisuwsKlr0T#cY;N$s`1uuqk8=YrfGKa@M4w|ZLL zW-zj~eft+6&m{y$g>&^f52-0^ML+3iI?hJ(GMsqlv) zeDT7WeIaao)_1wzIG0rBKX*~wYG=Mt-EAP;xy|Wb8C3!@sw5uPMT`!cyxeD=8MgdY z?4>g@pjA4aFA2AVg6`!IS!Q@@<=vqUqm?B=xl;#e=Y_nZvPwS_(#D<sVg2Tj;+qd{F2jl|T0^c`VcYVLQ1~ zT1bQOlfV6jKRNhT>dQpQi6BI>OOo{eevd6fpxT6vv1W%Tj6+KkPL-mzpg2v&9@Omo zvgY%^eD!6hQtOxzU3Qhmhd%#zzOL)LY_y@2B)EU7b5j&L`_($K&yI&Cw5T1Qln8BP z5}!>lQtQ-a$@)MWh&L3>FZ0R&&4mA*dT0*#&$WM{17D#h@)b2I-s+FFL2d{^>Z;l* JB}$gB{uk1to4^17 From 691ac3b7406c3eaa81f7da654b5265a27b13bc0a Mon Sep 17 00:00:00 2001 From: Cameron653 Date: Sun, 8 Apr 2018 01:08:27 -0400 Subject: [PATCH 02/24] Update custom_items.txt --- config/custom_items.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/custom_items.txt b/config/custom_items.txt index 2ed5725ecb..54b20862a4 100644 --- a/config/custom_items.txt +++ b/config/custom_items.txt @@ -705,7 +705,7 @@ item_path: /obj/item/clothing/glasses/sunglasses/fluff/alfonso #{ #ckey: silencedmp5a5 -#character_name: Serdykov Antoz +#character_name: NT-HASD #556 #item_path: /obj/item/device/modkit_conversion/hasd #req_access = 1 #} From e835ce0965d72fd7f4ecbfbe2f9911bcc86fc69b Mon Sep 17 00:00:00 2001 From: Cameron653 Date: Sun, 8 Apr 2018 12:50:54 -0400 Subject: [PATCH 03/24] Update void_vr.dm --- code/modules/clothing/spacesuits/void/void_vr.dm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/code/modules/clothing/spacesuits/void/void_vr.dm b/code/modules/clothing/spacesuits/void/void_vr.dm index c792ffc995..3ca2a10c3d 100644 --- a/code/modules/clothing/spacesuits/void/void_vr.dm +++ b/code/modules/clothing/spacesuits/void/void_vr.dm @@ -378,4 +378,11 @@ icon_override = 'icons/mob/taursuits_vr.dmi' icon_state = "hasd_suit" item_state = "hasd_suit" - pixel_x = -16 \ No newline at end of file + pixel_x = -16 + + mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) + if(..() && if(istype(H) && istype(H.tail_style, /datum/sprite_accessory/tail/taur/lizard/synthlizard)) + return 1 + else + H << "This suit is not designed for you." + return 0 From 7c794107d3f362348779866164053faf811d6272 Mon Sep 17 00:00:00 2001 From: Cameron653 Date: Sun, 8 Apr 2018 12:52:19 -0400 Subject: [PATCH 04/24] Ckey locks it --- code/modules/clothing/spacesuits/void/void_vr.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/spacesuits/void/void_vr.dm b/code/modules/clothing/spacesuits/void/void_vr.dm index 3ca2a10c3d..dd39e2a269 100644 --- a/code/modules/clothing/spacesuits/void/void_vr.dm +++ b/code/modules/clothing/spacesuits/void/void_vr.dm @@ -381,7 +381,7 @@ pixel_x = -16 mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) - if(..() && if(istype(H) && istype(H.tail_style, /datum/sprite_accessory/tail/taur/lizard/synthlizard)) + if(..() && istype(H) && H.ckey == "silencedmp5a5" && istype(H.tail_style, /datum/sprite_accessory/tail/taur/lizard/synthlizard)) return 1 else H << "This suit is not designed for you." From 1b447796de4f2d9c42b3f1027d1874f3f597f6fe Mon Sep 17 00:00:00 2001 From: Cameron653 Date: Sun, 8 Apr 2018 21:05:47 -0400 Subject: [PATCH 05/24] Moves to proper file --- .../clothing/spacesuits/void/void_vr.dm | 18 ----------------- .../vore/fluffstuff/custom_clothes_vr.dm | 20 ++++++++++++++++++- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/code/modules/clothing/spacesuits/void/void_vr.dm b/code/modules/clothing/spacesuits/void/void_vr.dm index dd39e2a269..51f29be19a 100644 --- a/code/modules/clothing/spacesuits/void/void_vr.dm +++ b/code/modules/clothing/spacesuits/void/void_vr.dm @@ -368,21 +368,3 @@ else H << "You need to have a horse, wolf, or naga half to wear this." return 0 - -/obj/item/clothing/suit/space/void/security/hasd - name = "HASD EVA bodyplates" - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) - desc = "A series of armor plates painted black, deployed from a back-mounted module. They fit smoothly over the unit's armor plates and projects a skintight bubble shield over the unit's uncovered parts. Faceplate and coolant unit not included." - species_restricted = null - icon = 'icons/mob/taursuits_vr.dmi' - icon_override = 'icons/mob/taursuits_vr.dmi' - icon_state = "hasd_suit" - item_state = "hasd_suit" - pixel_x = -16 - - mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) - if(..() && istype(H) && H.ckey == "silencedmp5a5" && istype(H.tail_style, /datum/sprite_accessory/tail/taur/lizard/synthlizard)) - return 1 - else - H << "This suit is not designed for you." - return 0 diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 18e683759e..c903dec636 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -1778,4 +1778,22 @@ Departamental Swimsuits, for general use H << "...The faceplate is clearly not made for your anatomy, thus, does not fit." return 0 else - return 1 \ No newline at end of file + return 1 + +/obj/item/clothing/suit/space/void/security/hasd + name = "HASD EVA bodyplates" + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) + desc = "A series of armor plates painted black, deployed from a back-mounted module. They fit smoothly over the unit's armor plates and projects a skintight bubble shield over the unit's uncovered parts. Faceplate and coolant unit not included." + species_restricted = null + icon = 'icons/mob/taursuits_vr.dmi' + icon_override = 'icons/mob/taursuits_vr.dmi' + icon_state = "hasd_suit" + item_state = "hasd_suit" + pixel_x = -16 + + mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) + if(..() && istype(H) && H.ckey == "silencedmp5a5" && istype(H.tail_style, /datum/sprite_accessory/tail/taur/lizard/synthlizard)) + return 1 + else + H << "This suit is not designed for you." + return 0 From 6b535efd2746367a77e5e5db50a63614d48ff641 Mon Sep 17 00:00:00 2001 From: Verkister Date: Tue, 10 Apr 2018 10:00:35 +0300 Subject: [PATCH 06/24] Adds some new gurglemodes and other tweaks -Adds numbing item friendly gurglemode. -Adds item friendly strip digestion. (still soggy though) -Adds strip absorption. (absorb naked victim, leave their stuff in gut) -Makes absorption mute the drained absorbee's hunger noises if enabled. -Makes draining and absorption speeds scale with gurgledamage settings. -Also makes them affect borg charges. -Disables item friendly gurgles completely ruining IDs, the likely most important item the prey wants spared when suggesting the mode. (still messy though) -Makes borg sleeperbelly sounds use the new pref-respecting noise system. -Adds a finisher gurgle and ding sound to finished self-clean cycle. --- code/__defines/belly_modes_vr.dm | 5 +- .../silicon/robot/dogborg/dog_sleeper_vr.dm | 35 +++++---- code/modules/vore/eating/belly_obj_vr.dm | 4 +- code/modules/vore/eating/bellymodes_vr.dm | 73 ++++++++++++------- code/modules/vore/eating/contaminate_vr.dm | 4 +- code/modules/vore/eating/vorepanel_vr.dm | 2 + 6 files changed, 80 insertions(+), 43 deletions(-) diff --git a/code/__defines/belly_modes_vr.dm b/code/__defines/belly_modes_vr.dm index aa0d9d616d..eb9efae474 100644 --- a/code/__defines/belly_modes_vr.dm +++ b/code/__defines/belly_modes_vr.dm @@ -2,10 +2,13 @@ #define DM_HOLD "Hold" #define DM_DIGEST "Digest" #define DM_ITEMWEAK "Digest (Item Friendly)" -#define DM_STRIPDIGEST "Strip Digest (Items Only)" #define DM_DIGEST_NUMB "Digest (Numbing)" +#define DM_ITEMWEAK_NUMB "Digest (Numbing, Item Friendly)" +#define DM_STRIPDIGEST "Strip Digest (Items Only)" +#define DM_STRIP_ITEMWEAK "Strip Digest (Items Friendly)" #define DM_HEAL "Heal" #define DM_ABSORB "Absorb" +#define DM_ABSORB_STRIP "Absorb Naked" #define DM_TRANSFORM_HAIR_AND_EYES "Transform (Hair and eyes)" #define DM_TRANSFORM_MALE "Transform (Male)" #define DM_TRANSFORM_FEMALE "Transform (Female)" diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm index ba50b3e0ec..745886dec2 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm @@ -22,6 +22,7 @@ var/synced = FALSE var/startdrain = 500 var/max_item_count = 1 + var/gulpsound = 'sound/vore/gulp.ogg' /obj/item/device/dogborg/sleeper/New() ..() @@ -55,7 +56,7 @@ if(do_after(user, 30, target) && length(contents) < max_item_count) target.forceMove(src) user.visible_message("[hound.name]'s internal analyzer groans lightly as [target.name] slips inside.", "Your internal analyzer groans lightly as [target] slips inside.") - playsound(hound, 'sound/vore/gulp.ogg', 30, 1) + playsound(hound, gulpsound, vol = 60, vary = 1, falloff = 0.1, preference = /datum/client_preference/eating_noises) if(istype(target,/obj/item)) var/obj/item/tech_item = target for(var/T in tech_item.origin_tech) @@ -79,7 +80,7 @@ trashman.reset_view(src) processing_objects |= src user.visible_message("[hound.name]'s internal analyzer groans lightly as [trashman] slips inside.", "Your internal analyzer groans lightly as [trashman] slips inside.") - playsound(hound, 'sound/vore/gulp.ogg', 80, 1) + playsound(hound, gulpsound, vol = 100, vary = 1, falloff = 0.1, preference = /datum/client_preference/eating_noises) update_patient() if(UI_open == TRUE) sleeperUI(usr) @@ -96,7 +97,7 @@ if(do_after(user, 30, target) && length(contents) < max_item_count) target.forceMove(src) user.visible_message("[hound.name]'s garbage processor groans lightly as [target.name] slips inside.", "Your garbage compactor groans lightly as [target] slips inside.") - playsound(hound, 'sound/vore/gulp.ogg', 30, 1) + playsound(hound, gulpsound, vol = 60, vary = 1, falloff = 0.1, preference = /datum/client_preference/eating_noises) update_patient() if(UI_open == TRUE) sleeperUI(usr) @@ -109,7 +110,7 @@ trashmouse.forceMove(src) trashmouse.reset_view(src) user.visible_message("[hound.name]'s garbage processor groans lightly as [trashmouse] slips inside.", "Your garbage compactor groans lightly as [trashmouse] slips inside.") - playsound(hound, 'sound/vore/gulp.ogg', 30, 1) + playsound(hound, gulpsound, vol = 60, vary = 1, falloff = 0.1, preference = /datum/client_preference/eating_noises) update_patient() if(UI_open == TRUE) sleeperUI(usr) @@ -129,7 +130,7 @@ trashman.reset_view(src) processing_objects |= src user.visible_message("[hound.name]'s garbage processor groans lightly as [trashman] slips inside.", "Your garbage compactor groans lightly as [trashman] slips inside.") - playsound(hound, 'sound/vore/gulp.ogg', 80, 1) + playsound(hound, gulpsound, vol = 100, vary = 1, falloff = 0.1, preference = /datum/client_preference/eating_noises) update_patient() if(UI_open == TRUE) sleeperUI(usr) @@ -157,7 +158,7 @@ processing_objects |= src user.visible_message("[hound.name]'s medical pod lights up as [H.name] slips inside into their [src.name].", "Your medical pod lights up as [H] slips into your [src]. Life support functions engaged.") message_admins("[key_name(hound)] has eaten [key_name(patient)] as a dogborg. ([hound ? "JMP" : "null"])") - playsound(hound, 'sound/vore/gulp.ogg', 80, 1) + playsound(hound, gulpsound, vol = 100, vary = 1, falloff = 0.1, preference = /datum/client_preference/eating_noises) if(UI_open == TRUE) sleeperUI(usr) @@ -462,9 +463,22 @@ //Belly is entirely empty if(!length(contents)) + var/finisher = pick( + 'sound/vore/death1.ogg', + 'sound/vore/death2.ogg', + 'sound/vore/death3.ogg', + 'sound/vore/death4.ogg', + 'sound/vore/death5.ogg', + 'sound/vore/death6.ogg', + 'sound/vore/death7.ogg', + 'sound/vore/death8.ogg', + 'sound/vore/death9.ogg', + 'sound/vore/death10.ogg') + playsound(hound, finisher, vol = 100, vary = 1, falloff = 0.1, ignore_walls = TRUE, preference = /datum/client_preference/digestion_noises) to_chat(hound, "Your [src.name] is now clean. Ending self-cleaning cycle.") cleaning = 0 update_patient() + playsound(hound, 'sound/machines/ding.ogg', 50, 1) return if(prob(20)) @@ -481,10 +495,7 @@ 'sound/vore/digest10.ogg', 'sound/vore/digest11.ogg', 'sound/vore/digest12.ogg') - for(var/mob/outhearer in range(1,hound)) - outhearer << sound(churnsound) - for(var/mob/inhearer in contents) - inhearer << sound(churnsound) + playsound(hound, churnsound, vol = 100, vary = 1, falloff = 0.1, ignore_walls = TRUE, preference = /datum/client_preference/digestion_noises) //If the timing is right, and there are items to be touched if(air_master.current_cycle%3==1 && length(touchable_items)) @@ -523,9 +534,7 @@ 'sound/vore/death8.ogg', 'sound/vore/death9.ogg', 'sound/vore/death10.ogg') - for(var/mob/hearer in range(1,src.hound)) - hearer << deathsound - T << deathsound + playsound(hound, deathsound, vol = 100, vary = 1, falloff = 0.1, ignore_walls = TRUE, preference = /datum/client_preference/digestion_noises) if(is_vore_predator(T)) for(var/belly in T.vore_organs) var/obj/belly/B = belly diff --git a/code/modules/vore/eating/belly_obj_vr.dm b/code/modules/vore/eating/belly_obj_vr.dm index 8affcb171d..8cd895e159 100644 --- a/code/modules/vore/eating/belly_obj_vr.dm +++ b/code/modules/vore/eating/belly_obj_vr.dm @@ -34,7 +34,7 @@ var/release_sound = TRUE // Boolean for now, maybe replace with something else later //I don't think we've ever altered these lists. making them static until someone actually overrides them somewhere. - var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_STRIPDIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_DIGEST_NUMB) // Possible digest modes + var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_DIGEST_NUMB,DM_ITEMWEAK_NUMB,DM_STRIPDIGEST,DM_STRIP_ITEMWEAK,DM_HEAL,DM_ABSORB,DM_ABSORB_STRIP,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL) // Possible digest modes var/tmp/static/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG) var/tmp/static/list/slots = list(slot_back,slot_handcuffed,slot_l_store,slot_r_store,slot_wear_mask,slot_l_hand,slot_r_hand,slot_wear_id,slot_glasses,slot_gloves,slot_head,slot_shoes,slot_belt,slot_wear_suit,slot_w_uniform,slot_s_store,slot_l_ear,slot_r_ear) @@ -383,6 +383,8 @@ M.absorbed = 1 to_chat(M,"[owner]'s [lowertext(name)] absorbs your body, making you part of them.") to_chat(owner,"Your [lowertext(name)] absorbs [M]'s body, making them part of you.") + if(M.noisy) //Mute drained absorbee hunger if enabled. + M.noisy = FALSE if(ishuman(M) && ishuman(owner)) var/mob/living/carbon/human/Prey = M diff --git a/code/modules/vore/eating/bellymodes_vr.dm b/code/modules/vore/eating/bellymodes_vr.dm index 564531ef5b..a0d1263449 100644 --- a/code/modules/vore/eating/bellymodes_vr.dm +++ b/code/modules/vore/eating/bellymodes_vr.dm @@ -20,7 +20,7 @@ var/list/EL = emote_lists[digest_mode] if(LAZYLEN(EL)) for(var/mob/living/M in contents) - if(M.digestable || !(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK)) // don't give digesty messages to indigestible people + if(M.digestable || !(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB)) // don't give digesty messages to indigestible people to_chat(M,"[pick(EL)]") /////////////////////////// Exit Early //////////////////////////// @@ -38,7 +38,7 @@ return SSBELLIES_PROCESSED //Pretty boring, huh //////////////////////////// DM_DIGEST //////////////////////////// - else if(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK) + else if(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB) if(prob(50)) //Was SO OFTEN. AAAA. play_sound = pick(digestion_sounds) @@ -71,7 +71,7 @@ owner.update_icons() continue - if(digest_mode == DM_DIGEST_NUMB && ishuman(M)) + if(digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK_NUMB && ishuman(M)) var/mob/living/carbon/human/H = M if(H.bloodstr.get_reagent_amount("numbenzyme") < 5) H.bloodstr.add_reagent("numbenzyme",10) @@ -94,7 +94,26 @@ //Contaminate or gurgle items var/obj/item/T = pick(touchable_items) if(istype(T)) - if(digest_mode == DM_ITEMWEAK) + if(digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB) + if(istype(T,/obj/item/weapon/reagent_containers/food) || istype(T,/obj/item/weapon/holder) || istype(T,/obj/item/organ)) + digest_item(T) + else + T.gurgle_contaminate(contents, owner) + items_preserved |= T + else + digest_item(T) + owner.updateVRPanel() + +//////////////////////////// DM_STRIPDIGEST //////////////////////////// + else if(digest_mode == DM_STRIPDIGEST || digest_mode == DM_STRIP_ITEMWEAK) // Only gurgle the gear off your prey. + + if(prob(50)) + play_sound = pick(digestion_sounds) + + // Handle loose items first. + var/obj/item/T = pick(touchable_items) + if(istype(T)) + if(digest_mode == DM_STRIP_ITEMWEAK) if(istype(T,/obj/item/weapon/reagent_containers/food) || istype(T,/obj/item/weapon/holder) || istype(T,/obj/item/organ)) digest_item(T) else @@ -103,19 +122,6 @@ else digest_item(T) - owner.updateVRPanel() - -//////////////////////////// DM_STRIPDIGEST //////////////////////////// - else if(digest_mode == DM_STRIPDIGEST) // Only gurgle the gear off your prey. - - if(prob(50)) - play_sound = pick(digestion_sounds) - - // Handle loose items first. - var/obj/item/T = pick(touchable_items) - if(istype(T)) - digest_item(T) - for(var/mob/living/carbon/human/M in contents) if (M.absorbed) continue @@ -123,14 +129,20 @@ var/obj/item/thingy = M.get_equipped_item(slot = slot) if(thingy) M.unEquip(thingy,force = TRUE) - digest_item(thingy) + if(digest_mode == DM_STRIP_ITEMWEAK) + if(istype(thingy,/obj/item/weapon/reagent_containers/food) || istype(thingy,/obj/item/weapon/holder) || istype(thingy,/obj/item/organ)) + digest_item(thingy) + else + thingy.gurgle_contaminate(contents, owner) + items_preserved |= thingy + else + digest_item(T) break M.updateVRPanel() - owner.updateVRPanel() //////////////////////////// DM_ABSORB //////////////////////////// - else if(digest_mode == DM_ABSORB) + else if(digest_mode == DM_ABSORB || digest_mode == DM_ABSORB_STRIP) for (var/mob/living/M in contents) @@ -141,10 +153,17 @@ continue if(M.nutrition >= 100) //Drain them until there's no nutrients left. Slowly "absorb" them. - var/oldnutrition = (M.nutrition * 0.05) - M.nutrition = (M.nutrition * 0.95) - owner.nutrition += oldnutrition + M.nutrition -= digest_brute+digest_burn + owner.nutrition += digest_brute+digest_burn + if(isrobot(owner)) + var/mob/living/silicon/robot/R = owner + R.cell.charge += 10*(digest_brute+digest_burn) else if(M.nutrition < 100) //When they're finally drained. + if(digest_mode == DM_ABSORB_STRIP) + for(var/slot in slots) + var/obj/item/thingy = M.get_equipped_item(slot = slot) + if(thingy) + M.unEquip(thingy,force = TRUE) absorb_living(M) //////////////////////////// DM_UNABSORB //////////////////////////// @@ -166,9 +185,11 @@ play_sound = pick(digestion_sounds) if(M.nutrition >= 100) //Drain them until there's no nutrients left. - var/oldnutrition = (M.nutrition * 0.05) - M.nutrition = (M.nutrition * 0.95) - owner.nutrition += oldnutrition + M.nutrition -= digest_brute+digest_burn + owner.nutrition += digest_brute+digest_burn + if(isrobot(owner)) + var/mob/living/silicon/robot/R = owner + R.cell.charge += 10*(digest_brute+digest_burn) //////////////////////////// DM_SHRINK //////////////////////////// else if(digest_mode == DM_SHRINK) diff --git a/code/modules/vore/eating/contaminate_vr.dm b/code/modules/vore/eating/contaminate_vr.dm index bf51ca9d59..5754846352 100644 --- a/code/modules/vore/eating/contaminate_vr.dm +++ b/code/modules/vore/eating/contaminate_vr.dm @@ -93,9 +93,9 @@ var/image/gurgled_overlay = image('icons/effects/sludgeoverlay_vr.dmi') ////////////// // Special handling of gurgle_contaminate ////////////// -/obj/item/weapon/card/id/gurgle_contaminate(var/atom/movable/item_storage = null) +/*/obj/item/weapon/card/id/gurgle_contaminate(var/atom/movable/item_storage = null) digest_act(item_storage) //Digesting these anyway - return TRUE + return TRUE*/ /obj/item/weapon/reagent_containers/food/gurgle_contaminate(var/atom/movable/item_storage = null) digest_act(item_storage) diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index d3f37842bf..ba2f43b1d4 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -118,6 +118,8 @@ spanstyle = "color:green;" if(DM_ABSORB) spanstyle = "color:purple;" + if(DM_ABSORB_STRIP) + spanstyle = "color:purple;" if(DM_DRAIN) spanstyle = "color:purple;" if(DM_SHRINK) From ee0224d79472c11ce09c9b28ac3320c8b2faad6d Mon Sep 17 00:00:00 2001 From: Verkister Date: Tue, 10 Apr 2018 23:03:18 +0300 Subject: [PATCH 07/24] Removes some changes, clarifies ID description --- code/__defines/belly_modes_vr.dm | 5 +- code/modules/vore/eating/belly_obj_vr.dm | 2 +- code/modules/vore/eating/bellymodes_vr.dm | 55 +++++++--------------- code/modules/vore/eating/contaminate_vr.dm | 4 +- code/modules/vore/eating/digest_act_vr.dm | 4 +- code/modules/vore/eating/vorepanel_vr.dm | 2 - 6 files changed, 23 insertions(+), 49 deletions(-) diff --git a/code/__defines/belly_modes_vr.dm b/code/__defines/belly_modes_vr.dm index eb9efae474..aa0d9d616d 100644 --- a/code/__defines/belly_modes_vr.dm +++ b/code/__defines/belly_modes_vr.dm @@ -2,13 +2,10 @@ #define DM_HOLD "Hold" #define DM_DIGEST "Digest" #define DM_ITEMWEAK "Digest (Item Friendly)" -#define DM_DIGEST_NUMB "Digest (Numbing)" -#define DM_ITEMWEAK_NUMB "Digest (Numbing, Item Friendly)" #define DM_STRIPDIGEST "Strip Digest (Items Only)" -#define DM_STRIP_ITEMWEAK "Strip Digest (Items Friendly)" +#define DM_DIGEST_NUMB "Digest (Numbing)" #define DM_HEAL "Heal" #define DM_ABSORB "Absorb" -#define DM_ABSORB_STRIP "Absorb Naked" #define DM_TRANSFORM_HAIR_AND_EYES "Transform (Hair and eyes)" #define DM_TRANSFORM_MALE "Transform (Male)" #define DM_TRANSFORM_FEMALE "Transform (Female)" diff --git a/code/modules/vore/eating/belly_obj_vr.dm b/code/modules/vore/eating/belly_obj_vr.dm index 8cd895e159..ce81063acf 100644 --- a/code/modules/vore/eating/belly_obj_vr.dm +++ b/code/modules/vore/eating/belly_obj_vr.dm @@ -34,7 +34,7 @@ var/release_sound = TRUE // Boolean for now, maybe replace with something else later //I don't think we've ever altered these lists. making them static until someone actually overrides them somewhere. - var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_DIGEST_NUMB,DM_ITEMWEAK_NUMB,DM_STRIPDIGEST,DM_STRIP_ITEMWEAK,DM_HEAL,DM_ABSORB,DM_ABSORB_STRIP,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL) // Possible digest modes + var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_STRIPDIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_DIGEST_NUMB) // Possible digest modes var/tmp/static/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG) var/tmp/static/list/slots = list(slot_back,slot_handcuffed,slot_l_store,slot_r_store,slot_wear_mask,slot_l_hand,slot_r_hand,slot_wear_id,slot_glasses,slot_gloves,slot_head,slot_shoes,slot_belt,slot_wear_suit,slot_w_uniform,slot_s_store,slot_l_ear,slot_r_ear) diff --git a/code/modules/vore/eating/bellymodes_vr.dm b/code/modules/vore/eating/bellymodes_vr.dm index a0d1263449..564531ef5b 100644 --- a/code/modules/vore/eating/bellymodes_vr.dm +++ b/code/modules/vore/eating/bellymodes_vr.dm @@ -20,7 +20,7 @@ var/list/EL = emote_lists[digest_mode] if(LAZYLEN(EL)) for(var/mob/living/M in contents) - if(M.digestable || !(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB)) // don't give digesty messages to indigestible people + if(M.digestable || !(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK)) // don't give digesty messages to indigestible people to_chat(M,"[pick(EL)]") /////////////////////////// Exit Early //////////////////////////// @@ -38,7 +38,7 @@ return SSBELLIES_PROCESSED //Pretty boring, huh //////////////////////////// DM_DIGEST //////////////////////////// - else if(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB) + else if(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK) if(prob(50)) //Was SO OFTEN. AAAA. play_sound = pick(digestion_sounds) @@ -71,7 +71,7 @@ owner.update_icons() continue - if(digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK_NUMB && ishuman(M)) + if(digest_mode == DM_DIGEST_NUMB && ishuman(M)) var/mob/living/carbon/human/H = M if(H.bloodstr.get_reagent_amount("numbenzyme") < 5) H.bloodstr.add_reagent("numbenzyme",10) @@ -94,7 +94,7 @@ //Contaminate or gurgle items var/obj/item/T = pick(touchable_items) if(istype(T)) - if(digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB) + if(digest_mode == DM_ITEMWEAK) if(istype(T,/obj/item/weapon/reagent_containers/food) || istype(T,/obj/item/weapon/holder) || istype(T,/obj/item/organ)) digest_item(T) else @@ -102,10 +102,11 @@ items_preserved |= T else digest_item(T) - owner.updateVRPanel() + + owner.updateVRPanel() //////////////////////////// DM_STRIPDIGEST //////////////////////////// - else if(digest_mode == DM_STRIPDIGEST || digest_mode == DM_STRIP_ITEMWEAK) // Only gurgle the gear off your prey. + else if(digest_mode == DM_STRIPDIGEST) // Only gurgle the gear off your prey. if(prob(50)) play_sound = pick(digestion_sounds) @@ -113,14 +114,7 @@ // Handle loose items first. var/obj/item/T = pick(touchable_items) if(istype(T)) - if(digest_mode == DM_STRIP_ITEMWEAK) - if(istype(T,/obj/item/weapon/reagent_containers/food) || istype(T,/obj/item/weapon/holder) || istype(T,/obj/item/organ)) - digest_item(T) - else - T.gurgle_contaminate(contents, owner) - items_preserved |= T - else - digest_item(T) + digest_item(T) for(var/mob/living/carbon/human/M in contents) if (M.absorbed) @@ -129,20 +123,14 @@ var/obj/item/thingy = M.get_equipped_item(slot = slot) if(thingy) M.unEquip(thingy,force = TRUE) - if(digest_mode == DM_STRIP_ITEMWEAK) - if(istype(thingy,/obj/item/weapon/reagent_containers/food) || istype(thingy,/obj/item/weapon/holder) || istype(thingy,/obj/item/organ)) - digest_item(thingy) - else - thingy.gurgle_contaminate(contents, owner) - items_preserved |= thingy - else - digest_item(T) + digest_item(thingy) break M.updateVRPanel() + owner.updateVRPanel() //////////////////////////// DM_ABSORB //////////////////////////// - else if(digest_mode == DM_ABSORB || digest_mode == DM_ABSORB_STRIP) + else if(digest_mode == DM_ABSORB) for (var/mob/living/M in contents) @@ -153,17 +141,10 @@ continue if(M.nutrition >= 100) //Drain them until there's no nutrients left. Slowly "absorb" them. - M.nutrition -= digest_brute+digest_burn - owner.nutrition += digest_brute+digest_burn - if(isrobot(owner)) - var/mob/living/silicon/robot/R = owner - R.cell.charge += 10*(digest_brute+digest_burn) + var/oldnutrition = (M.nutrition * 0.05) + M.nutrition = (M.nutrition * 0.95) + owner.nutrition += oldnutrition else if(M.nutrition < 100) //When they're finally drained. - if(digest_mode == DM_ABSORB_STRIP) - for(var/slot in slots) - var/obj/item/thingy = M.get_equipped_item(slot = slot) - if(thingy) - M.unEquip(thingy,force = TRUE) absorb_living(M) //////////////////////////// DM_UNABSORB //////////////////////////// @@ -185,11 +166,9 @@ play_sound = pick(digestion_sounds) if(M.nutrition >= 100) //Drain them until there's no nutrients left. - M.nutrition -= digest_brute+digest_burn - owner.nutrition += digest_brute+digest_burn - if(isrobot(owner)) - var/mob/living/silicon/robot/R = owner - R.cell.charge += 10*(digest_brute+digest_burn) + var/oldnutrition = (M.nutrition * 0.05) + M.nutrition = (M.nutrition * 0.95) + owner.nutrition += oldnutrition //////////////////////////// DM_SHRINK //////////////////////////// else if(digest_mode == DM_SHRINK) diff --git a/code/modules/vore/eating/contaminate_vr.dm b/code/modules/vore/eating/contaminate_vr.dm index 5754846352..bf51ca9d59 100644 --- a/code/modules/vore/eating/contaminate_vr.dm +++ b/code/modules/vore/eating/contaminate_vr.dm @@ -93,9 +93,9 @@ var/image/gurgled_overlay = image('icons/effects/sludgeoverlay_vr.dmi') ////////////// // Special handling of gurgle_contaminate ////////////// -/*/obj/item/weapon/card/id/gurgle_contaminate(var/atom/movable/item_storage = null) +/obj/item/weapon/card/id/gurgle_contaminate(var/atom/movable/item_storage = null) digest_act(item_storage) //Digesting these anyway - return TRUE*/ + return TRUE /obj/item/weapon/reagent_containers/food/gurgle_contaminate(var/atom/movable/item_storage = null) digest_act(item_storage) diff --git a/code/modules/vore/eating/digest_act_vr.dm b/code/modules/vore/eating/digest_act_vr.dm index 78512bf09c..bbaa5fab33 100644 --- a/code/modules/vore/eating/digest_act_vr.dm +++ b/code/modules/vore/eating/digest_act_vr.dm @@ -49,7 +49,7 @@ . = ..() /obj/item/weapon/card/id/digest_act(var/atom/movable/item_storage = null) - desc = "A partially digested card that has seen better days. Much of it's data has been destroyed." + desc = "A partially digested card that has seen better days. Much of it's data has been destroyed, but the card itself is still completely salvageable. Please recycle it at crew resources office." icon = 'icons/obj/card_vr.dmi' icon_state = "digested" access = list() // No access @@ -82,7 +82,7 @@ /obj/item/weapon/storage/digest_act(var/atom/movable/item_storage = null) for(var/obj/item/I in contents) I.screen_loc = null - + . = ..() ///////////// diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index ba2f43b1d4..d3f37842bf 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -118,8 +118,6 @@ spanstyle = "color:green;" if(DM_ABSORB) spanstyle = "color:purple;" - if(DM_ABSORB_STRIP) - spanstyle = "color:purple;" if(DM_DRAIN) spanstyle = "color:purple;" if(DM_SHRINK) From d8efac9cb09af84e88e0f9c6b35b5d462a4cb4c9 Mon Sep 17 00:00:00 2001 From: Verkister Date: Wed, 11 Apr 2018 01:23:44 +0300 Subject: [PATCH 08/24] dunno --- code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm index 745886dec2..c18041e1a6 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm @@ -478,7 +478,7 @@ to_chat(hound, "Your [src.name] is now clean. Ending self-cleaning cycle.") cleaning = 0 update_patient() - playsound(hound, 'sound/machines/ding.ogg', 50, 1) + playsound(hound, 'sound/machines/ding.ogg', vol = 100, vary = 1, falloff = 0.1, ignore_walls = TRUE, preference = /datum/client_preference/digestion_noises) return if(prob(20)) From 58251baa3acfc79010861b4930d5aa4452a6a50e Mon Sep 17 00:00:00 2001 From: KasparoVy Date: Wed, 21 Mar 2018 23:50:29 -0400 Subject: [PATCH 09/24] Fix Teshari Tail-hair Rendering Add the '_s' suffix to the icon state in the tail hair stage of tail icon generation. This fixes an issue where Teshari tail hair wasn't rendering. Also amends the colouration (was necessary for this to work for us) since VOREStation uses multiplicative blending --- code/modules/mob/living/carbon/human/update_icons.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 0db94400c5..6bd53b7324 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -871,8 +871,8 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon() // The following will not work with animated tails. var/use_species_tail = species.get_tail_hair(src) if(use_species_tail) - var/icon/hair_icon = icon('icons/effects/species.dmi', "[species.get_tail(src)]_[use_species_tail]") - hair_icon.Blend(rgb(r_hair, g_hair, b_hair), ICON_ADD) + var/icon/hair_icon = icon('icons/effects/species.dmi', "[species.get_tail(src)]_[use_species_tail]_s") //VOREStation edit -- Suffix icon state string with '_s' to compensate for diff in .dmi b/w us & Polaris. + hair_icon.Blend(rgb(r_hair, g_hair, b_hair), species.color_mult ? ICON_MULTIPLY : ICON_ADD) //VOREStation edit -- Check for species color_mult tail_icon.Blend(hair_icon, ICON_OVERLAY) tail_icon_cache[icon_key] = tail_icon From c118bb438f93c5b5e89b3c460c7a1e20a81eb76d Mon Sep 17 00:00:00 2001 From: Wickedtemp Date: Tue, 10 Apr 2018 21:35:30 -0500 Subject: [PATCH 10/24] Updates Tempest's Fluff Items To Match Name Tempest's fluff items no longer spawn with hir due to a slight name change, this fixes that, unless I'm supposed to change anything else. I hope I don't. --- config/custom_items.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/config/custom_items.txt b/config/custom_items.txt index 18c0685224..636d5dea08 100644 --- a/config/custom_items.txt +++ b/config/custom_items.txt @@ -879,25 +879,25 @@ item_path: /obj/item/clothing/head/welding/fluff/vinjj { ckey: wickedtemp -character_name: Chakat Tempest +character_name: Chakat Tempest Venesare item_path: /obj/item/clothing/glasses/omnihud/med/fluff/wickedtemphud } { ckey: wickedtemp -character_name: Chakat Tempest +character_name: Chakat Tempest Venesare item_path: /obj/item/weapon/reagent_containers/hypospray/vial/tempest } { ckey: wickedtemp -character_name: Chakat Tempest +character_name: Chakat Tempest Venesare item_path: /obj/item/weapon/storage/backpack/saddlebag/tempest } { ckey: wickedtemp -character_name: Chakat Tempest +character_name: Chakat Tempest Venesare item_path: /obj/item/weapon/implanter/reagent_generator/tempest } From 4d40702f3e3f64cf5d454963d17ff2e5053d2aae Mon Sep 17 00:00:00 2001 From: Verkister Date: Wed, 11 Apr 2018 09:08:39 +0300 Subject: [PATCH 11/24] Nerfs apex metabolism Now it's like more consistent with the steps between other modes. --- .../living/carbon/human/species/station/traits_vr/neutral.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm index e5287dc96b..adb2338aa1 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm @@ -16,7 +16,7 @@ name = "Apex Metabolism" desc = "Finally a proper excuse for your predatory actions. Also makes you process reagents faster but that's totally irrelevant. May cause excessive immersions with large/taur characters. Not recommended for efficient law-abiding workers or eco-aware NIF users." cost = 0 - var_changes = list("metabolic_rate" = 2, "hunger_factor" = 0.5, "metabolism" = 0.010) //Big boy level + var_changes = list("metabolic_rate" = 1.5, "hunger_factor" = 0.3, "metabolism" = 0.0075) excludes = list(/datum/trait/metabolism_up, /datum/trait/metabolism_down) /datum/trait/cold_discomfort From 08f840991d8258e2aaf464b643ab88a79f5fd32d Mon Sep 17 00:00:00 2001 From: Verkister Date: Wed, 11 Apr 2018 14:08:40 +0300 Subject: [PATCH 12/24] Fixes teal carpets. Unnecessary and unmarked vorestation edit. Our carpet_vr.dmi was exactly the same as polaris, but without the teal carpets, surprise! Fixes #3381 --- code/game/turfs/flooring/flooring.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/turfs/flooring/flooring.dm b/code/game/turfs/flooring/flooring.dm index ffa396e811..549265e954 100644 --- a/code/game/turfs/flooring/flooring.dm +++ b/code/game/turfs/flooring/flooring.dm @@ -103,7 +103,7 @@ var/list/flooring_types /decl/flooring/carpet name = "carpet" desc = "Imported and comfy." - icon = 'icons/turf/flooring/carpet_vr.dmi' + icon = 'icons/turf/flooring/carpet.dmi' icon_base = "carpet" build_type = /obj/item/stack/tile/carpet damage_temperature = T0C+200 @@ -337,4 +337,4 @@ var/list/flooring_types build_type = null has_damage_range = 6 flags = TURF_ACID_IMMUNE | TURF_CAN_BREAK - can_paint = null \ No newline at end of file + can_paint = null From 9f21628619f87f85e176e62fd9b89eee4acaa61a Mon Sep 17 00:00:00 2001 From: Verkister Date: Wed, 11 Apr 2018 17:14:21 +0300 Subject: [PATCH 13/24] Adds deer taur. -Adds dual color deer taur. -Sort of fits the lizardtaur saddlebag gear as well so I lazily made it accept the deer too for now. --- .../items/weapons/storage/backpack_vr.dm | 2 +- .../vore/appearance/sprite_accessories_vr.dm | 20 ++++++++++++++++++ icons/mob/vore/taurs_vr.dmi | Bin 68299 -> 71844 bytes 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/storage/backpack_vr.dm b/code/game/objects/items/weapons/storage/backpack_vr.dm index 9615cc8183..2abca93e3a 100644 --- a/code/game/objects/items/weapons/storage/backpack_vr.dm +++ b/code/game/objects/items/weapons/storage/backpack_vr.dm @@ -80,7 +80,7 @@ else slowdown = initial(slowdown) return 1 - if(istype(H) && istype(TT, /datum/sprite_accessory/tail/taur/drake)) + if(istype(H) && istype(TT, /datum/sprite_accessory/tail/taur/drake) || istype(TT, /datum/sprite_accessory/tail/taur/deer)) item_state = "[icon_base]_Drake" if(H.size_multiplier >= RESIZE_BIG) //Are they a macro? slowdown = 0 diff --git a/code/modules/vore/appearance/sprite_accessories_vr.dm b/code/modules/vore/appearance/sprite_accessories_vr.dm index 1c8b9c8f12..8e067a46e8 100644 --- a/code/modules/vore/appearance/sprite_accessories_vr.dm +++ b/code/modules/vore/appearance/sprite_accessories_vr.dm @@ -1235,6 +1235,26 @@ msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!" msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!" +/datum/sprite_accessory/tail/taur/deer + name = "Deer dual-color (Taur)" + icon_state = "deer_s" + extra_overlay = "deer_markings" + + msg_owner_disarm_run = "You quickly push %prey to the ground with your hoof!" + msg_prey_disarm_run = "%owner pushes you down to the ground with their hoof!" + + msg_owner_disarm_walk = "You firmly push your hoof down on %prey, painfully but harmlessly pinning them to the ground!" + msg_prey_disarm_walk = "%owner firmly pushes their hoof down on you, quite painfully but harmlessly pinning you to the ground!" + + msg_owner_harm_walk = "You methodically place your hoof down upon %prey's body, slowly applying pressure, crushing them against the floor below!" + msg_prey_harm_walk = "%owner methodically places their hoof upon your body, slowly applying pressure, crushing you against the floor below!" + + msg_owner_grab_success = "You pin %prey to the ground before scooping them up with your hooves!" + msg_prey_grab_success = "%owner pins you to the ground before scooping you up with their hooves!" + + msg_owner_grab_fail = "You step down onto %prey, squishing them and forcing them down to the ground!" + msg_prey_grab_fail = "%owner steps down and squishes you with their hoof, forcing you down to the ground!" + /datum/sprite_accessory/tail/taur/lizard name = "Lizard (Taur)" icon_state = "lizard_s" diff --git a/icons/mob/vore/taurs_vr.dmi b/icons/mob/vore/taurs_vr.dmi index cfc01a696263927c4aebbc2a706e9564176c1329..73944237906af8cc374df8ddba70baf46bbaee91 100644 GIT binary patch literal 71844 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 aWc^qD0o@vo9jOHVIetu2`Hhm<&Hn=f&&pi@ literal 68299 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 From fd8ccbedd95fa3478da7ad9b9e2e91a7cf7ab624 Mon Sep 17 00:00:00 2001 From: Verkister Date: Wed, 11 Apr 2018 17:25:51 +0300 Subject: [PATCH 14/24] Update flooring_premade.dm --- code/game/turfs/flooring/flooring_premade.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/turfs/flooring/flooring_premade.dm b/code/game/turfs/flooring/flooring_premade.dm index 73c4053bfa..d80e5f249e 100644 --- a/code/game/turfs/flooring/flooring_premade.dm +++ b/code/game/turfs/flooring/flooring_premade.dm @@ -1,6 +1,6 @@ /turf/simulated/floor/carpet name = "carpet" - icon = 'icons/turf/flooring/carpet_vr.dmi' + icon = 'icons/turf/flooring/carpet.dmi' icon_state = "carpet" initial_flooring = /decl/flooring/carpet @@ -431,4 +431,4 @@ for(var/i in 1 to amt) add_overlay(image(icon, "footprint[i]", text2num(d))) -//**** Here ends snow **** \ No newline at end of file +//**** Here ends snow **** From 63c8014679e464e284008eaf316218b55c628486 Mon Sep 17 00:00:00 2001 From: Verkister Date: Wed, 11 Apr 2018 17:27:36 +0300 Subject: [PATCH 15/24] Delete carpet_vr.dmi --- icons/turf/flooring/carpet_vr.dmi | Bin 42863 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 icons/turf/flooring/carpet_vr.dmi diff --git a/icons/turf/flooring/carpet_vr.dmi b/icons/turf/flooring/carpet_vr.dmi deleted file mode 100644 index 9db7acc72fdcc40ecb35d7e739165daa8e59136a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42863 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 DOs$G* From 2dec2545e56e437179de2dd97d54231cecfe097e Mon Sep 17 00:00:00 2001 From: Verkister Date: Wed, 11 Apr 2018 20:44:53 +0300 Subject: [PATCH 16/24] Adds giant rat voremob. -Currently only available via pred crate/shenanigans. -This dude is friends with regular mice but will gladly kick any other ass. --- .../crates_lockers/largecrate_vr.dm | 1 + .../mob/living/simple_animal/vore/rous.dm | 49 ++++++++++++++++++ icons/mob/vore64x32.dmi | Bin 288825 -> 300744 bytes vorestation.dme | 1 + 4 files changed, 51 insertions(+) create mode 100644 code/modules/mob/living/simple_animal/vore/rous.dm diff --git a/code/game/objects/structures/crates_lockers/largecrate_vr.dm b/code/game/objects/structures/crates_lockers/largecrate_vr.dm index c55a3342ab..014b49b522 100644 --- a/code/game/objects/structures/crates_lockers/largecrate_vr.dm +++ b/code/game/objects/structures/crates_lockers/largecrate_vr.dm @@ -54,6 +54,7 @@ /mob/living/simple_animal/hostile/bear/brown;0.5, /mob/living/simple_animal/hostile/carp, /mob/living/simple_animal/hostile/mimic, + /mob/living/simple_animal/hostile/rous, /mob/living/simple_animal/otie;0.5) ..() diff --git a/code/modules/mob/living/simple_animal/vore/rous.dm b/code/modules/mob/living/simple_animal/vore/rous.dm new file mode 100644 index 0000000000..09fb0720db --- /dev/null +++ b/code/modules/mob/living/simple_animal/vore/rous.dm @@ -0,0 +1,49 @@ +/mob/living/simple_animal/hostile/rous + name = "giant rat" + desc = "In what passes for a hierarchy among verminous rodents, this one is king." + tt_desc = "Mus muscular" + icon = 'icons/mob/vore64x32.dmi' + icon_state = "rous" + icon_living = "rous" + icon_dead = "rous-dead" + icon_rest = "rous_rest" + faction = "mouse" + + maxHealth = 150 + health = 150 + + investigates = TRUE + melee_damage_lower = 5 + melee_damage_upper = 15 + grab_resist = 100 + + speak_chance = 4 + speak = list("Squeek!","SQUEEK!","Squeek?") + speak_emote = list("squeeks","squeeks","squiks") + emote_hear = list("squeeks","squeaks","squiks") + emote_see = list("runs in a circle", "shakes", "scritches at something") + say_maybe_target = list("Squeek?") + say_got_target = list("SQUEEK!") + response_help = "pets the" + response_disarm = "bops the" + response_harm = "hits the" + attacktext = list("ravaged") + friendly = list("nuzzles", "licks", "noses softly at", "noseboops", "headbumps against", "leans on", "nibbles affectionately on") + + old_x = -16 + old_y = 0 + default_pixel_x = -16 + pixel_x = -16 + pixel_y = 0 + + vore_active = TRUE + vore_capacity = 1 + vore_pounce_chance = 45 + vore_icons = SA_ICON_LIVING | SA_ICON_REST + +/mob/living/simple_animal/hostile/rous/death() + playsound(src, 'sound/effects/mouse_squeak_loud.ogg', 50, 1) + ..() + +/mob/living/simple_animal/mouse + faction = "mouse" //Apparently mice had no faction. The big dude should be nice to them tho. \ No newline at end of file diff --git a/icons/mob/vore64x32.dmi b/icons/mob/vore64x32.dmi index 455a1e3bf3540249cbe866a8a83e44aaa7182e43..8302072f35fdd4d2647526a67b81f3ea35fe6a15 100644 GIT binary patch delta 22331 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 Date: Wed, 11 Apr 2018 22:34:44 +0300 Subject: [PATCH 17/24] mouse --- code/modules/mob/living/simple_animal/vore/rous.dm | 3 --- .../mob/living/simple_animal/vore/zz_vore_overrides.dm | 4 +++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/simple_animal/vore/rous.dm b/code/modules/mob/living/simple_animal/vore/rous.dm index 09fb0720db..9b47810f36 100644 --- a/code/modules/mob/living/simple_animal/vore/rous.dm +++ b/code/modules/mob/living/simple_animal/vore/rous.dm @@ -44,6 +44,3 @@ /mob/living/simple_animal/hostile/rous/death() playsound(src, 'sound/effects/mouse_squeak_loud.ogg', 50, 1) ..() - -/mob/living/simple_animal/mouse - faction = "mouse" //Apparently mice had no faction. The big dude should be nice to them tho. \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/vore/zz_vore_overrides.dm b/code/modules/mob/living/simple_animal/vore/zz_vore_overrides.dm index a8ce697d64..3b4074e455 100644 --- a/code/modules/mob/living/simple_animal/vore/zz_vore_overrides.dm +++ b/code/modules/mob/living/simple_animal/vore/zz_vore_overrides.dm @@ -243,4 +243,6 @@ for(var/belly in vore_organs) var/obj/belly/B = belly B.digest_mode = safe ? DM_HOLD : vore_default_mode - \ No newline at end of file + +/mob/living/simple_animal/mouse + faction = "mouse" //Giving mice a faction so certain mobs can get along with them. \ No newline at end of file From 4c604fb8da68657eba1a85178cfab6bf64729582 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 11 Apr 2018 19:22:20 -0400 Subject: [PATCH 18/24] Adds 'mode addons' to bellies to replace several modes --- code/__defines/belly_modes_vr.dm | 40 +- code/_macros_vr.dm | 3 +- .../living/simple_animal/animals/cat_vr.dm | 8 - .../living/simple_animal/animals/fox_vr.dm | 16 - .../living/simple_animal/simple_animal_vr.dm | 14 +- .../simple_animal/vore/shadekin/shadekin.dm | 6 - .../living/simple_animal/vore/solargrub.dm | 2 +- code/modules/vore/eating/belly_dat_vr.dm | 2 +- code/modules/vore/eating/belly_obj_vr.dm | 32 +- code/modules/vore/eating/bellymodes_tf_vr.dm | 237 ++++++++++ code/modules/vore/eating/bellymodes_vr.dm | 403 ++++-------------- code/modules/vore/eating/vorepanel_vr.dm | 94 ++-- vorestation.dme | 1 + 13 files changed, 442 insertions(+), 416 deletions(-) create mode 100644 code/modules/vore/eating/bellymodes_tf_vr.dm diff --git a/code/__defines/belly_modes_vr.dm b/code/__defines/belly_modes_vr.dm index aa0d9d616d..e6f072ca0c 100644 --- a/code/__defines/belly_modes_vr.dm +++ b/code/__defines/belly_modes_vr.dm @@ -1,28 +1,38 @@ -// Belly Mode Constants +// Normal digestion modes #define DM_HOLD "Hold" -#define DM_DIGEST "Digest" -#define DM_ITEMWEAK "Digest (Item Friendly)" -#define DM_STRIPDIGEST "Strip Digest (Items Only)" -#define DM_DIGEST_NUMB "Digest (Numbing)" +#define DM_DIGEST "Digest" +#define DM_ABSORB "Absorb" +#define DM_UNABSORB "Unabsorb" +#define DM_DRAIN "Drain" +#define DM_SHRINK "Shrink" +#define DM_GROW "Grow" +#define DM_SIZE_STEAL "Size Steal" #define DM_HEAL "Heal" -#define DM_ABSORB "Absorb" +#define DM_EGG "Encase In Egg" +#define DM_TRANSFORM "Transform" + +//#define DM_ITEMWEAK "Digest (Item Friendly)" +//#define DM_STRIPDIGEST "Strip Digest (Items Only)" +//#define DM_DIGEST_NUMB "Digest (Numbing)" + +//TF modes #define DM_TRANSFORM_HAIR_AND_EYES "Transform (Hair and eyes)" #define DM_TRANSFORM_MALE "Transform (Male)" -#define DM_TRANSFORM_FEMALE "Transform (Female)" +#define DM_TRANSFORM_FEMALE "Transform (Female)" #define DM_TRANSFORM_KEEP_GENDER "Transform (Keep Gender)" #define DM_TRANSFORM_REPLICA "Transform (Replica Of Self)" #define DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR "Transform (Change Species and Taur)" -#define DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG "Transform (Change Species and Taur) (EGG)" +#define DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG "Transform (Change Species and Taur) (EGG)" #define DM_TRANSFORM_REPLICA_EGG "Transform (Replica Of Self) (EGG)" #define DM_TRANSFORM_KEEP_GENDER_EGG "Transform (Keep Gender) (EGG)" #define DM_TRANSFORM_MALE_EGG "Transform (Male) (EGG)" -#define DM_TRANSFORM_FEMALE_EGG "Transform (Female) (EGG)" -#define DM_EGG "Encase In Egg" -#define DM_DRAIN "Drain" -#define DM_UNABSORB "Unabsorb" -#define DM_SHRINK "Shrink" -#define DM_GROW "Grow" -#define DM_SIZE_STEAL "Size Steal" +#define DM_TRANSFORM_FEMALE_EGG "Transform (Female) (EGG)" + +//Addon mode flags +#define DM_FLAG_NUMBING 0x1 +#define DM_FLAG_ITEMWEAK 0x2 +#define DM_FLAG_STRIPPING 0x4 + // Stance for hostile mobs to be in while devouring someone. #define HOSTILE_STANCE_EATING 99 diff --git a/code/_macros_vr.dm b/code/_macros_vr.dm index daa1123574..ca7bccedbe 100644 --- a/code/_macros_vr.dm +++ b/code/_macros_vr.dm @@ -1,2 +1,3 @@ #define isbelly(A) istype(A, /obj/belly) -#define isstorage(A) istype(A, /obj/item/weapon/storage) \ No newline at end of file +#define isstorage(A) istype(A, /obj/item/weapon/storage) +#define isitem(A) istype(A, /obj/item) diff --git a/code/modules/mob/living/simple_animal/animals/cat_vr.dm b/code/modules/mob/living/simple_animal/animals/cat_vr.dm index 1c9203126a..9cb954f538 100644 --- a/code/modules/mob/living/simple_animal/animals/cat_vr.dm +++ b/code/modules/mob/living/simple_animal/animals/cat_vr.dm @@ -20,14 +20,6 @@ "Runtime flops onto their side for a minute, spilling acids over your form as you remain trapped in them.", "The CMO's pet doesn't seem to think you're any different from any other meal. At least, their stomach doesn't.") - B.emote_lists[DM_ITEMWEAK] = list( - "Runtime's stomach is treating you rather like a mouse, kneading acids into you with vigor.", - "A thick dollop of bellyslime drips from above while the CMO's pet's gut works on churning you up.", - "Runtime seems to have decided you're food, based on the acrid air in her guts and the pooling fluids.", - "Runtime's stomach tries to claim you, kneading and pressing inwards again and again against your form.", - "Runtime flops onto their side for a minute, spilling acids over your form as you remain trapped in them.", - "The CMO's pet doesn't seem to think you're any different from any other meal. At least, their stomach doesn't.") - B.digest_messages_prey = list( "Runtime's stomach slowly melts your body away. Her stomach refuses to give up it's onslaught, continuing until you're nothing more than nutrients for her body to absorb.", "After an agonizing amount of time, Runtime's stomach finally manages to claim you, melting you down and adding you to her stomach.", diff --git a/code/modules/mob/living/simple_animal/animals/fox_vr.dm b/code/modules/mob/living/simple_animal/animals/fox_vr.dm index 587a64d14c..84a9a1ca26 100644 --- a/code/modules/mob/living/simple_animal/animals/fox_vr.dm +++ b/code/modules/mob/living/simple_animal/animals/fox_vr.dm @@ -61,14 +61,6 @@ "The fox's stomach churns hungrily over your form, trying to take you.", "With a loud glorp, the stomach spills more acids onto you.") - B.emote_lists[DM_ITEMWEAK] = list( - "The guts knead at you, trying to work you into thick soup.", - "You're ground on by the slimey walls, treated like a mouse.", - "The acrid air is hard to breathe, and stings at your lungs.", - "You can feel the acids coating you, ground in by the slick walls.", - "The fox's stomach churns hungrily over your form, trying to take you.", - "With a loud glorp, the stomach spills more acids onto you.") - // All them complicated fox procedures. /mob/living/simple_animal/fox/Life() . = ..() @@ -209,14 +201,6 @@ "A thick glob of acids drip down from above, adding to the pool of caustic fluids in Renault's belly.", "There's a loud gurgle as the stomach declares the intent to make you a part of Renault.") - B.emote_lists[DM_ITEMWEAK] = list( - "Renault's stomach walls grind hungrily inwards, kneading acids against your form, and treating you like any other food.", - "The captain's fox impatiently kneads and works acids against you, trying to claim your body for fuel.", - "The walls knead in firmly, squeezing and tossing you around briefly in disorienting aggression.", - "Renault belches, letting the remaining air grow more acrid. It burns your lungs with each breath.", - "A thick glob of acids drip down from above, adding to the pool of caustic fluids in Renault's belly.", - "There's a loud gurgle as the stomach declares the intent to make you a part of Renault.") - /mob/living/simple_animal/fox/syndicate name = "syndi-fox" desc = "It's a DASTARDLY fox! The horror! Call the shuttle!" diff --git a/code/modules/mob/living/simple_animal/simple_animal_vr.dm b/code/modules/mob/living/simple_animal/simple_animal_vr.dm index faae913d44..883c43e30f 100644 --- a/code/modules/mob/living/simple_animal/simple_animal_vr.dm +++ b/code/modules/mob/living/simple_animal/simple_animal_vr.dm @@ -15,7 +15,8 @@ var/vore_standing_too = 0 // Can also eat non-stunned mobs var/vore_ignores_undigestable = 1 // Refuse to eat mobs who are undigestable by the prefs toggle. - var/vore_default_mode = DM_ITEMWEAK // Default bellymode (DM_DIGEST, DM_HOLD, DM_ABSORB) + var/vore_default_mode = DM_DIGEST // Default bellymode (DM_DIGEST, DM_HOLD, DM_ABSORB) + var/vore_default_flags = DM_FLAG_ITEMWEAK // Itemweak by default var/vore_digest_chance = 25 // Chance to switch to digest mode if resisted var/vore_absorb_chance = 0 // Chance to switch to absorb mode if resisted var/vore_escape_chance = 25 // Chance of resisting out of mob @@ -147,6 +148,7 @@ B.name = vore_stomach_name ? vore_stomach_name : "stomach" B.desc = vore_stomach_flavor ? vore_stomach_flavor : "Your surroundings are warm, soft, and slimy. Makes sense, considering you're inside \the [name]." B.digest_mode = vore_default_mode + B.mode_flags = vore_default_flags B.escapable = vore_escape_chance > 0 B.escapechance = vore_escape_chance B.digestchance = vore_digest_chance @@ -174,16 +176,6 @@ "The juices pooling beneath you sizzle against your sore skin.", "The churning walls slowly pulverize you into meaty nutrients.", "The stomach glorps and gurgles as it tries to work you into slop.") - B.emote_lists[DM_ITEMWEAK] = list( - "The burning acids eat away at your form.", - "The muscular stomach flesh grinds harshly against you.", - "The caustic air stings your chest when you try to breathe.", - "The slimy guts squeeze inward to help the digestive juices soften you up.", - "The onslaught against your body doesn't seem to be letting up; you're food now.", - "The predator's body ripples and crushes against you as digestive enzymes pull you apart.", - "The juices pooling beneath you sizzle against your sore skin.", - "The churning walls slowly pulverize you into meaty nutrients.", - "The stomach glorps and gurgles as it tries to work you into slop.") /mob/living/simple_animal/Bumped(var/atom/movable/AM, yes) if(ismob(AM)) diff --git a/code/modules/mob/living/simple_animal/vore/shadekin/shadekin.dm b/code/modules/mob/living/simple_animal/vore/shadekin/shadekin.dm index 24053b4bca..2dfecc479c 100644 --- a/code/modules/mob/living/simple_animal/vore/shadekin/shadekin.dm +++ b/code/modules/mob/living/simple_animal/vore/shadekin/shadekin.dm @@ -154,12 +154,6 @@ "The grip of that stomach is harsh. Eagerly mushing and rubbing that slime into your body in attempts to break you down!", "The intense churning and grinding jostles your around within the thick slime as you're slowly broken down!" ) - B.emote_lists[DM_ITEMWEAK] = list( - "The walls slop thick slime across your body! It tingles briefly before the sting and ache sets in!", - "The sound of your body slipping and sliding against the powerfully churning stomach fills the air!", - "The grip of that stomach is harsh. Eagerly mushing and rubbing that slime into your body in attempts to break you down!", - "The intense churning and grinding jostles your around within the thick slime as you're slowly broken down!" - ) B.emote_lists[DM_ABSORB] = list( "The walls cling to you awfully close... It's almost like you're sinking into them.", "You can feel the walls press in tightly against you, clinging to you posessively!", diff --git a/code/modules/mob/living/simple_animal/vore/solargrub.dm b/code/modules/mob/living/simple_animal/vore/solargrub.dm index 0dfb81cd09..6e34a1c2d1 100644 --- a/code/modules/mob/living/simple_animal/vore/solargrub.dm +++ b/code/modules/mob/living/simple_animal/vore/solargrub.dm @@ -96,7 +96,7 @@ List of things solar grubs should be able to do: vore_active = 1 vore_capacity = 1 vore_pounce_chance = 0 //grubs only eat incapacitated targets - vore_default_mode = DM_ITEMWEAK //item friendly digestions, they just want your chemical energy :3 + vore_default_mode = DM_DIGEST /mob/living/simple_animal/retaliate/solargrub/PunchTarget() . = ..() diff --git a/code/modules/vore/eating/belly_dat_vr.dm b/code/modules/vore/eating/belly_dat_vr.dm index 9453edc66f..accd3c9bf2 100644 --- a/code/modules/vore/eating/belly_dat_vr.dm +++ b/code/modules/vore/eating/belly_dat_vr.dm @@ -30,7 +30,7 @@ var/datum/belly/transferlocation = null // Location that the prey is released if they struggle and get dropped off. var/tmp/digest_mode = DM_HOLD // Whether or not to digest. Default to not digest. - var/tmp/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_STRIPDIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_DIGEST_NUMB) // Possible digest modes + var/tmp/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL) // Possible digest modes var/tmp/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG) var/tmp/mob/living/owner // The mob whose belly this is. var/tmp/list/internal_contents = list() // People/Things you've eaten into this belly! diff --git a/code/modules/vore/eating/belly_obj_vr.dm b/code/modules/vore/eating/belly_obj_vr.dm index ce81063acf..0d4c9705f9 100644 --- a/code/modules/vore/eating/belly_obj_vr.dm +++ b/code/modules/vore/eating/belly_obj_vr.dm @@ -32,14 +32,22 @@ var/shrink_grow_size = 1 // This horribly named variable determines the minimum/maximum size it will shrink/grow prey to. var/transferlocation // Location that the prey is released if they struggle and get dropped off. var/release_sound = TRUE // Boolean for now, maybe replace with something else later + var/mode_flags = 0 // Stripping, numbing, etc. //I don't think we've ever altered these lists. making them static until someone actually overrides them somewhere. - var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_STRIPDIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_DIGEST_NUMB) // Possible digest modes + //Actual full digest modes + var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_HEAL,DM_SHRINK,DM_GROW,DM_SIZE_STEAL) + //Digest mode addon flags + var/tmp/static/list/mode_flag_list = list("Numbing" = DM_FLAG_NUMBING, "Itemweak" = DM_FLAG_ITEMWEAK, "Stripping" = DM_FLAG_STRIPPING) + //Transformation modes var/tmp/static/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG) + + //List of slots that stripping handles strips var/tmp/static/list/slots = list(slot_back,slot_handcuffed,slot_l_store,slot_r_store,slot_wear_mask,slot_l_hand,slot_r_hand,slot_wear_id,slot_glasses,slot_gloves,slot_head,slot_shoes,slot_belt,slot_wear_suit,slot_w_uniform,slot_s_store,slot_l_ear,slot_r_ear) var/tmp/mob/living/owner // The mob whose belly this is. var/tmp/digest_mode = DM_HOLD // Current mode the belly is set to from digest_modes (+transform_modes if human) + var/tmp/tf_mode = DM_TRANSFORM_REPLICA // Current transformation mode. var/tmp/next_process = 0 // Waiting for this SSbellies times_fired to process again. var/tmp/list/items_preserved = list() // Stuff that wont digest so we shouldn't process it again. var/tmp/next_emote = 0 // When we're supposed to print our next emote, as a belly controller tick # @@ -127,7 +135,8 @@ "digest_messages_owner", "digest_messages_prey", "examine_messages", - "emote_lists" + "emote_lists", + "mode_flags" ) /obj/belly/New(var/newloc) @@ -359,9 +368,12 @@ brain.forceMove(src) items_preserved += brain for(var/slot in slots) - var/obj/item/thingy = M.get_equipped_item(slot = slot) - if(thingy) - M.unEquip(thingy,force = TRUE) + var/obj/item/I = M.get_equipped_item(slot = slot) + if(I) + M.unEquip(I,force = TRUE) + I.gurgle_contaminate(contents, owner) //We do an initial contamination pass to get stuff like IDs wet. + if(mode_flags & DM_FLAG_ITEMWEAK) + items_preserved |= I //Reagent transfer if(ishuman(owner)) @@ -535,17 +547,12 @@ digest_mode = DM_ABSORB return - else if(prob(digestchance) && digest_mode != DM_ITEMWEAK && digest_mode != DM_DIGEST) //Finally, let's see if it should run the digest chance. + else if(prob(digestchance) && digest_mode != DM_DIGEST) //Finally, let's see if it should run the digest chance. to_chat(R,"In response to your struggling, \the [lowertext(name)] begins to get more active...") to_chat(owner,"You feel your [lowertext(name)] beginning to become active!") - digest_mode = DM_ITEMWEAK - return - - else if(prob(digestchance) && digest_mode == DM_ITEMWEAK) //Oh god it gets even worse if you fail twice! - to_chat(R,"In response to your struggling, \the [lowertext(name)] begins to get even more active!") - to_chat(owner,"You feel your [lowertext(name)] beginning to become even more active!") digest_mode = DM_DIGEST return + else //Nothing interesting happened. to_chat(R,"You make no progress in escaping [owner]'s [lowertext(name)].") to_chat(owner,"Your prey appears to be unable to make any progress in escaping your [lowertext(name)].") @@ -603,6 +610,7 @@ dupe.transferlocation = transferlocation dupe.bulge_size = bulge_size dupe.shrink_grow_size = shrink_grow_size + dupe.mode_flags = mode_flags //// Object-holding variables //struggle_messages_outside - strings diff --git a/code/modules/vore/eating/bellymodes_tf_vr.dm b/code/modules/vore/eating/bellymodes_tf_vr.dm new file mode 100644 index 0000000000..1f638f4f98 --- /dev/null +++ b/code/modules/vore/eating/bellymodes_tf_vr.dm @@ -0,0 +1,237 @@ +/obj/belly/proc/process_tf(var/mode,var/list/touchable_mobs) //We pass mode so it's mega-ultra local. + /* May not be necessary... Transform only shows up in the panel for humans. + if(!ishuman(owner)) + return //Need DNA and junk for this. + */ + + //Cast here for reduced duplication + var/mob/living/carbon/human/O = owner + +///////////////////////////// DM_TRANSFORM_HAIR_AND_EYES ///////////////////////////// + if(mode == DM_TRANSFORM_HAIR_AND_EYES) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(O.nutrition > 400 && P.nutrition < 400) + O.nutrition -= 2 + P.nutrition += 1.5 + + if(check_eyes(P) || check_hair(P)) + change_eyes(P) + change_hair(P,1) + +///////////////////////////// DM_TRANSFORM_MALE ///////////////////////////// + else if(mode == DM_TRANSFORM_MALE) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(O.nutrition > 400 && P.nutrition < 400) + O.nutrition -= 2 + P.nutrition += 1.5 + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + continue + + if(check_gender(P,MALE)) + change_gender(P,MALE,1) + +///////////////////////////// DM_TRANSFORM_FEMALE ///////////////////////////// + else if(mode == DM_TRANSFORM_FEMALE) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(O.nutrition > 400 && P.nutrition < 400) + O.nutrition -= 2 + P.nutrition += 1.5 + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + continue + + if(check_gender(P,FEMALE)) + change_gender(P,FEMALE,1) + +///////////////////////////// DM_TRANSFORM_KEEP_GENDER ///////////////////////////// + else if(mode == DM_TRANSFORM_KEEP_GENDER) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(O.nutrition > 400 && P.nutrition < 400) + O.nutrition -= 2 + P.nutrition += 1.5 + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + +///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR ///////////////////////////// + else if(mode == DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(O.nutrition > 400 && P.nutrition < 400) + O.nutrition -= 2 + P.nutrition += 1.5 + + if(check_ears(P) || check_tail_nocolor(P) || check_wing_nocolor(P) || check_species(P)) + change_ears(P) + change_tail_nocolor(P) + change_wing_nocolor(P) + change_species(P,1) + +///////////////////////////// DM_TRANSFORM_REPLICA ///////////////////////////// + else if(mode == DM_TRANSFORM_REPLICA) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(O.nutrition > 400 && P.nutrition < 400) + O.nutrition -= 2 + P.nutrition += 1.5 + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + continue + + if(check_ears(P) || check_tail(P) || check_wing(P) || check_species(P)) + change_ears(P) + change_tail(P) + change_wing(P) + change_species(P,1) + +///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG ///////////////////////////// + else if(mode == DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(check_ears(P) || check_tail_nocolor(P) || check_wing_nocolor(P)|| check_species(P)) + change_ears(P) + change_tail_nocolor(P) + change_wing_nocolor(P) + change_species(P,1) + continue + + if(!P.absorbed) + put_in_egg(P,1) + +///////////////////////////// DM_TRANSFORM_KEEP_GENDER_EGG ///////////////////////////// + else if(mode == DM_TRANSFORM_KEEP_GENDER_EGG) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + continue + + if(!P.absorbed) + put_in_egg(P,1) + +///////////////////////////// DM_TRANSFORM_REPLICA_EGG ///////////////////////////// + else if(mode == DM_TRANSFORM_REPLICA_EGG) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + continue + + if(check_ears(P) || check_tail(P) || check_wing(P) || check_species(P)) + change_ears(P) + change_tail(P) + change_wing(P) + change_species(P,1) + continue + + if(!P.absorbed) + put_in_egg(P,1) + +///////////////////////////// DM_TRANSFORM_MALE_EGG ///////////////////////////// + else if(mode == DM_TRANSFORM_MALE_EGG) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + continue + + if(check_gender(P,MALE)) + change_gender(P,MALE,1) + continue + + if(!P.absorbed) + put_in_egg(P,1) + +///////////////////////////// DM_TRANSFORM_FEMALE_EGG ///////////////////////////// + else if(mode == DM_TRANSFORM_FEMALE_EGG) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.stat == DEAD) + continue + + if(check_eyes(P)) + change_eyes(P,1) + continue + + if(check_hair(P) || check_skin(P)) + change_hair(P) + change_skin(P,1) + continue + + if(check_gender(P,MALE)) + change_gender(P,MALE,1) + continue + + if(!P.absorbed) + put_in_egg(P,1) + +///////////////////////////// DM_EGG ///////////////////////////// + else if(mode == DM_EGG) + for (var/mob/living/carbon/human/P in touchable_mobs) + if(P.absorbed || P.stat == DEAD) + continue + + put_in_egg(P,1) + diff --git a/code/modules/vore/eating/bellymodes_vr.dm b/code/modules/vore/eating/bellymodes_vr.dm index 564531ef5b..66df5151f2 100644 --- a/code/modules/vore/eating/bellymodes_vr.dm +++ b/code/modules/vore/eating/bellymodes_vr.dm @@ -20,30 +20,74 @@ var/list/EL = emote_lists[digest_mode] if(LAZYLEN(EL)) for(var/mob/living/M in contents) - if(M.digestable || !(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK)) // don't give digesty messages to indigestible people + if(M.digestable || digest_mode != DM_DIGEST) // don't give digesty messages to indigestible people to_chat(M,"[pick(EL)]") /////////////////////////// Exit Early //////////////////////////// - var/list/touchable_items = contents - items_preserved - if(!length(touchable_items)) + var/list/touchable_atoms = contents - items_preserved + if(!length(touchable_atoms)) return SSBELLIES_PROCESSED -//////////////////////// Absorbed Handling //////////////////////// - for(var/mob/living/M in contents) - if(M.absorbed) - M.Weaken(5) + var/list/touchable_mobs = list() + +///////////////////// Early Non-Mode Handling ///////////////////// + var/did_an_item = FALSE + for(var/A in touchable_atoms) + //Handle stray items + if(isitem(A) && !did_an_item) + var/obj/item/I = A + if(mode_flags & DM_FLAG_ITEMWEAK) + I.gurgle_contaminate(contents, owner) + items_preserved |= I + else + digest_item(I) + owner.updateVRPanel() + did_an_item = TRUE + + //Handle eaten mobs + else if(isliving(A)) + var/mob/living/L = A + touchable_mobs += L + + if(L.absorbed) + L.Weaken(5) + + //Handle 'human' + if(ishuman(L)) + var/mob/living/carbon/human/H = L + + //Numbing flag + if(mode_flags & DM_FLAG_NUMBING) + if(H.bloodstr.get_reagent_amount("numbenzyme") < 2) + H.bloodstr.add_reagent("numbenzyme",4) + + //Stripping flag + if(mode_flags & DM_FLAG_STRIPPING) + for(var/slot in slots) + var/obj/item/I = H.get_equipped_item(slot = slot) + if(I) + H.unEquip(I,force = TRUE) + if(mode_flags & DM_FLAG_ITEMWEAK) + I.gurgle_contaminate(contents, owner) + items_preserved |= I + else + digest_item(I) + owner.updateVRPanel() + H.updateVRPanel() + break ///////////////////////////// DM_HOLD ///////////////////////////// if(digest_mode == DM_HOLD) return SSBELLIES_PROCESSED //Pretty boring, huh //////////////////////////// DM_DIGEST //////////////////////////// - else if(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK) + else if(digest_mode == DM_DIGEST) if(prob(50)) //Was SO OFTEN. AAAA. play_sound = pick(digestion_sounds) - for (var/mob/living/M in contents) + for (var/target in touchable_mobs) + var/mob/living/M = target //Pref protection! if (!M.digestable || M.absorbed) continue @@ -71,11 +115,6 @@ owner.update_icons() continue - if(digest_mode == DM_DIGEST_NUMB && ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.bloodstr.get_reagent_amount("numbenzyme") < 5) - H.bloodstr.add_reagent("numbenzyme",10) - // Deal digestion damage (and feed the pred) M.adjustBruteLoss(digest_brute) M.adjustFireLoss(digest_burn) @@ -91,49 +130,13 @@ owner.nutrition += 2*(digest_brute+digest_burn)/difference M.updateVRPanel() - //Contaminate or gurgle items - var/obj/item/T = pick(touchable_items) - if(istype(T)) - if(digest_mode == DM_ITEMWEAK) - if(istype(T,/obj/item/weapon/reagent_containers/food) || istype(T,/obj/item/weapon/holder) || istype(T,/obj/item/organ)) - digest_item(T) - else - T.gurgle_contaminate(contents, owner) - items_preserved |= T - else - digest_item(T) - - owner.updateVRPanel() - -//////////////////////////// DM_STRIPDIGEST //////////////////////////// - else if(digest_mode == DM_STRIPDIGEST) // Only gurgle the gear off your prey. - - if(prob(50)) - play_sound = pick(digestion_sounds) - - // Handle loose items first. - var/obj/item/T = pick(touchable_items) - if(istype(T)) - digest_item(T) - - for(var/mob/living/carbon/human/M in contents) - if (M.absorbed) - continue - for(var/slot in slots) - var/obj/item/thingy = M.get_equipped_item(slot = slot) - if(thingy) - M.unEquip(thingy,force = TRUE) - digest_item(thingy) - break - M.updateVRPanel() - owner.updateVRPanel() //////////////////////////// DM_ABSORB //////////////////////////// else if(digest_mode == DM_ABSORB) - for (var/mob/living/M in contents) - + for (var/target in touchable_mobs) + var/mob/living/M = target if(prob(10)) //Less often than gurgles. People might leave this on forever. play_sound = pick(digestion_sounds) @@ -150,7 +153,9 @@ //////////////////////////// DM_UNABSORB //////////////////////////// else if(digest_mode == DM_UNABSORB) - for (var/mob/living/M in contents) + for (var/target in touchable_mobs) + var/mob/living/M = target + if(M.absorbed && owner.nutrition >= 100) M.absorbed = 0 to_chat(M,"You suddenly feel solid again ") @@ -160,8 +165,9 @@ //////////////////////////// DM_DRAIN //////////////////////////// else if(digest_mode == DM_DRAIN) - for (var/mob/living/M in contents) - + for (var/target in touchable_mobs) + var/mob/living/M = target + if(prob(10)) //Less often than gurgles. People might leave this on forever. play_sound = pick(digestion_sounds) @@ -173,13 +179,15 @@ //////////////////////////// DM_SHRINK //////////////////////////// else if(digest_mode == DM_SHRINK) - for (var/mob/living/M in contents) - + for (var/target in touchable_mobs) + var/mob/living/M = target + if(prob(10)) //Infinite gurgles! play_sound = pick(digestion_sounds) if(M.size_multiplier > shrink_grow_size) //Shrink until smol. M.resize(M.size_multiplier-0.01) //Shrink by 1% per tick. + if(M.nutrition >= 100) //Absorbing bodymass results in nutrition if possible. var/oldnutrition = (M.nutrition * 0.05) M.nutrition = (M.nutrition * 0.95) @@ -188,8 +196,9 @@ //////////////////////////// DM_GROW //////////////////////////// else if(digest_mode == DM_GROW) - for (var/mob/living/M in contents) - + for (var/target in touchable_mobs) + var/mob/living/M = target + if(prob(10)) play_sound = pick(digestion_sounds) @@ -201,14 +210,16 @@ //////////////////////////// DM_SIZE_STEAL //////////////////////////// else if(digest_mode == DM_SIZE_STEAL) - for (var/mob/living/M in contents) - + for (var/target in touchable_mobs) + var/mob/living/M = target + if(prob(10)) play_sound = pick(digestion_sounds) if(M.size_multiplier > shrink_grow_size && owner.size_multiplier < 2) //Grow until either pred is large or prey is small. owner.resize(owner.size_multiplier+0.01) //Grow by 1% per tick. M.resize(M.size_multiplier-0.01) //Shrink by 1% per tick + if(M.nutrition >= 100) var/oldnutrition = (M.nutrition * 0.05) M.nutrition = (M.nutrition * 0.95) @@ -216,261 +227,31 @@ ///////////////////////////// DM_HEAL ///////////////////////////// else if(digest_mode == DM_HEAL) - if(prob(50)) //Wet heals! + + if(prob(50)) //Wet heals! The secret is you can leave this on for gurgle noises for fun. play_sound = pick(digestion_sounds) - for (var/mob/living/M in contents) - if(M.stat != DEAD) - if(owner.nutrition > 90 && (M.health < M.maxHealth)) - M.adjustBruteLoss(-5) - M.adjustFireLoss(-5) - owner.nutrition -= 2 - if(M.nutrition <= 400) - M.nutrition += 1 - else if(owner.nutrition > 90 && (M.nutrition <= 400)) - owner.nutrition -= 1 + for (var/target in touchable_mobs) + var/mob/living/M = target + + if(M.stat == DEAD) + continue + + if(owner.nutrition > 90 && (M.health < M.maxHealth)) + M.adjustBruteLoss(-5) + M.adjustFireLoss(-5) + owner.nutrition -= 2 + if(M.nutrition <= 400) M.nutrition += 1 + else if(owner.nutrition > 90 && (M.nutrition <= 400)) + owner.nutrition -= 1 + M.nutrition += 1 -///////////////////////////// DM_TRANSFORM_HAIR_AND_EYES ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_HAIR_AND_EYES && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - var/mob/living/carbon/human/O = owner - - if(O.nutrition > 400 && P.nutrition < 400) - O.nutrition -= 2 - P.nutrition += 1.5 - - if(check_eyes(P) || check_hair(P)) - change_eyes(P) - change_hair(P,1) - -///////////////////////////// DM_TRANSFORM_MALE ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_MALE && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - var/mob/living/carbon/human/O = owner - - if(O.nutrition > 400 && P.nutrition < 400) - O.nutrition -= 2 - P.nutrition += 1.5 - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - continue - - if(check_gender(P,MALE)) - change_gender(P,MALE,1) - -///////////////////////////// DM_TRANSFORM_FEMALE ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_FEMALE && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - var/mob/living/carbon/human/O = owner - - if(O.nutrition > 400 && P.nutrition < 400) - O.nutrition -= 2 - P.nutrition += 1.5 - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - continue - - if(check_gender(P,FEMALE)) - change_gender(P,FEMALE,1) - -///////////////////////////// DM_TRANSFORM_KEEP_GENDER ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_KEEP_GENDER && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - var/mob/living/carbon/human/O = owner - - if(O.nutrition > 400 && P.nutrition < 400) - O.nutrition -= 2 - P.nutrition += 1.5 - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - -///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - var/mob/living/carbon/human/O = owner - - if(O.nutrition > 400 && P.nutrition < 400) - O.nutrition -= 2 - P.nutrition += 1.5 - - if(check_ears(P) || check_tail_nocolor(P) || check_wing_nocolor(P) || check_species(P)) - change_ears(P) - change_tail_nocolor(P) - change_wing_nocolor(P) - change_species(P,1) - -///////////////////////////// DM_TRANSFORM_REPLICA ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_REPLICA && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - var/mob/living/carbon/human/O = owner - - if(O.nutrition > 400 && P.nutrition < 400) - O.nutrition -= 2 - P.nutrition += 1.5 - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - continue - - if(check_ears(P) || check_tail(P) || check_wing(P) || check_species(P)) - change_ears(P) - change_tail(P) - change_wing(P) - change_species(P,1) - -///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - if(check_ears(P) || check_tail_nocolor(P) || check_wing_nocolor(P)|| check_species(P)) - change_ears(P) - change_tail_nocolor(P) - change_wing_nocolor(P) - change_species(P,1) - continue - - if(!P.absorbed) - put_in_egg(P,1) - -///////////////////////////// DM_TRANSFORM_KEEP_GENDER_EGG ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_KEEP_GENDER_EGG && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - continue - - if(!P.absorbed) - put_in_egg(P,1) - -///////////////////////////// DM_TRANSFORM_REPLICA_EGG ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_REPLICA_EGG && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - continue - - if(check_ears(P) || check_tail(P) || check_wing(P) || check_species(P)) - change_ears(P) - change_tail(P) - change_wing(P) - change_species(P,1) - continue - - if(!P.absorbed) - put_in_egg(P,1) - -///////////////////////////// DM_TRANSFORM_MALE_EGG ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_MALE_EGG && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - continue - - if(check_gender(P,MALE)) - change_gender(P,MALE,1) - continue - - if(!P.absorbed) - put_in_egg(P,1) - -///////////////////////////// DM_TRANSFORM_FEMALE_EGG ///////////////////////////// - else if(digest_mode == DM_TRANSFORM_FEMALE_EGG && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.stat == DEAD) - continue - - if(check_eyes(P)) - change_eyes(P,1) - continue - - if(check_hair(P) || check_skin(P)) - change_hair(P) - change_skin(P,1) - continue - - if(check_gender(P,MALE)) - change_gender(P,MALE,1) - continue - - if(!P.absorbed) - put_in_egg(P,1) - -///////////////////////////// DM_EGG ///////////////////////////// - else if(digest_mode == DM_EGG && ishuman(owner)) - for (var/mob/living/carbon/human/P in contents) - if(P.absorbed || P.stat == DEAD) - continue - - put_in_egg(P,1) +/////////////////////////// DM_TRANSFORM /////////////////////////// + else if(digest_mode == DM_TRANSFORM) + process_tf(tf_mode, touchable_mobs) +/////////////////////////// Make any noise /////////////////////////// if(play_sound) playsound(src, play_sound, vol = 100, vary = 1, falloff = VORE_SOUND_FALLOFF, ignore_walls = TRUE, preference = /datum/client_preference/digestion_noises) return SSBELLIES_PROCESSED diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index d3f37842bf..0d50650924 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -18,7 +18,7 @@ var/dat = picker_holder.gen_ui(src) - picker_holder.popup = new(src, "insidePanel","Inside!", 400, 600, picker_holder) + picker_holder.popup = new(src, "insidePanel","Inside!", 450, 700, picker_holder) picker_holder.popup.set_content(dat) picker_holder.popup.open() src.openpanel = 1 @@ -31,7 +31,7 @@ var/dat = picker_holder.gen_ui(src) - picker_holder.popup = new(src, "insidePanel","Inside!", 400, 600, picker_holder) + picker_holder.popup = new(src, "insidePanel","Inside!", 450, 700, picker_holder) picker_holder.popup.set_content(dat) picker_holder.popup.open() @@ -110,46 +110,44 @@ spanstyle = "" if(DM_DIGEST) spanstyle = "color:red;" - if(DM_ITEMWEAK) - spanstyle = "color:red;" - if(DM_STRIPDIGEST) - spanstyle = "color:red;" - if(DM_HEAL) - spanstyle = "color:green;" if(DM_ABSORB) spanstyle = "color:purple;" if(DM_DRAIN) spanstyle = "color:purple;" + if(DM_HEAL) + spanstyle = "color:green;" if(DM_SHRINK) spanstyle = "color:purple;" if(DM_GROW) spanstyle = "color:purple;" if(DM_SIZE_STEAL) spanstyle = "color:purple;" - if(DM_TRANSFORM_MALE) - spanstyle = "color:purple;" - if(DM_TRANSFORM_HAIR_AND_EYES) - spanstyle = "color:purple;" - if(DM_TRANSFORM_FEMALE) - spanstyle = "color:purple;" - if(DM_TRANSFORM_KEEP_GENDER) - spanstyle = "color:purple;" - if(DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR) - spanstyle = "color:purple;" - if(DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG) - spanstyle = "color:purple;" - if(DM_TRANSFORM_REPLICA) - spanstyle = "color:purple;" - if(DM_TRANSFORM_REPLICA_EGG) - spanstyle = "color:purple;" - if(DM_TRANSFORM_KEEP_GENDER_EGG) - spanstyle = "color:purple;" - if(DM_TRANSFORM_MALE_EGG) - spanstyle = "color:purple;" - if(DM_TRANSFORM_FEMALE_EGG) - spanstyle = "color:purple;" - if(DM_EGG) - spanstyle = "color:purple;" + if(DM_TRANSFORM) + switch(B.tf_mode) + if(DM_TRANSFORM_MALE) + spanstyle = "color:purple;" + if(DM_TRANSFORM_HAIR_AND_EYES) + spanstyle = "color:purple;" + if(DM_TRANSFORM_FEMALE) + spanstyle = "color:purple;" + if(DM_TRANSFORM_KEEP_GENDER) + spanstyle = "color:purple;" + if(DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR) + spanstyle = "color:purple;" + if(DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG) + spanstyle = "color:purple;" + if(DM_TRANSFORM_REPLICA) + spanstyle = "color:purple;" + if(DM_TRANSFORM_REPLICA_EGG) + spanstyle = "color:purple;" + if(DM_TRANSFORM_KEEP_GENDER_EGG) + spanstyle = "color:purple;" + if(DM_TRANSFORM_MALE_EGG) + spanstyle = "color:purple;" + if(DM_TRANSFORM_FEMALE_EGG) + spanstyle = "color:purple;" + if(DM_EGG) + spanstyle = "color:purple;" dat += " ([B.contents.len])" @@ -193,7 +191,19 @@ //Digest Mode Button dat += "
Belly Mode:" - dat += " [selected.digest_mode]" + var/mode = selected.digest_mode + dat += " [mode == DM_TRANSFORM ? selected.tf_mode : mode]" + + //Mode addons button + dat += "
Mode Addons:" + var/list/flag_list = list() + for(var/flag_name in selected.mode_flag_list) + if(selected.mode_flags & selected.mode_flag_list[flag_name]) + flag_list += flag_name + if(flag_list.len) + dat += " [english_list(flag_list)]" + else + dat += " None" //Belly verb dat += "
Vore Verb:" @@ -499,14 +509,30 @@ if(href_list["b_mode"]) var/list/menu_list = selected.digest_modes if(istype(usr,/mob/living/carbon/human)) - menu_list += selected.transform_modes + menu_list += DM_TRANSFORM var/new_mode = input("Choose Mode (currently [selected.digest_mode])") as null|anything in menu_list if(!new_mode) return 0 + + if(new_mode == DM_TRANSFORM) //Snowflek submenu + var/list/tf_list = selected.transform_modes + var/new_tf_mode = input("Choose TF Mode (currently [selected.tf_mode])") as null|anything in tf_list + if(!new_tf_mode) + return 0 + selected.tf_mode = new_tf_mode + selected.digest_mode = new_mode selected.items_preserved.Cut() //Re-evaltuate all items in belly on belly-mode change + if(href_list["b_addons"]) + var/list/menu_list = selected.mode_flag_list + var/toggle_addon = input("Toggle Addon") as null|anything in menu_list + if(!toggle_addon) + return 0 + selected.mode_flags ^= selected.mode_flag_list[toggle_addon] + selected.items_preserved.Cut() //Re-evaltuate all items in belly on addon toggle + if(href_list["b_desc"]) var/new_desc = html_encode(input(usr,"Belly Description ([BELLIES_DESC_MAX] char limit):","New Description",selected.desc) as message|null) diff --git a/vorestation.dme b/vorestation.dme index 5445f1b708..5289a9bfd1 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2716,6 +2716,7 @@ #include "code\modules\vore\appearance\update_icons_vr.dm" #include "code\modules\vore\eating\belly_dat_vr.dm" #include "code\modules\vore\eating\belly_obj_vr.dm" +#include "code\modules\vore\eating\bellymodes_tf_vr.dm" #include "code\modules\vore\eating\bellymodes_vr.dm" #include "code\modules\vore\eating\contaminate_vr.dm" #include "code\modules\vore\eating\digest_act_vr.dm" From c481f0134349de16c1f53e5c181fa0af27a0f436 Mon Sep 17 00:00:00 2001 From: Leshana Date: Wed, 11 Apr 2018 19:45:04 -0400 Subject: [PATCH 19/24] Fix building frames on walls and windows. try_build() has long accepted `user` parameter, but nothing that called try_build actually passed it! Upgraded try_build on APC to use the user parameter, and switched to use to_chat while I was there. --- code/game/objects/items/apc_frame.dm | 18 +++++++++--------- code/game/objects/structures/window.dm | 2 +- code/game/turfs/simulated/wall_attacks.dm | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/code/game/objects/items/apc_frame.dm b/code/game/objects/items/apc_frame.dm index 4b69e5db7c..fd2ea3e94b 100644 --- a/code/game/objects/items/apc_frame.dm +++ b/code/game/objects/items/apc_frame.dm @@ -13,31 +13,31 @@ new /obj/item/stack/material/steel( get_turf(src.loc), 2 ) qdel(src) -/obj/item/frame/apc/try_build(turf/on_wall) - if (get_dist(on_wall,usr)>1) +/obj/item/frame/apc/try_build(turf/on_wall, mob/user as mob) + if (get_dist(on_wall, user)>1) return - var/ndir = get_dir(usr,on_wall) + var/ndir = get_dir(user, on_wall) if (!(ndir in cardinal)) return - var/turf/loc = get_turf(usr) + var/turf/loc = get_turf(user) var/area/A = loc.loc if (!istype(loc, /turf/simulated/floor)) - usr << "APC cannot be placed on this spot." + to_chat(user, "APC cannot be placed on this spot.") return if (A.requires_power == 0 || istype(A, /area/space)) - usr << "APC cannot be placed in this area." + to_chat(user, "APC cannot be placed in this area.") return if (A.get_apc()) - usr << "This area already has an APC." + to_chat(user, "This area already has an APC.") return //only one APC per area for(var/obj/machinery/power/terminal/T in loc) if (T.master) - usr << "There is another network terminal here." + to_chat(user, "There is another network terminal here.") return else var/obj/item/stack/cable_coil/C = new /obj/item/stack/cable_coil(loc) C.amount = 10 - usr << "You cut the cables and disassemble the unused power terminal." + to_chat(user, "You cut the cables and disassemble the unused power terminal.") qdel(T) new /obj/machinery/power/apc(loc, ndir, 1) qdel(src) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index cbaf8f8cf8..3186e26e0e 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -311,7 +311,7 @@ qdel(src) else if(istype(W,/obj/item/frame) && anchored) var/obj/item/frame/F = W - F.try_build(src) + F.try_build(src, user) else user.setClickCooldown(user.get_attack_speed(W)) if(W.damtype == BRUTE || W.damtype == BURN) diff --git a/code/game/turfs/simulated/wall_attacks.dm b/code/game/turfs/simulated/wall_attacks.dm index 01633b65d3..2bfa5a6aca 100644 --- a/code/game/turfs/simulated/wall_attacks.dm +++ b/code/game/turfs/simulated/wall_attacks.dm @@ -355,7 +355,7 @@ if(istype(W,/obj/item/frame)) var/obj/item/frame/F = W - F.try_build(src) + F.try_build(src, user) return else if(!istype(W,/obj/item/weapon/rcd) && !istype(W, /obj/item/weapon/reagent_containers)) From 474bb3c8c86ac30cdf81635bf18ff002424593c8 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 11 Apr 2018 20:55:54 -0400 Subject: [PATCH 20/24] Couple more Protean fixes, + darksight Fixes a blob transform check. Also they get a smidge of darksight (the minor trait). I'm sure they have expensive sensors, but giving them the taj darksight seems meh. --- .../human/species/station/protean_vr/protean_powers.dm | 5 +---- .../human/species/station/protean_vr/protean_species.dm | 2 ++ 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm index 8991e2351d..598bea3edb 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm @@ -220,7 +220,6 @@ to_chat(temporary_form,"You need to regenerate more nanites first!") else if(temporary_form.stat) to_chat(temporary_form,"You can only do this while not stunned.") - return else nano_outofblob(temporary_form) @@ -337,12 +336,10 @@ //Blobform using it else var/mob/living/simple_animal/protean_blob/blob = usr - if(!blob.humanform) - return do_ability(blob.humanform) /obj/effect/protean_ability/proc/do_ability(var/mob/living/L) - if(istype(L) && !L.stat) + if(istype(L)) call(L,to_call)() return FALSE diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm index a37a0d921d..5898afcd96 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm @@ -58,6 +58,8 @@ siemens_coefficient = 3 //Very bad zappy times rarity_value = 5 + darksight = 3 // Equivalent to the minor trait + has_organ = list( O_BRAIN = /obj/item/organ/internal/mmi_holder/posibrain/nano, O_ORCH = /obj/item/organ/internal/nano/orchestrator, From a6a396181e4613ab66a9840cfe59aad603a345d1 Mon Sep 17 00:00:00 2001 From: Leshana Date: Wed, 11 Apr 2018 20:58:30 -0400 Subject: [PATCH 21/24] Fix allowing frames on walls with machine-under-construction on it already. Add /object/structure/frame to the list of objects that count as wall items. Also convert from strings to actual type paths. ... and fix the paths that haven't existed for four years. Properly speaking it should be a dynamically generated list at some point. --- code/_helpers/unsorted.dm | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/code/_helpers/unsorted.dm b/code/_helpers/unsorted.dm index 92ad017cd2..e26724ae5b 100644 --- a/code/_helpers/unsorted.dm +++ b/code/_helpers/unsorted.dm @@ -1223,20 +1223,21 @@ proc/is_hot(obj/item/W as obj) /* Checks if that loc and dir has a item on the wall +TODO - Fix this ancient list of wall items. Preferably make it dynamically populated. ~Leshana */ var/list/WALLITEMS = list( - "/obj/machinery/power/apc", "/obj/machinery/alarm", "/obj/item/device/radio/intercom", - "/obj/structure/extinguisher_cabinet", "/obj/structure/reagent_dispensers/peppertank", - "/obj/machinery/status_display", "/obj/machinery/requests_console", "/obj/machinery/light_switch", "/obj/effect/sign", - "/obj/machinery/newscaster", "/obj/machinery/firealarm", "/obj/structure/noticeboard", "/obj/machinery/door_control", - "/obj/machinery/computer/security/telescreen", "/obj/machinery/embedded_controller/radio/simple_vent_controller", - "/obj/item/weapon/storage/secure/safe", "/obj/machinery/door_timer", "/obj/machinery/flasher", "/obj/machinery/keycard_auth", - "/obj/structure/mirror", "/obj/structure/closet/fireaxecabinet", "/obj/machinery/computer/security/telescreen/entertainment" + /obj/machinery/power/apc, /obj/machinery/alarm, /obj/item/device/radio/intercom, /obj/structure/frame, + /obj/structure/extinguisher_cabinet, /obj/structure/reagent_dispensers/peppertank, + /obj/machinery/status_display, /obj/machinery/requests_console, /obj/machinery/light_switch, /obj/structure/sign, + /obj/machinery/newscaster, /obj/machinery/firealarm, /obj/structure/noticeboard, /obj/machinery/button/remote, + /obj/machinery/computer/security/telescreen, /obj/machinery/embedded_controller/radio, + /obj/item/weapon/storage/secure/safe, /obj/machinery/door_timer, /obj/machinery/flasher, /obj/machinery/keycard_auth, + /obj/structure/mirror, /obj/structure/closet/fireaxecabinet, /obj/machinery/computer/security/telescreen/entertainment ) /proc/gotwallitem(loc, dir) for(var/obj/O in loc) for(var/item in WALLITEMS) - if(istype(O, text2path(item))) + if(istype(O, item)) //Direction works sometimes if(O.dir == dir) return 1 @@ -1260,7 +1261,7 @@ var/list/WALLITEMS = list( //Some stuff is placed directly on the wallturf (signs) for(var/obj/O in get_step(loc, dir)) for(var/item in WALLITEMS) - if(istype(O, text2path(item))) + if(istype(O, item)) if(O.pixel_x == 0 && O.pixel_y == 0) return 1 return 0 From 49e71b95a69afb2bf513ca7f5f2b1e2849e3b694 Mon Sep 17 00:00:00 2001 From: Leshana Date: Wed, 11 Apr 2018 21:21:04 -0400 Subject: [PATCH 22/24] Fix wall frames dropping steel and bugging on failure to place. Previously, if you tried to place a frame on a wall and it failed (due to something already being there etc) you would no longer be asked what type to use next time you try, and it will runtime. Fixes this by performing the safety checks *before* asking you want you want to build. Since the checks don't depend on what type you want to build anyway its fine. --- code/game/machinery/wall_frames.dm | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/code/game/machinery/wall_frames.dm b/code/game/machinery/wall_frames.dm index 1765eac3ec..2d0a8bf545 100644 --- a/code/game/machinery/wall_frames.dm +++ b/code/game/machinery/wall_frames.dm @@ -54,17 +54,6 @@ /obj/item/frame/proc/try_build(turf/on_wall, mob/user as mob) update_type_list() - var/datum/frame/frame_types/frame_type - if(!build_machine_type) - var/datum/frame/frame_types/response = input(user, "What kind of frame would you like to make?", "Frame type request", null) in frame_types_wall - if(!response || response.name == "Cancel") - return - frame_type = response - - build_machine_type = /obj/structure/frame - - if(frame_type.frame_size != 5) - new /obj/item/stack/material/steel(user.loc, (5 - frame_type.frame_size)) if(get_dist(on_wall, user)>1) return @@ -92,6 +81,18 @@ to_chat(user, "There's already an item on this wall!") return + var/datum/frame/frame_types/frame_type + if(!build_machine_type) + var/datum/frame/frame_types/response = input(user, "What kind of frame would you like to make?", "Frame type request", null) in frame_types_wall + if(!response || response.name == "Cancel") + return + frame_type = response + + build_machine_type = /obj/structure/frame + + if(frame_type.frame_size != 5) + new /obj/item/stack/material/steel(user.loc, (5 - frame_type.frame_size)) + var/obj/machinery/M = new build_machine_type(loc, ndir, 1, frame_type) M.fingerprints = fingerprints M.fingerprintshidden = fingerprintshidden From 54101f8dfda344935dbf9ee52aaf53d04c45cdd7 Mon Sep 17 00:00:00 2001 From: Leshana Date: Wed, 11 Apr 2018 21:44:08 -0400 Subject: [PATCH 23/24] Switch frame construction menu to have a cancel button. Instead of having a whole frame type dedicated to giving a "Cancel" option... lets just tell BYOND to add a cancel button to the menu. --- code/game/machinery/frame.dm | 8 -------- code/game/machinery/wall_frames.dm | 8 ++++---- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/code/game/machinery/frame.dm b/code/game/machinery/frame.dm index 3e998e87d6..f1f2ec0834 100644 --- a/code/game/machinery/frame.dm +++ b/code/game/machinery/frame.dm @@ -12,11 +12,6 @@ else construction_frame_floor += type - var/datum/frame/frame_types/cancel/cancel = new /datum/frame/frame_types/cancel - construction_frame_wall += cancel - construction_frame_floor += cancel - - ////////////////////////////// // Frame Type Datum - Describes the frame structures that can be created from a frame item. ////////////////////////////// @@ -180,9 +175,6 @@ x_offset = 24 y_offset = 24 -/datum/frame/frame_types/cancel //used to get out of input dialogue - name = "Cancel" - ////////////////////////////// // Frame Object (Structure) ////////////////////////////// diff --git a/code/game/machinery/wall_frames.dm b/code/game/machinery/wall_frames.dm index 2d0a8bf545..0d3c3bcd2c 100644 --- a/code/game/machinery/wall_frames.dm +++ b/code/game/machinery/wall_frames.dm @@ -29,8 +29,8 @@ update_type_list() var/datum/frame/frame_types/frame_type if(!build_machine_type) - var/datum/frame/frame_types/response = input(user, "What kind of frame would you like to make?", "Frame type request", null) in frame_types_floor - if(!response || response.name == "Cancel") + var/datum/frame/frame_types/response = input(user, "What kind of frame would you like to make?", "Frame type request", null) as null|anything in frame_types_floor + if(!response) return frame_type = response @@ -83,8 +83,8 @@ var/datum/frame/frame_types/frame_type if(!build_machine_type) - var/datum/frame/frame_types/response = input(user, "What kind of frame would you like to make?", "Frame type request", null) in frame_types_wall - if(!response || response.name == "Cancel") + var/datum/frame/frame_types/response = input(user, "What kind of frame would you like to make?", "Frame type request", null) as null|anything in frame_types_wall + if(!response) return frame_type = response From 90175bb1aa4f329fa69c8bcde4b1d96f3f49120e Mon Sep 17 00:00:00 2001 From: Verkister Date: Thu, 12 Apr 2018 09:26:02 +0300 Subject: [PATCH 24/24] adds proper bags --- .../items/weapons/storage/backpack_vr.dm | 9 ++++++++- icons/mob/back_vr.dmi | Bin 16227 -> 18512 bytes 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/storage/backpack_vr.dm b/code/game/objects/items/weapons/storage/backpack_vr.dm index 2abca93e3a..d836d23581 100644 --- a/code/game/objects/items/weapons/storage/backpack_vr.dm +++ b/code/game/objects/items/weapons/storage/backpack_vr.dm @@ -80,7 +80,7 @@ else slowdown = initial(slowdown) return 1 - if(istype(H) && istype(TT, /datum/sprite_accessory/tail/taur/drake) || istype(TT, /datum/sprite_accessory/tail/taur/deer)) + if(istype(H) && istype(TT, /datum/sprite_accessory/tail/taur/drake)) item_state = "[icon_base]_Drake" if(H.size_multiplier >= RESIZE_BIG) //Are they a macro? slowdown = 0 @@ -94,6 +94,13 @@ else slowdown = initial(slowdown) return 1 + if(istype(H) && istype(TT, /datum/sprite_accessory/tail/taur/deer)) + item_state = "[icon_base]_Deer" + if(H.size_multiplier >= RESIZE_BIG) //Are they a macro? + slowdown = 0 + else + slowdown = initial(slowdown) + return 1 else H << "[no_message]" return 0 diff --git a/icons/mob/back_vr.dmi b/icons/mob/back_vr.dmi index c613fbe7dc1bf130fe300964f8099f2240e5f659..3e0884110e19b39d2a77154d217cc9fce1b5008e 100644 GIT binary patch literal 18512 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 PAc(w-vUKrtqrm?G;#Ph+ literal 16227 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