From 1ea2e00cc299b1bd69ac3e5c7a4c5691af3d5a9d Mon Sep 17 00:00:00 2001 From: WoolyAypa Date: Wed, 3 May 2023 00:08:56 -0300 Subject: [PATCH] bigger cages --- .../chastity/chastity_cage.dm | 15 +++++++++++++-- .../chastity/metal_chastity_cage.dm | 12 ++++++++++-- .../icons/obj/lewd_items/chastity.dmi | Bin 1932 -> 1415 bytes 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm index 760194d9df..45dd1355c9 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm @@ -31,6 +31,8 @@ var/overlay_layer = -(GENITALS_FRONT_LAYER - 0.01) var/is_overlay_on + var/cage_sprite + /obj/item/genital_equipment/chastity_cage/Initialize(mapload, obj/item/key/chastity_key/newkey = null) . = ..() @@ -38,8 +40,6 @@ key = newkey color = pick(list(COLOR_LIGHT_PINK, COLOR_STRONG_VIOLET, null)) - cage_overlay = mutable_appearance(icon, worn_icon_state ? worn_icon_state : "worn_[icon_state]", overlay_layer) - cage_overlay.color = color //Set the overlay's color to the cage item's /obj/item/genital_equipment/chastity_cage/Destroy() if(owner) @@ -117,6 +117,17 @@ //turn that flag on ENABLE_BITFIELD(penor.genital_flags, GENITAL_CHASTENED) + switch(penor.size) + if(1 to 2) + cage_sprite = 1 + if(3 to 4) + cage_sprite = 2 + if(5) + cage_sprite = 3 + + cage_overlay = mutable_appearance(icon, worn_icon_state ? worn_icon_state : "worn_[icon_state]_[cage_sprite]", overlay_layer) + cage_overlay.color = color //Set the overlay's color to the cage item's + H.add_overlay(cage_overlay) is_overlay_on = TRUE diff --git a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm index 3a5668a482..ccc3a8be17 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm @@ -6,16 +6,24 @@ break_require = TOOL_WELDER var/jingle_chance = 1.25//in percentage + var/mutable_appearance/skin_overlay + var/skin_overlay_layer = -(GENITALS_FRONT_LAYER - 0.02) -/obj/item/genital_equipment/chastity_cage/metal/equip() +/obj/item/genital_equipment/chastity_cage/metal/equip(user, target, obj/item/organ/genital/penis/penor) . = ..() RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/on_move) + skin_overlay = mutable_appearance(icon, "worn_[icon_state]_[cage_sprite]_skin", skin_overlay_layer) + skin_overlay.color = penor.color + + owner.add_overlay(skin_overlay) + /obj/item/genital_equipment/chastity_cage/metal/proc/on_move(atom/old_loc, dir) if(owner.stat == CONSCIOUS && prob(jingle_chance)) owner.visible_message("[owner.name] jingles slightly as they move.", "You jingle slightly as you move.") -/obj/item/genital_equipment/chastity_cage/metal/unequip_process(obj/item/organ/genital/G) +/obj/item/genital_equipment/chastity_cage/metal/unequip(obj/item/organ/genital/G) UnregisterSignal(owner, COMSIG_MOVABLE_MOVED) + owner.cut_overlay(skin_overlay) . = ..() diff --git a/modular_splurt/icons/obj/lewd_items/chastity.dmi b/modular_splurt/icons/obj/lewd_items/chastity.dmi index 531971b7bbf3d0095c6c2dad32d7a34944546fa3..60fd57b60813fb4ce52d8b7edf9145f4781f30fc 100644 GIT binary patch literal 1415 zcmV;21$g?2P)#j8hSo+7cJjD zBM9pfd;kCd0d!JMQvg8b*k%9#0KIxtSad{Xb7OL8aCB*JZU6vyoSl-*3WG2ZgwM%S z1ihE~bM2)l;-S7mNSm#OYJ_B|uisFiRVp=ln}PXucS1sT&Wo~Q*`=gUFjn=NomhG} zQZgusjWbD1Ndu~Ga5NSLf|J1&S_~+W%2;P3O72E@-O%Kl_pLD@JUdK?^#VUvar;nu`)T{I#18|Ds{8xOAYVuiwK66bV&Y5}cwwGZm3$ui}U!bwly+{S1j`f+Re?%2E^y$8Jj{21sLUioCsH-s0 zIFi=uYEI3!Ar6H0XMBym&_Rj&$|32(#&Mmt2-)o$g!#+wz3WRm=k#WB`D@T8HDKGo z&l{ZNeas-^!n$nTLPa)sgF=Pq57QzF858W?M zmXEBEU6|fE?BIjc&p5cEGW^#e?AQ=jO<=tQbiY&RW9p^{_D>iX|CBeRK=JM#=J!3P zc=k*(y6v!?iSCJy2M*yDU-c>_!Gcl@ewQ8BO?9f48dms81I=!=ml38d^tr;xwM7Dc&I3=+%$ z0000000000004kfD9dj)OrJX$8A4oPXxg(^9p!0*%=gto#7XOaT z5GYJhq@;)9-*)idAW-88mt;%Gr+1^k<^ZD2Nw7q_4$iD-n$>R@Al&td*jcJL>mAc&EppHI$|O zvG)%%uz}3}@$iG{lWT(*cyjMCs!e8Ws V4jiBYsoeko002ovPDHLkV1hy|jDr9G literal 1932 zcma)-X*Ao38pi)Y2(cAotCCvA(nOK5FUQtHY$HWzZ&hr?FqSA)QVEyFo-%5yeOJ|* z(rOXA#8#%(8tsiOs@Imp)*|WcJ@?%CFz22*_rv=>AD(Z|`+Lum?&@MEA|x*a0DuU} z-uCJ@CH{LL{NMJVh41(`DUEmcx@{X6?T-tIyd4q|4ghhbZkR}1%<+L+BY?)%xx5OWa?%_Ha9P=}jF4B6Ge`$m>1y6ko;%De0Pj0S&8Wn-C*Tdwst>19~fWH}KYvmqSx>NRJu!4sIjn3bc_h?AO(Ol|r zJ5(2*d;k;j1>30Uhehv)rIg|xOQ$ICSW_TxZA6o%L&ZKxXcZ)jfW9isI;IW0Y;=_l zwI8X&4pnF2D>%cWv3X_1Wrl4L1iDzt7fHQ+b|U>aq1SLfao^$m`SbTT0~qd(G1%C+k*i;h0JS|VUYFprnQ;~5#6h2x~j zz1`iCUw_p_B9S)d;;fZHeax1GJ3HLpv+F-(K(KgbKVv-h^dMbQDoJ1{2ZY6k5qc7) zW^c-0M!?}_zSz>56^?QNU_f~Poci@_{)|eO^b-W`aRVrd?+MI4 zxVH9n6_wAXG3;8-Yf4Y}0JXu6NqVQaOnT$I@6d8fMB7q4S+*QOzwAc?f?2_zfcu3U zOmpCGh}OANR2Zm|{0!3^tK`qk&CTUqGre>n%B30&2#X#a9c>##tT~qE9v%14>BHs{ z6ezKuB?`3o*gjC7Lk8{eHZ_u*jmY$mQD03v!WWC|EyE6|U-qeooc@U3vy&kR)F3xb zxZGs)@G1qWkuf(nw>;by6sC4te))@xi>Xr52q#KOm~c+KW|akVn(WF+)mf(w8fHyI z3X_>To<2+TDl?Q1_3ojGmzK=KoJy(tG|cQ?C!2Ai^Dr#CRFxMv28O8@8F8UVu;82cX_{9*iJV&1J(Tu~wR z{Z>pDc~qX_l>gg69|WM%49qlnP;fNr$vT0*8cJlD25Dr%Mp(iVS(S^6iLdq6fxEvCi3`w$G zYXPwMb+COhH6lxAh+0KJB^%+?h`792` zF}qG^V4?IR5`d5xbkhj>_105y!yn^SST)N`8l;*%t4~R?@&3$>+Me~cEZ1D*q~Q_X z7LPt&O79}pNPRW3>p7OVo6J|;v9LgqCU%G=XYfSUzqacj$j{s&*m4b$SpfNpw%acT9nCJBf|A^TAE*9zyyLZDiXj z}UA&OtIpw?lrt%nN=k%fF+0je_>c-RHIepC&Y@LEbLfdV$$2< zp8c^j7g4dlbGR`QVl_krBlb&Po$NL! z@p}!TEtvvqa_1)G@-?a2}K^3dYWs?X?j4Msrihk_*wUsv5LYOFgSoQbkv48U{=CKE| zL>6)|WF=iQWkOaxTj*?{7`?fVt~Vqo=}jdbG!%0;stzq>o)R$s+~9)ziA5=-_&2wZ z#8ZL1b7~)etQ8X=e_l*HQfT!k(09kE`LP?IYgIwUh^^HO+sWO;NXB?eUwetc;37Jf zNLlwT_P@{|O4&DW{m?B-j}g~kfyds4oYe+s0qIWOh^CzUFm!L`mJ-R#D|cROfH9IF z;v2P3$y==H