From b6a12a5915dfcf9c39d659b2a18b775fb3d2135f Mon Sep 17 00:00:00 2001 From: Taushai <81365071+chaos-creations@users.noreply.github.com> Date: Fri, 16 Aug 2024 18:32:51 +0400 Subject: [PATCH 1/2] Throw & Grab animation and sound prosto spizdil --- code/game/sound.dm | 2 ++ code/modules/mob/living/carbon/carbon.dm | 8 ++++++++ code/modules/mob/mob.dm | 7 +++++++ code/modules/mob/mob_defines.dm | 2 ++ sound/effects/throwing/swoosh1.ogg | Bin 0 -> 7967 bytes sound/effects/throwing/swoosh2.ogg | Bin 0 -> 9311 bytes sound/effects/throwing/swoosh3.ogg | Bin 0 -> 9474 bytes sound/effects/throwing/swoosh4.ogg | Bin 0 -> 8377 bytes 8 files changed, 19 insertions(+) create mode 100644 sound/effects/throwing/swoosh1.ogg create mode 100644 sound/effects/throwing/swoosh2.ogg create mode 100644 sound/effects/throwing/swoosh3.ogg create mode 100644 sound/effects/throwing/swoosh4.ogg diff --git a/code/game/sound.dm b/code/game/sound.dm index 87c12cf4f3..fd8f873aab 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -355,6 +355,8 @@ S = pick('sound/items/cane_step_1.ogg', 'sound/items/cane_step_2.ogg', 'sound/items/cane_step_3.ogg', 'sound/items/cane_step_4.ogg', 'sound/items/cane_step_5.ogg', ) if("match") S = pick('sound/effects/match.ogg') + if("throwing") + S = pick('sound/effects/throwing/swoosh1.ogg', 'sound/effects/throwing/swoosh2.ogg', 'sound/effects/throwing/swoosh3.ogg', 'sound/effects/throwing/swoosh4.ogg') if("punch") S = pick('sound/weapons/punch1.ogg','sound/weapons/punch2.ogg','sound/weapons/punch3.ogg','sound/weapons/punch4.ogg') if("swing_hit") diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 4ea2f35aa6..5f7624935a 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -388,9 +388,17 @@ if(!do_after(src, 1 SECONDS, INTERRUPT_ALL, BUSY_ICON_HOSTILE)) to_chat(src, SPAN_WARNING("You need to set up the high toss!")) return + animation_attack_on(target, 6) + //The volume of the sound takes the minimum between the distance thrown or the max range an item, but no more than 15. Short throws are quieter. Invisible mobs do no sound. + if(alpha >= 50) + playsound(src, "throwing", min(5*min(get_dist(loc,target),thrown_thing.throw_range), 15), vary = TRUE, sound_range = 6) drop_inv_item_on_ground(I, TRUE) thrown_thing.throw_atom(target, thrown_thing.throw_range, SPEED_SLOW, src, spin_throw, HIGH_LAUNCH) else + animation_attack_on(target, 6) + //The volume of the sound takes the minimum between the distance thrown or the max range an item, but no more than 15. Short throws are quieter. Invisible mobs do no sound. + if(alpha >= 50) + playsound(src, "throwing", min(5*min(get_dist(loc,target),thrown_thing.throw_range), 15), vary = TRUE, sound_range = 6) drop_inv_item_on_ground(I, TRUE) thrown_thing.throw_atom(target, thrown_thing.throw_range, thrown_thing.throw_speed, src, spin_throw) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index c2cf6402ed..97b07119fe 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -503,7 +503,13 @@ if(!M.can_be_pulled_by(src)) return else if(istype(AM, /obj)) + if(recently_grabbed > world.time) + return FALSE + recently_grabbed = world.time + 6 AM.add_fingerprint(src) + animation_attack_on(AM) + playsound(loc, 'sound/weapons/thudswoosh.ogg', 25, 1, 7) + flick_attack_overlay(AM, "grab") if(!QDELETED(AM.pulledby) && !QDELETED(M)) visible_message(SPAN_WARNING("[src] has broken [AM.pulledby]'s grip on [M]!"), null, null, 5) @@ -595,6 +601,7 @@ msg_admin_attack("[key_name(src)] grabbed [key_name(M)] in [get_area(src)] ([src.loc.x],[src.loc.y],[src.loc.z]).", src.loc.x, src.loc.y, src.loc.z) if(!no_msg) + animation_attack_on(M) visible_message(SPAN_WARNING("[src] has grabbed [M] passively!"), null, null, 5) if(M.mob_size > MOB_SIZE_HUMAN || !(M.status_flags & CANPUSH)) diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index e2f40506b2..81eda11dee 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -196,6 +196,8 @@ var/recently_pointed_to = 0 //used as cooldown for the pointing verb. + var/recently_grabbed = 0 //used as a cooldown for item grabs + ///Color matrices to be applied to the client window. Assoc. list. var/list/client_color_matrices diff --git a/sound/effects/throwing/swoosh1.ogg b/sound/effects/throwing/swoosh1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..dd8a80a1073cb969e782847ae6764e9340b96128 GIT binary patch literal 7967 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 literal 0 HcmV?d00001 diff --git a/sound/effects/throwing/swoosh2.ogg b/sound/effects/throwing/swoosh2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..012a3672b7330eb76b8cbb3a42e2ded38948f3f3 GIT binary patch literal 9311 zcmaiY2V7Il()U4n4^@z25D-ESJxG%#1P};C2vw?7>4?Z9N)e<;i3kCd7J3l`qzHoa z-a}JS=^#y-sOWbB&%O8g?)UxP_xv`?o}Jy9otgj4nZ>}x#TYmT{QcaPIven(GnNo> z69wM(wRiO+Oc806{k0$dN*gLa0EB$@&M1OV*#V00Y&n&EC4_Pgb7k6q)NV zr(9Q9E6PhySQo4rQKJ^E8AIy9C(Rrxn#rv1`3)gfGXL%5ZFh< z3etQ*R%dEKfiO@_;93&1P8D;173bh6pTRc~BPN+qDNSP&eN*rWu)Y!KG!+;y6&Pxf z7HL@@YEd6)IUQ+z6nT>^>hJbFbpD9YPF05z0olBW)CE}Xr3<-V5V^z=QDx@pc6bMf$60PM3gQCn1~$$acjR{6EdvBGu`CZ>qO?gaB30 zmfb#_-9CJpD86oA5%Nll{2c*Y#uYcYadE^1%~M=_WTf!YR>Gk$-=qSz*L zs15NM+z~UI;od-L4UUc-Gq(mQ33LAqA63wAH>cUUvK~T16UgkDc?x(^xc#5drDVf< zVENqf30lbFa6=Tk0M7s6spe1sh=81;_+Q;Al+RF{pZr*;Pw>@%WWNZZD{CK8*m&6v zQKx}}C>D_cQ5;{p{M@esq3w>V#iNCB7!(qQJBujLsZhtnt7Pn_K@yeb+XpKIqvD^A z+u<8#;2Ql$8{XwKV&n(gsHCW|l#;25>5V{7i)R6IuOqFe1Lmhf=cnRr&qw_?u>Ku6 z02nk8r!k4KkArt-hF@2sJah2BBFBfhJBhP5iBGqhPk&5g@SC*3p7bb_rjfM1F^lym zOTaj*ld-JzxQx@dsncYj(@dR{gb=xeNLbKLCizd~WD6#I zkx$^&N#?Uiz8swD5`!&Hf4)|nOZ8uobL(+o+T+6L$1BkZf-$MCG1!uZT#vqrjmH1A z{X255`SO7cj2um0zJEkcE1XjujHYT4{k=0Cl}15>`fHy5rvm_>HIYX5G>;geL?=-) zlPFPB6Q%z-VnFJowEnm>XxOI!zzzVsppzpYk9`x>yp+r-;LCiZIS8_x4z`Fwh!hQi z_L6_%RRN{?WJEj7-Y1kGi-ul!JilB5l=fYLmClkp1(^0o03!ehgZIEY*nEd{db2f# z;FMXI9)ticWlRSqn#v{x<1b)zSjfy9)9KB}u<1U|%4c+lDF-(J}gO`ut*GQ2)3Mv>Vq$FqL7HfOyeO01y@8LoGdFG0>g0{55c-QBL=Q6WrmMj6$Aii zD-rlp6O?w;1Rw&yCvU#t6lq;%eqAQbVP>Z(CjF_W(u2}6Mkc2HOs112rgNYay>CAzrX=>Dkm=|=#y1L~Sm0$%+N{UPBJWDFdEpt~( za!dNET}mp-`l>5SD?BzpYDG~=wMa>cNNIK1&k~W1x}uWC^1kYq85N})b=%bKA{&j~ zB^4E=)n5tJ#`29WpN&R|dj+umg3|TI;>Jd=jYgk=I#15LlJyp${&z3?s<$^9#cKk1 zj7$SQV5}EzfO>e^20gbtimdj$^0xeEAIMt{Ue4O$yw|*3g5^|vZpnJ1P=5<32>!n7HfNIrr}dmH zNXV)#rw(=KIiehPpX>7ZsjzSukXK1V+5H5>1`z=pOns_3Ji_O~o)uJy-J2^3iNH-qLgisgMBtfSqGlda(3x*j(k>}tHk?uJdJj%VQV8VVA zn$L=K6~&C9-HN*=&~Xe75XqH%#~~d`Tn&K$vRcW`r&B}X@|ks!qGkgikn_f_Y8U4- z8tW9-f~;`)thz{e9kZnu9M1{v$Y-?Ffpsw(dx~~pdApz>t6qZeQyEKX7?4$Zcrp@M z{xlgikeNbY6`p|9fz>4=^}tghkyVi>vLp)K`l10ZPX(^Hk# znz_4`cY(tBacsKCs#;ceFZl8Wq-!}rcyTAIWdbPN*j=Uo??xb4dMe?ue#mnC1S%dR zICwTsVneq7rMbPEXcykToFH7N>S;14e0dffhro>4gRGKKao`S1kA{L&H;{lu#nvv* z`gzD4PN2&OGIYT&gx`~f12Zt|gb@R(VU$kUgcL#u+pE#2AsttU?*KxGQf&YsQ0%Lx z27{RnT&3Wz9YVlhop=NVKaN#bNVL<;9R>rn5C!Xw)37DekLe_$qP3s|G{7kCf`WO6 zj2*`oKEjsI>;SohV*~wyV|D;-%jQR?CdBSAbX5=*VTcrhMM97|{5Y@#rs4$aIgb&H zIVX6avpix)V^0H*g8G|C3Nb|JAq9#bfEFze0HJ{E96-C3*G#KYlt8qAEG5p+Ubnc;M56fEE|z;D$60_-4a zAOWoRa>Bt5hZ!RfP{=hXI0wV|69^a-6#xi%gB8(BBS*i7N!eh|JO>05awZZ%o`cbX zbwM%7C{P@zQn4=$XuD1`0s({m3I(CzArlAzVbz6JN0xV*yI1hw@b+agQy_?Im$B|h zkl;Sp008ev$$^)|9GbEMY?MOMj;Bh5K|wRd!K0Y%AH!EN)hS?|X<&_0z(y!Nz>h4U z{)ht!;A{}d+w8BzX!lqd%4ECw_1Yu&}hL2*`}d6ViUI|$W`ZDU`l>bz zheyYXf+2?lU+v>$qEO(H&T0EHc>Wj)j88U)GBAM9?%>hgMPapg`?y-r{$Pf{+sDe_ z(bT{vFK-}B`=w9R)BIQOMn9eUng=Yl)lRKVxEP>7Ut|-|!lQu%QANNAPXy?Ov$=@G zf6qY_R?eUW0&3-K9mY`Y6j~HH;2ew#1exIJh#wqLo)vJXV2oe{OF0b4`D_lu2+BAu z?=UC=B0F<^#TZbJ5!b4mwAnk^CNXdvvoXqjHPb%M$RNuB32!gMm>~s| z9*+5z)dmiLmqaK9AOYc#dZ0?g%+>=6iXedj*)Lm1;8r9gi;R*~G*sOYeq*l003@P^ zCMnvShLNe{L9V?5U~XmCLmoyGA72woy(-yCYW+R{8UZEYiS8s~P7DiY^1Abd)}X$P zQb7|(cXmZ4B3ww5X`z=cVG#**Pv{dNNes!1DNGm;z5wuvD2yHm<0FlZj&@GSYhNJd z({PN)?^q<^KP3}73W~F<3d!mC>C#k*DVOWN-FQ{e9#+FHGHw@}Zq4XpRxZ&0 zb%Yxh>;0w@==q(#Zld*bz))#3G4oc~$0VW25TA2fE5@y&Xcm-dY!4}R5&LmGtD5}z z`#;R3xE2n?p<0H`7@p;F^9+!Dv>5E8hi911U;YiSw04q=R|#3V<9YO9vL3%z1IWSw z|LJ-q3*D{n z_MElUZY-i4j^%Oq7|6R@yjxsc?05A`*~`ELOti-Nz^3|VNIi?;G``s|q_zA=UkReM zt9N=jnO3$dR0L8Z5NpM~gBY9-zflSg^?>pB)sv_H(kcI~&CnSS!k zKl#k()T7IZtLr~_r;$H-qSdOm&9wxl>F!@y5W2qiFuaBy@e>x**o`}{Ja-k&n)-R#~h{ax3fVv`OTKf9JE;at8H zy|bxJ_u+^;q~~jKH=dV2IgSa9`NjBpRxV`@K03$p7wM<0O2~TbYKYT^Nax~&#;lQ| zWiM{YlkDDB$&S)85e>_X^=)MXUn5QbB$o}Ia_L-wq4(TZ*k+%v0|U+nlhJl*(P_ef z`)JfFd;#Z>Wd0Lqrb}hRBP-gC>F-;aBD#JT|KgAPnMvlvp9Fk;xLYROO1n@mo;Y+& zn)Li`mDz#Z?@pGu;@Dl2nvIPQJN9=fFsA6-EI5q=F?NRbn**B7OtofyyCBKOOtmP(>-<{mW~@Y(w_;T#MA= z_ZlAu%XRid$mIshr9-z4X3sm4c?aV+b5*zPX|JF;>_X|ZLsCzgMqZBv#RpOC9B)SC z%+rNlm#?p=;nkos;K;~1WI)@ikiAg-k(32V#cr0vv#r%qSN@)M;>=)a_j;OU4a|PdY@Bx1gKP%oALTl9jFdQJUYap3mr)hg4xZ-(3z))bG(DQ6_?%kX}zsvhcgTt${K{sTGm zXjIH<{Dq|IxecWo&<`nxr?4#0sHiNsqq6lpr!T6gqe&Z+?4u<@W4IoSy-|)APrt}A zcwhNY96Zd6$d$b5At#S)U8B^uH zQ4dwrYNTZZKHhOObEEGf+WFvJ@=S}E$N}w}p;1`lK-G|tQBOB4kkiY)m1`(9)HbnfNgZ1>lkwhMbyepm9^z1ng);{~3}D{c-YH&ZEBrLt?B zB$A8Y##m`m(ETN`^7Gz)$|B^vJUv{nT9cx%#WI%~u`*)xF?=U7!0f&J#VzZ*ADr>WpF$e) zEkb@IZVH}{BA+bJd@<9Gf0od>IY%<(Q9~k`>{`gK*i%xQjqm?}4CEVgN zpPJ9+B&F`)j-!-e4qP?xByPl5ZzQ!yUAWB?SGRpNdrx-tUX+7rmNYfsf%-!<7Ku!d1yc8C=Asg^~?!rm*LC~}ETC(CZMw{eE99Xf&6Kx8f03V^(L_u~^}D;2Lz}Dj zQ6Fdxue&$wjpDeg5K#}zxks$NJRPafD(X*NK~-i2aJoZiaPNZ)Hn zHn=#Zy?^uE^({&MmU4XM3g32sC(ij^y+^qOq?^2k2`3v~yF8{N-md&CNq-1}9Kf(f zq9Z7IZ{I5LSKY)bR8IM6{v6E<%T!`sXo@<&V42T;XeCHb-*O`^Q%A0kWT)cJ29XZY zW$Q>`=34KEFgj(gAMzjh=IS2Q*cMuqd{8-l8-G^{ySbhX_q@&6S|U2PqZwhD?v%V+ zdh=TE2jA~&36YqNJJq>&JaS9NUp69hn&U+uGha8?Q@uAQty7G3xOEcLbBjy3#!hU! zU{vl_6|J~L6f?D{io2ez_ciGz4*p-!#Q}vjIwaPAe)Jx<#qD`&|H$tbH>uCm;e47J zRK$>kxf9U(HvX#81?N)j(m1x<7eO>al}`$4ym{;M>?QG2xh_ewa(s2<%GdleuV0%1 zwm6tZt~e4Cjr*5TX_{%l7q-X5Bs<7b24izZ8~d_CzXzGidY*q$`bx*@vCP{%(yw&l zHW{e~UcCtgqx)N1oZmRpswS5d_uUiIxdft14^!a~=6N&!pzp%0nx1b&lPg~P7DZ4& z>`myuLAln-sH;eG@`sJyaT@JCx-4bvkF!{QZSL)#oc-A+mkCE%dCn^@tM(+sqrckC z^(EYX4I#+l7H7#zTK6q%&+e6LIOQ$mZ!+{BrS72%uU2V4q%P*Q5-XeKzv(w}g1~pZ z7~K3@^M$O2C~tUewIN(NzTu9ZW&8#l5jYr{k^8_>a+6F} z;jQhn^)$3rYPBizqibp#12;YhPG;BjFTdrY=<_O>sVwryzORoDC^_NU4iWE@{&qQq zhcxy4tL0^u3S-iDgQU~4SDmVRP9!{v@I#qi4ad<2qN{C`ifa$*bdAM7MPA$rd@bqx zO8aYey0R8RQFrqPBt$^RVg>#E3g<1?am|(2h7{{>S+_Dw#@dBPg5v3PN7{&$wU{TC z%-V=QeT=e;%>y>4%{q&oqEg}CWlS&Et=P__9eIV?PQS9bmwq>B*#4D+ID74*--oe9 z1!Qz_KU~47%}d zzrGtbw=hf$4w7uSIhw~g-*sNun7-0{(mZyV>9UPhGi8@UECoz?Gq{+hzUm%!t}yX! zwB-py68QA2^d3QU#>-oVXPrg;~3SuKS7=}*p&T16*?8Mf>h zWy&Hp^hAdvn`(%N>P+*m&-V)fZ_anqZM>YCOak`D@@X{&A5IL&msOg&7k|8HJvF#z z!z-sY+nkjy&Y=C~cCq*MN9s53qQx2!$F5$&H11t+(${wo@{BBl&4~t+_CMOZk3F6w zL!#bEA6$y&JQ6VHTKv^la@BF|%E$ejI;YjB_8ya2=l1WWW?D_(MB=mROAJq3$ugyUvcm zAI+(}#%KO1_MF|}P9e|% zz~r39?tVlFTT!hucJh(%?o@kwy-h5-%uUu-nc7nHATcc6t%D}bX^BR9_Z|r}Lo9lb zSqd_$O{zEAaH$-2ok;vu3)ROO{T5D4U{D5<1YjnLg`ZE3twpGK0%YBitz#E24pc5O|J4rPBsn_$78Z}A(f ze(R&!_%iTjuaJA1mE=TmB<$skdWLciQD`)J{`r-c4sl*GZU~9Hrp=WX9(RAoqi{cX zgM~LXw;MQq?e{q}J7=Upf{X)*co`DIMPbNm>_bK;f3iK34s?#nzOlj=FDe3h2m9vw z?}l8;Z~0vY*O?is6KPcONqEIDs_4@`b|x*>b$ zDCGa^Fwh}Gm<|4AFV|`25x{&*#g`T+vJ)8QTSK#BnZ?RpIW-(;S%6)5-1SD6ZiU2i zK_oqNWx!HI9@}7b9uPUc$Gq#2A}{ePp9s@t|2qeH~eolpjKBQ07?CTrWhPNh$mhMXeRK2MMv*&{Q zc3SjV7p?;rwD`>Spo1i8Odo=1YXxn{s+IFC!m3KEYOXQ&!Om&?v99BNM(kI)^6)E_ zOZ&^F!@jl-vD;%FZg-iZLS)BmsyQMlIf4O*`{E}j_<_HmGQ?4^tu=HGPFm3#*o zh(}!jQBKy?D4B}ZYWf5|Kh&93Gav@}?14eF_ zTw&H^E6$q<=2>tFN-VW;`^$De)aP+!`GCg}ZtcB8~?rL4aSf)5W=ET1iQ5?6A6Z}e15kvI(enLV|NSbIhj8l3WeySXe; zifRP*TZT=niXRuTEu0&bX=d-~%>Fb1aeXUDC+_{tvg@l-;YJ~og}x3dAFo!dnlA}j zF}(>*uJL%Mr)uv<8tJ56=+Y1QKz@0h?!q8k+9-LiRKM=kDnmKLowvpJ-b_HuEq`<- zp2%HYo{ax=9=WizqUcIbx%@dggodtmMAE$P3$w{)Ggq+Sr|yQ0X%X1 zh3J<7G$y~&9mJ2SL_Vws9Jn|9b_p56!uB3@d0=z+>}$>khs_$2+({S`TU2E!jQ##& zDD1t=(%QWA&zIGf^SnCB^;SYgY`v*!gToq2t|9AJ$2)vB9Cx{zGk2q%4f~N3RzJ+2yUfvin4zLJQ>z@O zW}%%E-8cT`*qKShqx~w5-d^v1lhQp3y7WOb({IhVSV{@t{S>d=oEuQECS6{n^Vy=H zUUATnww$BF#`+LFA-RkbK1z-X-e@Q7XFQ)5XghQ#Xy;p~`XxoNaqpyGSL166?}lV^ z9E7+SRDVqzM817hY%(%9ARq40Uld1HHVq=f5X@U*cMNpal3o<(`BJ literal 0 HcmV?d00001 diff --git a/sound/effects/throwing/swoosh3.ogg b/sound/effects/throwing/swoosh3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..52cc1aa164b3e703c4ca0ebc223c714b4397fc89 GIT binary patch literal 9474 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 literal 0 HcmV?d00001 diff --git a/sound/effects/throwing/swoosh4.ogg b/sound/effects/throwing/swoosh4.ogg new file mode 100644 index 0000000000000000000000000000000000000000..2639b4f255dec3c9b12bf7be6292d1fdfcfe39da GIT binary patch literal 8377 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

?4lTsU`=nrG-u=B&#ux%K zG7@w2nnR)q-L3(<`Qf*D4gRQ!GMMsO3- zu_fz*30`;!9dqKo>~ZU` z$z_Y9!(t9i!XXzJYMI$3mr&Y}E8$Lg@{>^7bIJfuL}DRWH%28ZjLX^l1_!E~RrWF1rp8*=O4D4VrooN5 zZy(4e%N3I?l1aQ*&rp+BFfHB117yUfV&54a+^_s^^0Bfd!^Og#=Hk02_zuGmI0EGH zXGzzW`d@!)%FCoXN~Ct*aldYbthYzKB8n*7H8fvuNHWw&Lj-A zxFMw#kdoX}Z+bY}Y02bK5Spq!mY9~>%zcvYvE{XaJmaP3FCXW$EcRIy{Ds-}r_9?m zJSx?vZdK`?==~Jo6$ps5S$$Z^Xooml8CN|CScTRfnLo_R$=da6IdjgY*W>Vjw6*4! z{wq^iwXOcJhJn2&)g)<;4C8hiYz_{)kt?v%L{l-^9ANM96K3YeD$U1jBcR5 z(aW<@SG|OYR60h$bJvRDD#`$|&?a}+K^r2#aJ^Nwh-iT||9zBM;sX0_Q|NFb@$TD( zud_djueCy{#_mea*gH3y)-T1}cXimP4|}JSb~}Zz9U#`>*Y%cMVOn0P81>-(i#D`o zbttzqM}w-1x_kZB8GD_uU3L+Nk$?gFGJ}v~vs6@z*g9GF_a$m%eh5(+n@psdXMV&7#i-}3tU+^jE{pS^A|UG=^FCsEs-*+45J zId+%SdE;v@^jCO{G)^+Ko$Hm+u`TJb*f2>MYNr`MO7i$fKcV_9E`9BP& zcDC!om9spHNa?ayl*ah)jgUPp{Cjtt(|ygAQiRkwU+ft_@yt!q&vgHmOMdt2W@@v-YGlLj1V; z7y4-4!pq9HReF}1tusc%rtcRkb#vZMnl21%$S6||7I+nQM(E`YJlVtBwp^T3KB3q} zP|Nda-&OCKCu&yjZuK-;{Rx5zI-i%nO=k> z-fsHJP2{cdBSy1`NTJt{=6zY$ie8#4HcW{N#i=Wx@d_+SFs=2%=H`7~|#qKh_ z;mYk($Gen$@6v_k#U>7nO+-So1*Cp^luoKguUum~W6;_^Q+=w_js=VGwdhqdLe>TR z3{WU6?Qhg}Xn@J>ByN(=ByBB(kk4n;ykKajZ^QW28J#!p(#bwO)5Mp)D_ROyGT|xA zk%D#Io0P2Ca?Wh~;l5-SV}5I%{*LrqdH#zc`;0#S-4k1eiD#`wP|^dLezC}a ziA5RXmedYQBZ3*{x$QBp_^<4$x%NNK8Pg$TPMi6R?r@fU*>F!+fCbj(s)h?*d?3}H zvMFJc)n>8hHNtT9uZOO$EWWE$+b?4SFVda(UXFZx#|tZnE<;>%yIykvv(dla+Wmb63s!=8D&i9Z{E-xJ7c_$Vb z^b+r1!SATFM3o!1uog@x)fv}ve|MYs&`o}<7a|t$Q{nf~*RR3vvPD}ZKR1O{`#vzg z5^XiVlDwv~yWEgAy(>g1WHip~uar@&yCy>4(C<>(TtxcKMaW=0EjayzF;GdnN8#44 l&=cJhRbcA`MU#n*j&Jpuf!K*NW=jeLjxxPAX|V{N{{uZ2zR>^x literal 0 HcmV?d00001 From 682e0b3460cb60e77fa4ba96c4ef3fef52a9f180 Mon Sep 17 00:00:00 2001 From: Taushai <81365071+chaos-creations@users.noreply.github.com> Date: Sat, 17 Aug 2024 17:07:19 +0400 Subject: [PATCH 2/2] skin color for edit appearance just added the ability to choose skin color --- void-marines/code/admin_tools.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/void-marines/code/admin_tools.dm b/void-marines/code/admin_tools.dm index ad391e7b94..0b7ec9f417 100644 --- a/void-marines/code/admin_tools.dm +++ b/void-marines/code/admin_tools.dm @@ -35,6 +35,10 @@ // Changing appear \\ + var/new_skin_color = tgui_input_list(src, "Choose your character's skin color:", "Character Preferences", GLOB.skin_color_list) + if(new_skin_color) + M.skin_color = new_skin_color + var/new_facial = input(M, "Please select facial hair color.", "Character Generation") as color if(new_facial) M.r_facial = hex2num(copytext(new_facial, 2, 4))