From 966048c0ad88d7c0ebe97f9fddeba37b8ffc4089 Mon Sep 17 00:00:00 2001 From: sabess Date: Mon, 14 Dec 2015 15:57:48 +1100 Subject: [PATCH 01/26] Adds brass knuckles. --- code/defines/obj/weapon.dm | 9 +++++++++ code/modules/materials/material_recipes.dm | 8 ++++---- icons/obj/weapons.dmi | Bin 27042 -> 29541 bytes 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 54ca78aa39..9b26e2387d 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -119,6 +119,15 @@ else ..() + +/obj/item/weapon/brassknuckles + name = "brass knuckles" + desc = "A pair of brass knuckles. Generally used to enhance the user's punches." + icon_state = "brassknuckles" + force = 13 + w_class = 2.0 + attack_verb = list("punched") + /obj/item/weapon/cane/concealed/update_icon() if(concealed_blade) name = initial(name) diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index f87d7b1bb8..d63e4a5ca3 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -22,7 +22,7 @@ recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] blade", /obj/item/weapon/material/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") - + recipes += new/datum/stack_recipe("[display_name] brass knuckles", /obj/item/weapon/brassknuckles, 5, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") /material/steel/generate_recipes() ..() recipes += new/datum/stack_recipe_list("office chairs",list( \ @@ -107,10 +107,10 @@ recipes += new/datum/stack_recipe("wood floor tile", /obj/item/stack/tile/wood, 1, 4, 20) recipes += new/datum/stack_recipe("wooden chair", /obj/structure/bed/chair/wood, 3, time = 10, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("crossbow frame", /obj/item/weapon/crossbowframe, 5, time = 25, one_per_turf = 0, on_floor = 0) - recipes += new/datum/stack_recipe("coffin", /obj/structure/closet/coffin, 5, time = 15, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("coffin", /obj/structure/closet/coffin, 5, time = 15, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("beehive assembly", /obj/item/beehive_assembly, 4) - recipes += new/datum/stack_recipe("beehive frame", /obj/item/honey_frame, 1) - recipes += new/datum/stack_recipe("book shelf", /obj/structure/bookcase, 5, time = 15, one_per_turf = 1, on_floor = 1) + recipes += new/datum/stack_recipe("beehive frame", /obj/item/honey_frame, 1) + recipes += new/datum/stack_recipe("book shelf", /obj/structure/bookcase, 5, time = 15, one_per_turf = 1, on_floor = 1) /material/cardboard/generate_recipes() ..() diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 5c8c1cbcd2d647f950afd72952b9498413fc10ed..877054a4519380e93985c469f51a6c92f2d4d3ac 100644 GIT binary patch literal 29541 zcmY(qby!s27e0FE4h2amQ3+`zq(uP*>5?u13F)pGNfi{3ZjkPhMpC-F8FJ{792jQq z;q(37`~2=7JaeASIcM#)&faUkd%f@es-~hqLP$pl007C`H?K7S00RpCnd0MuEmc8f zk^q1?@1ynJ?X{(=g^P`on~kFb0C=UQC5$*M@DX>9oM_@7Ofl?=cBwQFbB8j{>*9a> z`Zc8Yr^1->>4o@n*8>*L%|{8?S0|Cu{*TfO&i8gMPm6v0ym^+Revue|nu7QESBmL% zmd+RX7?tS%4vUu#c#SJxqb+hm*}Dj%d}hH>R9f_HDm}9^^2oKs8OxY$rmH_QsCvH0 z9Rcx>J^fyQ#d7WV_Z;io!7PQu>CI%aZCj8dGzj+D>L$M63>T+*Ji#(N}KwI1kdxZB%!N(;F-FNQK-6A*2Bivl>{5n zFD$8@`jMNu8EC$2w# z==_Mc#S@iU+S8)&O|o4tAi4boq00%?`#Sc>%7T$a_~6**S43x_(b0b?(u^vsMimkW zlbvV`!g(xCjb#vl44>PBNGQFASm&o|=T+b?( z+=4=7ZY7QEI*|@z#_N^S&ztS2_NC4DRRlb)rOWDkp3d9R`q;zUh!InxZh?!oQc0ht zky&l(2N&2z-RFs`Rs7ahKD5TXogxFrc;5Qn55-K2Ew$yfbUwVc6as(DUt2x^e^x#a zDF0Yr@2hg4$HVo^QvK6pLiYan@F1w0_(p-zPqm$E^OOQ|&c^(QAu;;mFx8WH%PX%) z5|iPdv81%#Ty^xzW$JwLcUWAyhf(d8(Fw6GL1>Ns$3eprOa%*@2nq(&rpB$Im&xji+q|9C4(9B z5pnSNrU+=a#b6!LnIu^Az3in~nO+(`tBxq>0_% z^wi6cX{PQeywREW8Mpvpi0mqXCLCf`B|bhr-bRA?XlKj$yhr(=Z?g`Brb&|I&Ta>< z`yeEk&{TO=@vOXxY~Bq}d&==eK<8!bTf#?rw2vosxeQ+`vME3M783rrxHb0rnVWBK zv!Goc;SyutE^jU>`hi%LHRnsotHV|ckd<5U;OKZP8Use(L`d(IHELm%0~}aaI7^~rDn;%AGsO4 zGdOSDoeh`b6)vB8vhLEr>R)?UKBoy9(jL)2?SH6!qw}K^Kzm{;l3yLdf@VLzXF10s zB@}Zg3rHab&Ich;*p@4at+x6Sta-JSh{($$jywryBmBr`1zK<}A`H1~4>0e?DzHNt zgmT@hL3P7no&FVx|A5_ObTjv>*QL^#BIrdI=2i^}Wsk<(rY3PJN^GHzEwV$Hw(m?% z=3uI|;d(N8gC-By%P+mi>;OG}(%XX~oP z4$?1pw*A!9$nW33&*x-w8*a`f|VkUTVV>I0HOKc{V@GObateadGnvR%fA^qODgxx@Jkx5 zKdrqpwM9)L3&Gp!o}M~#UzY|DLzAV2ApdI>QEk=61O9hir+f-~nDw|aJUPAN?NF=b zb*V6*_TS4}KP7`vI9qi2(=PJ+drczxJH5zbA$0t9T|XcLc2!ykU2BJeE|1a^VNQQQ znLuvci>DmjgWCRQ*l__qvUxzOxVDP#^#W@`c=x-p?dj$DxtyF_$OrgHen2rH@PF=< zhL3cRU_x88WdtDsX9mjDEOS%`)Hu70-uGn=B%`e( ze#1?QdE*e$+FFkb5!KfkN$4(-$hWqrk`^sE`nF5ti4a7`oFUarMSV2275bHBfY zj8n{QN8*(*vi^5(M=}~ZW${`BlB;3EhvvZ233os#=KidJOIx<>dWes-awkihS`o=` zo{BI>Bk1?SKcToZl3FWUX5k}`;{LA&DKLbVC>aV2=)xwe+@&hR&*lYhinS7 zOFeoU?pVSrYg^c9}AEHT{cV0q3Q0QFE&sDI?~O7no$X zXZA3EUiai*Yh~=#nfTk~g$LomM>2Tl&cBC@Iyw={{9n&~N1Sd^RL&?C@GeV@T_eUQ4wiRjFr_a8rkY0&J~@*o{+E|*@<(}?!Te;C|J>^l zO$K`?=TV`5A~i%`nr5`cdfUz@%^aQu8+B$3>1RAYxIX8<=X^sLkht;tSlb1#SJi|et; zP=DZ7%zEJPNV4FCU+F!=&1PQwZn#B`bcDYNKC2e7_77WGSd703zt)Ryj{dBtOjaQ` zFwKwt7GMNar%Mgk<_IJxztwd30xOJ2;93ft#>kMq!#7GwSTopH(?a7+xIYjyJ6i;~ zCU)ETwi&`XM|uWQS(xNAey5M;(Io+|&Z*zQ67RyMlYxstn9C#k8z6>@JE@JH5XCI< z%i>hvnQ{9gsD%3S%3X$ff?JrKh?lAfZi_LgvW<@^ict@9rtzF+kh$aeY9$OTm@<;5 zl7-mv1<*)b+U`_uk+$x^nP90Sj4weiu4T=KQH}%WcxvG7qxow3Sj|lLNEnbu*s;vV zORad7SfBm&^b1DpfHl&mO4^WGVvWg+@X1zb(|II}fE~li{{H^s^y6cvSC<;^BCgno z)ctMF4W2dQ0$pmGl6rd3|7F6}9D(+$l}l_V?E*dKQW+Q@QRorvn|(J;*K@@9=A#;^ za1Q^hA=pG`_OL6z@|WH4eDwS`q3=If{VQAwGtYlSMA&OV7HU6H?VL)H#QurUla<9J zBqTf@V@~l&%80_1IWKIfY>9%CEed67c6H6BWkinnp2-*ow0ulrpQ2Vk*F3QM5?1FZ zUyea$EO?Ik9=>(GVV#S>e}MgnmG$imj}hI{Q$g{CU(9WGL~U0q;sKA%$eEXsM^Ddi zGSJIfw=BnRO{a|^l@JJj{E<*&UvSE}DpNvefqI*$su@qd z?T?nInQ1YDU(_@s{fHaU0rvW>>CKD}o_y4! zn^3)>G=&2+xy-USpYzTiyzXTlO>B|PVm>)R+Bl+BgR3epgC1lfe%ey5bF~(hWreO- zQmMVdGXdw!!MyL-P)0HDbNDV%4HH*kD>+++-UMo7c$jJmsds0(+3!~4PYL4c8eul? zI$}0)eIA$r8I3}T!2GcOaa5qNogS;Qynm5AuG>wRzZBad%TiKH`C4B7{$XhYY+{WH z8k?kRH%9H!N1(Jf;`yS)25oIHi|%7vU0uzw9!anFKFw?QWAr~$2l%itSPU?~@9Zgy zz8;N-dS7?cU?-205fH5AJ|RCrd1zZ4W!&ySt8(d-$Fdd3V#;;n6AX|>+_o6+C)!od z7wTGK;jN}9zqOrJGrkO)5lL%4CMxiahPS_eKaaVVt;OaVqyF{8v@F2Dp5S+^6&`Td z?z!Gg@|G;XZif2Njid58^(zz3QzkKcnov@DTp1Y2iH{Z~#m$uN&mBQmXjD{`M==u< z)5w=X*u0Gnz$bOpg1WYQONN@x8Bt(r&b{`#ys3lVjuJFM!z{E(cB(A!}4OzR>nUtdt0TMFkwj zkI)Jq_@Ht-$J{2Rqik1LWO)s($jgZKQ?@}StI9CNsrks7c>tzlE%YJ|_*s^_H| z8C`~_(fS!AnC|IBsR(-3zY$D@m(ogh&wVu$9{}}uCg8fgJx2{@dyU=dH=m^9cTXjk zs%xe)#-A&bVk-F`tNRy$2xeEQ6sBYI9C-78H^kdi;V_@KD}d{h5TwYF8xC1tYmgf9 zj#T9w7*JkLeibwDQZ+*=4S>#nT}c`F+d7JQXJ<$0lav;$aggcb)(jSY5`#((9|qXh zuIYq%zk-(YB#6P^UxJ^TM7>O%Z{5OzG!Y^iL9tc}v>OHy4gSB8JGRHyv0uA{fD8)RkHs3&pgL-0L1Ky;vwmHGFk6gOac(O65QNF z&&0*W=U_0H*~wZL{crtGv6Gv>esg~WGSx~V3JMAY8VnCpQ&Pgy#61O6rEkx2&d$zm zqobqcBz-RopSUCR>A!`)eHK z61~pFW^W1(4vr6K)Ggj{n)oHM_S3?0tJjG+Z{fgfvYO$$M~NZ|5ME2#zvCM0>vKJ) z!zE7+gKnLicPeq~^0|R;diL*YBZ$@6)ikwn@N{)W8|!8Ar>5sZG1_`R6tHv4dH9HF z#Kcq{r+Lm>!lw*>{rc4ix!%bqgWR6ah{Y*(y-Vc#>~}V%&|0Wfv>Hy$Yn+jhfhL9S zXe7j#FIB*qq|L=C*;v(}S}_Y_fQ-%0O;>o7ug_WA7q*Po?#d+g3=cCWKC1Q1Sqc;s z7pWQRg#JhqYoCEJ!Txr~D{8~1`vY-^I3*<{9^#TQM&v3bkcxR7GgpHSYP^5HosyD5 z?*bpBjr;z6=%-m{Xs(ixj$POg>IrX<8q6r=pr@ypan-}dbrpSqgU_5(t`Y_WHno1c0VEhkb#>U3ILw%)ZyZf8$!B#0B z2J)j^sG?}*hxj4TVa#8NpTC!K<99NP@REgugs^jQzBF^@cgw-X?qcWUm~Pe4`qCVT z`O!_R7iSwqki>BKZ+|}tR&wovY6AFJBsOr59+4bh#&U=kZ&s<;)YiV=;xgGMe7fUp zow6nV@`8!Q-ScQ!@);XjPg6lb?@iNDi^b2FnBwWz<<7l*y<-H03&}Q)a}d`drc7`s z(~_r=GGhx13y<2=6qHqd&hA{wnVB9YotlD{8WL^e{{}t~V}-7YoQxH{Ei|BJ^TMk) z)0vFmO8arPp`Cf}9}T>#{Dauy&Nft<=@=8iN>-<2muc}KPS&ocyW6TdQkyd_TcdDN zzL|#O)H_p4E6>s08yLetds90}O5JFG|DMJvIE=3`pQTBTs(!6~2o)Wk?SkT>4 z)zQ$AaAm%cteHW$ZdVaLv$28pRgbVO}m?7`9s64~4+2ak70{DpAXJJ3E0F@tf zH~@|F8aA+!z{ZG2gDVC+c<`X05MF1!(PUIP*y|i4wLPy{TTvZ3z}AS;wuW^;LjAjM92cF-sv=qt7H&BxdoU8&2AAN4E_hp@|0jlIP#z zdG}&)JfRkoq+}+NT3@_u+uy_3U#N?up&zDh;=u&0TKF=D_hb{JY;JjN&#e`IweAu5 z-(EXYzCkc?<;Wetr93O6PZ=cAge@@3BpN6C@zaac8D2W6B*pgxwo5)Wm z!xx0alLcHH-LV{+Q9n}+#eBwdNd4l128K;wtS)*rGlOPFTLdS!B+gE7dn;2p@BZW# zk4p*H(&i%Fki)4*Ngm&0RO)_Twlkrg>AdJ>QqvJz#KY6ToV~;{lxH=;b6dJst`V+{ zYuAy32v5DGPm#`;Hx$%mk3D&5*DW!>=)lBd_5DBB>;qbgmiGirXw*iK7%M4VwO@Yx zfOFqZ9%rhu!w3DP5Hv~r%2FfGo+p(l5@2ykt&I*5JRdZ{_oqtx@mZyK1gUq52etOO zTHPp6S1aCR#s)f}(S2>bR}AKaNem8`gG6SM0Q07zusy>j1gmZPZH(Lw%FB6qF(V+} z#!b4Pfsk-APV}DX(F#^mT6y1ZV}1ICH1pWco5zpiviHMCpOEU66|@jiqNo{xabpek zgTGv1lk7ZCqiY>dGD{p8cMc_2oW0LZYHfhoc~FlA@-kG|9WHHoZz>!Hygk2luO*pl zgWT6pMbCKhBSQ3VGhF!HlY6f)}2Dqe@ZX>pcFWtXOg;mr|K+S+sov?3f<`I5t1UdQn2~rGH-M-YL z$je8JWn8)$HSSSaG5Orzs)Tw6I6Id|ENB6*i>}cgOW~>=m><;*CTu?Zk?~vZD$B#S zJcEI+6f(Q}aFZV~Y~-{MBX!a^;cN1RjgZ}W77V^6R?&0KwM^haUKj3)EHdGE8Y+a@rvC0kDL&gT9) zSdoyTrp*pYOC!}UCEe`mq7nXpUsYAD^vZge@&hqcPP_TX{w*Jl(56uD2z$~W^xmJ0 z*7_?sjZ_owl^Y{xRjjtjgbvJ$!!Js3rPI;DgxHe{9+Non>~X|$)$-e|Z|eGm?SJSL zBtF`Om8%7Z_0w?uuB;o?vUR?#`YPiWplz;_ZZqxza5JUBeVzZx*^Gs=e*kBUG>HM#Et1hyf(2Oih|t81EdE4t zS?kv1tsH?>iLGmiQJfcrU1*@Knm5=cZ7DSdI9q>p1GCOJmwd*`=4)3}=25hpnC?7R z=$WMOz`@#1y?u6_UW1^1LB@!XvhP6P*Y5|${`>Zo%|B1Dqq-Dm-&J~^yv!)1fBNAC zUcE;l50Bgqzvw{oi6oSt8(|E3S0AZIK}l35CFuAAwIM4^F7t4GOX}&PAKcG{7TBZ$ z-i8Z-!0mm6VV((o$5?b`)z8mA_-e|RLdY>?gK1MNX;Krf|2;3wlV^K2RQ_V=S$)hN zlqD_NOGnq-uJ}(*SsCM`V}<8a;OhJ`)=1KK3ow~?`ChxvzkOVpSMT__B&XcqD}%k{ zhi#8YEY32_GQjpZwk;DGQgv%3x27=g=78>sQIt6mQN3^EH!A+&G#K+c(c%WAUUndg zi5+qZw{W0zIk2@0Ryi99MO|I^4c_P^lYBL|rEV4s%o)!Bm zqopv^w6(Pz+eKSuPi+QUeWfGgJkQ+PqMT8$#2dxenA0Pw-A}^%=dt6K+=c$JlGqzP zbZDN>KQk1-fR&lpUNvJpk%2c_N{`<&DWp#e;JP%_4v&v^;ouyf{F5~^Gu!!9w|w7? z*wp+=&`!e7Fg`Z!{+aLSjhmc0g4I)lb39{QY%i2p`@db+h&v)JRHvv9X z79lFSCx3LpO`7*HzLUO6Wr!|QU-!^^aCo#G6tO1J+c?Mitm)zHfyCz4-D;J2Ax@Ap0xKWeS2r+MPxQNaF; z!mquG$-KpY(3In{#@ZO4m9^7nKnrGAY3(L3D?YoLq-Q1sJBV2S^uw`B`y?i%_ye=NPyU`mAtm}Zde?i z7LFtrpl)-{8lVyoN8*&qU%HG|9KPC5J5Wp1{u&W${upT-tUl57P^!E?RZB;ML{~(2 zBOiX+D5^d+dvbYLX?dT_(==*khJ;jr_DvFLFK=hs!Y0l7P6X_}t9r>;$M6)+{5OHK zqJrVAyWRzzK#vslKBl1pT0kgyhuoW5Zl{%Z1)g^>xx6S6{7Do>xuq?eAG5l^U?K?c z9ZWe1@c;5emWFrHp9&O_+7fgQqSem3%I^hL}pZy2q%> z{vZe#uHe6rRjS42RDQQ_FzV{iazC>j z1){H|r4Ntf{<+E*%Oc+Qn#o_l@~_=JTn_dzd#Y>;o(ZW@;7)nes#!k(crFrGR)bGO z1}fl;3Zi@XwSLD!;7+;^MD2Sw8^p%EGpp^p zbgzBqEH3`2RE!DCI_Wj<(Wj3kY+B|LlW1MzxAPCSlZGLQ|*8d(STG6D^>E4S} z7mD>;-$$rdHagF_)1H5QliMm=7e<+?9CBkS-AIWYGM>JYEIq8G6{>%lAe#Zw5Sk9( zOn^lp2*+6i+{8&Z4lJnW{sD0--di=W{9K&(H3dYvXpmO>AFWk}_qV|qJG>GxK?Q`2 ztMFN(%spE{eky$F*8CH^RfDR36p+dK?R>{1iCChb_|;H&nx5VJTeUA!`vp=V<9v7A z3|Q`jw#{If&eYb|pCv{KJXHr#w8l<#@x@y`H2mM?)!4?-N%j+is`s|Hwb*y0&G#f} zW>ccf?oGr4k{c3;DNU?IqOif74?3Z{%_&=VYU$iu3X803ueHzVLkE z{(t7cj>uqSW(_0~WKG3NVUR!m72wybI5vJ=4L{mjA5lsg7trAI{wJ7I$ef8Y`k)QR zSc_W$G>v&@8lEW4ECY})ARFu~?{;46gC_4z@ve$n%Oj;9K0Gk9eip`E8KR6w|55Qd zUbl2^M*mZ)eR9%%6YE<-X5v7z!qOe@~RZLx?aT#^^hGU&RUW_n5W1>s}C zxjnBPy`Rq>Ovv7TL%L|~*sh2izHp;w#BFsR$)dFUF2y^-t>EqOg7e=%bV5Q{bF)PC zZ@1SO{#elMGE1CmKXL{JWngDeT1@P^3=#PNhRn{+{@RZ0`R0fk8ymwth3V)#ZA2(2 zC{Roz>*C_RI{dHM)7M=l22OT7i}`UD`J+qZ)&_M(D{~f)$FwAscf7k#kn-aib$kX} z8~x-(vnb~ATmnz+=*6XAvN?BuO z_eY#bM?YdHE8|FTDyeD79rr>4iZpu$m{cCmnT{H%I4L}P<=GHGepxGzZplcM=_b#y z1#rdKO~f@EnckMd3}*+G`h!4D?-srbcCP}ftlR%k)*8vBVU3bakp@J)w^M!=hP8$& zE4+B#rC;BHv(wu3GB2)kY?@ZZ>GidvGZ>f+V;9lRIXSlHvbVj8Ag-vv0lX;V+orp4 zh_OEQ53C&Q5PtH;k%G8Ncze4q?Hk+P!bg(@rNN3S1`!rucle#8p3oAt*w(RIEN>rH zMS_RHNFl^L$u8d*j*>~8|eQFVE>KWg8iwu$|=PLz^5Hfajesr;76dq%3R zaOfALDGH;8w4fywL&Tc?qg&gdK^g{-Vsacb-2Ff(S;Nm=l)$(*IH8z?26#~)I6S%v z3xtdfkscGB0T@n)@LokTJksjS~o;5*g^r z7v2P6>FGr=M+>HKDHzj|z9Y(C z|BS44DApW7`yzVmu(_IKx;8MmzVN zJs_fv9-ohC&M87SOQU1oK|&nJIA~ZDR@tb%ryP$Z0FNKi%uBSjT=2wla=7CTZHr&R z=d^Xm&hdqO1~nCRiXRDdZVSVHbkV;=y*NvKFW)kqOWgwXEIM$+E z=Z)avu^2FP&-rOyF818^C@_PczuEvWY{abZsiSttUy{k+`0x(t<{Q3i#-Xv75@?4q zw}ODO6moJw<&EjElYgWW=C3D&h0!M{$$PA0^HTe?Eo)OPEr=$vi}fiqO`PJ?HZEbv z&o@F-6r)E#p+2L=j%qrR_~iUVLC>3GasQ!uX{eb_WZ_LmvZ5&ekI)`q#cJ!L*Z$i6 zx8D)5@(IDH)xWAACWxRKvmwlC}|NP*m zcuJ`6S$JMbawjAS5r$+&Qvowboqkz4p#aTm^Bw*07E0>i7fwh~b!tkP=`7YaHeXS4 zxL!|Rr-F(hNA5e72}o#RkzfObL**>~m4Q){=lQ=)?jQ;E01_h`FqK&0s6`0p@#5~| zEb{V5$`55c61xKm;WjAfSDQ?dr1JMm(i+yw)Cr88P$3KO$=4xwGMCCBCcb+B2x)@? zs|#iKgue)FYqFcm{vUl!B0ov2Y!*J=9ca)sV|u#((5 zt0Yd70wKF>{~vTattHNygFIU=ty_NN?d|QgS6VlpOHc(@4U$=qnFLHf!FfF{iG(1E z2F#Lz2D^{cynfA5htyGm-!2iYYvL~_ASk%ke9=wsc$`;vRM|r}gnWwr7oK@@UKm18 zKP7#(`iSnmTxM1C`@3glVnH#FiNq;-ue=rHL`{)YtE~9@zWe-DdihviY{+;jE87hs zCFO$&F;%%2-|RPDd~%_u!=~GU*C20DqUUnu5==vBIN1qEZg+2e*7BC?U5J?5_Hnv? zsZ&rZ~ zFE?Kva|eKtO2;;m40b}F{;t9GmnoZK2zZc%;B*Le~*|p z_}ioeE<1a8xw_4l=^r67<1!)zqY-IhKZ2VD?g_?LdlwcnW0)={)#Mz&q${^Y^>`df{=|zj$uE4*pA81s99vGvIhA;R4UxY7*93f`Jmr^586DWL9`{qwN zF13jD!>cvEJPDflwWCdcVo*|L9o-Kqp-Q`u)O7r+PQHRHFcYtP2NNRh_iDtGl5`oNu<%nybF-p>9&orE_(+%@c^3Nf!tn;j1?cL@GtZdl zi5uA-Tza!PI=dfMn6>rpc>C?fX=|M#+^J4?dYEFwcXswC21Fc|8hI?egUvVlAN(yY zruH-RBUw^;jpufL+3o6@UsuocEg@U@|A$iVNuGW>x;6}cj_zwkb~Ha({c0K}W%zfL zqJ6j8_Y#J6i;28Um!P)K=Wy*Rg&eHz{S4Zo)aAL@q2Ob}k81qV>gv#%Ajt)K8{1 zxGwxtYTb-mY#)yZTEcN@i@F-hS}U!jf@zW})nSusu6QB8l{En_0kfY!2|` z;&s?Fmd`GJ>7h@0$S{d#k^jR^=X3HBW|Y`}-=+Xj#{{M`FJmPY#3YO93RR+Ljd z(Y23JXY37y)aBkwod^xCKKp9}eR+8+VZX+26I0{l6U|2am9BUZ?yhaHWMaQ0Sgnd0 zy|@Ra>+vy$fEn`f27GI6JolP~2ekflKd$h#W~qaRQl=g^P$&qyC>se80(FX@wDWs4 z1kyP3{dd2K7Kg=Crne6xATdoH12x!@mr81BHTtPiF~DR&0Yq`$dD-nWgiiBZ zj?UrIxaZ zAE{{-$;t7XZjINvrdL|9J=c3#`y?vai$2X?Vg_cjH?(>tu)q5NAJ*`m?%OHO~DX;aie+_!Jv#4cr>_CiCy-X5Kh z@;9jtA&-_jM8XXNt*uGWj4yb*GJofY|E8lBoh#zMZfT9bI21n)HpQ_CCVp1W9?_^D z^o#J8z-IW7o!#U2*Et+(wTG63E<&dJhV412p{|h*%D5QSm>|lkBi8Hql5|V=A8hz# z4KqB=sI&Y6Dx15L2TcmK6dPkJw65v#@WofWcK+G4mi;;Wqq!|=rF-e%J+|d*y&!p- zM!y*8F2AZy9~;N#wY%JzfVy>^!FWkz9$59w_DmA>bGGWd7w@xtv7B*S016EgODniG z=fyGO>1nx%=Xlpb>dhwo*b@PD-dmgbNd8d(s3`VPtZc^e)K)Ew_cYZ#|DCtVP|}CY z-3`5`+3MMD+lg^zTkc}mU*2B)r=R4=^TwUO+!d4UomP(9g_CdP)~)wfg`)=Q@-*qN z9<(RP#LrXy3sm;@K^l%p-EXD@E~7_^bi<|SgYT+q8UZBFD@W*;x0+D!ij_7q_yK*= zY(i=X?`ilw&wn`uJwY|#DVAQw+VDOV$;dVX_1AEJNcMuT82-Bix7ze4X{CK&8RIaB zS_!=uIf9XB&e!m5%}><*tZmNos73fnJwS-9A-zv>Y;5Ljse9*xA(>vLmXP$9!@US< zFT`hVc8kM>o^tcfH|h{quam8e(lyZvt3+`~R%QDNE*5ZyD@j<+2k9%%@mg>F)BIc5 zG~UXJ1n|xt9WV3{-HJ=nHUG&sl2hrZF@=!T+0|R={x0rJWA30tA%3ZNu#GiUD-(`h zZSo^z_pj@4#XR=wCptUV|By0>rT%Q>%Il@AO6cRa5Rbw5Pt*PFxgo@{5xpJtR{Cd0 zQMGQBBX@0K0CRptj=h0~`w9I^sVQmEMsb@aVq!>Tb)-pC(y8Nj`^EYbf8a>T=tsPU z&M7zmXwN!_+p{L`dBjH4a6;oxm6We?%C*e5zD0dC+%cydyGt9 z`#h* zpawhBfk@_?-Bs1~v^nZd@=O&0%E23n!Asd_U{8Pi$DM%eSNnk6DhH+F1o1=B(F(VY z5F+Z239NE1ABmu{_b@64r3C~u&O+wcOQ}IQ59Q~36G+{X_n&)v-^gNNbUpN9!Zxn6 zVdxtg!~sCFbt%eP)#ztq+;2vc$a|9DKJwUlY!_p%bhH&xnu51tpC@2i|8;#r9LL z+KPW)5(ZPf$7qZxGy6>QZKSX7BXMp#|3+-{?G+XP8gP4!0hGUl3K{DJ4eV4~1Ne4- zHTHPHVnBUUlf^6+7PMcsZH$C8&G6)uw{;z?zkQM-Z>Bv}wWmm_FDE5q z0(EkaA3f?YMcLTc007vB_Q1CJ8oR!qPm~gIh^V55QbYvpX3Cxb6(7DnXN%QHRsbo3 z8Kh^)lHO5|wEwlpFPbtLq~i%UDdwJVDQn3IXXvxtKTK!?3BYuFbTtr3kUI&hFvId* zt3-F+k|CK;w>O^Hwwmf%`ae|4hU=qZF|Q<`oZVDg!|3mUftcU|Sl56REd+^#Vvsn* zWcb|!9_ohSNpovd?lMnlsXCAYrXO*f46qmK937p>-#2-1pPZfjEzzqc234-@n3#Y) zvnk9`J%nyGx8md}UcKjE1}aNP-IH4?9BAHPMo1*HseOxYT))r4yVBBd`TX_UFurLf zF?5a3LMmz->m|qvKz27qD&C@ru&{2OSvYcs{nc$=XpAxBqrhVafzTJ=(F1MrD4%p` z@l$K$)d>J>{d*TH?iu3h{d5tN$<`V8$hjawiY@ya*O-uAHQoO){_V9#>8a1!)H}Z$ zg}{}ki_>Q*{*MwH;AGo^Yge$fujcibg@uLh!BJ`Bpad1V1D+a3r@nED0@^FN-0x2# z(M}eU{$0o!e0uDw;1mRzOJ5fbAeXz@+yCrun+#fPfz*u~V5EU+LQFRPJk&7jNBRfK zPcHDVu0EbU_!q;g(?WYX5^3&^rx%1!c>Nj}wZ7)M*1=f8W&ZG&8B`_zgkyiMv74c* z@&|>yF-DRpB92yo>HKe-zXJosbM7|y)5z`+cBhRLuLz>Cx{iiO6VS6@fz{dqSji~> zmaXIGnW0e4-9l(ove@j@%3~&T3#Y2CX7MJHn{3WFiE%Qv4vOO-j*QBjhf>37aJxvF7Yi< z0cBFaS?J{f6TzDnCz3wuvegCY`%WA5x0S0~yA!6=1XJaaUEENR_ZS$>>P%Wh8s2{> zK@RR1j|=g5DAX?U>M- z#MaJDoZg|KE>JCbmms?*4^m>bFaTJp1Z?f|%3X$_rKO#1aJBvufRZTB9UQESA!qc) z@B_={Iq_DetN(<&;FD5@x(D6vQw|cYwoFt!CP9h9eru&o5k3qN{DlN(c zC!^8Fpz_43u`bK~kol`>o^PG4t^ykp>us^z?2S)G)b&@UizC0dpOJI8ACo!p!2D!QhYjPT~{h}=z92A(0WvN=!u^~@#I&e38OYzi ze@zGCxkEo49N6#vz7Mp;e~eC=Lq3IQR=@|A!@p}?W8snhSHfZThoeuD@`f^U8{n-T z2l^c_7o}cWuhQ&U zv!y9`jC=Q;>FNK1eWV^O@-C*e*44!(BU>9nf`OhTu!4-xm$$ZS8NO))mkn|-Pv;eB z&0fx0{33Cn+sgnmAUhS$eRn5!8As{K0--lUy&)NqEqnWaY$BPTKE>td=YKD?i2;r% zc{W}D3@%tcpM!Uv?bQba6JUpLcleUY`SWglW$ z`6K^2pHrN^S&SpTm8lrBCOc98adzfrt_*j43y0mWuZBRIu-Y~FJ+)~XJU28_EpdNc zEt6Bi=mV<oPAnWa%jpiH zDNZC;_}16m71dCI`zjr5A77XD!ALNHHX(FGa7^gP2Ahdn8TxxX z1r6hmC%`lnRW1GLR@H~T`&L`SX^(k%N1RBZvv$Cc(F6JP|+SPr=P^p6=j2h6rW_-!0Aq)jS}q(Oc7dvF+c4kOL;KPO+m^9kTDw@hr} zjNtN?CI>1kdVctT1Q55kwA%5zW`6%H@*>oEe4yzNdO9xU%R=LfE%ECtwV%tQDJM#V zPj&>I?b9wpjK69s-o60E@5_IDU!82T7H|{?ORPUc`ZW_P$)qaRhqk};k6J2Z>JRUC z-q?!i9U1A#&j_#;YBf>v5`!?kknorY$*uLwxP#DKDhINIT7s@ zW}N_#uabtj4jDXV1Rh>X;rUsw^_254!?&g95?~GjEPEzw!24pboTE%r(Db;PMu}gk zP}+L<;o9oz=X|#BAv#LXe!`DOsjngrjiSCC0(a1eE#SIAnTPBXC;s!-rHH0G_%?N4 z87#5`AsTPjl0ZzL|;j_1!x}cQT zYCai()wX-QqDJG6m-MT4p+^({l$xRpfmOkIig!qg>$u#Uv^q?BUv}?G+dpcDdVe|- zfgv*@V{k^~QG7~U1QQK?x$=Y2;Z0N0kL2W{_&A+6fp{-ZB2mHFS6&a+_jnCkTeWww zLI=|&I};eTKZWNx4ua+i9lMdIuLAzbkpM!##XAvNz+f9ak_O_znb!9~IL~7dSWud| z)=Gp)qg!9mAdFIWm{jb{pY;0NvolNb1pxi46!NrgZw5vp5@TC;D}|@ZlYgyjh7WWh zu6b+V`%I(sya1T*9-X@HdgPCc$H)8B22ZWFQ-mPzgqnB9uVRu~-@~Q7j!k0|_EfL! zNZ`EBnRp{D>akKt+#M6ENv6t)z;iIvbRNt8$S``^${wKPWyT{3aM$9LU(Xq<=)wpc z4Qkzo9!aCOb=_)e9hejsvgc;7q6iN)1~s_GpVmmpc}0vkl0Q4eGkrf5lPoPqtZxLY ztnD2wl$~>Y3Iew+DiZ3JO8K(fn=%Pk!c>w&OyHtVCef5xsXq8VN!o zL6i_A5?urd#;74`61_!4L=Xhg%ZyGKy%U7!y_+#+-tqtMt@qwqZ@snVDtFC2_uO;# z*?WKc?EPJ#pWo0z5;`KW|0@?jK4G%bgSO6l?|rqlUSrCMgA115kx9{A%)!BdfvnB* z?(?#zi`<5ZuGugR_-K1-Muz_WO#n>-Z``;MW)Gd-?$fBrS!E}#SOAuW3EAyLfr}U0 zXRhm~TA+sa5U*VnN(G&zIN6F5IQ!d<<7Gxl%Kgf4^G0@GLF4={luUCYE+|EL)Ra#^ z2K#eH_lUid@q(cCMo8*XuKM1swN(+Ksb1#5H>uNunVGqHWP}}b7Xt#@HzeAwQwn{c zKfEk(q|F|o-bNAd<_UL_m|Mi{+u42{yFUg~jLyMLc2PL2K*5&@y(^V%8Mzw0KU!u0 z0&v-h`6;mRb7*rdkFVn6U>6U(eka1x zZ%iw&x5#Bgxk%_Swpr)N+`BRgnEV`j6Cu6<2|;b`HyAIRL5G-qY)V3TK#iMk#Gf~2BlukiX z@@GfSORst}N+CjW5)J0%KCNga4lPDE@k=VX{(oOb*% zL};Ob2QjMY$wGlKum08%d&G{?I=qn-Rpy^!gpsu$%q{$9ti99)O(WHJC9Z=$-|#C9 z9a9raI~rFB`!?OXEmY=b*oJNi!k`{^H&vi6&0xOVGr_gE{UFRLGKg}8xRA6l0HLHj z@+HnZBXm>=8c^&9T8?x-Lnf#_dV$-Sr-Obbi=}SM?T>nUY2s-f$YnLZjXbrfks6 z@t$bDlGY3mXt4W#%aLyPs4yKst|YRJk<79ZV#%-ML@A0X@pHjK06*PorPKz!V4kpG~C=ESvYw{KT52+qTs zp8c`hJo&Y9RdYWITT#`P@c{pf(x2BYG#P*(9urv_nh-K$M(E8*;l<7IhX8s2W|Py? zx!Igwx+$ce5*9oUK{e{)-@koJo~^fPUmV-PA%=~2Ey2An-lk_*nAnfv%;_)eh59^b zD3yK0inNhGmFkzmg|WEQe#@$t+5827q=G$cp&V^ipp(|v@1K+s6g=ekr9Q0^?)4_-{Z zUn6Fc(ZZv{{`yJ=_jB3Qs2pjj1>=$7Fen9O!Mu~vrdi8M2XP#pP@;)coA{_?7x!p{ z4gj~dKs&X4n3foFz?tQ_Y|HkJ$mb=^N5t8-sRXUm)~h=6J)XF-Cd&AEV@BNHJE&&u zl|I<(Zka57F!lqrSLs&ic|s9BP|CzJ%B`-h-j2`b7z@d^vg-wo3U>zbAekTEq?YG8 zKS{mkH~Z+7?W-@Vj4y>-Gv4JcoivxadU%|HjyybE3{dmG<4uaKLmq(|?I|oNGbpy5 zWGV?*5xxMS8AhuIO^*B_&ncI<&~$N_#`KeoiqQKwUHYrXOp1?JsUQydRliEc*JGcL zfy}>kgCJMFE$OCztt|2yzgP_yrYA;doq5yVpUOe^VC`{2V+vZjlF|Fv8wROQ`kaM+ z?qs{M@sZeKU|j$tZ17gG+9e0LCjDXn(B`kG4AWt>d3aTRBfOKWYkkFy^h7T{gDu7|eGU zS4zPGwcp-$>5~gsETj?8*ISN!r0?spbCQnGZ^+zq2W1V4Q^X{_rvzWjI(bh|k3v`A z-^P^bvQ-5LW95taP#cIMF@jHsL1=* z`>fX%M%F#WE02`^mQx*lDF($?B$Uqcc0vrnk6Of%EA*U7GzZ<($GIPm9AN9C#Z5m( zOv(6yY7#IhmKquwb-I-ob~pQke%@W^1W&!Er?c-qXOoFvH01@x2_aYdIU1~PmoR35 zTas8_I_J%Wp7eE_C=fyU7XG-}S16+*0aKjL(q4YpcJ`1#I?iZ`ZUN!GVhcaRm}^Ib zX8!&OWn5M^Nx|*jwpl>Cu7r6n@|b+IeKbg>=;r~eO8$Ba`0wxIq&VaqIiQ)rTth2D zOaOATqdqmYPNup2NUs4KC=xkqeSHD7YI^op1xwd&-_+mjsr?GwgqC5_e*1-gi;Hs~ z?%9YAD~LyA|3?G0Z;QE@l;PYTk?@iF8><`JH2!R5@Jb8ygYvAl zbFWG4a)xmnZpskbT$P=a?&gS5&Y^zvIi-GCX)6e>dl$c*8mL1560A`U#U)Kha_`U` zo56b|tFSx&>>u!&6sk~M|LqFM%1&5v2dl<%+ybWtCBtk>DK_5JX8X)j zlU*;5Y6oHr9anU+q0n4TEMiOkvjc=W>)u*B1HT_$J=Y{|Z2mqmBCysx zHee=(rOhBYW1_iYD0JP-<@s$}n-gaoJ6$RAYp+CmXG@V5!{7P~O*i@$&oVRj6=D$= zFMb(HK_q_HtFcsb#}b|jR4!x~es5|2OQXw)pnhkp-_TSOvy_aWP2DGNv?H3go>-!O zpgg3b34R@}FWLE$5fNiH(4=$v+h@3>Qay)&^v$Ub3-nTaO%9RK6^K~c=lsN$loTZ! z)ua`GmO*uY(tgv){<_vbuy$qrf-dzXRuk9aYsa&2rB9)+fV2bTF;D<7z#Ww?<8bB%TtR8ihv1$)>|eI46GzI zJQwJETq3uR0kJ^rBg7;qKc-gUHKal2u1d%`VSNiiisaF{pUk$ZI*{Jm&0PHj`IP-K zy9JF$Rjv|0FCO5Dj!ag6MRx5nVHjN#0eJ6cnEb0A&o?F@V{S>u0(EDi^#POB%ef9? z%Yrudo|{kfC%yBf{2T&&csZ_!q5JS|*(fxR&Pk~L+?B1Nhx&~<&!Y;_j#0rav#b2TdUol9mZ27sfIyy$i)ngeFE4TYzM#JQ#>v24s#~^Q6CjWAAMf! zYBFd`cHc$#E~vOPxY_}OGRVRd=6<}Ms^k6N>oq0<$#DKrup@*+UobhShYHi-i;iG)EH23h`KZ^$YC+jB@ z$7^Cf5L1!;99DJfE1xNzh(Qzf_xBB&;5_^B@|x9t9z~Wk&dIutVjD>$F^S`;W=)NE z!~UW$D^hn6TI_*2 zcRX#sv9aYHkcTk}wpU>gJw5&R{CslAar7q)i^ZNNsS5}Qe0K22c9G<;lI40h0Pe7W zKWT8|G@OEUsl0u|7oeb3Tl{HeX-qXN$k%riAzkB@gpWBapY|N6(-Y9!ah4L z)6U&=;{4aoIKR3G+>iOi$eiHG(>-0lA2GUbTwp4g%HHvW=>KPpbCZSR?d@}Lkg%$l z|3;lK_u`}YW6>OSl=kn$s-x_|!v_rd0U9*O;$@$_v2=Ch_?%B#9cgcQKwJ-#UN4h% z&kS8$%nX{nVQQM9^9PUjPE+$?qX>d6FE4*DD9Bztyk@EE>3I+~j<9loZ4LGU>JCYV zVbR2=Oz5_BKmK-5meec;!whr1zeok2BzwJXARKY@f!Pd1-U!+5_eOllV=p(4V=3QX zZu!W$d+~TS$MSRMUsZEdXC9ZMc=)c_^Z?WCs{J?E=|@Z{Dqe+5TOBC~#`wNO14#X4m_{VXytiUcLK1!|WM=qlFvrm6W^iDY{~aD*9Sg z;|oinAP8e3s;#f@mB&YQCkY{0A_)0cP?$J4|{cN6jK`h z>sk2|%m(l@N5UjZ@+D$9T&CuZ{ERREyFH!U@x5TvfpZC8H?Syn&Kb}g{P>w+Gw@AM zAkbfcmzP%nRKCq^UJZ)V)DYfX3=4wzuF~8ym_fqpXAUKMM;PKuZZ`GdK-VBEg^Yq@ z2Ab}!Tj6h>S9fQypB~n_m&>1TTc?To!1Vvsv;C|W+I@I!dV+OuvdTTgFyp~2+IBLu z#a%|Qio_PtLi|WuOwFV8GFa)nd$xo+n>J3{vId_9<{A{&XVurA2lYCYZgX!>9vT?T z>`a30nf$bB2urlln0b0Sgt?nycTy3djLf{X#c=;R!5ObR?TgUXc;@|9EU7EkP+PA@ z!`_<$?Ax-MxjSr5)j6IX*c7??Pg4#^$b|Gm&zJ`3lJRjUocN_BVw;>hq^PKTj6C4% z;WXdnyJ=zHzFqcluLT_etB{KJB=o#DRa8{es}t!Z1v$AVfF9@h^XC}A9|J*cF??;? zb8Rq)mQ7US`gQVW*pv`(_3`v0(FFg!A!*cIFvCnAjslPq_GPo%ZG4BT=IYu0mD_{E zLlanZW;q4)UU@LQ%Z?^k7Xtf5HqcMUG3h5DG2$S_?(+#`eS-KWe%%i*EIT;-IaA*C zBsdrzBM|WG>*i|`>ZqD#jD>gjA(7q)tK*Vz6}p~JYWc!Q z!OyFQdX`0ij3t`)U|lCs9QHG6!>twcd!4tjp5eh3TN!qm*_r5FcmDPV?y>!Vpq)Kf z7#8qfp|*04b|QLU5MwLBKf?0QyYFECj{6>!@GV$J!SvMB#&B?uCTi8&j89WXhgRqA z-2+q9P~OAF4+2`F{ncPX2|M+xAHUG?I7yXvDk1sd_g+*ez0o4{Eq;?&SnA6X@MBNxcod#@TGG0X3(@Ee z$Eie9&Hk7=OCIr*UPMf6zuNIJJ-LT$#^|VtFRo>=e6USn@pQGD9pc#D_-Z;M)d?ka zb-X~6fTdpi?xClNi`vwC-$*Hj7x zx$^ACvQ~X4n0mSRh8`$!mmvQE2;)A4M{+4V6M&4r)+pjg3EeJjvndPGCx zdrXI|b@Z*pNT5N+&0cFo^E?^I(GPuG#Q3_)=gM*fCE_SHs`n$V#u|vTZqdjb7@Jc( zJ)((uDzpWJ*^Ly0I0L0|IzJ1?hAL?O%fsboN}Q)=y@PjO>^>(gEgh_{jtd?d9Q=7b zl;MT9v{>V_2Y_7Z)$#daoZDAP%YO8A$s_~>+;)efY^XrokuTP*8>{6?CYj3i-iWCxUtrG6LwjvLrob$|c}wNts_@F#(XaM^b`*c* zt2D--?{HD+v&ZUiajs#G{S={PD?tN=LcCH=Z%gp+yld5|XD0sB^R-XkY>Pmow)n2G zVMb39?#7063|?)$e=)pn=+HPd6?OCG8PD}`!Q08yZ?;>0z0Q%{{CXKl>K3@1)W!F+ z4Bo8iUja8i14~TDs50^)d=2+moURvf**n-OpbA!FT6!(!4zdgH>16iMXT-jL?_W|< z@;Qw+&Xt}|)27(uQUNm7Z)?^`2QzntUrS)+rwOZ+mDs8~`CV;oj_rYS0q{_bJ>D4O z2M^xkLYaIABOmY<0jK5lfYjQy669PSE#Mw^F=>yNK9Th5$GhXROk{nFaq;mm17~~Z zYf6LiXxEVuX;t1|)-5zVer2@G@AzO0hPQoA_>(@CIg71EsARu%cdx^n*})n{i~^8D&$+K| ztPoWof1|&!;kU`Mk4e)5nk;ZlriP%>L*!EXM~ zq@<+x^!E?B_-s)Q>qhJN!Qqjs7x!n*BGS_dSo%JDrkOBy0+r{6oO=5d0*Brjdn#ij zepD20d=2zSS-pUoM>h;hVquXyR5jT7ES;FDMDQOrg-9@~g0V<7dU`s@*&KcT0G~Xd zTkW`qf+FqW)~$Cl%>|4pc!Y;5@|6-_Go&Q z6D$5pd~o+?#2Wf^O!$Z`N&0Du?vIy8)RVfg?+VUrvH4R*-r~6;{6P<-yyNPJ|P_$yK5})v9JUc7K*oX!XY!RcKfo6^73rO#l@Q3aB02E2fOoTTUoi( zd4u&s!;BQyq@lH`x>U}nTRgp~=j2dQ*1Ne6tnR!8EKo*|9=!tvGc>ykSQc$d<&(z7 zYYB02!9=3p-r=FhSvZFcoklMOESp3!9bja;R>;UNArS)_0#4o}Df8yJU4+*LPiG2( z?;)V;BL3}^P3BNQPfnWq0&2FE<(!aD>iWm#Xg^-%bO!JNNf1{=MdRf3C8z=+$SD8Z zY@C6lf#+J1H3=oQ;_!}zGC_v;(o^*-na1PC=Vg+0B~!6KO+>E<3p2;blS*vbMu7@t zHM{-2plqm~VF_5&t#*MJ4Y`x_%xp_A0hjeZMS>?N2Z+dkX)AKvVJWYmNboL?N%ym- zOHwwbJkN9^f=cg5jCd!N&kiKn1ad8K|HcDf z1R%AbKWoBNm0C`_56vuf!m!gUntTusmV{N9elXvZlYskB?~7-J*Iox-xPuTD?pRkl zd}U6ZmW(1{nCh$g-{r{H%^jy;rud1HSCvdPMHcuN_=v87~!L2NzzYg z=0vbz3EYP8V%*5cNGvY4-Vtx=O#Q>Gg5k7TwZqAv!NCV(`z^tppgju<-mYgd)iqAL zG#*}FGNogY)z!*^|14&I1c7VGVQ~Mi?NJ9QRQ@#yT(K-#yC`58n`WD|@GHv>QdEwA zs?UKDX#{;;FJQ_J)TlfmflZ4pW>7a}CCSnI=MR>Sf*kxK3AXZwj(MBQP%d43RQ%A5 zOMa4#1U?kO4W&QN(t{wWrYd_}O-3w>6c%OkZ-pWVfBR#b`T^(_#zqE-&5!maLm`{ZMcPxZ~lpPDgn{2|tDxD-i3 zl^&~Xp!NJOp!J_F)9RN51%+G4O2QUxRjaRd;B;$EsZA=oenIy-9{FD5XzXHg8G{IW+%xN0z@51S!p==W-gJWWT zK~J%10YISF@7|4uASETGYhXfwZu&Cs`jlAzNvot|=9Ip1&sz=P{_t}mMi}ej&%b^R zE|RJ3cFA--m;F*z#VIH#7GEbR^5> zivp5AJ%8^%_g&uDcsAD><(|8_T=_s7@G3Ny2JG--sAZ{u@@Q^t{Rjka#nR6!EC?+2 zPu2?(!-*pQ9h4C+-^#@=FncD0v19*Ma4{R*RsNy7YIb2 zJ)b(j+tcjLFW9pAT4(Y1DPd(;V<)6oqXQ|?UKFa`T=NJKU4?0%gF_fw=~GwY3re&p zLucAh6@m=bPbX!ClKVcz|GeyC8ID|9oJ!y+(+t5LJD|JFuffz1%&MvJpOqYuruZ`r zTdQy$$khAhBc&2O3S(2#t6;vDUMcgac@J*(X7x~=i4>Ea?>bMiuOpXTatf#Hzv z(D2B`mw=dJ*YUF|)encuDOi=$hYsVW^{-<|61R~Eh`-0{k2~BqDI+G`f`7ASgo_D19SC!?CkBuFL{$BTWJ>8nt~& z(Kz08Hdk+xN^bg*l%nFL(+dhH`MXajm0wJjO?kecxyf`Px`zL==NQ%IjHZUT?JC^! zlnT#;e?dPT1OKa1Yh&_mpC)YP8eqy~3RX72X1G$E@#nv+rj|Z5Jlvm{!cT>!!pj9T z#e>8!qlXVez^@epA*x1+D-iqwK;CPhl+&n&1Fi{IVub?f+@erjNmAeQ^6r-^f^$;f z+%L#z1D*(# zMD121dG~?Nc?f)Kw8(E?L{?4?2Ib}FKT*?(-Qoh7Rt~Zwe-Sr<_biFj>)RsE*%^Wb2AaJvA$@K4kSGBrjFH zYOFpXROLX|_-*P_Duq;N(CeR4@L zhmIBe55fEq^4E^9N&4|ugA#>Ubbx#%>z(ywYo{TI%qky8X-x#dJAKXWixZoCpFZ@2X8xH^MD za)

R=J!*9MDH#p_#hFTitio?9m^AkdOrY7s2}^*jy$n`<$>Db6(I)E~AvG9Elik z!Ph<8uwNZ2D?}s#H*Kp+Ml@WCH7x|-%DK)2OnRUCEW}@dBmZrQ0)}5lR~K$& zW>HX4Va#%9sk=O&Us_B~{(7MY#Rg=f`&P{PsOIJyz_dk4qFhX&!uw3ouS^QZQ3$VM zTBVw+`7lCm$qpfdtcvYa#_0IKyH0qcfXy?n@uY_&U-Vyk<>~n)Cx_DC_qyiLu-7gA z1;(RMGJ^?%D)Y($s#SHq<-F^4c zrAt=e{QWyG?px}91~+Gdep&eyGUfQ;Dc`!{CZgZVq9EWNo%8nbX|OcS61qsH)7iPc zfXFOmp_Z{5$4)<&r2#Xsx12T^tY|G0K9UnDd4Bu&YaqBKyZidM+^>oX0da8#H8r)R z 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 UrnbMSL8rjw3)f9bj9nuBA3-g#nE(I) From 1bf719f20f18a9ce6559d4c95fab610d8ad852c6 Mon Sep 17 00:00:00 2001 From: sabess Date: Mon, 14 Dec 2015 16:38:05 +1100 Subject: [PATCH 02/26] Fixed brass knuckles; only possible to get them from steel now. --- code/modules/materials/material_recipes.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index d63e4a5ca3..9cdc1c5f82 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -22,7 +22,7 @@ recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/kitchen/utensil/knife/plastic, 1, on_floor = 1, supplied_material = "[name]") recipes += new/datum/stack_recipe("[display_name] blade", /obj/item/weapon/material/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") - recipes += new/datum/stack_recipe("[display_name] brass knuckles", /obj/item/weapon/brassknuckles, 5, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]") + /material/steel/generate_recipes() ..() recipes += new/datum/stack_recipe_list("office chairs",list( \ @@ -40,7 +40,7 @@ new/datum/stack_recipe("purple comfy chair", /obj/structure/bed/chair/comfy/purp, 2, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("green comfy chair", /obj/structure/bed/chair/comfy/green, 2, one_per_turf = 1, on_floor = 1), \ )) - + recipes += new/datum/stack_recipe("brass knuckles", /obj/item/weapon/brassknuckles, 1, time = 10, one_per_turf = 0, on_floor = 1) recipes += new/datum/stack_recipe("table frame", /obj/structure/table, 1, time = 10, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("rack", /obj/structure/table/rack, 1, time = 5, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("closet", /obj/structure/closet, 2, time = 15, one_per_turf = 1, on_floor = 1) From 970cecc80d0d67238f39519501e8bed28bc9f37a Mon Sep 17 00:00:00 2001 From: sabess Date: Thu, 17 Dec 2015 00:23:23 +1100 Subject: [PATCH 03/26] Fixed some stuff. --- code/defines/obj/weapon.dm | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 9b26e2387d..bd4ecd3d45 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -12,6 +12,16 @@ attack_verb = list("called", "rang") hitsound = 'sound/weapons/ring.ogg' +/obj/item/weapon/brassknuckles + name = "brass knuckles" + desc = "A pair of brass knuckles. Generally used to enhance the user's punches." + icon_state = "brassknuckles" + flags = CONDUCT + gender = "plural" + force = 13 + w_class = 2.0 + attack_verb = list("punched", "beaten", "struck") + /obj/item/weapon/rsp name = "\improper Rapid-Seed-Producer (RSP)" desc = "A device used to rapidly deploy seeds." @@ -119,15 +129,6 @@ else ..() - -/obj/item/weapon/brassknuckles - name = "brass knuckles" - desc = "A pair of brass knuckles. Generally used to enhance the user's punches." - icon_state = "brassknuckles" - force = 13 - w_class = 2.0 - attack_verb = list("punched") - /obj/item/weapon/cane/concealed/update_icon() if(concealed_blade) name = initial(name) From a9a057323763abc853d1c2d2057986753a312d98 Mon Sep 17 00:00:00 2001 From: sabess Date: Fri, 18 Dec 2015 13:16:09 +1100 Subject: [PATCH 04/26] Removed brass knuckles from steel sheets, added to hacked autolathe. --- code/defines/obj/weapon.dm | 10 ---------- code/game/machinery/autolathe_datums.dm | 6 ++++++ code/game/objects/items/weapons/material/misc.dm | 10 ++++++++++ code/modules/materials/material_recipes.dm | 1 - 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index bd4ecd3d45..54ca78aa39 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -12,16 +12,6 @@ attack_verb = list("called", "rang") hitsound = 'sound/weapons/ring.ogg' -/obj/item/weapon/brassknuckles - name = "brass knuckles" - desc = "A pair of brass knuckles. Generally used to enhance the user's punches." - icon_state = "brassknuckles" - flags = CONDUCT - gender = "plural" - force = 13 - w_class = 2.0 - attack_verb = list("punched", "beaten", "struck") - /obj/item/weapon/rsp name = "\improper Rapid-Seed-Producer (RSP)" desc = "A device used to rapidly deploy seeds." diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index a29f6ab08c..0fd634090d 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -413,3 +413,9 @@ path = /obj/item/weapon/handcuffs hidden = 1 category = "General" + +/datum/autolathe/recipe/brassknuckles + name = "brass knuckles" + path = /obj/item/weapon/material/brassknuckles + hidden = 1 + category = "Arms and Ammunition" \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index e6d2c995b1..3286704ba7 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -8,6 +8,16 @@ force_divisor = 0.3 // 18 with hardness 60 (steel) attack_verb = list("jabbed","stabbed","ripped") +/obj/item/weapon/material/brassknuckles + name = "brass knuckles" + desc = "A pair of brass knuckles. Generally used to enhance the user's punches." + icon_state = "brassknuckles" + gender = "plural" + w_class = 2.0 + force_divisor = 0.63 + attack_verb = list("punched", "beaten", "struck") + applies_material_colour = 0 + /obj/item/weapon/material/hatchet name = "hatchet" desc = "A very sharp axe blade upon a short fibremetal handle. It has a long history of chopping things, but now it is used for chopping wood." diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index 9cdc1c5f82..93e2c88d42 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -40,7 +40,6 @@ new/datum/stack_recipe("purple comfy chair", /obj/structure/bed/chair/comfy/purp, 2, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("green comfy chair", /obj/structure/bed/chair/comfy/green, 2, one_per_turf = 1, on_floor = 1), \ )) - recipes += new/datum/stack_recipe("brass knuckles", /obj/item/weapon/brassknuckles, 1, time = 10, one_per_turf = 0, on_floor = 1) recipes += new/datum/stack_recipe("table frame", /obj/structure/table, 1, time = 10, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("rack", /obj/structure/table/rack, 1, time = 5, one_per_turf = 1, on_floor = 1) recipes += new/datum/stack_recipe("closet", /obj/structure/closet, 2, time = 15, one_per_turf = 1, on_floor = 1) From 00323ad7ad90714114576771fb8eae48894ae897 Mon Sep 17 00:00:00 2001 From: sabess Date: Sat, 19 Dec 2015 14:11:26 +1100 Subject: [PATCH 05/26] The Final Fix probably maybe hopefully --- code/game/machinery/autolathe_datums.dm | 6 +++--- code/game/objects/items/weapons/material/misc.dm | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 0fd634090d..251a628697 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -414,8 +414,8 @@ hidden = 1 category = "General" -/datum/autolathe/recipe/brassknuckles - name = "brass knuckles" - path = /obj/item/weapon/material/brassknuckles +/datum/autolathe/recipe/knuckledusters + name = "knuckle dusters" + path = /obj/item/weapon/material/knuckledusters hidden = 1 category = "Arms and Ammunition" \ No newline at end of file diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index 3286704ba7..80d3771f0e 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -8,11 +8,11 @@ force_divisor = 0.3 // 18 with hardness 60 (steel) attack_verb = list("jabbed","stabbed","ripped") -/obj/item/weapon/material/brassknuckles - name = "brass knuckles" +/obj/item/weapon/material/knuckledusters + name = "knuckle dusters" desc = "A pair of brass knuckles. Generally used to enhance the user's punches." - icon_state = "brassknuckles" - gender = "plural" + icon_state = "knuckledusters" + gender = PLURAL w_class = 2.0 force_divisor = 0.63 attack_verb = list("punched", "beaten", "struck") From a140a49bdb97958610990395056f754b8d208cad Mon Sep 17 00:00:00 2001 From: Mark9013100 Date: Sun, 20 Dec 2015 18:20:56 -0500 Subject: [PATCH 06/26] Edits the sprites for the prescription sec and med HUDs --- icons/mob/eyes.dmi | Bin 8152 -> 8175 bytes icons/obj/clothing/glasses.dmi | Bin 8086 -> 8103 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/eyes.dmi b/icons/mob/eyes.dmi index 3742d3a30f3486223cf8ac486d9aee4fcf69080c..74a77c504585160ec623244c55ab316217b6c8bb 100644 GIT binary patch literal 8175 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 b!c`XA{j)EK*;xPxfsdZ{9j&q(4v+o|L@{ms literal 8152 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 S{&ODyeoPF^V7Lo6AN&{Uq>P#X diff --git a/icons/obj/clothing/glasses.dmi b/icons/obj/clothing/glasses.dmi index bbf137295c8d40b7d1f9a43c09187b85217032fc..0e0218324c5b52a77416f794819a21a436aff536 100644 GIT binary patch literal 8103 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 literal 8086 zcmb7pbyOVR)@3zLZ~{RR+(K}d-~cXnz@wIezMe)uMwUE_yodC_)UolaC4em_U{ zGiPWtdT2q(+4f830lig6`haWB)A?`fy{o6*|J+Py`oCwT2zj=Cv#aPHGtoVud9d`# zdW_2GfZ~OQM!c(~1Tn++S0yH_Vgui|DyXcQ^75Wd{r+H8H2WpGTO!11KHuCE|7gwR z_so`u5tY0SEgNBsh?+*q`uXFKli632rtgIvMx3>AM`p*1ID>hnr#&aY{Fcm9w2yRz z8eQR~xa9LUeNh4_+2da~x~e3xCWiavpYQj!ipmQ)f4=UJq3jE`YMW+xk`%JoR<5mq)VNVQOWl=UMf4Dsc+1at-6^FZ3Uw04Vi2wrri_x z{0e_oXOh+S_tUzOTB^CjK;$H08rH=AxZ)w5^HBOeSRnrB`jSszLnr2KfUCs2gVUiq zlk`ouyfnYfdyM3Mj9~hjcb}%QWr*tpnCWG0aB!80spZf}L&FoH7zGUf+rhnm35n5aJHfxr2_aBunv+5g%cdj-# zuZd-~gg#DuXPM^W0i~mxKY})>els%tmig26`D{QE6oUk#p@GrJVo?iGU^9*y8oaQu ztU;u#hW`i;?=1uZ(ICi7&dVD`J<0nz0n8W;iyVU3_)sDu8jIRmVRuhYEFEbnDcY;6 zD~2}%PM65Au&}-J88Zsx1E@reL+@K#nQr;*!RbnS$X@g1QfEuR4aU{IaUkL2m)V_Q z@O+5e(WOJ=d3Sd-tS|ltf4fn}#|COjd@P07lM~nf`4rcaKT;^3LkRUHT~I%k?8g=@ z=Fd<|7xpMy4mdl%lqXXN`_{y!qayW6$;tX}cA>5qKIL}PU()>i@`zr9gF!PC6tJDg zYyeQ4DgpumeGYbKHT77%UnHktyAdz(QsNJN;9qSELa#F5v~h4yFfpMS7#zg(p#th$ zh1QSn(1X1E8He(q(r3Vko@qug|unSoU@gmGt$~CT|pi zx3>1jac!eK2B~Ae1>fseoq#}uvda>DrQTeJS4$Fnkwx_?Hv6=4+7T;yBe=S+8~kZ# zXaGfDDg7%^yUWJexknGC}3-xs&Rypda-$sXPdL(06(tYB(^Vu0aWdm)35apVpw$2MmZ5z5HJvig%7d=F2SsauA4A z=h?RDZfv-}nAn8#*_HqrQ03(Cj|n!usT4f`3e@6*reK6uus4qjFQK3Cj|{z))VdnU zdHGgTGs&W!Iy&@83?=~qL9{~?wmaAE_IA=hox^;Ou>EX4WkopSsy41!1fkbE@jn32 zdzyW^mue6tmO7K)X`;2Lqt>kpuwUzR6LV%OrdRFkw(T`SVfz5IDOA+DeIT_o_SXg{ ze6}zM!vp@%D`tK@%y8ROM+?v&AiaRLcYs(ic{;@H)sVh;CWG7}(v^{2pB{lwllSn* zJIjorBm@nEPEBtp0gbB(%jn#1RaJ?S2EK-*hatfc2g>3O=NI}dD9xAN~~YD=WK3c<6cA09!qrDl+*5WR~(&wV%kj(i`5+5?;^@4oQd zKEe@Ih-o=hPv}&>(yBB}Hr7Wbjwef;tbX}}$NQ{>IO(5%HfpQr&5D#&RYT_NJp(H3 z@EGbo-d00*kF>eaNE7KDywZ+9AxmhC)#edeANG z$^_qJI-_|CDs5y9b|K}K`g*C?;0dbIe%a_1hCg4s9AOjDx;M_x|BM%rXcp1>eU!Ws znIKI_8D~frZnl7duyAqF`)=6%_adZ~cuqz}h9sZxFuQHGqZO2m)i+LFtPh~+Pv$jl znu95w5E?gn5;S`5KT_uOaiWTk&CpDMwO=P`o+85JOKFfHsM8u-_(xEq_2-9)_mMen zBK(m0)FS<3v3WgwAv_{0%}T3V8i0g2S0?; zj=6(;DIdlUTXe+`7BV8H5TLQOwT*@~>cyF%AQ^vueC3icY}F+!jJCZE_z!^^1hwxF zAMljQWPCJQ)5N5-1|r-xdEK~vU-Z1Q1|v5;n=~DjCa)R{Qhu-aMSwn~rz0n?PB+c+ z#N1e|hSEWRXyCmBqH=zIer$T0)d5~flatfuy8`;E4(krSVrQ2X3AZj(zydUdVnBf9 zHq$o9I|Id=&moR9s$(UEU+2(ZbFnowf+`(ftnjK7p^}3br>7bzwqwXMEZgA@g2YO|tAi)OGo4v6l3yNA!GUNgmLwg2pWCj?VZ=7 zD^Y=&+I%=t!v21VpbH{E5}>cX2JX{faU70%T-n>x8}XBf+w8f-W3C^6o^4ti?>KLm zb2{FNbExt>CbLWx32H2OPPCgJku+G>WQQYz9ly!Wf}x1m6cjQlx-3tn<269UN$8xo zx>aAZNw=RL5ZXSa5V#(Bsrj%PVUrMt2@E-l7Kxwes<-)AByOsuz^kzlq@M2X%HwZx z#C1tsYN)>DVc?h0CJ$l*=fDP<_vNIqMC}n1{xn!_Kg?5?Y;Vt-h{~){>{e9V`lP?5 zrS-WfIvt_(kAuK)v!@y+ixCeWGlDNJbOen!QFsT*H7?%Yn8TH(II&z)uBejjtj(1i z*kcBsu_td@tCi&hS=4V@)deuEKabTC%Sed zY3v-O@eg8h)+I(h(n0OnWNuXC=j;LrEi%S8X@hT4;1--hgMlR!9NIU!WwMOF(;Dk8k1 zfG}bx%s@wn`5OFZ^@kQ+D>R-kbL~)nAG+-*)z{D}$Bn-!p9t zQEg{Qnnrrj=(&zv-`psfNU6`m291k`i8P5ifpmGb|hqtC7 zK6>9^uV@|r_(BLW(e@n^DyC2x;nGey6g7BpcW=3EDd+OpZ*(hxEZ{{|7DJg8U!mO- zrehxx)N5V(RT496_)FkpPzswZOMn*k?^ zw2zua9P>+hgM!*Y`1s;1{yq~iTG1^umX;kI6s8)_9!v89iHLd0Kq(XtJ=@+M-;$Af zeRQoOIAf~OViL3K>rX!Us}>Uq+cZK!pk^u>8khAxvB4bcF9_||D$o63j|c1S>W=au zJU2~OQC0Eh*XO&OvkK`N6vj>M3ZE`*DlC@Za`lbJX3||UIZoXrQ=~Hd@&@|;tuVM|Qjq@rd?22T z_o;L+B?0RYg{#l#i*OFQ?8x!NSE&V!T6f}{waKCQ!AvZB}ca0xN|aPUhGQ{t_35X;|3IikK{j{ zq<;_BL>D)K>lNnAfS z7Q@PybdiFRR-|hdC5!?0KGT%25N2kbpo35s1|zTFoJz^i&149VB&JIJ98YSi`#a0C z;08_PuKVF=0CS`a1IY5jXoY1OXUVbJ(5UZWrZ5$FvC;_y6%c_6bgHD?U;6Su0#BR- zLO~pkMTbndQC0O^6z^QS>m(sY_tSAaV=n7~3=4a`+LyaVBMSh;0X<$6S}VI^aR}9^ zD@kZ^28V*XHlPh_^LwS+biE&llGyIa6^Z7Z&W*ztm%^q$Z2D|R?x{pJi(orn^#EAE z!~x;Zid=?zX|`;QWa}A8n(4O(GnMzAYPHg0B#(a^G0_b!>@;)U`S(b2LDBqXxJY?} zB^nQGh5ar#AIK%0_cO^0TD)o+_Vr{NfZ++ljHsPh*E8c^nti3LmQtzymrK{6MA#A_gN7xf?*snxi zelCDN$@T7MH+}+@zflmD7AlOWWT&GQ@3MDraBKiIlhDy6+}_?+NnfJ8+W$dn$#~S+ z2at^MRj-CW^Uxu8me{a%3tPNYVmL-f|Deg+{Lsa=#mi!d4Qw?mLER`E*A~uY{o#2W zWH(aR3J71>koJ5e%^<2uaHB#- zK%>d@6YNzSucP<%4VD~lo-AsKKPTnw8{cWU*F2B{iM;Tzq|2y4-95J1NnPzHtz0@Z zNLqC6_cmMnzBg3g_Up_Y=(+@W0#`121J+oQiK9$^oAXxfUSPIa05PCyz9(2AL8)nJ zcomk?JHMWO|NdR8f%-U3k*U126gp+65a8Qv)G*792B-=;<988959?R>kIFE0D*FjvcuakwyB8}Bhxy|YCt))VAmDUA+^sy5 z5<+@R*Ma45t?7>&Hbt(%m(eWRGlm@bQF7es;xOjLd zYX56RwnXKZ6#HSa@Cjf}`UVAp95Ue2k6N);$QQ=Xa-`az@ zrPyDxZo0VC`-?Sx^xv??i$Fy?hZCoUiL4&h*Vj9ioBU)+cTw<< zXXu#rJk0HTe)aDRC+I*$o$hbeK4OddtkysQiI~`S|638Mm&k`11jW=x{#kwSZZMYm zJXRX*et5E>E;Ipwq6GJ{934GaY6t^iY;cb==lKH&7oChh;{1Yco_MEKTDJD>-7&5EnUT#+vjrdGUSV%;MDZXsyMP3Z=Wx&3a{oFO<2Fs|Dd;t0eGs~*oM-JhZ zqtnC(TGaj>&Jr1Qcqu*R!-1YJN^;FqnpMqa0jbq+CLerCMXRT1bP*HFy>JtbH> z{cdE6yCwNlL=yX+RtN)Qfh8q@A0G={RZY#^56pW4I&+B3UzMb5CEOx#`sDlRlST(7 zh9Y;*O~>k1SkrxW5%Xkjh3>lPZ)G#AU;B;1|Qv?&*y#ef3>1PM9C=R6!q-@t?C?ivner9 zAQ-_E9E5@Yn42+5DHQErI+)x4TRi@odh-7?6*zT)0mvDON-3=)U#dyZn z#{zdfcF6s3s;d}Fvo%lrVpWA$=#p#Mn%A|VC5_TZgJ=so(8A}F?6BgYt(hV2Prn)N zY5(KGW#4PWhi~l9HSQ=?U%w`kcL+G?({3E4du6l(gG{Uf7?Jlr z=UIQhO^Y{4-ox2P^WzEU-E=AKoT5so#rEduLa@2#>p|r##-I%H_Ew zD5)Z<5C;(TI>@exla8VSEG#TmzN*)=fzM*z!#K{S$e{V~DX2tRP_3L!QW^?9KCSS6|!4Itmxh}oSAu6b;EgF|+ z*)f2 z*mlYX&_I;TH#s)cG*A7B+TE8#j!#DmeT+$0PYa!rz6WJyWrc`AFz-*$59VOl0NMIs zt9JarXC?V~+}N{c#+;gDMj-3awLj(fB9N~ORxp#|;y;d-l!c&6^4_{wj zo!y^VJf@*iVsEL@mc*^F;*C?np(p#ku$yePI3%i4@1Sm3C9(8bXWGTIy zjW@CO<~J{l>C3?lH;|U43U~gvKW3Jskrp@ODN1O_kWhdjSC!2 z=X%j^Y#^f#9|vB6Xb7=?-S~lk5cH6(ot>^bu{mT@*`wW<7;-vjNf&p^ie$pa(ZY#s z!>c2w`lhMkXTn);d|RoVaZT#_&06oTcOko>=yZBZ)z=`~(g-HDA_n@rw8d&cf?*}~ z(iWUTusWf)L4QQKou=7gZg$F`zL{A9yY`orjp3}S`F-bMid7z=EG3XvYqj<)5~gLv zmk0Wtkh=uwdIeShJGBJ@!i zB#ODhXT?)*7xxP%yV^#vThtR|Np;DE21p=WV&x4ayIC=qJ;hA3Z9c6PLNyjq;CGQ2`u=*|5B*D zjECG68d@W&uwu$>f_g4lp7YgGQlKgFOB>Pm<;Cv#;=dVw($%fz<@e%;A^%1+a8s0kC zMyuTA;iBmFTGMVrwFbUjcj0cv97+)aeGLorEaIz{%K`QXN&O+BQr3bon-7C&JQ1C% zGD;DCe^x8~*Es+v%7PAzN^%nt$pPxINQHFj2Wq#a(#3dC!Om{5F~XLYyPgQooh~KzYm@wcZ5JGeFE^cz5Fl z(thMR-LcYhOQ_lRHm+0kmDXu`1k}4CCK8 zxR}EA!yBG6Ir$$xbT&qEycj5#o8zc_wE7xVmxE+JX{e(z zSd=vR3#UP?J(Zmun1Ms!sSDqPZj2cdHx{5G2R_C-L#xdbXy_gl$Ov_2k?>!IMNSqY zAs7p&$q`#nztKE7!W%TPJv;?S%WQ$4ON%4I%;~OKOKfzMZCSsHlsZnapt_nQcxA7D zcV{PmV!KGfJ}xefl9DnJfmm-xSf64au7A_x_@-AbI8*+=v=RlOtl{z7L9_5lnYBYZ zt5On*&x*#J!{-v+n}q{#ebiRQd#@mQ`K5+o5k{!hk`{tp(pTgR81fqCZegc#l5${W_F z5hW_#Z}!=3{hb7uad4kmUbv3;wsvko;2$ z_)Zc*cPT?`C?ombG#CF{FQCO($)r;lN$5Yw0N%q_qoaz;;q*0KCD8Zm(oezO?_hHh zJ)2QtK8rH&WGL!SIq30Wx6UW_0^&I%TvBO7P-Z&WSZp-I&@pjoBL@eES39Jk(@2w0 zm9Y}EK!8wMDx0ptpIQ1TfReE~jja^V!Wx|^nXcw0cfyb@^#*R6BOVD(!tgu;Qs*#Rx?fj From 451c477e4c99e5ebb45c349a6d52724eacf7fd44 Mon Sep 17 00:00:00 2001 From: Neerti Date: Mon, 21 Dec 2015 04:01:05 -0500 Subject: [PATCH 07/26] Tweaks event text to fit with the lore better. Adds more informative text for vending machines. Removes RNG viruses. --- code/controllers/shuttle_controller.dm | 6 +++--- code/game/gamemodes/heist/heist.dm | 2 +- code/game/objects/items/toys.dm | 2 +- code/modules/economy/TradeDestinations.dm | 8 -------- code/modules/events/brand_intelligence.dm | 3 ++- code/modules/events/dust.dm | 4 ++-- code/modules/events/electrical_storm.dm | 2 +- code/modules/events/event_dynamic.dm | 1 - code/modules/events/gravity.dm | 3 ++- code/modules/events/infestation.dm | 21 ++++++++----------- code/modules/events/meteors.dm | 8 ++++---- code/modules/events/money_lotto.dm | 2 +- code/modules/events/rogue_drones.dm | 25 +++++++++++++++-------- code/modules/events/wallrot.dm | 2 +- polaris.dme | 2 -- 15 files changed, 43 insertions(+), 48 deletions(-) diff --git a/code/controllers/shuttle_controller.dm b/code/controllers/shuttle_controller.dm index 807f97cfe5..0262558f2f 100644 --- a/code/controllers/shuttle_controller.dm +++ b/code/controllers/shuttle_controller.dm @@ -286,9 +286,9 @@ var/global/datum/shuttle_controller/shuttle_controller "Mining Station" = locate(/area/skipjack_station/mining) ) - VS.announcer = "NDV Icarus" - VS.arrival_message = "Attention, [station_short], we just tracked a small target bypassing our defensive perimeter. Can't fire on it without hitting the station - you've got incoming visitors, like it or not." - VS.departure_message = "Your guests are pulling away, [station_short] - moving too fast for us to draw a bead on them. Looks like they're heading out of the system at a rapid clip." + VS.announcer = "Colony Automated Radar Array" + VS.arrival_message = "Attention. Unidentified object with no signature detected approaching the colony." + VS.departure_message = "Attention. Unidentified object exiting local space. Unidentified object expected to escape Kara gravity well with current velocity." VS.interim = locate(/area/skipjack_station/transit) VS.warmup_time = 0 diff --git a/code/game/gamemodes/heist/heist.dm b/code/game/gamemodes/heist/heist.dm index 8c2a063164..ab60dc6b6e 100644 --- a/code/game/gamemodes/heist/heist.dm +++ b/code/game/gamemodes/heist/heist.dm @@ -10,7 +10,7 @@ var/global/list/obj/cortical_stacks = list() //Stacks for 'leave nobody behind' required_players = 15 required_players_secret = 15 required_enemies = 4 - round_description = "An unidentified bluespace signature has slipped past the Icarus and is approaching the station!" + round_description = "An unidentified bluespace signature is approaching the station!" end_on_antag_death = 0 antag_tags = list(MODE_RAIDER) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 22cb51b748..0068473fb7 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -794,7 +794,7 @@ /obj/structure/plushie/drone name = "plush drone" - desc = "A plushie of a happy drone! It appears to be smiling, and has a small tag which reads \"N.D.V. Icarus Gift Shop\"." + desc = "A plushie of a happy drone! It appears to be smiling." icon_state = "droneplushie" phrase = "Beep boop!" diff --git a/code/modules/economy/TradeDestinations.dm b/code/modules/economy/TradeDestinations.dm index eec6b70fa3..3aca3e6bad 100644 --- a/code/modules/economy/TradeDestinations.dm +++ b/code/modules/economy/TradeDestinations.dm @@ -41,14 +41,6 @@ var/list/weighted_mundaneevent_locations = list() [pick("mind-machine interfacing","neuroscience","nano-augmentation","genetics")]. [company_name] is expected to announce a co-exploitation deal within the fortnight." return null -/datum/trade_destination/icarus - name = "NDV Icarus" - description = "Corvette assigned to patrol local space." - distance = 0.1 - willing_to_buy = list() - willing_to_sell = list() - viable_random_events = list(SECURITY_BREACH, AI_LIBERATION, PIRATES) - /datum/trade_destination/redolant name = "OAV Redolant" description = "Osiris Atmospherics station in orbit around the only gas giant insystem. They retain tight control over shipping rights, and Osiris warships protecting their prize are not an uncommon sight in Tau Ceti." diff --git a/code/modules/events/brand_intelligence.dm b/code/modules/events/brand_intelligence.dm index 1d25ac3cbf..8540bcf630 100644 --- a/code/modules/events/brand_intelligence.dm +++ b/code/modules/events/brand_intelligence.dm @@ -8,7 +8,8 @@ /datum/event/brand_intelligence/announce() - command_announcement.Announce("Rampant brand intelligence has been detected aboard [station_name()], please stand-by.", "Machine Learning Alert") + command_announcement.Announce("An ongoing mass upload of malware for vendors has been detected onboard [station_name()], which appears to transmit \ + to other nearby vendors. The original infected machine is believed to be a [originMachine.name].", "Vendor Service Alert") /datum/event/brand_intelligence/start() diff --git a/code/modules/events/dust.dm b/code/modules/events/dust.dm index 12be475fc8..e70a18ae21 100644 --- a/code/modules/events/dust.dm +++ b/code/modules/events/dust.dm @@ -3,13 +3,13 @@ endWhen = 30 /datum/event/dust/announce() - command_announcement.Announce("The station is now passing through a belt of space dust.", "Dust Alert") + command_announcement.Announce("Debris resulting from activity on another nearby asteroid is approaching your colony.", "Dust Alert") /datum/event/dust/start() dust_swarm(get_severity()) /datum/event/dust/end() - command_announcement.Announce("The station has now passed through the belt of space dust.", "Dust Notice") + command_announcement.Announce("The colony is no longer in danger of impact from space debris.", "Dust Notice") /datum/event/dust/proc/get_severity() switch(severity) diff --git a/code/modules/events/electrical_storm.dm b/code/modules/events/electrical_storm.dm index be40542687..73198dec9b 100644 --- a/code/modules/events/electrical_storm.dm +++ b/code/modules/events/electrical_storm.dm @@ -4,7 +4,7 @@ /datum/event/electrical_storm/announce() - command_announcement.Announce("An electrical storm has been detected in your area, please repair potential electronic overloads.", "Electrical Storm Alert") + command_announcement.Announce("An electrical issue has been detected in your area, please repair potential electronic overloads.", "Electrical Alert") /datum/event/electrical_storm/start() diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index d34fadeb32..99b4855d73 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -76,7 +76,6 @@ var/list/event_last_fired = list() if(active_with_role["Medical"] > 0) possibleEvents[/datum/event/radiation_storm] = active_with_role["Medical"] * 10 possibleEvents[/datum/event/spontaneous_appendicitis] = active_with_role["Medical"] * 10 - possibleEvents[/datum/event/viral_infection] = active_with_role["Medical"] * 10 possibleEvents[/datum/event/prison_break] = active_with_role["Security"] * 50 if(active_with_role["Security"] > 0) diff --git a/code/modules/events/gravity.dm b/code/modules/events/gravity.dm index 078e632842..8e9bd1d60c 100644 --- a/code/modules/events/gravity.dm +++ b/code/modules/events/gravity.dm @@ -5,7 +5,8 @@ endWhen = rand(15, 60) /datum/event/gravity/announce() - command_announcement.Announce("Feedback surge detected in mass-distributions systems. Artificial gravity has been disabled whilst the system reinitializes. Further failures may result in a gravitational collapse and formation of blackholes.", "Gravity Failure") + command_announcement.Announce("Feedback surge detected in mass-distributions systems. Artificial gravity has been disabled whilst the system \ + reinitializes. Please stand by while the gravity system reinitializes.", "Gravity Failure") /datum/event/gravity/start() gravity_is_on = 0 diff --git a/code/modules/events/infestation.dm b/code/modules/events/infestation.dm index c88472688f..e7afa00109 100644 --- a/code/modules/events/infestation.dm +++ b/code/modules/events/infestation.dm @@ -1,13 +1,12 @@ #define LOC_KITCHEN 0 #define LOC_ATMOS 1 -#define LOC_INCIN 2 -#define LOC_CHAPEL 3 -#define LOC_LIBRARY 4 -#define LOC_HYDRO 5 -#define LOC_VAULT 6 -#define LOC_CONSTR 7 -#define LOC_TECH 8 -#define LOC_TACTICAL 9 +#define LOC_CHAPEL 2 +#define LOC_LIBRARY 3 +#define LOC_HYDRO 4 +#define LOC_VAULT 5 +#define LOC_CONSTR 6 +#define LOC_TECH 7 +#define LOC_TACTICAL 8 #define VERM_MICE 0 #define VERM_LIZARDS 1 @@ -23,7 +22,7 @@ /datum/event/infestation/start() - location = rand(0,9) + location = rand(0,8) var/list/turf/simulated/floor/turfs = list() var/spawn_area_type switch(location) @@ -33,9 +32,6 @@ if(LOC_ATMOS) spawn_area_type = /area/engineering/atmos locstring = "atmospherics" - if(LOC_INCIN) - spawn_area_type = /area/maintenance/incinerator - locstring = "the incinerator" if(LOC_CHAPEL) spawn_area_type = /area/chapel/main locstring = "the chapel" @@ -101,7 +97,6 @@ #undef LOC_KITCHEN #undef LOC_ATMOS -#undef LOC_INCIN #undef LOC_CHAPEL #undef LOC_LIBRARY #undef LOC_HYDRO diff --git a/code/modules/events/meteors.dm b/code/modules/events/meteors.dm index 74de2a0d15..6ffb6011ef 100644 --- a/code/modules/events/meteors.dm +++ b/code/modules/events/meteors.dm @@ -13,9 +13,9 @@ /datum/event/meteor_wave/announce() switch(severity) if(EVENT_LEVEL_MAJOR) - command_announcement.Announce("Meteors have been detected on collision course with the station.", "Meteor Alert", new_sound = 'sound/AI/meteors.ogg') + command_announcement.Announce("Meteors have been detected on collision course with the colony.", "Meteor Alert", new_sound = 'sound/AI/meteors.ogg') else - command_announcement.Announce("The station is now in a meteor shower.", "Meteor Alert") + command_announcement.Announce("The colony is now in a meteor shower.", "Meteor Alert") /datum/event/meteor_wave/tick() if(waves && activeFor >= next_meteor) @@ -32,9 +32,9 @@ /datum/event/meteor_wave/end() switch(severity) if(EVENT_LEVEL_MAJOR) - command_announcement.Announce("The station has cleared the meteor storm.", "Meteor Alert") + command_announcement.Announce("The colony has cleared the meteor storm.", "Meteor Alert") else - command_announcement.Announce("The station has cleared the meteor shower", "Meteor Alert") + command_announcement.Announce("The colony has cleared the meteor shower", "Meteor Alert") /datum/event/meteor_wave/proc/get_meteors() switch(severity) diff --git a/code/modules/events/money_lotto.dm b/code/modules/events/money_lotto.dm index 09d4ebd7bf..4c016333f8 100644 --- a/code/modules/events/money_lotto.dm +++ b/code/modules/events/money_lotto.dm @@ -17,7 +17,7 @@ T.amount = winner_sum T.date = current_date_string T.time = worldtime2text() - T.source_terminal = "Biesel TCD Terminal #[rand(111,333)]" + T.source_terminal = "Sif TCD Terminal #[rand(111,333)]" D.transaction_log.Add(T) deposit_success = 1 diff --git a/code/modules/events/rogue_drones.dm b/code/modules/events/rogue_drones.dm index 850b03a4f7..ee748d6f8c 100644 --- a/code/modules/events/rogue_drones.dm +++ b/code/modules/events/rogue_drones.dm @@ -23,12 +23,21 @@ /datum/event/rogue_drone/announce() var/msg - if(prob(33)) - msg = "A combat drone wing operating out of the NDV Icarus has failed to return from a sweep of this sector, if any are sighted approach with caution." - else if(prob(50)) - msg = "Contact has been lost with a combat drone wing operating out of the NDV Icarus. If any are sighted in the area, approach with caution." - else - msg = "Unidentified hackers have targetted a combat drone wing deployed from the NDV Icarus. If any are sighted in the area, approach with caution." + var/rng = rand(1,5) + switch(rng) + if(1) + msg = "A combat drone wing operating near various asteroids in the Kara subsystem has failed to return from a anti-piracy sweep. If any are sighted, \ + approach with caution." + if(2) + msg = "Contact has been lost with a combat drone wring operating out in the asteroid field near Kara. If any are sighted in the area, approach with \ + caution." + if(3) + msg = "Unidentified hackers have targeted a combat drone wing deployed in the Kara subsystem. If any are sighted in the area, approach with caution." + if(4) + msg = "A passing derelict ship's drone defense systems have just activated. If any are sighted in the area, use caution." + if(5) + msg = "We're detecting a swarm of small objects approaching your station. Most likely a bunch of drones. Please exercise caution if you see any." + command_announcement.Announce(msg, "Rogue drone alert") /datum/event/rogue_drone/end() @@ -44,6 +53,6 @@ num_recovered++ if(num_recovered > drones_list.len * 0.75) - command_announcement.Announce("Icarus drone control reports the malfunctioning wing has been recovered safely.", "Rogue drone alert") + command_announcement.Announce("The drones that were malfunctioning has been recovered safely.", "Rogue drone alert") else - command_announcement.Announce("Icarus drone control registers disappointment at the loss of the drones, but the survivors have been recovered.", "Rogue drone alert") + command_announcement.Announce("We're disappointed at the loss of the drones, but the survivors have been recovered.", "Rogue drone alert") diff --git a/code/modules/events/wallrot.dm b/code/modules/events/wallrot.dm index b36f7f9376..096c7f8965 100644 --- a/code/modules/events/wallrot.dm +++ b/code/modules/events/wallrot.dm @@ -3,7 +3,7 @@ datum/event/wallrot/setup() endWhen = announceWhen + 1 datum/event/wallrot/announce() - command_announcement.Announce("Harmful fungi detected on station. Station structures may be contaminated.", "Biohazard Alert") + command_announcement.Announce("Harmful fungi detected on the colony. Station structures may be contaminated.", "Biohazard Alert") datum/event/wallrot/start() spawn() diff --git a/polaris.dme b/polaris.dme index 85b53114e9..261bfe9dc9 100644 --- a/polaris.dme +++ b/polaris.dme @@ -1135,7 +1135,6 @@ #include "code\modules\events\carp_migration.dm" #include "code\modules\events\comms_blackout.dm" #include "code\modules\events\communications_blackout.dm" -#include "code\modules\events\disease_outbreak.dm" #include "code\modules\events\dust.dm" #include "code\modules\events\electrical_storm.dm" #include "code\modules\events\event.dm" @@ -1158,7 +1157,6 @@ #include "code\modules\events\spacevine.dm" #include "code\modules\events\spider_infestation.dm" #include "code\modules\events\spontaneous_appendicitis.dm" -#include "code\modules\events\viral_infection.dm" #include "code\modules\events\wallrot.dm" #include "code\modules\examine\examine.dm" #include "code\modules\examine\stat_icons.dm" From 6fed0d4132992f677424ad09d6e64152626697e9 Mon Sep 17 00:00:00 2001 From: Neerti Date: Mon, 21 Dec 2015 04:05:43 -0500 Subject: [PATCH 08/26] I'm an idiot. --- code/modules/events/event_container.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/modules/events/event_container.dm b/code/modules/events/event_container.dm index 71a00aebf5..4eae167a65 100644 --- a/code/modules/events/event_container.dm +++ b/code/modules/events/event_container.dm @@ -160,7 +160,6 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT new /datum/event_meta(EVENT_LEVEL_MODERATE, "Rogue Drones", /datum/event/rogue_drone, 20, list(ASSIGNMENT_SECURITY = 20)), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Space Dust", /datum/event/dust, 30, list(ASSIGNMENT_ENGINEER = 5)), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Spider Infestation", /datum/event/spider_infestation, 100, list(ASSIGNMENT_SECURITY = 30), 1), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Viral Infection", /datum/event/viral_infection, 0, list(ASSIGNMENT_MEDICAL = 150), 1), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Virology Breach", /datum/event/prison_break/virology, 0, list(ASSIGNMENT_MEDICAL = 100)), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Xenobiology Breach", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_SCIENCE = 100)), ) @@ -174,7 +173,6 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station,0,list(ASSIGNMENT_ANY = 5)), new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 0, list(ASSIGNMENT_ENGINEER = 3), 1), new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 0, list(ASSIGNMENT_ENGINEER = 15), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Viral Infection", /datum/event/viral_infection, 0, list(ASSIGNMENT_MEDICAL = 30), 1), ) From 45f74c4c4711cd8ee51642a1c14eb95d24ea5275 Mon Sep 17 00:00:00 2001 From: Neerti Date: Mon, 21 Dec 2015 04:25:59 -0500 Subject: [PATCH 09/26] Text macro added on request of PsiOmegaDelta. --- code/modules/events/brand_intelligence.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/events/brand_intelligence.dm b/code/modules/events/brand_intelligence.dm index 8540bcf630..5c6f486d9c 100644 --- a/code/modules/events/brand_intelligence.dm +++ b/code/modules/events/brand_intelligence.dm @@ -9,7 +9,7 @@ /datum/event/brand_intelligence/announce() command_announcement.Announce("An ongoing mass upload of malware for vendors has been detected onboard [station_name()], which appears to transmit \ - to other nearby vendors. The original infected machine is believed to be a [originMachine.name].", "Vendor Service Alert") + to other nearby vendors. The original infected machine is believed to be \a [originMachine.name].", "Vendor Service Alert") /datum/event/brand_intelligence/start() From cbbafa5170d25d5207d999d75ade59791b458c55 Mon Sep 17 00:00:00 2001 From: Mark9013100 Date: Mon, 21 Dec 2015 12:25:43 -0500 Subject: [PATCH 10/26] Adds the black scrub cap --- code/datums/supplypacks.dm | 3 +++ .../crates_lockers/closets/secure/medical.dm | 17 +++++++++++++---- code/modules/clothing/head/jobs.dm | 4 ++++ icons/mob/head.dmi | Bin 153882 -> 152931 bytes icons/obj/clothing/hats.dmi | Bin 71433 -> 70501 bytes 5 files changed, 20 insertions(+), 4 deletions(-) diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 7c84124b65..96e9ffda5f 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -2070,6 +2070,9 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/clothing/head/surgery/green, /obj/item/clothing/head/surgery/green, /obj/item/clothing/head/surgery/green, + /obj/item/clothing/head/surgery/black, + /obj/item/clothing/head/surgery/black, + /obj/item/clothing/head/surgery/black, /obj/item/weapon/storage/box/masks, /obj/item/weapon/storage/box/gloves) cost = 15 diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index 700106aa72..a363ea6606 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -70,7 +70,7 @@ new /obj/item/weapon/storage/backpack/dufflebag/med(src) new /obj/item/clothing/under/rank/nursesuit (src) new /obj/item/clothing/head/nursehat (src) - switch(pick("blue", "green", "purple")) + switch(pick("blue", "green", "purple", "black")) if ("blue") new /obj/item/clothing/under/rank/medical/blue(src) new /obj/item/clothing/head/surgery/blue(src) @@ -80,7 +80,10 @@ if ("purple") new /obj/item/clothing/under/rank/medical/purple(src) new /obj/item/clothing/head/surgery/purple(src) - switch(pick("blue", "green", "purple")) + if ("black") + new /obj/item/clothing/under/rank/medical/black(src) + new /obj/item/clothing/head/surgery/black(src) + switch(pick("blue", "green", "purple", "black")) if ("blue") new /obj/item/clothing/under/rank/medical/blue(src) new /obj/item/clothing/head/surgery/blue(src) @@ -90,13 +93,16 @@ if ("purple") new /obj/item/clothing/under/rank/medical/purple(src) new /obj/item/clothing/head/surgery/purple(src) + if ("black") + new /obj/item/clothing/under/rank/medical/black(src) + new /obj/item/clothing/head/surgery/black(src) new /obj/item/clothing/under/rank/medical(src) new /obj/item/clothing/under/rank/nurse(src) new /obj/item/clothing/under/rank/orderly(src) new /obj/item/clothing/suit/storage/toggle/labcoat(src) new /obj/item/clothing/suit/storage/toggle/fr_jacket(src) new /obj/item/clothing/shoes/white(src) -// new /obj/item/weapon/cartridge/medical(src) + new /obj/item/weapon/cartridge/medical(src) new /obj/item/device/radio/headset/headset_med(src) new /obj/item/device/radio/headset/headset_med/alt(src) new /obj/item/clothing/suit/storage/hooded/wintercoat/medical(src) @@ -125,7 +131,7 @@ new /obj/item/clothing/suit/bio_suit/cmo(src) new /obj/item/clothing/head/bio_hood/cmo(src) new /obj/item/clothing/shoes/white(src) - switch(pick("blue", "green", "purple")) + switch(pick("blue", "green", "purple", "black")) if ("blue") new /obj/item/clothing/under/rank/medical/blue(src) new /obj/item/clothing/head/surgery/blue(src) @@ -135,6 +141,9 @@ if ("purple") new /obj/item/clothing/under/rank/medical/purple(src) new /obj/item/clothing/head/surgery/purple(src) + if ("black") + new /obj/item/clothing/under/rank/medical/black(src) + new /obj/item/clothing/head/surgery/black(src) new /obj/item/clothing/under/rank/chief_medical_officer(src) new /obj/item/clothing/under/rank/chief_medical_officer/skirt(src) new /obj/item/clothing/suit/storage/toggle/labcoat/cmo(src) diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 23f21f1576..be9abbf920 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -120,3 +120,7 @@ /obj/item/clothing/head/surgery/green desc = "A cap surgeons wear during operations. Keeps their hair from tickling your internal organs. This one is dark green." icon_state = "surgcap_green" + +/obj/item/clothing/head/surgery/black + desc = "A cap surgeons wear during operations. Keeps their hair from tickling your internal organs. This one is black." + icon_state = "surgcap_black" \ No newline at end of file diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index 1e03fb274a22ae6094c195e1fd6c442e9a5f55ec..9c17d08440f6c5cbdbb0197e4e92813717a1901b 100644 GIT binary patch delta 91096 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%0D!mNh#&`{GCz`}IjtFj7Xhs^R9^ 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

#n{v? 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 delta 93154 zcmYhi1y~i));~OSmnhwcloBG{AR(xPq)3T$cQc@r(nzJ$vS?wO9Stn)O1Ql;1efkHH-;4IP)4rp_i#mJTkK_I3c^k(T$qF?LUg zFru+lhX4DV-ob6sZ0`3GQGVAi$!`R-r5`?BOJS;KFg3iIwr8lO*FV_&A*eAaOpLuI z7u_m=gsqPpfr85j7^2Sn%>$pa1)rPVzw4dSFq_n^&9j1Dtbyk;75nkeG>nhhOh$Ct#?ZDNrPM-fZDu zEF^=!&5G<^9R2Zc>tJj&vZRuaKN#B-XWpPu~*V&SD={R z^jMYzEkEa|TXnPARIn7w^wJ%SnG)YAO`wdsQ!UvTv`WXXvH43>m-^mmE8oggR3U$k zE1kKr(Vow2cQK_@0n_JLe9hNe*!f~9^Eds*F!-B35QSVwHR$`J7~z+A*e|NqS+QMB zFf!@sz1&=EGE#?jITFo9Z!)ThOmyeJG)1H8$x4v^F7}B2(Zq2%8%Xj8bWF~rVTfT$ z48!|Sarv7RtoSxWaPZWg^dy^p+-#k3V<4BJ`KC6>2A&kQ0q?B+M33Ff* zMSMl1r!iOEczar+ihw=gGcfN>-|%^O6cFxcG#y57 zmwMG6M7;b@gGXNdm8rY3H8(pcYXTIQ# zHEeWn(1EEK<7vPsr|r_auygyQlf_f`{C;EYF7@fg=!d5<;zc~R%LSc8c)t&fVy1i* zbrK{@LHe-XX{An@U0l@SafVd9n>wwZQt$u%(XP80$6wfM>g1CB=5EWFi$XCg{KadW zP!U?xjX>7Nhry9vjJXdf$6N43s{Y~na3CG2)(N+}$T~2exIB2zm$2v$k7lB@d)63( zg68z-gQ>@R6ZrT3<0>;yGSqyE=sBEv_VhD~!b$n4%elCNP)daj;*2#8#fVget5zT| zgT~0{kg?a$p?u!m?xW%{XE|4yY_^J`&ZW--|G>;2{3-Nm-BFscTckLTZ}EfjqMm>J zZ5U9#A!O;2WW#boTPH|9BdQU=?rgAPfUjCD@+1QP<;F-b;U?S66Oku74vc zI4=FCCcU30x3KjCX^~bB+`uPw*0G9Fj{2eMdG*_Pz4KRCvK1J;1$bVOVibe~Vq#%o zaeUUeh+lGRJKuf>uz?9LYq@Cr-wnU*_Euzz_*YZ&_fI*CiEcaHH~!iu;mkL5qn9rO z%$->=Q;1XorxQxjetaSAOwhl{GL!urIVR0Kb;&JN_aZm_x3h9DCLvHJJaZuTrct{&!o-2Fz#DqMRdO%9PA$Nfh$u%Su`QxshX46;+U%-UVO_d{YnR1TZ ziC5@%O2gob^#RLS>{}6{x-1|)vZC*RKB^ea+d1%kC+{^#n@G^aA`VEi=OPku6N+H&Pc$_4-IO(XK=n2{m#X0k@Oga@o ze?x7g_fi-y@86J17M-cs}@A*m}o)<&A>=e$eZP3_o`XN3# zz!|<4REK3i!jVQpl`0ir@>xZf^*hV8!50O(=yW%6@EiAZN8}?#Nm|Y=H{sgP+bMc8 z$tc7A=H&(O3Uy|cTN7`FgMj*Tj80T-M!p5~2x)fbypQGv@owhtgT9^Z4Zp`ACxdOC z9q`{#H3TIXI}`0#rq8T^Qtf4BR=%nX+2lNKJG_!#?<@*0tNVBEs%Naes+;94rIwh@ zt~J|ED}7L^tZMci>bF)B{%QJa{d2$rDxA9V!u`9io^hf*tV0n!_P*H4a3i{`mGGoC<)k4v#R#;oFm%M(9oY(jVC83bhgS) zPEO4!!otEy8co?t!WNj~)_=nVynfdd)kx|FIdV~G|K^sq<>5kucV~E*uNVa~{oZRm ziSk@)X_YLcwB_0FZ^RJyb}71Q{DO3;R+#_22kwpRO^Uf(|8(96`?2*%V8|ke)ml&^ zIg@MZ;S%NtOd~XhH(T!U`k!ZiE<2FP_hQjJ#_aIvBwS+xGJ z{7ijrJN^_!%If-~nYjDrNczDCL}3THz3F*({kd!<8U+)RRsE%e*(3Sw=!7Oy1Hh!x%?w z;w*Yp(}iiGtMTNqt5U|${^M?HpVsrT7GOn+`lK^vsg5U`g1OYI4+ZenMm7)0;aFRJ znyBWco95W$=AH(;GF!#2NS>AMaY?lj$4+n_zu2Jq{Bz;t3iB{QQ!+~!V7NXf`89z2 zw3or}zqDn>1v0@7DB6fg)GF(OiJtNLIOhH4ZpvHM?+i(xXsJ`5CEs^vV#;2Y#N>JT zzb%%3@A<_4T}=2S^75e$fkm5$c5?gIW57g1GD~TLeFYIPm?^3!CborfP%BW%IK7q5 zze8vI8g!gZO&M%hQf>V;R~qitciv6??nUb2s@)Bz9^wBcZ513MGy*0JTwgr~Ruuid z?zs>&X1E$1o3vzD%*+m^xI}F)=5dN(Vf`pCrm1|g$gB|v5-q8MQ@P$<yme{6EXIlLT2hnZQua;f6 zB;C}DMQ~bs7PE41zIaOhqC_C|Hv$}a1J`?9TK1b@NypF>>Aeoas!IE3Uv2iH(7sZR zeGjxR{!icXK0>gurC%V)K+?o)9TDaAN*`(dVhJ&uJ#0H)Fl$qTyh&{JF!@F?UMmg| z%(pb*`74XQSjm>;?j0WdUTqmf>-#Cfe+R6w6jk@Wl;3i*O&3K5vE+q{#|7mi5`Nhy z;UTAG?@r{OjMzoiSJT(H+H;m5?&>S$+JDI4@BPJ^Tz)K=awI4~7i9XcuV3_u?c;Fk z;|UGw8hWwN(Tw!G|4>WL%v6|6&ZWoS-krgAL-q9#`^#2;1{Rbyh-hCU{^do0`B6Al zMUMk@V;stK5@LeEVZVpBh%?GHyCxJ`euC-2^e?Z}&~mQ=)WD&%dLb_Kd&-Z2^<<#; zsxZq1iZ52Vdl}EmV0URZJG$R~f3#cB7RpovKTyomH@>@KK3h?Hw~HoqWtWZu82?B= zIROQf?0Xl4qrOrjo@3r%1c87*v%-a*rZ12CunCi!5jP;!OK9tO7l<%;4L>0_y;zqg zkkPR)->SO%ER$<9TU6ZAXi6ltbBbluFJe^rUhb*CVxr|Np#H;*^;*10QwIoac+CkI zq4CJ6!5x1hVFbzy;D34^*Cl5V7^P>!%r096i$Sxi*5tj+7VykG0AW&&R?az#ay|?T zW*MK)ns%?nEZjjm+6N~unoE!bxKpj+$*5$FsfV>}IL5`4S}0-NZ+vfsgLsBSum!ZEmXh88A_FB%+@`Bdhxp@r2SnD$_r-1)eSmsKVbopR=3i zXeO|&wRH{VF14-mzC+glzlTFZ)%VP`64qx4X?ghzh;x{|jji4?W*m%?B**_#-=hjY zHdT9RZZnL)2xAhNPUZSe;wMHaj%~f-b!a+s_BX@Bb+YKl+sdt5AC8ev3ztm6#wY+QgcVjU0G8&O#T`bAn&wT_#<~=#Eyzk1;*j}QrJZ zp?7>LSbzJ>wJ7tSV5#4b2>K4aaeK9I8V#A`?f*pp9n6xy<6~UN&b)d{DZnu1!4*D50T6V=TUd# z{Z3tU{T;3aXD2(xo{at^5-48u8#FUSK%LjNLl#%y*yXbSgal_^H44C_B8j3lJx%Ur z5jEm|msN}7P;*pLU6eN=;C8rNDiLHZ>e7|>tFfHjjc2J;;$IrKGkUP&_86FyRl~;N z3IN}fXzK*(XeBr~+wT=xa*k1lug~$PbB2wnscb_jVu`1vm{}p}^khZCnQnHr&!B60 zNVq$`%&m2C6pETuJcqR6>emTz>K}niN`U~%6 z)}FWO?iu>JZ6iMmSaT1$qWe1*{U$iH+W8yaDJv%a;0K5>W;F|S;vUD; z)KN9_V9na@kIssNu2+E5{0dbQ1+!r|fDVlAQf8Uk|FZ3~y9ht?i&PeMBHZuQ!@3lu zA2_uMiS*d-a3P9rPa@q0%M^ssqt+j1)NmYU+|nVnY8TF9{c$={P3>j6J3H7=`aakcHm!N zGaIHg-%hD*0%HBw_@<+jxr!z^IY+74JsZV;!dk;UkX^KfpC#Py`DSd?QYK*rU*LG6HZ^(^X<$ED z9tykN=F4AfW#=E5msD#(Mu_u#Q<6u!AnBe$bFOZpj$Eg#zfJ8=VXW|H{rNuzhr*pd zz*8Qzg(Gd`Y%}}lgpzzIJT);WU~8n;=K}QQqg#She)ZXzYSqAeh+T`6i&Pk-sE!t{7+#0-mj}at$s=f(njO#z(XgjwRsCVcKvoDhDe6DC zteXr2;SW?E8HyYN%yr_2rmQB_vn{{hmuUa|X<8FJu(a}^#Rkhif_)j`8JR0!^ZMp; zgzG9(<_j^VY9(P(GpXV;>S;-5{-s&X%Ck4<4seh!^&kP$`248uHr2JsAHHiTf!AOd z%&mNc&QQ+DPXIU=ymW^I?4``vZXr&wZn)tum4A^H&`i!=;X;+81C5BSbXT&_r=yN&--wHU3 z(hk0B(vK1eiujK8F+#N7PW~B#Ly8JIZlB9Bhx`=7|AS2%-YKCG>DMRb@h}-HN`(Gi znCjHNIKZ-F0!UHSj$cpoS?E^l--_BzWO;=&zpzPs+OtibI&}FcD}?7>tP)}C+~d~N zR9yD)14x?-8-e-vsY5kdT8ow9t-BHoOiWC$W~(X9Xu`Qx68#Pt6pOwAaHMxwToTov z&xdmKrtYLjLVK}RXUnQltq=Kivf^DDgi3#1u46Rt;5P?zEey2jUZR4c~u(B%5 zZ9&him&K27^y$!t`aWDM{_))BL|&eUS=5I&0hw4NC=%{v_6%u$n7mue$mww1>_G4Z z@C=A96lpcPT&91Bf+B4}@$zTk@-Z>qqjWDctGR=Y2 zE_oIGy3nj?r`{{t2kk!~{Szwht|X?eZLyH-t8{ifeOMI{3z2SPTr}Dg6Ws;ag*bZ;!5(nmUbO;IV$l5leCIC~0)ZH|)YQ}z z@;J_lO<#%U)c%IYRhOj(7x%ton?=#Dcgll^ELHF}ooeXa80PwgpvH#};c00!rWZrI zpuH}VN_`e-RtkF4SAL@lkW#!(1})|4+g5S;Mg8yFX5IoKjjx}gtB1WQHe|hEy|JCS zP15YjI5G>)mN*VZ2>Qa$Y7k{PAK^vC#SfdkujDl};+)^h%VYlj{W}gFh>wr|xKQWV z*VpIpHtgHCjt1AgxJmnK7y-weQ4=Cq;~ARD6;e3DA0_MPywRyr_GvtriZ8`7@Sx2O z<*6H7OIY+=La>PbHN=kTR(;EO3NZ$tahzk4tn}={-E@0miM*SY7CLBq!h_4^7YQr+ zVTGQu$kcj7@*>i#41`E?e08OusTn`s5X`I)nf0#VEgKh?TO%Kbo};5+Sz~c#bn)7wtk! zzuq?6HZBsf=@2~y_Q}Li%Jl%er@Lp^U|4q^?`e^@GBULqK{;22`b|ZI*f~Qol1?;8m}Zfz$9yXQAroFVOd0Zlt3a;Xb9^ z^uK%SpS!gL@PRq>8vT8JQb$Y8dy9p!se68=1O5Fnc6MAHot+pfH=P0DoqkTv&Z+xH z3kx64_ohd_n=YPyLJHmzKYpHh(cI9Ph3_T`xjv$pRe5@_sMb)w7~8ZczDgD2(`95Q zf|aEXk-WDWLQlplAMPNr)ZogwIg&Z@zjn#1=X!F>Zsv6KY$%9Rs#Y+D>H~5xJ~^4a zqjQ7?O{;c&1W{mS0?6L$GiZBE$u0XPF+c?M8~!ExSq1 z8$oO9>p`sG(UsP+$6@e@q%X{c7y4Q9r>>QjHeQnad2aD}a>8|JA7)nDPFhU~p;6H0 znS6ci!D}{1VP0pvf7ghpyKR3IF)dFaWf1Ffx71xPj{a52%* zEw<*cRVMy};I#6y)T_Z8$$L5f2ho^K*XmNYuKowqA#!`y`q~(dU!-~7s@$4MJxNNs zPJ|-s-e$)6ZXC0SU&p9dwOHx!>v6a&;13@NV3YGTas!d6&Ht0dr8+qOf50AnWG5Y2 zKq(h#B#Izi4d)(`=ouLb5K>l8BR*A(1uR%-Ya{>FM_~io6`#aM-(A3cCYj0p+KsJ#}U)8`M@?vj#{d9o4jJ)HiPPtUS6HmrHc>#Z@ z-DIOL1{)Vw#=sz>GV00OG&Zf0_bhn?3jJ>xOP6gbu-f*8ux-#Xl4x1YGDSW!P-0NC ziMgV44@Qz+CmJBl07tl47|3i|@K8h28}6qf#`rwbQ-0SiYnfCflo@SEAJf0(Z|3Hx z{Z*;f)#8BOuAoilQMFqoT2g<%(paOr{YyDH;R4f7pBOkfm49M0aBy;V*Ez0Jz0sb; zbT3;jw_6n1xmZq#eady{6qLGSi1Wx0X#U~1jU}n2Oo2C}A4%ljn2YY_7hxOk25|!pRiy~k zFx5vLpFoIZ7M|vGS2_(SA*_bMiCYp(p8|RQ{P~l@+wfROh$0h22$#0N2IXh4Q30db z-=>Oh-(Ff!f7o;1nRR>21DR!UJY%?K3L{vO=Eg>gtYLQJ?l(gZ^SGj{%qIg829&8Q!cO=S*_iJWP*g|uw1O0H%W$v?(lX#SxE zXDk1Bia(s-ZdI0!skEp&6XiujJ1>>6p*{xDm%lL;zYMLsEZoSrkO5}Zn*L*f%-!x~ zhH`KTkup?#VE^ty6GQ+~%?w@pDY$dvY(9>z8h+R&;XaN8hWO&8NZb&~dYSjwe|cQk zI60k%ttrs^h)GG&=;`6%7}eEa_2>%%nQcA2H-A_5_QL)as4zcyBCq5N9G{&zN7nID ztSW~P(&kROnofL;jO=Ogy~VBRbUI%Q<4empCT+DKY6||TIiM6P32VUIFyKeRhs$!{Wqi?IKbyhi4U9Q zuxdmbqerWDjk?MxuzT2_m06N~i3SJ))$~akt%ny_Sg59tfXJVPrOqXAy@YmQ3?7Jw zJn}yvYTujIt4$-YW}a{SFsX>?7-sNk^g5NF4j?4A_H$EjyPQiw>N!0 z=y+;?TI{uiak<&fQng;Sg>h494x-KFr))~rZ-qiaykU|tJ!c71X>C`YhWtgg85<3q z)6pfxe{|{o9=9S&HTL}*r`#{QM`>L}Tia5ntWbcfnLDwDyNE4}T^au$qW-k9dqIHz zodi!Ka_Bv>sRF543YHEoAW%1b5FP`U)5YKjy%Z6H*Frg6U9sKg0c;8zzyP5$Jlwh} z8z#q~f))q}r2Vq4Qqa0ydG_?()TCL84ya^-Lq=ZJX??bpGqF0Fuae0{_EaaU`r_hI zWu_n1I~nC;{|x~l8p2%s&>((a?iWK%a<=DkUS1;d;S>Q|8Qz3IZe$CuJSs|CP82Bd z?fl%OtE)?BK3irjTP3~Bo(aImDCeM)YKnzLfhpVLt%=)`r2f}9O8uz@tMbh5cKCG>E;=TyD(UCCDf;I2G+4E3PNc}RX(__iU*;#y=Wy7CRVHB7n5pMG zWLC-FNRphK%p@kZa8t*1eccKA9ebr}v-&d4)ku85PJ~GPWuVj?Sxc;C9b7lbvS;|! z(5O<*@#g!356Jfdeu$q}rwa;QDG_=xb>$kF4wS>_JkM1Mk7WiNRxZU3h%IDI&9WD4{^<@v6A}7JxcXsQ`OU6-;C}xpoY)!W3UnmVs+s zUzwgf!Q>XZd8|YmDL-N#$g{Jv6YYqI+4)-#X1CbDFLK_es;7s?i2m){x7@TZED{n1 z;naeJj~+cbzPP{uHvavCAUyk(lvKOe)07c2Xu^*}SoABUw};M=B2Gdy*!cKekb9ep zDLwJL{_w6qW41~NECPA#@KgW^1t1yaW#@5w{5M#sEjD2>y-c3Q>u}*=)|+pAvqvwzE`+`%7OET(7BIVdjdS`IlD#11O>z96DHC_DPH|NZd0KGiH)0`pZ${Q-u(hzhGo4qND@ zJMGnYECA9<{Ygm3S=LHN1^r+seWE|0(?Ur@IbZF$P0hxz5SzcR~kRwyOx&`ayC zxO}2l@evaH&`|8Hsx%sSYOU@CUc=z{(TCE+L|1;cEk+&Jc4dpDuwhSmkRHF-YkB&) zseVa;wMv?h8a|yE1!UGd_A7d+nkAT%Vmz_cKYe=KAaP1VD9%p`IKa*=tE?vbg>mz1 zYRH0ug4E^P>stIw&ch0<@5p-CC?q8%_vfmWZy41kp1UmAJzB)txw=}+%ETuFBKI*O ziN1q`WH~L4*wK#H5rr_&pDy?%QJJLeG7+#V&|953U>Pzp>DoU0v`rsASGPI+4;xC} zGBI&);R}CI`HaWE8e*Le#fMu_vlr>oeO>{h?nw3$w{216Px6+!J+#@?fwJ^#fhSLT z)^m*SRg>4nZcu5ISco7uWnhL%Gdd&s`|9x#Bgoj`K_+J%T>lasP5e4jVln4}I+$C( z!NpOp^RMfoWuYD9fJG-JhCogmL=&Ca(8pG~kwlf2mIzoR0)T5MDxTF^7IqNjAc(33 zp5-aEYU^;#}J6ThZ>k*i`Sc}_GzLXCcTli zCrDdRP#*KoKHlw`W69ggTki50C&C-LA zBJwk1HnLkdJuvYe(wH#WR?qxKB9y?s_ZIB@XT!(0DQ1sOr>-DM(Jrg1I;snDLynKB zsVQBV;k$QV=H83z!Aytop+J&RNNC3MI_87|@bU2x^NJ*MUkwxOdG*;e1OEyXzx(6* z5MP#p$qJX~zf1J=K~G)*iujDjN&wby1K*LzGHD1?`oZ{Lc?J^)@fS*eUqpd)-zIo` zEIH71%Z&mO5)-$+#@g{09F}3ozkK;WG^S}3DzHEnET6dmV>}k@oSd>oMhrea!}}uW zSXen#RTDQeu1oguiHX|W!0Fl9*^IMyiuF7VVMuQx1_``^=Rb63I(<+odK?oI6B-pI zxfdD>MK2_jlslK;(a61J0@}m&RG<(nZJXERszH8JN&cIC(a##|e60(J}7Qbcq;5!BP4j*02% zxuLTye3bCkvzKsX?&gO8m43jVRfiW;jA%fP0vOe^Ig~1{PA^2-K`}f<{#=&GePpqG z8HL9OVj0eT<-+~yk4Z}_cHJ4zGr)EhC|!jD0DV7a>}aU5yQ?e9b#Dp)7|~JD&{mI* zh@@KYs>;f^?Z7v!=e5>Sq)-$zM%?kS!f3rG0_kk{b7Ss^TF@@A`y+3?+{<&&yKO*~ z^uH0E0==(>&3w(!P2H~;iXM0vR|EEl_*GhON7TIyDlg}`zP%OYRv<{j`4C7vd`lRD z28lmiBYJha5ToO(S2+7_qCkC)eoE)IcUbplw}Uy){Rb;A&wG1-;Qt_LyS$}l8(wmc z4Gj$e*q?yTjt&3-Z*FcN6w(Din;shkF|^}=rt^9MFda+Jf};B)bX zp`rL{Ux^NuW+o-EeMUu1iyGkMjERezU|Isde*KybJhUviBlh~E zPh8NyI@3xe*Q=amNd-J)Wnl?YEH*^X`c90>NITzNi$u4u{S2xeFFJ+(odk$uXzb(#QveW=W&8@(XApD+;<`TWGt0PIOdlzeu=t+3% ztMiDOiBz&#=NB!ySB0^}pE|BnyJj4Tm~KZmz5WvIS1K1Fy|H~XYEJH{$LK4%a=hsUkCOHH0wjjzh? zY0H(~kTrJxCM=)x_JQ3Lq14BZANA}GCKkqYC7xa9};KTusTeIQ)V~)9>3AKu#URrkX|7J z%Cv#Mr~z00ahwTk*0LWaYy#dbqj94o;baYUEB^72)`#0^Zx6sj+RdNP-O;g|*eJ~r z*N$0}xqE$@g-Evn((t8GC0q^T2klN*dB|PgFAYPY#e9f4(al=#^(3%*1m#oY&uM zUv76MiQM^x*HzITUT;rykFE|XawV3pTgGm44vcEwE}64)lS7Al4xo#XcC!I)V0hsn+me2p#EqT#n& zFoeApu+HVf`xDzZ1=kS&Ih5TplU*+Mu3j>k40zqymiJ4*t3khV+J{a4pU)R)K^QHy z+j%sNsO^h6pz1O8tOZ$vc5zEsr5E~W6pt<Zx7HJ1kuO#=uxuj?Z33r zo)NkvYDx0)s)bYVq6P#6cpOY?VU%|uvNBCf= z>*b7%z)m$%!aCvFI23p)HMmz0-BL>c7@f0}RNO>TeYkW~(9qBTv$C=PNcmoP=t1Os zDkCdPLO~HqAV|}@{RkS@NCij@X1!C)oWd+e>vXre?hWHs(!(m&;v_SuBS`v)MW*L) zbQl(Q4mQJ{JVgc{VB_FOYsz5+6VOKnk=w}*7Clm$LY`xxIYOh#;UV-Z^c11l*-WNo z;)g}(0hH;WziA{NX>XzZ=Wh?&cGPhF`i_IU zV%Dv-i)q7NBE4Fr`AamINV&xrQWF07`zu#BYOalH=KsAm=Qi6^XdTCL-#s8{pP%feYFU5|CpNZDzS`O)Gk^8QcsX z#bU5`Y<(7bnLbUK!;Jf;5M&3k*lKk=vH3vF7;Ky)bl~S=B@WKt^*H$1U#n^+c1uQo z7T`g2l1JG%RN0LB7X{MeZ#$YndlpnO1~2Du_9Nu8T3h+GL+_Y47sl)yLt8iM;T_`K zgbwVq1q=xSG$Ll=7}_ohSE?!Z>7JG`vey*g_hXGzv$7l2sxW*kCx5-tTe`0Y0}ca! zj0RJd=?|DXdA)~1WX!PF-nag``Muj1%*|4-K;rj@2aq~+pC99DqIRPLg#u2u+!zP} z!g<6rtSLC<)wN3oPJiA0}C(P*zlI%)<^EQ8#>ke*U&#zA|3h*P`fk zkH>#EoehhA>G`uG=1dP7Xwm>c*8-tV=ge2V&Kn~4*5c$W| z#d!z#S#xyD(Yvn4PjGb&(I1eK%E4NE>-^xZ*Bddmbzmb*CiieD0`k}&D;4XFguiVY z=$5J&5VZ8zjX-OrwgOHvQ(+P+TAR3mS|yCv!X_e>y*WB{T%y%E}dt zTTaO?Pz?(xEpA*C1^V8|ejCwF*@sOVct3-(LMvNaA@9PLy8_U#Mq5Gfo{n{={f6M@ z;mMjSHxLA$lcip835^mKoU$Fu&H(H-%)Z=VZ%v1Hg13Tuvq0QVHhDvJ>zf%W~KzfjTT@+~BXEw(u{0Mv%8RU;qS32$G15-wgrNQHU(Z&RaoBMLVeNDxSx<&q` z&Ah(o;;NN4$)$a>yKqxC(RPYCd^%wlOiZ$TEQO$Z!nEeF33x>mk(3WfY;u1V2jfp5%zUIeQKVxB- z%Oet4KozwZMUGR8^i2}27YMW&zmjX*Dbl>r5$yr_9$NcmuinmXjb^Q$S8JmHkz{cI zcC5MtJNv6t5!XVfqy_;W85AlEkq#q!7Ta(l>ZNluW3ZJT0x9TDu(^@jX$f(9Hu7AV znub+L$tUDsR3VW_?@BB7g>D^faJ6Q)Ra|VQ7WcmDabNb;25(qdP1^iX?%V3%Zj^Z_9^I#9SO2I- zZy&>^Z~@Cu@Nk*_wn5K>zP}NlXaj1Mf&~2yC(AAvA;1D#?Z=QRA zfr*bg=Z^Arb0>=B+d#&%aM|#+-{yFMdjVKZDEP}kaf&zXA?+7D1$AqjfqoPkRKya1 z<7}mz(gt3NV`yxFLdRnk7R$~MBKzn6qMPAIe;Wnuz=j($$P7Xmw5%*xrZYJ{)#FMr z)mpg9V)MMP^uNpH#hT@$#0Kx$3ENh+91}(Co^Z-}i=|fecky;eeaO>Ku7OKB-l20* z3ggOP+bqQ``dse?-phDDy^W-c5Vl5QyY&&Or( zh!FJtMts#}IqvSa{F)?NK%CGT7mN9m3hTpvWH}~&7(T(_J>rhPi}sjR{EJ8)EaA*x z0nDlz#ct?>S)5yzXWEax(qGnBG1gK@#YE2%uHPEY=34+#@2N)V$J(A`6?{Gd{aXmO zU6(xD%$1`*O)IPlEhEMA5-?YupXNF78DW7d04z~q&v#6c%3@Pc3X`YxV`!d2bFb*Z z;Zcg|R*mOWR{lr0Mh|0T)kt z23}D#l|QU|{eHHG3$4G)Eq8gE(8LbO={GF=Id=a;c>fKi8!)q!2Jbs-fg6T#9FA4GI;CD@mDRgejy_?MMrcGrn=cN3(fQJs$ zJ*H#Vr-wW?mQxIZ7}qTW$8=0UA@z=LM?EqF$1gmZ?J!HTPmDZbb{+|yi68?f1{-e0 zSDWbPi2yI#Oo1G~FhMLZ%Zl zCDvbz;cAkf`ZA5uz<(l-n@EWf_X|$e%~!VfPM@vAC@|3d`M+akz{BHXs2NRgZis55 zgP6^68FJM=E+Jv_65jf%{TA6TyPkH0Jp3VL)5@+m^r8iC_bfmmw+02Mu^GE+4I!)m zP}!zmg!^4BI>QiGjg9!#{W0`K(|%dLRZawMb3~$Guny=Y1P)rHHd2+^I@#_ia87%i zNB_Kqm=CO!#0e{kP~rp7F1%KKb0U@ddmaxFRDfP_)`k;k_#9u9C{60Uv4RfnS?)C5 zc&%*nd&w=Dc0F$KuRr3E=mLt|U=OB|&SaR!SvTvkGgN434l`9;Cd8%Ap5mUJ1^llh zYAnGc-{PZBbxVSq163|N>IY{dlGE~654LGj*qfJ-+3prkpsVY45CNn0l_`w=rlyC>8*knqOYXq|(ejZ)npfkQzDctGmv+~n z_^ZLTZh2_cP=hn7(A+1)ctY?!-x?@)9*Keln!qAXW|FuEI-Lzh@1^;SsbMnCa5)0S8@}JFR(cg?&vLPiMVfULn4hLq~LA z&~G?D0>4acDnXCl`yJ;qZLPy%rGbmfzS4CEAs#OcfXsxAOfTQ4!uRJHVp|QxL1+Vk zHbb4z>evHM(&kLt0+U2c*~XWBiFb}9Lg(OM=Bpz8MkJqk`mcAvOphO<|BH_w{*LTN zpl-ZbiyR_l*Pe<9j?w4zu9;9{$=DRr*d^+rUP5Bp&mxNEAQ%4B9m>&o?LYV{L9QO9 zpZ%;3s!1m9TXg`!P;9r;jO2oUS}VO_+x#UR&Jcl@urDinqC`E(2w2-O<9dma9=W(l;_0W zqeYq&7l4p#5+gbO%fxb3K+3=m1*X%ZWH}&xD=1Tz!^kbUObH?=R>Q_ve{;*(J~8=% z2UL?JcCea%cg`r}&MwUWyEy1PmzvV~;xC}U?WK+mg+S~3U%l{mz+)XCj5cSPHt6oo z=cz8!mFh$L_lTa8HVEx*XH7(+zOG9V7srY5m>rT)^N$n3q4 zXq$FO&FQy_iXbtO#5F@{{U%kKkRvMOZ+0VmZ+WcFEvnwuQKQu!**MN4ArSFl;s+-j z!cS&vYb4C~NnKh|H$_W@*RR88P7i7+_?;e$h`pdSA^PWZtI|)gjI3Fxp)`@82z#3@ zvI^CVUEADQg?qWXgxw)(xp`<6fl@tC9Dw}oW?k^8*9?QFEt#~P>-`IygSl#12zAVV ztN#T4U?TX}J333)V~4Oz?HVY##%qSo!y%g(yg4F%MlTS*8YcK0CZj3&vsA(S>W*1U z&E^6M6StAP7(43P&Uc102 z9t5Hv2JZ7%RYAq&L6@>Gzv4e%m9{>%Mq7}&fssOU!nrWxc-kJlotDROq7 zPjFa~kkl(FDiTvl^3z$-xFT+z9d?onkt(6IZ9dbBL+8m+h(Prxqx2w&@w|U%Fah;w z{u^pQN=^>ra)0*AY^8Z^pRJmV%x9h7pKzf1F=Aq3f9}@12jX7m(c?tvpr|`ps(@`r zy8F`CdKJkC*)^aNy8K0e^Fic1;eUh12r=S}71@O7zF$W4C-pz&Zc zFj;+t9!V7;WAl~11#=n^y-37iO+v!obpZM2Lp~lN;V|!nedq2UbjX>(Gtwjw4{*XK*Uh(;0p!+p9_pzy{f2G+VF+oA|_341p zF6)ygZm6oc)u*!CEbh{293du1tB17Q0r{4IYFb>}L#AJDB%uFW8SFq88?0pnX;w9k zOuPF4<6CVsDMfX4^@{L0z^M8?27pf^MC`qc7!&p#O-DOfkAj&bONUzf0@wrua?;W$ z0NXEnp3hMbu5K<0y?stM#@>N4`}eMH(MXBi{gRw3&DB{+z1n zM-3ll5Qw7#O`fyHECaHx;!N3++0M8|WI7Zuhu~_*Dvhy+PQw5cYjG?G}9)w+A$3dkJs|8=Mj@!Oz&NTc&r#u>w zs-+|OSyIy7iiESnE<{^hpp?adn6CHf#vhjC13#5S?2-d-#PqAiBq%|za{akuMf zTGA7fB5?{;e&Xu?!&i0xKc?O~E~+nDA3g&}r$~vkiXuoTB~nrbNGJ^sjdX~F!~scZ zMFBxtLb@A<5)criy9A`WV`knx-`~CW^ZJJ~bLPxpX79DvT6?YMc@FcRRw}NOvGb#- zVyX(UWnI@X!IfUW&b~e+AD_n0)NOD@BaPR|>1kSR?N#Voh50biRU&>44vy-72{t=F z8IYh**EG&=UK#g&h^n&piXt*NDClo)USUguu#MWwmjp5@)MclQ>p$C)SrCwPoYs7O zB?j`<434}*!dah&nO@+RJ3H228zvmOB={B)9Y0op#?0w!~yxh z2w{X!%#2c0SO55FhwFc8qTPB8m&VetLlve2t92!y9QtGPG4L7E6~CKSnx2)^n8duA zqztzbrDs0(_Gd)~nSx@&z#7(jgttV+mS{ufAXO&-E~jXTT`TZqVH9`1(#TSLDegk- z@}*0cbU;B!X;RQ*&y42k)zEE1pRkWs8L1>hmE=PYib*Vz6Z`gW+uFTa2eHxk0P;#ZqtGMjVE}(t^oRh09ssJ zgrXVR80UkrzG;we)rfr)m}z|IW#(oy>-+opDHt?;o591UR_MA8;22FrP$jKMrL;HeF#OZ(&jd6U$9}pMh`C+~2Zp}q!vgLy(9>fH_)jH@-!)T{b5n-y z?$;gq_x}C>YnY#}>{WGUPrkCgUD+6#w9^yiK<7u(2tdiH{q+u`U!Kg8^j@532|61H z_>8>D7ey~d9j9@2a5PB8!QHPgTc2k|w8AL}=&z8GW8D|Fc?hgW#ElMimShdwrVn4w zHcG~h&$iHaTQpI^*Kf8H({c2GJ(Z*G@1>kgwXmXH_~b=!lv<*0m?zAFQ(oz5l5)f};x=fdP=-9eLOxvboWFmH6tw)tH;p5ul!?uJ`J6 zU3ElRac5_zm8#Xg%JhPkM(4Z-PTKE~cDi9=Dgk<+V*bQj1kvi)lih{Gf9I#C93moG zdfuZVQ*TENb;>Lv-n_H2x;+D9y+NmQ6dh@~UTYJKLP_I}Kr(7-)S!Rx%}&43s|LQ8 zzgJ#?nD&)Z5~Pv%HkdnbaGpoW(lOy{&$zjpd$_JDPnSF3DkjG`D$-d40{Lx|8jlF>X)d^-&kk9oAliH3@w9ry{o07o zpDL=#H1I*IiBAEQ*}XDsL=x727>lbyjsKCm=%)%ht&ocTy@5g9XuKMR+PLJUD{4#um3K(SY`04PllJ$#Im^w-#U(it zw6S4}fVOX(a|mVFWSotQD>byb^zUt=Z;$Q4Rft^i(ovxPwtpXbtgL)sSZelRVKjNsfKRuy zO;k{@-wpH$DWP~!-eY{w_MRnyMIsjAeSRdjK2jj5H)~O5)lM9})Ey_0Z6k*$X{EHg z1+5q>TU+yh{*IvIoJ>9DY@Jn?0pt!Mb`$r3U(+k{f#rbog2o#D+2hM@-hb3yzs|{i znp_d&w8a4B-~8IrwG8NS{BQ59}vb9x#xvNU*1Z^ z$4IlZm!7BC454CPdA_tiGwe|Jp0I=FbEFE=A3_aOP}8U?_T*K{*_epN&-f0bE^P=x!F$6*Cblvima#D zN)L38d`GgkFlQg$5Tv498&vjKqBW%ioqac0ZhOC7w!K#rg5?zz ztyQH?zgGjZ-kkg=k^l=m{e6VRth3yDp#In5If;fh&+g3nC<#<;K9SA3NwnZWbd)b^ zi&|?(IZ9Cv$YO*Idn+#%X2M$rRl84l7x#`Mm$rMU!chHP4$OCa@-H*mKPBrmETfct z=e*=9=(NT-hOlki6sb-o9+eh=)yC5vTYSY{>_7VK6F8)dcCwWosw=8!z@w7h3mF=f z1`*I{V@%Lxdx8!s9%~K0Dm?oCFQ^@!q^Zh7MrGq|FH|K1Y2=9JTb|4!;t(sObBw+e zOYq2yGFXVkQ z@|t-1cgzv|BO{PJ!Hi{`)f>LR1Vv&@26L z*1(Q_@spc3o~7LtZhdq}9xjM_M*llQ&$>ByCa`Q-eg0vl3sYo1|1g96>3gXQjd7y5 z1mm=Kgza7ZW%BY1MtmoK@@lDl)A!Av#?5!04WPHB;B|(DA}Z9&qvlKtot$Jp!P5+p zbUSxb+^G+=BiKUw?idDftv@@wq~4ec&O1gxW*Fmu;&O-d=_)n}qRE)`i*)|Sl9AGe z{Doq^tNq7V2=cu5iTW~q5RBQUo$}h}gM3q)WLgUe7s+nlzMU@DRu$jSRMFAiBCeH& zg)y)De+OMsb7&CIy-@RcY!g<*`^}Wj&cD{=V$i{$YT;@PQN2S@u&as%nK>qGnzI&P9zcUI^3~3XVqiGi46xU0v zxF6qk;LeD942RDs1~)E=XH~t5w;kJO!yYhaWwVu?)uWzu`|Xl3Hb(2QJa7@%JX*kWl6!!pQ4fEnjMt zV8;P!`urio5wB@71rCMl50yUm`ih@~nUxst%=vbemRf(i62de?;(^Z3y6w#o$#T*| zz~RV=f)*x&tf22)d{=NfU$kAaRt;pmXj*VMRt=8v1)+N0V2HNMl z!!f0IRR*Kokq_Zjx!5&Ve`-gs#G`nA z3%~D~dJ5JF4i?QPr6SYum8vX!j#&JrpyS;{=@%sALvB_b38Os*l{(k&5!>n2 zi3GI=0ZXo}yabaQ)J{04Ua9}Nq5>BMsst4Uio6T!PsF?;OC(2<*&Wblh@u6uqXQ(~7fAmjE$zfKG!~cpf8e&b3ri(zxek^_frmJ=0DE zKbr-bYdNev=!_x18cuqxFwH4=p4eKtK#p_d~8ND`0Xln-~LtBtV~6H;%>A?qTI@1^`A zV|I#!-=y5;@t{qfmuF4p=R^Hj%*Ox7a44?+;o5XSQ^h3}RAc1GkWTH=n-@=~I_JZ< zhtVH}=e2J_!?fByM!4$%Ntx>Z=uBX$DgTfAxza^oaHjMhWDWec0yoD+NgxOzGp`TLnHP^0 ztD3bd>_ie7AGq9tjJ6A^(%drACU$#zln2xFGkk5gN57zsH4Yn)j^H$TOwEcZ`TA3RgK&JW%mV1Rf~0%P1Q8{ z8Vu)P)21UMSvycfjwyn6Iham+C88*QC1}uFWHL}x=pOSA-n+AKhGN7(* z_)NdjRu(W(ry|+JoeAWEDTU20m~$Lz9ahv9+OgWMiy;&GaBIhG@L|7>CqGj&0buf)o-fkQhn-Hxfd9@lpj%Uu#;*$48MrOFeA2^A-&Xqvg$KMU7`` zbfb+~`0;zlS-vfM%KCSDbJ^S27pGzTH*P4n*iK$mmBQ#BfClh=8*+o3M&Cewz83t9 zj!>{Hm|bDcoxf!J@?Aq#A;e_O8{%)|WsNz)bFnK2t0rUoupe^DjVd%Oba&{5YA6Hp z!at4MNLBLidpu?(V})i`y?2pX7b)T`huWU0jwZI1Xg*2Pd+}JaHE;$JPvF*{5BjP?1 zcdR)ICV|t@;O^d$Br$X=>|q$FAVV^9)dpj>B@AfCx!-4kf`YfYrOBYq?(V_0yfeu5 z{CDfkc)VQv4md(Kuq-;x6OS^O*5b_-U#P9EyuET4*(!3X_3^Zw*?K~4|AL6FS7ruo zjDZNQQF62U%4R3u|L$XJ%iCBr`4Pahw-K8nU^jRABwBh1`^UcH*>2z)5w%j~K-*mPL?y)+WFKT>u z4`bDN{yljYw*62_t;h@;dN-L~u<2h;6$%hHuLz}gyu@nL5z)FaURL5b|0vw++^#&w z!@wLcAUv(pJf}javl>O})d$&t9ct*+>D%9>ziSZk%K>G$TrzlgQ4fp$+WBcK!gc@t zONmz+8hF92emK;wffex^6(RvQQKCjEqN$0V_%~4iBjd6$M#I9F^e5*`>0-wp-?&+Y z+VQBE;}Ash>${VygZ(wnxL;}}{S4!82uCA*J}@BTxs^E~)!wAMd^y%6DZ?pjSW22{ z9i@OUne4hNhx^$NSl9iwU2^mKEAaRdK8WTzxtdNXEqF?PYxe@ur9iNKf>1u(ROjV|8weHdsW)P%ysDlXv>eU-t^}=AeX%7iVh>J{fpKnZAFZ$Ci{Pu%)T9Wm!Jh}c!$4MOFJ2v!o z^KU36bM+N8=2Fdng)w0#zdemtY8|fasYS>&XmKoNaOl*z@)44+P^Dfq+;5+kJ}wOU zedMb>X;h{nf%9D`HyhWO7wt|s6SwMxZy~qAp`VGvmywEQx;^o0 z&%I`w3NFN9I&@KywCN(~O6YP!0^rFKNKtC0w{i{N>}|R{m|{&4biN*2WSIAz;%4fD z)(j~~Ea^FMeEHc|n^7K5EPf#dyXnBzG1K5#(ZTAqBU``M#a5B>LK3t09gspBR;KGj z7oENwBG`fFxM$frwB`|s1t;UYyY0o`06b9aw*89l0x{JAgPO5Ud~DWYim^AyHD>S& zx0ebq%i&jHNx62crEAZH*>&HuS?s-iMb1sjwHa*kAtGwGkNHEOv_23QXytq3tc-eo z?M4DY@WOM*^JoJBJsi&@>-|Ev@cVe=7J7qg9os)oDsIL|07WJ0^Azz@fN_ zc3$AG1qKGCrk9fHSNXh8xmXkdErgW$)~L$Az(Q{E^4?FqRMDFv9k##Rmr+_zKFkU6 zabBHYKBj2StziB#41bfd1C+2DT0o`=7qK&OOv}aV_;%`kn#mxDrGkYv2)q>6?q$`e zO5IG3-@T%zsG0gAjxnSi@p}5f)xm5P+9E#PzlW7q=;($?SoBaHmPzcXIXRt^nH6Wy zAGJ=-sJvV%2ypO+lNVCBe1g9|i@TL*_ogQHt|1S-=~bV5ps@ft33#~^8NWq-EDL&? z-`FB0Cy3?O7NK1*ITR*c?-nsA_fcUk96f`miw_ZE%qKI%2z@qRt}gO2@h;7KBJ{w= zA!@AGfmzeAmh~dasIFPu20*3GkwGjBH?9$j>+Gax@ttUO9*L zQ-p7oJzQWV2Q>;w`>%KpQg6l+PHF{zilGKPeduwi4wRkITL8HGKTURBbw&5Sci2Wg z`t&dTel>DK>tw5_b#BjDfXhLx>vE|}LC z9G)Z=3L28C;;Tp-cNuJ-OXn6X-dWCD=s*E&)A z?ECXAmiH$}O1X8|0-2Vo>sD?vsiix;FP$vsVSWR1Ucu7K*4Q2!C9R~ZD?adQ&u7l* z_C9up`^8$g6{naOvD_9*kSTW(4x?HET5$GV6y|F~KeA5um&1~L{n6N6Tlv)-{piHRymAW5 z-f#W(NzaLLgX^QF66Ux?MCidFlZrmNU-Le$fQsG71`jmyj6|whd=XBLKHoy>C<#)f z|CW$3m+aHKza@1C7mu&vU(IqI#Pg{q+a0?tVxk>IAU{l??s_guV5{Ow>v-v&zLIBI zePUPyjKUD8n41pBCn*h;4jR^!L=@#a^y$u^NCyXmOXs>M0x}J zkD0eyt&FO7s^*Ofa8#%jRw@Mr1&Us^n&i&Lc!}ZTzPJC)ufkd!lIF?Ld$i1*}zXpH|dCEfvhd3-F+CfJ|7aOvJXq4kER z1K9NG17GW=x211#9HrS|-r`9r>&=kRP&_q?^Mv#0q@;qyS-jKH&7gK9kaD@<(bBKR znEnV%>TM1VSsiQZUp{OC?3B;5GoGio8~zTlUZ5f)BoE1Ba$`XFwcWFnuLN||^U0I$ zou7Ypt6cEsPz%^juBecWjSXg#3qt@mSlFK3#wyK7aFv#M2*cMkmaSW3&*A~su>P>F zP+vFd`DMQ7F5XgX=5S=fJG^3@+U8Z4>gU9yd;QkS98lAHZ0;%9^tWU!#Qd6r$7RlQ{F^a( zsy(9ff3|x%eX!m)&IL}oPf*J)>0AcqP1i@h1>9o61`zCi9bDDwv%5&5EKq%E5X6!L zUjQ=&1KdKOol;KZX!-K?jEjvtej2(=sEn_NgH?iDm^X!|oLJUoA#Mm!hchr$t$fkIip~@CIS6$pH0auiAL) z$}k$l`1ttK!pC2tquKxd{X3O)-mUv&bpHguaCyt4$L`{-_utJ*uv2yVu^V^kQq!)s z@4_~#{9~}n-duP~VB}}opnnfs`GS;OJPzRQG{$;rCM9V)HeciUu%a8+uMdea?$W}z(6p~)EWCq`Wz|7L}4u$^JmR+~(6sD{dp?U;#*F7BdOB-JOcT%@-GCO8p z4z5V}-xXbkt>4F!0kp>}D&+TI)^|BhfchKtaDG>ngoNbL(%8d;KXM45%flds!F*VN zO&3mR4MA<>|8cfs3$~c?^~0&yFT>V!Aa~evqopy79M01oJ!QkL^k-0Jy=>=H%H^1`S-I>>tcmursekF(qkKYQi90PIKZS%HGC__PMXj+-d60ci_) zGzyiJJBE9lXU6+WSpbUWak9;J(P|jiM^q+1cc`nnM}Patn9RRDgu4j(`9$ zBlpe5ur^Y7G4R&9#{>|w*qZ>qZv{@NOIGib=HN){-S6w|71>}z!1)el%oin%Md!1l zhY_~^{Od(P5{g%^oEVyO6f+V@L_lR0zb`8Wus7!O`^NzdfU1QTS<1~o5-V`pUYoV; zduApHU=e}>%-IBowf&b04nTO6i>Lma;SQd;p_sVC!u~vX*s?hi;@Y{qrCaybJ-`@U44CRT-Vabg z>6`=&(5oUarm=7v7pW`Bk?&li6d#*NJ)I3}&kbk#iyL_+K`uEYw@>HhSoPsEoRI_# z$H_kK+v*P?-V9IwL@FQP+TLD(M()YE%Qc6Hu1>O}Ak!9x zCnI~d{xrDRk-cv-LXNhlYLa-CkTJW7cs-J@>(3pSyXNV`WQYPNN_!;kU5{n?B|EY0 zZ@12-S=F)|)xGEV(c5{WDX0S!|0@`%5}1IUhnVLP?=?yypm{X!C{Npb}rB4-v+wqnM->jS!a z^o?Np>sYimQ+~a;1bxZK6nO~OdJ2XGdE49tHRxi1HoU~itA$Ac`5*3s9nRuul ztTZ%9I1ILX0ME}UAVB>)LD(PT3SI=k;i#hZ^ID3={DKt2%b((-B01!!KgA=r7kJj) zUJpJc~^Q1hc>%IM0ye>4BbZ}HpgjbjGMJJv7yJl<5do9jp!qNucL9x ziP5TAADh<@UNz>72X(YL8T_i@T^ayRq@|7Do=Gh#ahR2=5@Gz2n@g%`nOA}?bAFjr zpa|s3(hl$N@TlqNthm~ghr*$xRs7>@xxb{2^Bt}uk5QmNiTQ)|-7P|ag^eq8^dw6% z|NQwAnsb%#JhJ6As8$>Q1$!R?jIPaNG;oAr;5=X`CIG`xJh`cN;!rgy2y6#*`AmLY zX0Ei=)!V*&+o9aJJ2q3Nv@HmzDfJ{tR6UmfNqS^k8!Z1lJKM7X7!*LTMbX!;I2><` zXWS3?IREVV^T;Eg$#N@NXw;K~n_Eejn5#AJ?_U#_l|Qm%`Zty1p}OfvKxH!qO&8pi z2L|}RM8H<7akv-2f>MFN1nwJ2fM&}FN|pzy)zvz>#Dni9m*a=4?m(~SpP4yQ!;q2I zY~kyM%{LBl`KE5l#1Q*+0pgF%vcx3h&Ju+h*ey{mv*WwrAH=qghKu&ZI4Ri_JGTtG zCaFt38E`L9T?=m~Xuu2LbaZt$!QcFlo6GZ3ODnx`61=!AiP(MXjjU>BOGdpsdv(8& ze>!yFI6Z=g1af!iFhIbm7KD%AT>0{{nnhbBh_&~H`N^3~qpQA}PEhMJ|6T7@ts8Gq z;4|Qby4uRCQIA|@GSina^Z3xzVT|jE<0J>}5po9 zNp3lwYfKaB&X(PU%I%mvG!KhjlMLh)HCkK0j#UCQ8FEx?hniLk0$!ZgYNlu`ro9yukz`YJKDt10L`T0?L?!E^Y-u4 zaWDEK*rk2f9U^j(T3T62?kjZkc;}5I?dj&N1Q1y1zw(Owjav;+RYyg=ZzqkeAdjTy z5=T>D;F^kF!H@v3t%KE3N)`#$z&jE}Bdq!t&Jw`%CMR#K)3LHf*1TCZ!Cah96!7F} z7t!w>1DF9Zh(hmwnlyvz1Fm1o7Y!7i?%t$y4cvYfdvP^GN&8&|3+@>$k=u_`DH^%p zUa-BE)zG*MqF>P^A!iRQm05TAt?o#&q~}gq%5lf}_?tO#4Aphsrho9pf!2>O>zR6S z02~M~ZVj@k%I)0A1aJnGg!}z1aqr*b0X9t&pymTNb&GG>Y~>_4fV?$;gw_%C4na6G zATtK!Q2;tAr*5C@{z$o;)RrT-;CQ5PPtlaU(o{lGa+oQ2)_W38G+!GACdoK_li23@ zXDUvuSa>>ah(kjB+pD+y_MrDMI ztNL7-hCZE5TYW+4GIR7K$u-=XHb9uo9*^))Q$qqcyvZsDB^Q_Jm@RvnE=!T0n0}Z1>*eUo&@3UyzM#=R;-pKOJjeU^iQx)ng#r&M*!oL z5}<?3;5%hj`!lGrx9_%jkh%84ah1hv^f%eyd+@Pr5u>xZq45-j(^-IE_Q> zg$5~9o%yEv$Xn+%acFN2R{0wJ)%OFR%IrCmt$yjYu66GyoXrP6l3RPKVA)mv?o8lu z<>u2#=bxTUj1_%PgPE23B=f`B&`b!UUNPU(vGY0Xt+jDYZ&J^T9L zgz4sFRR>5s)~1ea6GeeV!Hv7{F5e-Cvaaq|{S{7sLXX*17oI!{nMnsi$5~i$@8`*S zobj;R?BvL|TS|3QmGg<4G>!z@kBoK2?ZpkhKfH)`C90J3N)fP~+Gk3bktE=#bK_|2 zQ!S}GA@@ahtyRt(iBG)U^b-y?5Vkm!q=MWTHjC?s#V`ZTb2lIs_`z)(eCV3Zg{Ss( zp`>q)A8@ac&v{Kem| zIARn&moL&Z6X1MggF#C=O%&GxCw9x8#`m+>@p92N72QEvm#4(PPz$l>xKL)h(Q}qWsm^6XibgRn)C^hdiKgh>l1A(-k7q zrkzGc^HIv6rb4vXoKL{z`p#^_TQ=>q;$k&2-O#Ww-0*`;hSvAaH;|mX)ba#564I=R$)ML|$i=;feU6>_xPiAoT@6U)PY^7&AXFaAzV`YU;dl{U3&}eyB={Pg z=1aFCHUlF(rQTek3XS+6Mm5CStaotA0sVvyq^EWqDh-NMSuIN6OHuQ|LNU0*rO> zpW1GfCFN_wJ|}6#y}XR@ZYz~Gj5$57B?0}@LQ9-ohtgR*w8VEFK`c*3D)iQBhHOAD zwT}E-`(;;!uGbKe&ygA|UcTN$*So@YoCT1oc2=tAN1MA~xU6J@XMQA*F!H=lZE1OQ ze{eV&Xo~nwG$~Zx1K?E&@#9!2?=yBWcR^p-PF*6eofNhE!e7`+VSH*f6cDWO{v5>a zOvMOw{`%E#fr1Jh6|vQ#bPNm`PhxID2F*cJE)3Aw@pcjV+qFa>MQd{KdYe$-j&@;N z&P>rT6Fg4YXRZU}C$oa3Fk=U!o?A5MS}6+IoBaT#z!m9r@ZcQ*mG?!-04y(LJu{jFjS@n-#7EM^(rXpbq0?~3~s)iPvD1*hI zD_noMZcWv^cp_oeIS<#66s-Y-3wD3Iv6V(i>Yz$-h=0?K0U8zJJ*|)^W(j@Zrf7w# zD=w1b&Z#Fq_=~DHo)}G|eR@6}nBJRIB2k>AuYX{7y_U71%CwMJ+Aty~ws|6`dat^x z)-(nwB(7RhD7Gk$-#)5WZXcRFoiYDVGwVQOsILe9{n90i9G+#9UUj_yvqzyD$_07= zo%|j>A!ojK0{Z(zK5BCah1QeCkoz6XcYitZd-4;R9}?2(IWRc*GnDQQ*bNs0pX0J| zEkv>|3Kum_Fpf7YdcTpBjfaCdy-j9pCIPVv30(&5AQ%02X7bbGZ~nbz-o1I_2Evg~ z_0v7I%P=kN$ApC3?<_#uAtk9byeZG zVDr;Q)O~;_y7ub`68K)Y;SXl=FQ`NSSGNEae&y!rkbd~^n(sQPno#)KpEUeN%$ZFA z7E$4iXxen{;E^MOh4$xvwd~hm4wF6QVKBCiZ66(Uq&vISgEwY0x!rS%BIHM7G@0%N z)L(JQ>ooH6W=C4>q!uv`3o#yt`^;?5AlZt1v~nnoIy2MmP%u?6gp01<15!%B;p#Pfc_BiTqJGInrzz%yWPDnlv-#vvX&960Y<2g;Z1cK_M$wLG=P` zde;b8|H~qsxWZwukiJtHhl6_agfEw*q#;hKHId{V(BWF*p7p&m_vG0#T0pqf0m$J} zCjP@84Fq-P9~#MTgx6j{m-R{63nL19YPzStWBXNuRlbRlcpK zK*(IV{2`g&`V}Q?$8ai&D@ct(!L5kYt(#@=UZd9(v0~8O!+s*cMr%1^koq)-U2l!c z^PWl!CpTQnpfXw1V9zKpsQJ`PMl-F3%bY%ysfUmGx`F*Dhh=Pe=zaU5s5|{ULOSbY z-ku-s1|{xXra2X_A-OxJ=aa#`&0KQP$yVVoi>WQTEjr)8$Q8?W%B30SbySrgFArl{ za&*}w>y&J|lP{c3X`qABULl1F@{!mlG=`L02swF|2v8AVI1J>aU_sHG{H;09MJ+5W zD0p)`lk0FGXmsBab%tqan8XK7k-ePrMe|`Z6$8)rsQy=vedSa2P|yn8`aeQaAt8?i zaaa9+|GqQE>8m1C;@G7T{J3)5RoL(g5ba7s2~SiLb&#S9icSCuZu%IU?Xr*{Xd0v{ z4WE=^!hvlTrJ$rM{6h-A-R9=*7`02aQFeAN1;zE2`EAOyH*tlI50Zd1xB!zTJmqhy zV3v353cVPI!>o_x7vsajW+h!KlJ|0tD)fiZK#Gg^q0Ljp$mX-dby&g4Nf0suVunE@ zEK*+8K(g!^B;)Qb7DUBn|EVLwI=E4C&og7~JUwfM|DQKsySI>L9g>t?oV%mgwcfO% z)_czDd@J+h{GKGmkCacJ2L5u-`goE;d!MibPKDPbwR&WKY+1fMR0!Jg2!_U_tq{s8 z@2O*eD%)IMqQh1#Y&%}M{c`B$Cjc!1EC+l)r!R%30DKhGfJJ9Ea&t`p+^I5@yYBJW z%);X89?`HWYwo#HQ61KLYMEabyIo+i6ZZaL>w0&S+(>M=wVXHF!3-UQ6T$O3Tg~p8 zNIg47l2iuPr|k}3DE;WW8Md-QKY_lu7<}wGQyn7>!+8!a%wC3U&^I@GB}?*v{oc){ zpe@BOZwG6hX@k|vsP`gB6;jjCcwefajh=Jjra9a$1hTsHx$mh9j?hHD6oqq{x@8uC zCpFBf&C=2tg9Tz7E%sHQyoJ*mK3M6;2Z|!udlLXs(%IE@8I%F-4}m=yyAYT8px=Sp zwam%jN(VrfHE1XfEp5_9e1)F=D(2h0d@VtYDjNcI_E>^m?+t)k{A0<}{Pyn5${;64 z22d+{qlYflcu0SMnA$BNs1$8tK%$)5Z;a{A%(jh*CfV zvdv*ptZ3GLi^YO(IY6MCOrMgLM-k&gDF=QVFmf1qwp?Jc<`5LW zxH;GC4=8GW0||iBqc=9Ei?o_2oG3l$)31PoBkcY2lhC8Ha&J*F540cR-#i>Q>)+0v z?k`Yc-W+R2bHl~wW%xk^5Jm$zP_d;6NtHxC(&^F1NiiDdVT#h zAgJC1a08z!WRK7|G0rPj0syqa6yzg8zh%0L^%UHozUh=mZV~1F$ZoYcXegQ7LZ_gG zbnbh{?(&wZQhU(tPQlbF@?x+5ZGU5cUF=SQ!}!$so*PRE3pXI4D?M;$KaoK4$2UyY zc#Ju0_<-Z2HaPpP+gO>H3+WI2xmq~d^5!_(bR+0?5FyQ8Me4NZ+#&b69%yOf6^_n5 z!C%8G+~GKwlZ9l0)ia6@4%C(H`VmT_`3UH<%X*dzeaLSM+B{0uw)g58kW3yG^kyW# zSqFd3!G<=J!M=ga1NQK66#FKSm{Hylmn;=3%l-6oxpC=l3!&ivfQU*As(+~6zUCrE zZ7u?|mI+mPb>E-!###eR7&lb}-B}ErDgp_Z5C%13O3IdZ&f9;7hp3N-h|yoznm3xS2fi~c+8rTbDlQ9S;3i<5>kkhk+($%(AP@8L*|iHq zQ>REL28rF`ymIAAlL#86!aCkS15CM?>sVc3~=@2!QQ&6kON~t4+96i zJ+mzpOM(d#rN<(EvkhUZyC50qeK|IOD|2xnlUsjQ)L7lS>Epb|`0?XzVLI)OU`yG* zKA&M&^?W8o3g=Lg>Rf&TSB`*4$-b>jDQxyoN%rkra{L{@bUdeH{F3;khDJJ{=fH9B z+KtCdOiWoIY;c?#1o1huU1Ms=Nk_U~VPlH|xd-qbe?f_Q3Jd9$Fsh@Oj3wh~P*|UJ1CC({rOxH00XNB`w zwA|0{|Jqe&>IB|RXu3qGI+%usC8y@lE0b;KLKgpXbHxP@fy_YAZ5@|mjVbJ}mp8i8 zJ^{!MlUAOX?hC5giBAJo{Lly`N@)r)`T@&OyWqCM%2tChH7|l2@N0MGuTS}l+5BFZ zrXcmx0#^N<;zjv#vH@+=k8dP5TeD*v167@Q_2kgx_iHx(g(dho{B!*4ZbfoU`ay+h zY(mNl8kx?sU(hFDTCwUGJ58rD@(9LS3yM!~rL%bgJS3E z?-tHV9a4IKiouuc1Q5gBo31_A#5MAe6{ZrOpbKGpcF5>o=f_Tix}%`U(cR;SMAPfx ziHJR5TrwFq<1o$ZJ$Je>H(5QbX)J!T{Fz(ek@GE&o2Bz7qH52t=^OFLnQKdrg) zT}n{V3T@%noRiDjy3Np_<-nW}n?sS-8$?NehQT)8g7H-Qp0#dUsC3{in9I}s`KbA~ zv^N2ter5if3jh-l)1mFnb7>exr9=N*Fia5W;{AIN<$ata=V|Z-1hdz(X_^gD!Y&5p z=-+G`glYgzI;Xo_w|#BwqS>A=Kro%kxAxw1oCjMu=2Tbdt?!?``UJHcE(Hm4`hGfu z4@`HCB=VFOSg+lANhAR3-avG;1LXSUs3rt}BZkuli6Yui90U}`MM9fVU+|5el!N-6d zHoVgR#37?LeyK`Q6*7g7{8l3;QWe;sOJ59Sbbl}K{3>p}w-Ws@3*H8g+20`ez=fnRITZF@uygJU29%hTxlk#t@3O5-Zq z3-r}L!Ti4KHF0>1b;hA0v`U%ywff>C<^neZN+vgp!#4>bM?6L%82UoF8EQ zz07YSLy)H0DOy+AKV1hvWg0qj!fVej)>S8+I#`+#@rnKdfdF60N9+Dhq?6G@!+0Cr zm!Pp(N#b~A_j`9KsW!(V7x{e=Q50=c0KhU~JIr(Je_ES9z}+3WmM4Ariw?8iaX@Fz zS>s&ySrJOCd(#Jwx%rzsZ<<$tv9;sA0ZKP@LK;6)O0fO9Ts%YalY+sZH_N%8jYzzd z;IS{-_YN}XGc-TpwDh@#ekb~^_AA@j$vd;$N4 z;NB@RKY5LvM@p)(`3AqUVud^Lot#aQg_?)mleo423))eR9C$!+dkyGk)-`UMJ9)FkO3-zj;R{L(kN601cM#-h zf*tm~!Ap)*NwIwTS-f8T!(!a1IKTLMw)YbPkH7FkQze#Ez7tH0(2hci6i>Hx;}6RV zQ&*K{QM8}_l_+V*>+SyUm6&72qy-MoBX<0zN%b&LsuJ{|X;(Rw)?QiYpPf8AkoBlJ z>%%K4DIo@+q^(DrsKdHqn#>G)ziE5X?=Z&1aO_iJV%U`ZG&Rul0BE7i3II`pnuIEu z6BNGsCAcM++ln4Yj}g0Zu!0Z9NU0p3c@|^+6cJGF_M?Zcp%LJ2qCjhTF#RpEt!-MCkne+joe#m1O9AyU`01!5I`E+6UuRlZbhK zoK&Q-#yeTBz-ZdFtlv33%|;AK4=#-L<83-|U6TMCJ2n;xJ)^M=hFT{(AVmdcqX}q> zw}G~$vhN*toYeTV+bmxzllkG21q$fDbYRfu{aFz<*c+$X+M4shGr;xJT)9F3O%zNq zx}EII-~4j8v>kic0=Kq;;{hP+!1LwcHfp?%J;U~%7e*V;U(5Rg!%$)7Egs4E7}Iyu zP5KeFp=@1Lw+mgZ6wrQ^vW9|~RZ;R&M-ldVnp|s*IR1x`*gPFO%t2J5gCddFWlRL7c0bDxRd?X<$A6H1OP(*gR4!w_6)xM zq^;WtZpU|R+X}Y|kH-OqY=WE}qNWxzs|v$mgshncfZiFogrIOKJ&oaP;TqdoARMD4 z?N)N0`>j{nAM6UmT+35?wS6#FOV3gdDnR?gxoR0U*_{0{Jc`{4j8UosiQO^&4|OfQ z^i2;g%lQ-h8vf_TelO~HVn}gOa&s2N22iC6T3WHueviSOwM$^E&r)J@*BMUQ6cn+* zZBi&b=s3C7x||{3mpp=-bb!%Q z0%tnSdLMJ#y7hSV@^vIxZPgtMe#az7)M1Mm&ESG@J$M921%}1=_gkCqc9C-m3n@OW zFV~1Xw5`O+$&lZd;8}l(Pv_O%OvW;kZ2S)}_!Ag7r=9{RBGe!yIG7q#Sx4IXbfua343b2v;m=G?{nDe(kz5%=awXGht(_1RqC5=se(< z7zK;C*tCPPD&>Xlti5yy;5e9^?6{M&Jh%eTc}qBx3V zQOxNt!9=;0KS;p2Ky3@!0e3w53o5{xGgRQd8h>{?*gC%6vn)3GNvfQ1p9G+FP8Qg( zIrn}0k$z8tt~skFfR@@EZnBMyIRJgR1e{n@g_~z^I{YMW7hKM|JH>2{EABB<30q`Q zC#^k{V=qdK=%})aVq%d8vTwPX-?Nxt5;NpbGT6x><|B62QZpx5Z)ubzFbU)q1uUvA zYa&d3NO>Db(cjPK*sc1&ih~@=nTb(AF2|<0;LVY~GMoHN zUldIK3cx$TUON54TKH+F+_n%UO$p(k*Xg|f)fxAA9`D7I%Sc`9$ngcJ3z8{p9dfqD?d>@i z^qG6&QWGd^P*5PhZ!Oc^xQxc-94d1YQ_~7vK_2-E zp;p_-_pS3o@8c471rRcCfA=-??F5E&ZX52BGv?m#XG}dJRnNueWb#?HM4VcWgpnf_ ze@UnMh&=WdK7_-GA3d~8KItZBiK&i!3cIG1ztdoOp78`qTH`!)5a2W;IP2^5SDX&j2lR)|@%MMN|36wCKB| zuw*HB0UobiOQFxs4_LY$aeCaiS%*%guXoHMqv@~sfPl%-s%FGSL%&euMvLb0lH1Jv zgnLwbUC$^Czy3*w{X@BBx1iwO8X#hi~O+HaYxIZ6JL zyW!-l^@>wBLA>}soEjG#;XUnpXLoThOd%%AuX;5r>oxt@wcmLD>YBPixm~0eCkwjY zB=kQ>*9#1~G>pXAxmPQ#euEs~ z^@DwV6}wU-a9;>8@G9045)f~G(0UCce2dnR{~vGf85KnnZVUH-0!mg%B3VU|DA53e zAfh57l7mD+a#S)jDgu&GlAwU7Tp!Z{2h6TIbK5 zg~HVIq^|0!diJxQy|V*FQqT=7yj$?MYvsC)rG&$RK#|c|$D_JUjI+&P5HMlr%cpNb zuvx0o7j3tC(>{wRj*4wM^I(YaI9Jtne;zU@r*sWX05$i4$K{E-xMnGQr5x1eu_CtF zlR|v@uKZ5_PW%DvF?D>(>3ZqmopMvGd8Bm#%2o4Bvd@8a1F47v6ym}Er4lb)vHT8d zcxkBxhkNAvB6j@ufiUxs$>}@bTg$j!JX!XAq>QznVxPcOGP)T7nDSCy1li@BoRx@~ z&dq{q_n8O;JGvT-^tjKg>lr_>aF;&7XMFt{3`&Mq{QxN(%-fcr3|8FvomFrCCpYBR z=8T6lZ2QJ^Cn%DQuTr=22ghNDAHy=vcQ8r{pIsxlZ~c<<$Uj*71(%?JKe!kDe)H9V z6eQo9dc7$>eHWxJSwhM};<`B=>1hYlPExJzY7*5YLRjnd7{0~;S|L~qyVsPJmHE(U zE`T?&GD3I*-!G$+%LnqSzcIvtW~km61}^PJs#NAr*)4DGCPck3PfMG0x=x$p2k2MxX7S9RpCKk<&letn z2}}{k%r}y{j(q)i?&E!x-iVxB?`u2ZtiUGl@jBi>kQvnO(6aq|j~(u&@I~TBR-*NrdYUa-50_a2ZoBYZI~ z5Ai!%ih%zvYeyr&Vl!Mvm0C0$`tF2qE5-ZwLn^xP7lTtxR)^kjb@G8?I#$N|un#i# z0s;e4ODb4-rl#OaLc({ffGp{QkLSavOannrr0FZ6p!=brr8DYzX`()Dte>wRi{9BO zRjhBI&51+^rz=)LC3FY9(XGA$KLc+=mXOR;UZ`>!nwv|Jdj)!V;F{l3-{o^RJvQ#c z;}%Ib9J3(*0h~|RfU0Btr>QzCmZ39ES30M0jTSPV@UC*(CrT8wo$_I6hvj9#^75#^ zW7%iDFHnh<%jq>LYK22f)h^-hmmk}5>g*GG1!}OHj=R&k{nvb))6cPV90eCq_b1#C z(Oq1s)x6Y;ELc0X@*$KLCWtyNZbcGQYZaOs5uvm`>W4O{HUAz zoM6FT)5ihKI*&mK6PlwWnmA|4XrW{a4Wv7fPFr)1fwEST-BeFACZxzgSlf8#-ViQN zyU5XUPWKj!)dDGJT)BdMlG$GOvGAqqxA!?`lN^W)dT#JdPg!G|l zK_@uP_CeSdgJs*VduiF(rvSj&6~xd%ma$vW!f>bK=6;6};_1esBK?ggIJW?ls9Tw* zR{A}}Qj;b{vyP7Pu7XtP1}YbsWLk0PKS}NIgZ)}(MkYNs`tXL6#{0@9_$FmQ|LHcv zdJ9TXm$}yN0{4cjr2RAuEqw$-wq<=A3|nSful@WsJu9>~dEUQz>*XAzUx|Dyw>?z! z^<_^S7o(X+eLS{N?&WvKVzqBh_DLrjWOGqLLc@^V%40Zm0@OJ_(WpD)1A%(hR{MsL zQrp;eg&!XevMuWtp80y%^qhz0JG9Ja0%0ooc9(O;gBV@*r@qio#S~YIW!eI~yllIa zl}itiDx!*Cu7{fdK@Afw6Dj4ol?2L!FCZ6c3R=$CX&I0H=tpJrs;|$0L!ndRv1PY# z^U!ziJ%{q9_VRIxNezn~T%oRi;=J+vq4=|y{@8a9Kh_Qe+)ij$Z|1mm$`S(G+br!icuUv2E2Fh5PRfriz&V`$i?)s?!?c5_$E=6GOgE(xc*hl2x z{Ei#PB@x91)o{kMr)T^O8Go!ai~9%LFujS|aQaq?(y85oKOJ$;(y+35`E0gGjctzJ z8tKf;rLTA;qNh>DpRIMKrkG1ppDXi(>GbJiX;nX7MR9ea{xk*#h+Ks#hh}sRZiw9Q zw>~5GOVfwBR<(9GbWAGbyP-9^aMIE+6VV7aXun}$&$q|2*>phcqA(uVYm~b})WmU( zfJFcz1>&%gZO6d18b?iy*||A^JPshcwLq_o0xpUriS6pOL0=xFmRz62cfwtHwmQd_ z1~Bt;b7o_=#)CLt3{yfC{a#h0w?O%d%^olvcHTfED6h<%_2tbJIp0bta;2+DUqpd% zDCw)>i@mp=VmL{Q!qBRl#g4Bm5!cjM2d_Af*+tav@hOvqEXR{AEX}VYkKdTn>;Pd?ecA{q;uw+CW~H;F~zcS@)3oP~c(6`&(Ac3*fob_H>v`5-&B zFVWPO=IJ`?lW4xA4~vsi$Wz8Ps+~ix?N$@A*PWSWd-&LDe4e3$*HenDWp?!K7YUKzbprCVv;`u(gvr_zo%C?~*I(t>}RC@Nki9{>7z zMqmjC5VaQ(@Ma^6Xj%=3Ie>CAsC&BpytymK5wGYi0~61|5$GnwB{Cz3MReL4#)shGOQ9U885c53T`g3hY#nd_0`BM2w-NFQ$DlZu8%N{0$Vzp+2$ zKnG4|3zS%`>Erj}F@(mb!FrNu4>b8)>3DsTq++YvYU$*KN+qfu$&CCk}A-%MjNHd9vBggz6vWIUha|49jC;+gi|h^}LA)_>D}LG$K1@<;pz~$_ zYyYM7zh;>o>Q&;6%}`4JYY)v0cO%8_>r?7l^Tb-r4S&{CQ2|d~UIy4g-G(QXPab=j zZK&T}mU?TWb~EUq{O#8Y^t4vKQD(Cx{@P#PU0Utdcs%`0yYSuQamHh}c<&t}Z;(9k zzHOF*XX>%yzME2w%E~T zg8%yPf_wkA|KFQe!N%XVpZ$ZL!bFOg9J$kczb?jNg{>iE=m|6=q7CuwQ7k6lfvt8cw9j7qHAZ47G z(vp`XsSFz{09@?XAs%hA_gH8Hz6xQ(Gr;{SCezl zhke)#uB*n}YHUs#I}bvsq{KoGN_rkB(7LqygtV)tSh-m(vc^I76O*xcO`M{xCd~2N zU$Xq6JvwJu7S5jT5|mSaJhhUFJ=90{>jP5u2~M@%kaif8A&Df4x{Bw2K7sUfUS7wFY>g=F*!%N;)2RKG zv?#@Zz@N-_4n7)8InE$&Ta?UyyC4*TjHMh#na+mH^Bq=|sw*+3XBUyZb_j1II#Pc} zM#+BeO`wGjIQD;@yjpWURQS#mBV)@ndH!^0AuT06NBscYiEgkhcm_d!$jW+5qf{cH zR`ZCM*^MTj^jZf8dpPf$om%A$E5!3qi(nNRI(!+hym!HHo@!UP?Ye1ESjVcPM3}Rz zxtly%Hfu))iTOBvd?%uC!)5z;Q~`Qd@TTW(17JeEDGwE`_6nHRy?3qUiY)`@sgSJ} zmjJhA_?3~YLN(i55jeNAHx!)Lqg={wRS0N-%VKeOe!OgFi7{kvFNPdyxzbw5x}-*# z1;(3h*+l<*vOQ$Ds-itaH;1`r(1w6KRHHwN+~ma236&ux8ZDIm zd*kjYtfD3mhyW#;4=vlV6<}!Ij^u=8owjE00TzWxSL!Vp*Et$!a<{JEV;x>Ug*hmQ zj4hd|Mygf7%T0!kag*$HK3#uN50Gn8#S*8iS3(bE8$8;9hT4+NtF12n&9S}u;0h6c zT@HHibKaqwPoU@7X1MR8$97FvdO17sqxEIHJUD#v;9S%m+=d+Lz@=2{ar8wcpnrMb zWcsy?_wmpFGaVjjOndiN0mb?HtK5uYPhJ%ocdxKOLl}!t=H3geao7aR*{I<8*M|*5 z7l8y8sAT%Gij+ZRuPGm?>%9zVIhpJG$Kt4FbrQ9Ll*td%(6C{0OG+BKVmHGZ}?RyEo1cvOhbhf`%yw0+S8}pf9j|iu-&Y7#}lmaD?A_O@V?y5db8y^Hu;06XV1v zY0m~MELf3hSo93vg6Sw{pVE-L6CWVALHOX&IiCLa=$H2z^Y|;lV4BDtxbnE(gHVxC zQOhOe#-G`j6?n-g)EB_$8zYw#@$ z#$xrVZi2)?STlIP*Ij|V?s>1gJ;T_Smn3)k zOJ&ii0>a{j_EBTS_-nge^sC(^|vf$t@2CYU@ zxu>)`72?T@n}W}Vc^P=zRi0g0eq|IcUi0SxeO0wKi~-MRT>IIuztMotDkxX=-km|}WXca?CR8Sgnb&VoOVX8(jwG=g#1Z3syD*k~+$I5Xw^ zq$_a?z1(HBsf}LmxLJjCSrz_j+Fzf=u@w}k48D5@zYA!$Y-r*#fP82mKqTnlO#YDj z7pR2S%J=p4aSI5XEG^A9gps2?AbCql4+C3Bt-!%&Xdr1y4!Lyty$Oe#2WD&0{QQ*H zuJL#r+DmS7d0s!}zZ{b?GNONTZ_IV%7cPwD^$~m$hT%WO+}HQru~Sua)AimglOJGs zzTo4+p);a_sg3MAyKQ{@7;4bchC7&5r>9Y&}<*MH9K!7fYCdhG*%7jhMSl^ zkU^)EaS_9=xd6vu<(rTVF+Sr1XQGKZE93aCj|W`-1F;C>I_GhSP--I5)`nor)+u&l z%(sV(pte@nRh+|uaW1GW;KveK8yW|f4|7`z28=!qiyN7>cQL^|etD~Z<@7x*)0z8E z){e3qj9m*H1)(f%H6;4=p~@#CJ{D|jc?#^X=jCHQ)u4Muoyiz0CJf`3hbcN=^+k;N z6r=?98JafXiQ%D}Ew94LpYfvdU(PFrED>8?G{v}S9f5XdPs>c{! zq8L9+)86@`VA04@Tbhg|=ko`?04GzeztckFiVc6I#+h*}GY(nZhf2qX2d^C-EUoL% zHUCL9EVFN1dU1b*2i`_okJ$#VlC|CQpj{8VNm0CwbPb&)yeLLHR8 zuUvn=;6G`i^~X4#N70|>cSmU1`Y`!Ng08jI6WbOfiU)=QH7gu0C?QM_NBW*`ICgTT z^81qm+aKiZ-k6Y?8O7oo7QJH&6V+A0Z`lGsTi$a>U?wH2__IoemG9w)>+Eg8xO3*l zc7#dAZ?7jo=bFt>a@hdOu}JCo@6=BHC>>QUizDW z+uDR}{?aUmzc-(std1nU9R6*yjZ7#bwZ98p0cnxmdCd7tQat7huV%5p@{xgH5nwpl z#O@H&3=WHRb|wmz&YVvxyVHS(oQ6@=g72E)41pTKtIZxRRnjx;EEBOxbb5Urrv0s6 zNjIs5vIpQFnz=&PlEy|X1$8}Z;<;L7TH#xC_hrj-cqtRBw&|9|O-NIO+dRiWibkVM zYPC>Jf!qurYcs6FWr|#QvbCdWA?)DTCwErRKpq|alBKk%IB(+Op-fpT!d=9t*!H18_Y(c%L9jI zDk>^@;M@l486p8Qe4&_EvvMksout^G|D=jHyDSm_C$-a!p|P|fH;uhP$u4N4C)q># z`$J<+4Yb(`z1olJoPEHf!`)Nf(hmTK=32$v40I6&h1JvR>;;j^K$_V7`D2OG@qRz!$<9C`lH~k46vKXN`m*JhoM~RfZG{ zKw~3Qo?ek3v(juR!seIHvRvA=OR+02&+m|c*B)$cR0w;>W>5%?XP+ZZjax_%3-9-k!gXGh)ky6I#|Bp@s*$;td##g z>@GG_jXqfTqR=6uTki1bA~gf>xA>KU5T0o;-&&ohzH!}cCAg^QYCurX45%suiOzt_ z;_C0-zi)iwmFgP*kkoGg`I95(142Tw-n+K}<@lW&C}0hpX^Q+(;#^%G!Epnq#<0G4 z@j~W_E5+&vIjD@bQA3N(qOGPFVNH?sFXeCcF~n`OcZAk+>Y~(Vk*w#@2T^gvc}&R6 z1u0GK8>)K2nppaiHDJsBWGByhlYhdsJUCKC-lFt0SnyF0)q)Srg(h27>(@SrtQSSv z+H(=8_H#o@nnBcY&wcM$5v)xc($}Cs`E{>uZ>JmW zxHB-D1PhxgJJduSr-j;?C1+`<^&ruFr7d%6#`ebeu=vjuV}myPVw)D~4Xn!8xV>>p;`^gNU)EZ`+Xba02I*?yz5V#*F1rJ)ams!@A!%mn!*AZ3yl23P1Sys#Kq8139L(atmr7xG z91i}jW;q)F^eF7{BPHWG_nN0>4&1~KQ}!K4_xFC1g$?VNTGMXM%$yo4(*kGBI>=`o zY?>TK+b`94l-)8Tj@}{8cYeC8oonRYopooc(1&OP8@)fyn${XsEHXPeQCib7@9+jP zXO!R4=1Kd3Z)frbKF{XU-pnz=jk*Eql7~uHYy4arxiY>22Hq z8>|)tVr;#nc7#jkX~DxwF08om1`_j3iwAY1*wj@5_IYlsLk8vMxNfJRk^zTc-TJrTrk>1 z%k|9Pb+*=k0?LWLt8*!&=zgn$N~9aMV5P(-H_}f|zpM@+yY0H%DlwQmH{xE}p)({o z^Qs}b| z4%2=pD7tofo6E+;Sx$O%fYMC*@bzod>E8ygCi_|3K~XrR{OK_?ZN&fl1(QG!aN9ro ztd`-)%T^|q+3g8o1&KYcqDj+_Oy+`89$z>b9Nt>HiH*jMmi|)zx(qkwmR1vu(=;Zbl7z|PHoLi zSCKyK?c3-x;GDubllRs5AB&OyVlDsHs-9zVv;E#=iw&zlsF=>d2-yfzN}AF?M?Yl- z*GB%WWF5S^DSlFBRbSWyKon0$Dkc7T_;!2)8BI4+MbFEh*(l`Oz$Lhup8E5;7Q1wzn#6ir6OT4Av5kJW!(;Q5g$DsbU!k72aZj&^BP_pA+6Lj#hkHe1t>nRTYZq)ssH-k9;fBq`D)dlSG;G^hZ zZGcLqRmHLp-q!~War5yhlKU&Y#s<&tId=c#=*3sYhZH3C+w?;c5_=!n?7!>h`9Z=9 z>=NA1lW70&nMG|T!q+#I#^KxT9X0k-Oca;WS(^=dx7TM#Eh_tz`2F=oeFEVbiiA*}1!~)k zKs*cu{V2zpJ5_BS?1qKWtajxwbGIHk|5-K?u7UUXycuX|iS%oVCbyN#+e^RAoBGZ& zM{kZSXOBA7A$5+7tbU5--pA+~1A(a-nZ~q1p0+bXEqGNitYxp`VNxHG$Kw~#9%#fl z8i`_k_K^Lo)TrIUV&Uec)bL_`k)LtV-489CejuvJH}!C37Ol*^yO;q6^o<+rfKlcK zkNSb)@Gvg)L=2&v!I)jz@2BTJ@{QKuc5mL|{+=me+(C+%#5(Jz)XWl36Ni$|S=Ln&Y` zE(8+Ec(g9$O_YG-?VCLTmJh-H$m`?Z_05xHuV(W4J$-uKrnQ3{T5+r5H13ZVU2YJU zwDO}RB0uQA2>6kE*PW0#_b}j%9)#z)dX>xoaplU5922-|v4xBF?mdQc(@kvLWSh7&cfmEW^0Dv1Hg*Jmw=Hyn`@Mp zOSK)`pKUF#2u>zi3QGxPG@w*;SxIyt&m9{~;YmuCi253YS4ca zFAiE%mtO;agOG!7Zp~cgVpy6y9wb(c<95)VAsYPtbrf_bX&~^BKD_2q&4+#dw6aEU zl_a$XURUM;Qm5zW=9Tu^xo5z4@4I$#2Nv;n@mA?=fOEqJ2j2!3I({}LzWzR{;&jPD z7McW%#WxM6LF0a8M_XLC8-~iOCn$1u7~5@BnQ7gt-}vqKo~4B8&V_UaB-AkZ%P+n? zC0lcHOBU!`p0k}Az1F>n<;9Um^}Y4PR5E&7TB7|^{yeH-+gDRj zX#n&}{WjRaLAa-bFVT31CZWX(-ke*Kh>4G%QDbwQ zKC%29*twe>jA@!;9|VISgI7)%70M#Q3`AUQnTqL{MT`WeXHJQN9aN?;h3cp4S}}eb zD6=XF`z!cK@(0!PoZxv01Mgsh#d$h2_IhR1pA+5;qZU-0aFf+$(UI#ndyktgB~+2e zPTK5ppHqBP#U^y@o78;ScBEk7gQx%ix0P>=?sTND93 zofEA$b(qpGLeVVZB->@U4?KR(pNmM}BR-$L+YVcoN@eQOE6kCEAsgr0TS)!+SVIFS zlv)}Q+4tN*6*Zx}Ph{fVfkDG^c@(0RV-(Q4_$U#E?v9@!ulK!>257LVXq^Yb5*`hWyIxX8*oksKQvi)xIA--IS4Zv|Ur%Hb*e z=jT-=UtGKmHnboX+1t;3y*6GI+Ojm4Q$L}tw=S|2UnvlAT+(~YVL5&zb`Q2~MdH8E zf40k6E?l7mA%}&*OA%$RS9(m}W!2is^<(&yz)|^24ZTU-j z#+S%oS)z)qn1R2mj&(2IDVM2fM(S{F(z3|a^cC`>`S0x+@ag2EDSJ>yq7Nj80hLW` z+T=zX8h_>J*{?dcU@(<24zz=LzzOh0hU_RwrOts>6AHiy?Bl~APUG=2&uK|r|NQ#o zp7SXn0RSrCqZ4FK`K3Il+aUJ~_x+6W+gLgSZ-5nvai?Oy^w%w&u&FnG;r3LvAIXGB zPx|!q9D zRqO`&>eyqu!T=zvmpZmsyI$@{ZipL-wG!F~isDLcZc?CwL8rY}>#&7)_TjDHp7I9G zNIL5|La{B%sCNrpv9pe-(P}W*%>Q#x(lrrLe%BFs0+@@Dx+~$G4YX3ZpwO!Q5 z+Op~2xl=ip2jO2bw!8~Sfw11& zVecSbpO|HL&PYvZ>bcFkgVqlVpBRc88?Ba7gExq=-WLJ-Q!2+<_kZ5s+KC4muTKpC zm8K9_o04EFjp^1sv}GGBsc;AHCG`tb%qf|g!aNjo=Q7LHnf8h3RrW7aZ9gnibbgB? zeuahU^SFY|*ELh7SH`w*I;+u`xQaiRLbPUaEDPD^wa5msyPji74wWYWZGNcCp4~tF zi$k(;U_XOj299lz;dC#H{EeeAcu<2@M$`VavGiby0(KRO z@cP@gd|+e=FP$#1ZOa5!k=$a=Pt7Nu96Of&@%n|LGaN?__WSXn&WVXg0uj=8B+j>e z-~;t@Be#i%=%v?3==2xsh^y4cQ+lx8oFVORyS)8v+}+`MWF9+5Rp3Lk1u@Bw={s#8 zvL=OzS5kaWDo32V1(*SUM>FDbe}QOG!D7>tIQC(>)|t}lwi1~WZ9Qr->%tXPW2!Q+ zg68_{ULHKcvN2p}bfZ~dOV6c$itL5ZG>UoeE0tUR1(|nb#T+oy9N`@e@00HgZRh%p zs!ZGfY%pc2A|6k$v#tukW6fS~)-2&&zF!&loc~0MygNfgUGB8-r}&uZdnX_RNig(C z?@Wn)-ZaR*0RCeVLuIw~buUjdnpwC0Q0`=4Mh-E^Wl+7G;!rnmVbW#Fd)P8_XyWy4fJyBmZ50iiX)1%`%3wo+tVzD{rnY-21#z`3>_ zA@)5s>7WSB+BX(&d|O9un8DjVY|=r*Y`Z@!_WH1;uN!n1y8wvr@iJqoU38yT- z9<&`Omvq%;|c7co}3f8WNzX770IQSeW&{%sw9ki2bwb14Pz zktIu2AhKq!WuXGKmr^!4`;HOkVzS!MT_sd@)cb?}>Ea0Pu>}5I0&>w_61f4--(G)N z+pVx2B9a#^1|yCSU$loU$ui)7R=cC)l?NjkmD%}m4?E8-ZWGEIj}R{c>3fl)Ba&fcnlzfe`}136Ghg-lmoTSy)FGG z=JJ>|)_C#t&?NzO2l+xQp;41e?b*}yA6TYZ7MyuO36GQ9=OAq!t|08&3WQ;Z&{PU-X#LOVw^iP9W z`9E%F%t@ixKexML|9dkG9{KOu|6ete-v9sf5pCC(DgLn&=`J-L%zr|v>()02#|>EI z``&x-DR#P;D1F0k_ux4SdQtiU^7pTWpjy23Z@EQs2) zTj@>5!VbUJcjTz(=zfhg%|Gciz8$_do58DBN3v)f{tewp-jlwgfS79{SqSj6{|uY| z=TY-662qT-1{CrtIyt4*g&zTufcCO2{`)nMrmfFFkfzJ-fU{I zs}au-bouOFeXc^A-n<_QBF5cH1nW^n9uF~N+0wd!KiyChl8u&ZD!`2iwKH2*uXZho z>F<4&WGOXm!p0NU5`JiVvM0c}IkaADvZsM+!wm_Y~4k)xh5b6AHIok@C z*$xT=%I_;s4@Ary1pZVge{G$B=+}Op-m*>cjVzrConvhGctJK0DA|JUyaP`A=gJM9 zQC^%o$O&p=qW>_9n>SuHy<_0B=rxQKWJ5qtQwi8tY>X`#IJFIK_i zI#1GHm~!HU1>4A=;IOdU9ZUT!A)=AGd5IJfvqN@xb8{ca>H4|v0dGL4e=13*V3$3| ziQ(cQ&Y^q;@F@=5s>U5`h`wy39s!z5c2WqCB?hl>6~W^Dy@{?x#YbrGB&q-85@<4; zjvZha9LmA2N_n$b!%kOEhGkbR3H}YY*jOmB$|8Yye`TVE_F zCnxTwVrga0XLD^zOJ8`|0qM$t61#E<@M7zK@5_>!q+Y0bbrb;_TfRlNeCM3o_cEdDTmt(Zef{NyJveg ztnibPl9k>2Eh$l?rV~juF8JA{KvZ3P4Qj|qYP01{0JTr2-6chufU7;d>j9Jn)9Iw% zzki=3RCYA@cX6SskPiq<{9U&~2Tn=;+MDm3fpI>?!#MFAL`U#Gqk4DuC1GKTNdf3- zb)~`?7A8~Tw#a4Ju^~k1a+;CtIy1aKy`NT{sdEZf993wh9+JE_A&Rd4lqcXLnH4lQY&ST)F0uz4-qCcz4+cW4m$pbQYTx2tfM$K1*f}teE>g3 zxc5G$iP9fTJKOxKJ(M^QE&w7e_yNj(phcmw9ZvsBd$#NQ0ACH*l{74Jq8ltVwt}oy z5Nlw#A}y_hd;mHDS^M!WuC6sTIqgo&*+K&RRxc~(2Oiq1hhc9`G`*kMgzYG$TZyrsS{i6C-1XtCd9ykeV?{S#U zJPymK!rgUT5V$XM&H^&@d^Ao8buFgn$NSi66B!>InxWx2pvTPsjB*{fw*J-)0y%m3 zulpugHf_M^1`8?vq6j_U@q67gXK!0Tm_i@l_ECVzfcUYP%`Y`|L&Gq2KEII3Nt0jv z=PQ`VG_jQanVFYBewPni_fSmZo?s2oR0T=&)2A6zqWtjz$8IYrFCS+VFJajU4v83; zVIO_ELax=wvW85IA_X9C)^6!4$^BnpgZ-C|%Pm0aAClKiI1Vt^;N$S$x~ThLxzRnP zOcqWqo6-9cNVwaLmeB$&7B9lnH|wxAhLsyryCd)V$9%Rq+DRsH;;{EEpJYb=NUE7E z)d!&a-^ZLHedV740isKN{Y20G@_-+u4dRHp8pm^m)!v2-Kk zv{1g~*}DZp@TE(aBiq4)_zgSxL8>5DXj0El4xhxNq#Mae_VtW(UQ_`?V; z5rrq?*1%Rc=j42PQPC+dnUhZ@>2ZUJ0gxl)b#-Oz%4QA@<@|n9HARxY45yyT+G>|R zL{*%8m~8(@mU>|^Mi1C(4{cqGV47VXZD=^GJAi8&AZ|aTN8ds@Z8j`uW5Z8IJ4z(- zU^z17;fHS$H6?b#DqRp2lt}UQSxp4#;l%hLo?J9Up zSMz06karBVX~TqyY?B6FCv2XQ6bD~xj#f@F_Fk2IkRXbRj*cEGv3|eB*Nv@c#k(Z@hK_myNO`)cS%U-#UY0tNJ5>y#mr^1 zycAXLE|Qk^<%zgFG`l*U!$PJFCK&r1vw>NB3AMt+D}?JPn{g4>KA{sS29h zV*N0_Nk%3BMn&yVJ4MKJb*v-yzFNq~Qn{YzG2><@Kuxkg1#FUMYied;Z~YH85t~7% zu-94q%|E}W6gQBF%=h+0B_?_u&BGcrbj0C6Vr1n>`Se+MqYV2><4Om{RvkRmS*B%U zkM;vgHIZB+9i+oMvg?<^lmZ>bD*<;w{Nb(aoEzbw6>u9B!SE@Us;+r>bjENdOO?L! z0W*x1YOaxX*iO&TuzYLpN%?*5$3E3b7bYL(n^%vc)e^}~=mu^|b1mbBGtZZG^IuC@ zE~cNQ0SRG6{P}s;2T3>87rA|gi{eFB%8vbgyY_Nt-R@W4@6%#??pK_*+xbusrcloR z2G*wKAvtMvk~^HGCQQF!&z@S zpwCnu8yCkb+_B?+nfmd>({q1+?+H6S2E$cOigHIs&2#gv}?RacPt{KW`OPImd?XDs{|BLW)DtnE}-6$F_d6zaz0z3v{_ z5(yQt`~w4Xiaa^Qb*{}?eBYhP_(2;IIDkPqhv8HQ1T!{i)IW*CAG~;xv11lmi04fa zfBkWj?^$w!y3gi$^A@*+or%aZu_jLmkk8(@lpwJ|1;18h&&q~|ltb=6cuNlrP;w3o z;=bQjUKU4@Iw1R*{K`qg1)(Tx)OTnoKdHNU0?PlnG6Yxa zcoO)OE?m+*`GBV%Aslt zjV$6@#hOinRFPrIy=5>51op%F;z+cEUdT2q2*SgHe; zpwZ}cp!NHY@Um?YpeWcTNx}9##>Uw9g?|?BX8(Tiumwyg$NjORMGIEt^I9_ck3(cV zaZApDzi=T#FU43-!8x4nY7^x$`f0n4x3JlHIj&c{2pmpH$7fe7Tqqv-D3B2yh8*mI z*r-prKg3^t7oj!17s0+6+RL%w-4uTJy7t?S6KE|?0~`B8c>Z+kf;n7pYjqH3v_pio z;y;)D|B#$TEBF6Ea!md~a=zCs-WI7Cc=^H1Stuausvm$6@GXnaLs?GuashK9G?~!h z?EaCB@Z0KzI5D#Ne%#e`Fiw(Ixg{zN&Y!In4LuG@(fC>s%P%@gy#N+06%3uci z=F6>ya&Gr>Zuj4xfo<6#h|3}`S{WCMjo(9q#i^x*j_2l2t~EAseS{-+vlHxAOwIYH zCQ`x!t?b@1)b0|6@QdC7(c6Tvx^j`9=7v z$hyu0N-P-_5wMUIz*bJmOhpv=mCv$KFP_1TX=JKgv zz};h<_6^h!b$lD{n&kVw+`VA%u&#ngJ1J1+QC1iB1}KugZ;bMHSTHYm31h52%4!Di zML+qTkzb^`hMe}Iy{*teM?l}65xJzGUEn}Ph%_khKuCzm;%qNWadU_$k~)l@~+gqpca&eMoN_#S-u{3 z5q*s(@`H|#bHA#{bE6Hm{SBWs2dWe^S#AP@pY;G;ChAQPNU?&1V>OitHukQ*{`{|% zD}_*g4ZuENryGCdlLfw}LA{0_dq5G#0f!Tl{PfI>y2fIkS{=$Ch*N)2k*40-+KOS8 z58IR-^cUl+DFNY0MV1Q7$~X*>1h9a(N+zSKxV+{Wg{M=>BL{zUyjB8kkvnClV`Fk2 z{XT*f3SQRM8p%(I*j<~W9CfCK5#I)}R!nCw|h{L_b_ciDVvgJjn( ziFY&uhpGF3D%3|glN$+OEuqVo?~x}mn|Z5DO;Vc>!$)k0?!=C_6XY+yyqRM%*5?B} z=Z{N?Z2jKc8=l_l%qDk8SQ_<{y^LoOf31nAiYN9>I^y#B?@2&_|KW9^L6?szFlklx zOO{YhL2auKoc;6KxD%f|+7^N=R_ghYLj0)6C)9OvZ&Uc&rCw09DeD!O4Hs!0T)zZ; zH=j{iCB^u|lcPg)zRVA1R^rQ&k-b)~V_4e?={?#~aTAJ8sEFOkaRFHjWl*u)c_~Mg zB#Hv=7FX>z`p^EJ4tAD>nQIS~Xa1=B{a6F*aez+fO`R6qW6^Dber=zk&x64Jo2QYN zo`VjDF|z`Q6x3a}&dZILDT)L@`K<~$0s*`T1Y#mpT71u?Ah}2oJZEp9^cDtm>Y8# zdt2N6jIwqaDk;~E@v|#!34L^s@Fc}%Y_;^Mv}{qI>Gv#9>SQ%iV`{Z^h|3ACx^gr@ zSBN=Cfyrwl!gEGeh3K$qe35A!#5`23=yDZ{@X^VM20~H_0wS&wuD{E%IP!cs;~(d> z*g1%_T{7^#`k%J=xdi9_Xxo?b7d*6>l-fdEuem-u|06$G(;yV^pzUxq<1y1JwmhMt zlKg6B>qPQ{3x(~M6n>NGYH2Y6DYj@)E2#4Ms*V0;WAGuSHF8)4c0vUT#{sh{O}abJ z+7hPRfwnO9xs9@i|A3#Tfu_L@ILo3r8(r`S=?vOD{B--zVlhMtxHJY*qn9Vou&|Ir zl`nRc8W5UYLBCoe^rH8a{Ea@Lu7VH#l ztvhq|iUT$W?C2jR351o`Oo#eyyuclfWNYR83Z!KR1`k8uZ{_Njw)FV{0dMEf_`L#} z-t9@Y-eT3kVv;3>G|oo@f@_l;YplJ9DV}p5wBzAUsVAK-M#)!B4rH8!F6pKSfIGHp z#C663$ywZr95+zGh_faor)EV~MoLwHaE_*U#x)&bfPIlFVgTb^cV0xQ+SjtF(4$<$vis@7qJ7_E=D2_m`aI|w)*w>34-Tz6j!BN=K`RImbj0I>^x z4;$U09E*J6GGg>h=Gz_jcN3Do4DCx&$kh5I6GKmbaeP^ zIyw6$Ua(wz_|fVtk7!%*@ zg&xL*zCziKj|Ix@p4@KwiD2K;>e^V*q+>hsaIh}LoWI5CZ)h=on7o=N@LNI;h5fwB zbTNiYX?^slJI7lFlBZGWembhz_@rjG+-#~?#0vUuGRJrDY?5oRI^9zau5N@KFPBBz z1=+-h7G!gQOw%WL#@5m2+v1IlUrlX?YxEGi@rQ3HD=VK%7v;(Z)OK*3lM@BlJ&_OH z^qlKY-ub4YtVGSZej07T!)&4eV;L&7)ycV0sjj8<1`Gz@4fr4YbeYhY_=0F=KUKsu zQg3mk1Zd@GYH8KE{X7OMefuM7zWdfLbk*Yo2wfL)}XxLLho<#g4~ zsF+RPC7*J?8{lptqqej~%b8UGy<;=gzdSN9u+`r@4uRf*GeGrkFyIFG;HQEh|0E3! z6hukfefH-_#Jo9y%MZ^(vRKmIJZ{wjKYA3UwuJ^AEX2(Xp-?FN?x>^cl^UoPm_L_3 zOZL12I(h~Oe?b1zJc>|463n&@?t!5csMpAndKq!{t@nM03|U+27pzTv4+xm_KPrK( z8(ARMJ-m(3{GT7wLvOD>T`xmHUbr>-+A)xy9ImpLaZ97g4i&jWZ7Ij=usq6A-B9mr zfU6Orqte307kUT1NjeMHwJHA!MoE8h*Oj^H*lq=Qx9z2Mxqc?ZQ8(hB$-`uImNCwx z%sK|+!^v2^&N;?!5 zplnJBtHwS&fN!02wEvm5LjMZ$x8PhIonRoh2)ghyxRmq?@)ZjVok z7~eG3BTZXogp#MK9YuPDmz0`Q0G!%o)c2)2lcYtv#TzDAqp1aJEjoMe1v}ZEhQQ1* zfK^i&&@BD7`<(VpcqK|wGJkZWS5lzf@G+nhj5)M(Q*%R)G&EiV_p3#5^`~&A<;pgg z1f15!uF2->DJ6XWyk}bkIl0;h)CW#D9?(>Pjs?>o3ha^6Q~bn1Ii`@f_-P4sSEvot&| z>D;~6?dp~(hbxC37$#bvI5Ry^aA*NOJ8*_0r#!sD= z6)0K1mGeEEYMxTeyyU)=!Sg}#aJtS~0#BoBWEx&zGeJ> zw7msXRbSUWx)CI#rA0~sv1sX%22sF3kOnD9>E57piz3}1-QAti-QC@NICt@T-!J~- ze*Zh}xWQnY*k_%+&pC6&T+e*wGf{HXtCaZdc4B5$Emb8d27fICE9&br+UB}a!yrBM zPwR`;a8CjbfBbcDw~6+1vHBa%2jz$?MuYG7X5ZxxG}pXLwjR5OlRt>gqFAsp>#!D`ATcS)bsG z0MqeZVgQ)UsM#&LA9fhU6CilMd%|&K!uAbtJXY2Df0ZR3=2Bq-8;bRkY7PbURM~2Q zwqY&${~FI_R}se9MLW2oA9oIPkN@B_3N9j-U!%N6eG)YKcQvfnWBenb2QZ$?h<{Ar zEzVfq{huFP#8QIEpso@bI-G>bnci@gq(~y0CKmUG>p@#s1az{bAdBe<14e)^9 z-qQrogqV)b1E9f*2c`4c+~u}g^ZP+nsjXT-pWSK&hZ@4zIzGFP7uQ8LI*=I_9flRs=%^al@FFh+CTT``3& zOwz8WYW=j!8B#tW1xbv*kz<_Fn3$%K0Xiz8cXGbgcX4mJ2RAD7>~Hv$(iHdC`!h2U z$z>?2dOs($H6=o39ud(T+FFMT*V;hP-eEj~cw*#>PY&QZy4zmtg7z_`&K>5Iq(Yb9 zKC3=(0fji|shw`!s0m_?>8 zM5_Bdc#u@O7)xa1bFr$lg?xY+R8IwFzovxDFJPl+6b=*boCinmHH>N|E>hXu3>rW^ zcJ)(#B#*-Mo|Ic>(@gxB(#H<3Lg#9QYxK0b?%|!PO!ozn_4+%Ipwm-OWQiCq(cJKx zG^d@T@x=J1wtdz__Yo;|Oo_=9U#!($BgJEhLWz$r0{~ zLRrfyh{SmMZU5SU-(t7dD|r;bYtKm~!sEscMZ14D4;+mDsJ){Jk|e zza)0@u)<+>L0W>~J+lbqwlf7x#YzB9!e)9Pe*f{4h9u-U2erD@y_(ir!Ct8EPPPsFnjClCug&Dcz+Z&sl^p%Drr?9~Lj_jXs?vG^#Qv=is-ZYUb&-`S8fzCow++;u2B zmDp!zy3WN;+Rg`xV`30LjS^@{@2x|yE}8JZztj}DT*UYav;LvEiJDPR_yTEU z_19ZjO2Bm^iglZ6x417saaHN91&7~xkB`~r`!jX#T{-Pef9TsG=1jZrt1#kI|82I*X{K6+RJ58D0dc4Om5$_qySLCIKf*T(g! zWxWkgR-=$(YjNz&c|K;kHv(zdFYabojUY+yKQ7h1V0D*%MK%`u!rm&)OGxoaa^+{5 zg1Nd!w-ehnd_e#L4Vt(BX)+lFutWE0{K_N z>mCGrF$oas{8D#KD%194A4w2cmw@TihTHZ>*Avuu0O>MlD?PDUN8Nc~UEL@-0kNpB z2EEaWghPaM!>jup`@6JdSpo=yod9}55}3sEB#HX?lamX2fU_EifexF0e!TlVea&#| zsbSPt>sKcCFN{&rF*iyY_rClGnE(@NpR5|)L};lY8B;C<@cb(MClu7)rxYVqu^lMB z6oF0=$!*z9R%B3HES~FcwUocvR9;f-4=P&Gm`^#RweOBo0yp;9MkEO4>m;zdV$yd$ z@IB~_<=&}&XI;I>TqdC;Jg6%t3snTXt`!GYESd+Z{g0l!rSYgj zpUrK{WD!Fkr0PhQVOPWtr!{&=%c3sVCuqy7u4M8C-lJfpd;l+a``D5xpc_V0vTipL z6OU)*x7pr}TKOVx*z_`c>P5Z$Fv*XtaqO02s_WDF(#azV*0CDOP49S@%THZMlK5|E z5P;Uavrnxo&bD~Zf)NZ`t8X3vMNvSS=g_OSDNZ5Y2ZiR+GprZXg0;|Y@sJTf_b~v- z^dmextr{2jNZ_T)Znqz4G@$5~=JjpYl=I%YlpJ7Hpix?2heT;^Yt!8f*F<^fdgpyc ztk+|M^7klX0Q>{`=u#RQ)OXQw_Z;>mm>Z2-`Isb0mUAU&^}dSR?9EY=@Ps6AP>nrYQN*r#J9*`%*DCWbksjMwSoI6bLmYb+v%uh$yodH_*6IE zNO`Oo(Xcsf=H*et`W)?jn_rJ9&u-P<>?u2*&cCg<2n++*^vx+^_I75>SCeztpb5}0ClJE3qf%@iGk$p+M z;}YH)o<3{51iLl0Xpn`@Di03-3Lj6c<*7#E7t(fL6(VLF$_pY9%&n~Xx*#w0EoaLFY_X`VfXltKe8z{-z44o2UYHV-xZ_#1X}g;-X-&%d+enk9rny?z88dcQa^s1g*;t z8p;g#9lbr1!BR&?A{1quoXORG2|%?@Bv9PY88gLNBbr79F|mBBQ;p@cxMI>}3?ULi zL5!p$`*(yZS`w_E;cVC-xv*9lAb{;92Db3dj6X`^hqL7_gX7X))GXp_Zv4Mi=N&td zBxG8UnstUzkw41-AV1|keK0(7!%PF}`rN5!1E1O-$aQ!89IHaQxyqPu_$d@ZH!BC& z7SiL~b7NMox=1;D;15~u;it#r4yegJDc!?;PRQ%5Q>%M8~!X~0?E&CS`e zSbnp}n2t7BgoUTYy&mL?VHw_PtK}fo8q&n39F@NYe5%1uk~H{#I?Ml!licJCT0HkB=aBqmHlB3;bNe>CidSULNdCL%#x3GojNgenM_`R#wI2a*F05?_%}PImD#Pc8*v?o zRVZa1D0uCBRs67tM4BkPd`A#6|0k4jfq@ubKZ-FqGQ5y4L-WpaPTiw~1>QeKzm0w? zDXs8ous2lCu?Wtm!h9-;VYulSEZR&`?=aXD2+)Zo#QU@m*JDLoPUzJMMJFKwyQ9W+ zCtD@n=K@YS+WL9D0>;l%O{NN2Hd>st)VHi;CwG}b;dcW`f{kS{dL7B1__OhfhwP3@ zMm&YzWuv_$5N}F(gWi>No>!o9I1>(OUHbXH;6rJ8ly~GwxABQK5}Dw4Y*ft;N*rSn<8PAXopA6@miB_D*>Kb_N(ua&^VbQ6o4Rr4WgTjp|L*CCfy?v7 zF}UQ<$u+WmKZ}#9TQ~2bE;*qrFQUCwO2$4DPAv=!4*l{%4^82Nf9X;8fp1vRN==@p z5X5_#nyi->_9yDEqadZ(xN**Q&S;UvU-b4?Y;LJHcZQbpaz+-v+8e*ekAJ4w2~?`b z&JR}`$|54j|8R+mZ^DJnkFja?$bs5HG2FNM$J_2Hi{9m4a*Ld)mmy)3H_dbXAfH5o zULMG8h@hu7CwF1==r#}(&=#iRas6*H6WWgP<=EH@1j zSN?|3iS1dNF$_5YJ3+LEFJm!PmThp+QH`g{+2VR~nh~e7!D&`c`^&%TN@${H{)v!_ zFfV$|7Fp~!Um12SL&Oe?Sx1B#eWSb3o4**k#;rmK#|cNf2*6yZZhdc_8~>W#yl^uS zN{Qe1aKzpoDpYzW34KV6{j~7W*u`ix$~Wwu;bhJArU066G>h?Fa%gpf=rPV>GJUoR z+YjGPkBZ2Xzq$-*FP<_gp-@ju-#^;K0F}fe)m+>RlI|DXH&7{sPkswN3zo1LD9k9~ zQKw}*ljQ0v-jz&>pTaJ#UFhX=@d zM%9=Rvaq!!%|*^j`H!diw^*33yEi5sp1lfIASNM6G>smC+<^5jq0jG;uUvHi>(jFF?fuglIor#D>l{4NuT1I6WqlPe9P1U z1Y&717VJ8bgbvM8@~#P4i{z#Za--m1{ylr3N=SQ3+5FVUhs4Rtc^!T-o_&st2i)Kld!jn?!QGrA*OLGd$Hf=phGkS0e z?6?A!Z787Z%LXi6lOt|3L@SmtqY~czy3TX`Jgc&?D#T_CidAtts`1^3(BsA;MMyb- zupoPy)_80qPezO9(^6sw?#nlC@HX4YgSN-N2L;?zt{>F&D4$`AhIRWb4)w%DZ^^!W zrx+ULx8Q+B{D_{3QO?PSg7m#1r|i{n5hM}bRzOFGqOK)K-w9Y*2;A#hKJq|Glj$qZ zLW)4iv&)T;uSeX919w*a?DBAkbfQ{ z;3_wM<k=!~9e>6y~00#r^y|^Qcyy5@~iHz?r_bv~dp4t~2Uq;g$9wuQ5v#Iyn zm2j3BYnKQKv-p*B(lRsS3O?$LPVOcX;re7R@b#;a&nu#|merRO)%O0wHix>d8rUx5 z9t9CE@2wp=C>`YT>Rt-J_EA0K@sh~-A+CAY4LIkYo03Lg>95!{Z6|P4h+X&i6D7r8 zJ<_3Ow$JVfp{wu6I% zG&S2TZ9Q1UmiqyYm*J!D+TQ{J$sbG5(c_jDPq-6l$3w{nTN_4BvROI_C+6+j`0bH+ z+moHbTzKo09zLs*TGF$$P$3pAAGSmeKD3jQ1*46K)^Q!)h6*ivbdK8RrG*!LK|9RB zV0$wUYh6TIh->TM&7@U=7hHt#U_z7qUSJt~+$?dZshjMD-}-x-zrWnW4VOvk~_8pr@s8#&C%uriG6`9Sc27h7`rz zPw_9u)rB{^6$5$;LM;`qr{;f7`&F+*C+3BHy96G-J%fUO=T7Ck73j;>d{iJ1v8^EmeEqKJX)1_7>9?m)#qexR z21<{#G2^O>dZo3DPi=#i7N7cY^Q?Xm1z#-w$Xj1Rp3R@6aT{m=)n}~|TPuz@;vlz=D>aX{ z4)+(&izs^C_P>N?{fe(6P59jEGqj2xz=z%TyN`>^qw98&akuy*C~TdV+Ks*rpI%ya zHolEsmWE*P+UDN3p^<8wz<#Vp{+a6Oqr%EqYsblZePZ>-huYR($3KOSW@Ec+GVmI3 zhs6O!IGTM#1N_~szkIny5gC26I7|gQfHOuq6ct59rZ>_e!u}{X-F$=WUf_UjO&qTI_+2s< z4e_)$v05j4B2rL?WHPbq)rXTXrmxuZ@j@PAu|mHZ;bTYJLV23CXZi|YB`%)vxd8CSFpXK1^lSFW9}O^-dAb~N$7OWFb!R((i{BqdZ3%J zvIg|IwZq}yi?VESeU+yWn12)Dzp}K=7+5m5$37R=xq{XD^KW%2Z+$oTr>tIGMKdbM z%!!I-aZ{rK>*Wjcnfu69r2xF{v%Y6qoACH%dzJodqIA|spnk8=s&~pSL#|@Lbvy+R zPPVLE8|5M%s=QOyy3|)LG2@KRwQBVZeX{0c`yKRPOk1nQ1)F3Q@FGv>3r`#4x~try z^XA%{bGfwIG%Nkm4V`7AC1%yk=_wq1L2{__?&AV5CnQI6dgUyVBrz*ay z|ZGr%aEo(-IJ@M;ae(|PXD-rDeW)+o& zhDz?wPuA#Vr{w&?cdVd>hk?AqQ&CaT{B3s(N$tLbjYb-{+2>taDd*A&cL`p|r5gr* zX8^`zk`1p4y zUHT8?2ujXxK~k1kyG5wg?k*UE{g;Uf&H|dCu%NTkT4hq|4zdk)wp7Uob_a#Ni!p*U zKOFB;3&vbAq&;~|qb1Dh%r}l(jja2+Y0J>+zPO#2XNH`>iL?HDUResqI=P<)U6b&mgR&mq`gql=C}|sGT`?}*=FgW?%u`1Tv>Kv}hzdv~X$f4A299{Lm!&p>dQ0?tJ?BT)PZ<}*{mD-SmW=?dR7gM(z*}11j z&HmTzN6s=1xfA=>Dam!o6>JD+yY7>$tS{+rl))T?WrnH~Emr@QxDw$}ttHLJ-Ax=_ zSB6_oFPZ{%vanM*Lg~Axx-3`m^l8rdbR}hvE8zN*VKIU2L_HSk*JQ6`9`|?JiP|bf zTJ9tl>g<{APvenb-?;;5@93hELCvpr%_V-)&P8EiI-1h616e|1;uPyp3AX%whog?1 zW=lJ}i0%V|U)){#Dd;@9qc(}B)NiVCoj%-FDWpA{qKTo2Kf^|MvBPvywrbAvE4yTM z6nDk^7SSgzWdFyHV#_7 z5;I38fDynbl1qeA>}!+RNKsMy-O{SeaQfOZ&5;Y+)Cwh$45PsyoO?>udv0JHhgj{I zxMQ?`y_--YyMjjKY24BN)ws#Xp@#C&E_}Gw*Mku*o7*^@^EmhSEz62A9CC9OZU|@| zR3ee(nL>B###+(z>ZSP-o-9-lTE=QV5zp1wL8ehle`MFP4>*yWz9zfo_jeE~l&)yS zM#i>??&c%RoiOi0YRGF9rL`eKZ}#O5gX@7rhKUQO#Mu${a~ktL+C&Og&9hSr_>+U< zY|+`i)ZE<5EsAmLS8rx+r$jP~hA!DxXT4ciL~VHUKuNr_qeB~C3Y3=NWA_T}4zAxu zUi<$HRa?EhjW71rpdK1##H7W?7|1yF@ZJkp)_1)xZyisSRQ2hQ z*f;1BzpNrGZu>sZu_w`B*6JLg`lBFv;1fM7l8X!WG)Nh9Di6F@JH(MzWuU7T_s3=A zZ?|CqeQ3t(aIlfIIJ!IjAfm(tHQG_@yGecV&Yc*+JD~snK5-=U_o_1t-!#4MSFlY= zk!5q}31jP8tAb$2;`qwkcCdiEsMK8RbqyaXBs9T~;o7~#8h9QC7MMz7)K)Fle86=F?JT?h+cxjL+$}gDg0lMs zj%I{eTli22J&wtH521=M<+bg==I&@uoTkJRve9efOBmU`p88AP+;E1s5`p4C{>GGo zb>`CXO9>8#6aPF~BXxGquH2<2>5AlS?9q53Jpt^!-?-(#6Jkvlh^=2~HB70MqU!5YWIqOg(zZ%m1ehsn6jQ z%_`VcL;<_dpS*0tJHP%sjLm^EtyK)Q62gg@y`N3Q;`_)CHnf&LUZm9FOD zS{AO+7~*jFtI*|e6??dBI9eDMqU5(VsoC%VrN!gACoifjtIe;S>G(Ev;<QW3zF5 zNMAh|FU)@On(qqE3v~6XS+b*WhYsexixAH{Myg$3x0-vbXW_=bA=)8huxfiBP)QT{ z+t(fu?W6J|6yGMpbgjF)XZ&Xd#?o%2l^%|(LGXeaMHVy7b&@)#tO31D0}ZZTt8)eQ zacz%ZB3rsNK2Er|nw~+}%cU6ZvZg10`?3-dA73$eALQr2!;%$dQ8IJ;lTFSjOF?=d zc)Iyh)pv;H~t?g zxVD6-4#_VkSB1xI@Ivwnvt_R-MdGJq={KB#*ZT0oAwfx;Y69KOH+r#mc%6& z%5RDg3RgiJLfFM2?t|P+1B&P|?_JmZ2d;f;Zv_2 z=%8&uR79aDhYc7s(m<~Fvzy7SjQO@1KAQP)7DchFN3P3y-m`hscT+U5I;fkh%t{Lf zM&T-&UgwL;Y1ygJJ}YCCuBzq34IyT zy~w+hGgzvxzC>%T1`*5Holjw5%LRPa#g$h2R)0dsuZY+n32fb9~giEb-=kQCE7X7T=&R8)m{`@zW0Diw)mw^-E-uQdrU~m&`eAh9x z_}%6+L4zKnUnjX5j-UL8!@mr!QoNj0bU`FBHY}?tm7wG~^^4V+-4qud11fkM9~j*p z68<<}zzmFTSk)|ep>-zkY-4q1`^n1^gy87L$-pa2!7|cySC;wqiIPUI$vtvVHnP`| zM#UH|>9TU6Sm01EIlA&-)zT~rXSLl@uF4xYnpjIyK4ivEJ{ogPFM4hEp4o3yQn&@u zY7y(ciLo@tW)fspSzR#w2EZBnd7eO9=N{_9YITJ=&=46v(KuMDqKfKh3ciYdKcdWh zWu_4QEaNemmT~?2XpV&J?mRhO0g9!fcLo}*Q$U3Dw~EIe&W&CyHh0xSZLN00v-GfZ(a%yhpVy+q=FI-I<47b85Yg4_eiu!52hN-m|Tl*7bS$QLKuLMzt z|7whS>!lC>+&f?>9A4cfdB`pFg@fPB_6^!bYNA9B@>aW8_F1Rs;%^r^Uk%GD=CRg7 z<`dqP*_68vRY&U_zF;nBvDAR&j$&K_8&8L>(G=~_@+h2k z8~86*10=DY45rdWK>~+TF4>-cw!dQIT4UV`c}M(Lg%EKt_xF?ZDBtK z4pt+K@(?rW-Ydp$eZ5H_tRO6IOkjszBK&fQs?&{b#}9;>7Mp^Gf_F&-zZs^d7fG3M z-oIlJLuXxtlNjBCFkob7f6GQz+%BY;$4t*R*s1|MOrhKnaRLy4M0<&j18xs_Psa}Goa}VJR!-k&q2_OpAe?9ouZR6L<<9C?fX#exy zr^+3N{J%ZNYzRRS``4BJxuqj#*ZR-K-~pQ0KOf-clid7!Xtlf1{p)r3pF0Aa|Mi03 z=uo}>>uQ*yte@-u+u2`Ydi{TNb^%eQ{%7WhfXsX%Gi!amDKc(2D*77JX zab86(@ofM5sMpx_KZz56W{kTd`hUpP*bxV%V@QqGB&!sD#+uA`6;v%YB>d;T@UyS} zG2pm$*zQajrIu+U9J?nQlmL-A7JkP5HX7*(K+K});=W}dcgsHc+F1Sh(Z;vm1=2N;rg%qVe0wyS(@z`!st4f`5^D7ViL>LI zZ|9V!j&aocT(R@*ttr+^Yet}-`swGXJ3t#<@*?*|4qJIXI8xzrn&UuGYIO}-7Jgse zs$oHCvU$k}m%tx3%X}wX{d6EoTP{=rH<`gAJ7=5Le4k@G#V;}V>P@(Gho5WYpemPkBP^R&0~SI z+C%7~hLK*!n<^TvLIZMU;>!X^@R~bF>(Lox{EEcpw}rQ~s%Lnwl>JZLE^68c5!6!!x)?xv zh6*^f;0k_6N7lfV#m-r+yfL4NE+xp;ncmbLNRinJeRboB0}u ztL~jlzS^HO&#>27Q&^rdzj1sS<>La}+}s@ZYw0nQT;CZC&H-?C9N}Nl`Qp2Dh+@=?ux)j$i{X&fRBxCy!PXtQU&RZEn#ZA z;FSMQ5!)15at^duVh z`IQ!8uYoQ_f({_IuMGN!mtZ0)l&xC!##gEs zU~v4iPWaF-+f^qG<|v!Z5tT?5HRSnCGS zSH5xG+~s^K$sGPg*Z{0eT$Gxgj)_gi+ziTPz37i;(?thnO}4UNJ$Sa;06v5On>EwK z?aG@f=&J`;=KD|VdMX59Fs_r-6ZqrE`G%gLQ;!BvaDWZQxlv#YeBN~WY0=Onx4X7K|%d3ma>c$n)<>%~*0VyX>4aIG#$00Te!bPuw~x8i@cHg*?8 zzdB13bYI=ynu6bymxA&A7{!cyVar{fIkKS}a^3EqagVS%cmT}0#rI5qddy&q-i~TU zz=06F041#Dc2|7^P1&-4V1Svz!>%y{L1}x5YB|!DjEGK55uXXyV6Hf(8K>ap=FX}i zwLo3!XSim1{P?AVLq(`>&dk1Iki08387p%mvFOntV z@Noa&%uKY%%FoZwVn1o4N;vmIJ4-1?;r;v1<{(f^#b;gL=!u=vNd`ta9u*(v=<3kP z^}Ei6FXyOEgdhE9aCPqb=A0*%U@6cXnZ76qNaQkoer(!}pM&djkzk&cp@&mqG@IcX zixUC-BK_^jQl+42Rd1%?$uig!w_kt?!tXU+nU{ z`|QBjmuSZHNB#u|efBj@u=Q?0N1VH|dPLxDD%FLbuk@>oVaoyt8|JIjwVB^lRzKsv zINk`v%@P(9z4{VkIE+qnR?-}a&A@YhX;fv5I&>`pX7rwBUm_JSnbU5*XY{+%-N{Oy zQ^?W^CiK!smTj7~gmtx>96Y8c+0?czn>WHDYpgdzNd_2NHukVENwkP@B{*s~G<0rv z(;wV%4#T&X@b>LwWR#qwniVD&omAldBnccyzdK4VwJrGEL2(Z!8IS^Gs)?e);8|6N#^T|;*q`q{lYHmn`tj@jL>J6=eDBs|&QhQL>soj-t5%7P=M(&Kz)o(o z6T5UWH)WSI19_2|_W|c*#Qgmz0MeTxzhx;`A06IX{uB~sMS6+%3GUxtY-TC-jlyo_ z-S;;Q)1n?Lx8aA-vF?7!_)5opJ54^mRaMI0E%#uG2Kg+Bzi;`k&2VN+-N6F^!)+XR2E` zF+$JnY~R5hB7LcrpGAW3Uu%t?^W3c0?BqBm<`OoMM!VDk*Jrd){p_DwKlyMMA8%Lw zK-U__CKFaxr(TSIB7mB&N8k*(EZ&bdCfuly7Jv8l?X7>ttkPE8Z*RB9dY#94pGssG zR)R^b@+|~yD4lD+{^ZoRrso&PBW@_#yb5!a+Ur^M*KPZfWcLtp(T8P*`Rr4%512@G zfE~L=+$v%Z?XcsW^nq4Wr}LvPro+{oT{Dr=&Os#bUo{R)T)2ciR$Og&yS{`QjML}f zz2}z~jkD~WE$o^;>Wi{+a=*a-L-{N@_<_TzS!xW;BSywMIT*RKAkFyRDj2UItPMH~ zLymH3z;YbFHzX_!ttu$?zdth|gb`)48l6+qln?8B@ddm(3JOA{QIGT~NL}BMeXY)9 z2)TZW3cIzn))}8VS`=S*>+D%o`dEE9uqKyAh8ZQAr)EfoTz9iS>(ONL3QzMsh*{ON z-;W!tQ^8S-7nZ_yDfzQ)wUGo*{@il~gr!Y{Lb{Ii5-BOu>aA)QsJ$uVgi5aM>ER5~ zTa>}H00T9DgT(6V23hhKvULc%VCsRxy6a3%P=7GbV7EKU!`AfHvp)f9EC3@ca1sC! zI}=a@m7GlntyFNYo(bpPdzXVY8a5zw`y530n=XzwLB2DS_>I;&CKgtMaU_K-WAjF% z3C`D(`b#R&5KxDT?^vX`%&j+~1ed@sIj*)%l$(w;rZ&o!;~GriO3f zQG4v?l$B1X!luYNnN5s~pt*Z54Xnz#A}<+%Wbj_ykoo-fDCspuXu*8tmAug|UU?EqE8Wc0i2Bh_Vt)Kn3n zy~X@Gk-sN-@&Oc79hTwTP06pWjA2l{B9iCp11lSwVdsI_Nq2ddr9Hom`j0a!~oHTL(d-e@#`3wr)zsF29n z*}Cx<6bw>UfEA=5x8Ps_ES;C`6#7;#16L>bgYH>5v5KrN>XKlfiv8)J-(vKbsM9Wk zUEHH_1ui9?ig|$TkA=XOcj77i3emss#n~*j*S*EP}JDpK7aU(zgU}4%W z3ts+6$#HsNM+3H9HR*%*S@XJ_2IT-046wI0kkQ1w`}1bz4p#(Bf!h!Jsd=>$#KDs|x@>*4AI-5(Ngm z)L`FQU+jF&RO{*Cq178FC~7l&0Rl=fPilg~uXdX<1~yqE-`p7u1}GAO#sv*Wt{+~E zHIMC)a)?{cgQ*xA(Lm}zI8bEXWOB_u+;<;WbNhCS<78|6yWF5mIhT>&b+FJ)(R=NT z^lAhKh-7`oqiRgp#dDvit3+T>@zFP<`GFIlQ}LzT=g&lJVtcQKecCQbI4U$bF%(?w z%9%S{ASQ{TVy9z&$%$r98sG@u`YaX60%hyWsj!ylVfea5Gk*f!p#Yjp=uQ#4raf;Y z3)ryQB)_3xh4Qa!m`ZJ>@VN4#umSMi-plKbj6UPixHmwmYw!pY0gY@Po5&AH-T?D; z^>4;1z6$jatF@dPqjWxzOY#x{w8m1jgiO0UYDjm?j+IK|wPiotn)VnSz*tt}ZS#{{ zpuCVJM2WLrVz8 z@-qSm{H#xU=fB}typfY5W~bmNse6H&gD^*n2Z|zF*f!{LBVeAldcg6n+)Od?nEr22 zr&qxXcYBj#_&L9Kxm`r=Xwig{K&4_ujW6J3fqHT!7t6VKL_!l}z8X`WEcwt$m3_mP zS?~dcXTXO2dTPj_wH_dKDFsE#ZDCOLcT_D-ykaZml4LH;9zB}2x&Fhw@zBvFj9%pCpwyPNbJYd z)Rf1@VTW18A3nyM*Z7me3B~vQBskTqo4kf2Hub=AB*$$MaS#zc*_2W~-kb#d!6-dv z_y$*Kt`U#r(As#ov79G?_x-~D+T>BfgrdHl# zjQHWh?|_IPD)$Y}Q(ZY4oOu`qm^c97tX_Q1z{tq=nF$Tp;9fDD9DhPxVK#XE=958X z`aB~9q>~nkUVa&TpX`aE9qjU+bi!&=q9$Bc4MCn?o$td z$GA;lk(o*wCcd1az%4*jU?qH5ji+RFrqG|%eXc|6bNj zbnnD|yRun}zdtAW(QL_bFTukb+^CNBA2_Dm)WrLWM+cMOB`2pDXLb8bQ_u$X2G0H3 z=Dh7p>7ZJT$>ns10D*_nM+0*=ziRwXzTSUeAx<@uZc=tlOi=;ujdpGiJRxq*@&=UX z)Oadic-y0jbDtSp!Os14WRa5!RvawDQ6 z;pV%3`TieRP?AO>m-e+>$hj!6=@d?sNBI8&A^rLv5i0mUP^|wwMD_nGLiI2F>;D2E z`=76FWX%nJ7n3H@V*`4p+wU}w2Lnx&O_zhJZC@M<3Voy9p*k8o#(@I-14A$NYjVxA zvX)=W;!yiPocQ_S1hRv7&bEzw)Gz!=CNH42UDbAG2%rb>?GCv8MS4ofG z4)((TEk5{~=Ouxygs^(Aa>SLgEb35j3H!_9k=0go+D#dwgT)IS>%Fs~0+i!N|6Ci; zcPX{*xy65XMW1bJYcoDkc}H_({B-mI`u7G}l=RGHV*lXaG(udo{YUUZ5Qmn1oAC75 z2pywbWdZKw*|7k0_@W=FB~#34HSuMn?xV-smG(`H%*ll6g~GSLEol|Y&jIM%v|~K+ zp10QW_=!@kT80YM5VuQ@6b+m$gTtZWklKpt_Sbt=Y%p%OA^#LgNAukM;P zVYQhxUvr?Z$bj5cB@9MSnZD@V%D{gg%>sFB7O}q9Jk8{k{;G4laVJ`VigF-3@CN8~ z(qbha17vrC1uneT7o3VGfJtTaS%gOo_5xC#R4F0o<(u=`bd_)%BYmPIGQUX0z`b)zmGs7ZfSkl0Y>W zZO0nw?x+_{sQ3bIfK`x~os9$JTjl&=(GnpkV}ulq3o+D}B14oq)zpLvejQKWYl67_ zPQc9m3Ckyymn%O8g~6llMz8T%2#0lo3bXSI3%3jm4Bjg#flR+!<7sarNg3Uej~#Gk zW@cW<8xnkfSVA)3*3#PY*79-w7^YTo?T99tXHw$1PHGyv<{z*O7W5aWFanag7psUL zYNL|MlLt7Bo1cNVnhhjEp?s5Z_U=tuF0S7&3h;jLK{?ChirR|{l1kz&!q3BDuGf(K~8efN8BnUSZV^O>tp=0?sA$$#ju3bQe&^eXKOe-xiR99v4p zeYtnrZ6rq(I|udjU4~rR;NunVpFfFWVq)fisbb%JG}dpeN$J(yJ2~+J6qKpy>G}0_ zEOT@7p)Y=z-!>f_9UB3il$n_sG$3_FIOqOY>L2+dc3=o6r^J01CmxhI-aQd0f}BG})sA|sW@a;ZRV zoN*8Z<2=7!ydYxdxGAuLL%}Zo&P8PB3Xg&v4M-O?*Sn*J@%6nGe)2@NKYk)RQvYJ( z1j)`%3ID~wx0SwxBV*OgC*nule}m(2k(1s0h4a{J;1UDhIfbt0i>88BsbicpVuAp0 ztx@Gr^L3l6{LXc_$e2ds!o$6(9?rBtgAg5?v`AQv>&@HrjS=pDP#V4H`Vnwb6|(Ge z?HLM>^TiP_Ls3d?i7;fnexO6{h7G}2LlpccLv`IJyN2Tl6Qi=R>{a#bgK@Cm|a`4cFUDyEb0y zzoSV?$vJzh$3VSF^BuJgFaHV6)!JWjPSLxT2rw$Q%4S_rA+-w2+qt>9ofR+;Iv|b{ z#)mLRH&qJVf_(Y5H&3&lP0iNU9Q2+#Dg7Qk6z2o3bzIAMkwH%9mse6mEvK`t#x_^s zae^rAH0VGF=!H%ZH>fX90|Xjzp$JZ+y9*0T)azpfx}F=E#{jU-zR%Ck-!wi>aZ`kz z@dD}t**KhEhA?}2dO~1&ta#Up$56c%>s&L|*GQ(Fw6`i27WqlsK=ho4pFdeKSrRB} zm@1be`s7E8^05lB3VF&`kf%pP2M&rq2Q95Udr^|9b($KXb<+K5+|Fta=U1qqbdp)Q zd*ovt8)G4iquw=>?siw->~92JG)z#hO zCrX+`|MEWHsQc(DbZf=|qsSY_9Z3Vv{oOKg&iH!Cg36kt_|SykiBwbH0I*^0m6}fE zJ9^vPs|DaxMBR`Ad_LEJX}?N!mGhCs-rim-x=#2vK6Sw3Z^y40e;$n8e-A}uonAQu z0VXB~mC<@T(?{ir84&a?Vj(S)s zeCc9mG>>K|Qu($^H!C^LhoqJ7=Yo$`fezvWxMCPlM|wIB%vcWQ;7~;VZXJ>&H$(F8 zC2Ygkwm!J}r_6ZO+q@0|Ehdo;S6$B{OeYskWA5K{U|?cO4;S(&eI!d?VeiUq?#^!+ zhXnLDtW(fw2jm|=9oI!{UdY;^b8DViL?8J5wXiWt{AJuBJj>@9sM%YTi4Q+l7(HJz zSZT7otMTL4uU~V^$g)f1_-_`6%1dlOHCr2~;840V1S%_el$Di*tvCKHSpX(zy+&N_ z0~6{ZDv!@tbNVWUn33{6JBR!HIo3i>^ZjJDyE8e>^mm1hyy1ON;aGD#EhQyE<|iW% z>L%tQmd??P9;f{j-!=ztZwCUA8|hHA)`+`*f65CzoNM@m+wbqUeSBm#b05(?D4#dO>TG}H|GSs2KL-9khF$t{4(SlVp<{>{X6D^|p6?UuS?^l! zZ+-vxy|YxtGsDE$`|N$+*L~gBCGC3|z~NrsGYOw!S7n<=o|*-BkhT^ZwxSp+ZNp&- z)(9XLcEw>XYUOb9}gwa z&XuUI@j5%+Sh0qTC&@~nv-eUk!J9}19t*VFiMT8W8R(2TOoN9j1<*o96uJi$Hu#lb zlHSde)s2M8-(93!M}cmKi{NcR$?#y zd?J+X_w5dX3$B&uRnFZ9nKncgICls7lTK**eFlj$zJprCaX=mgjoUV(UD7W2v@b7w zu1M8;t3Vydy<9wM?A7$Dpm(jWq{<;aVBkBF$e5NfXc!-f_mV(UQFbgT9!;Oho^Itz z{0OtSu4#{OR}suF`jwu2qR!#mja|BrU&}A?W@lf& zd9yu#BsZ=I2;zbNDxe(CmDQ}|7d_bs-L&PvY>I(-dgfk&Iof96wY?8a$1=0B&gB0< zNr(${hz|j$1tFmcwI%>xb>_s$K%e5{L6pNdfiNb4lvGsOMn*2er@JJ9Q`frT27_Z; z+-?`g&cT6_o7){|0YGbD=T*)J3Tz(?m?$%&Nta({ePXp^3TnS?GHh;k;L_ z=4Qc<^F+mmm)b!$lP;^>r{nk63ntGo3Cqa1P>?31pTT zi_e@M=Uo{_>RthwWy3nP2tXi{1M?#$h6+^X{4s|Yiz%VJ6@whd`2f&Y60hqw_$apx zJnzouC`KAzgaJ!cEnaA7ft?fr#tbpVhCxFWs=|P&TKMyoH{MuNGqarwiIcro<3?r-_<>=nu6Op=i3Vrrs?_=T5M$R1Y%%k@d=K7rj%9~_ zz$#d`^~CXKuck$sBgL5D7bhxX@ zl6?u}3&-KJVAUF`akYBf6fvq_L_}z$o(4}h!A&L9&8pM~v84if*Xil$uk-V_g_1KA zYSIF8(a@q!vjS=eL{2?sLue^t-BOb?IwEj9S!l#;1s4?X1JM#EAhn2GB^&er(KEO$ zY;942==sdN5`5A#5%$Q-0_wWDc_%jNR6Ko_h&ao{jt!=wjIGBDaE{ikz@0xYR~J6t zwt9C71Xhi+tX!kyy+9fbbay(ej%EL>a==S*NCc!LA5-5LN> zb0ZwumN%7}!ymphaQTw;Fm9l;voxp9a~YJm!1U=-Poa89LbdR#S?=)^KBX;u*Yap9 z(dASeGI0YvH|ozh^ebc$KxCTCdJqRD$_G$F1g19f1@=Xg_`b2ffz-&WCNU1wAPx<+ z2+BhdEFk_gaZ_A;A13bS{+B;d?OG@jH0PB7Gpc#6e%5e=Td9${x(WbPz#0Wot;8dv zdqiuqW`|-c#*c8H8s?r4GzYde$`76#UvEnVD9d|D$_&Tfxn!)V)PC`%h{({E$mkIU z|3UR71J~ja9vZB_ubMrh0qz;8cm2nNJILSJ`I9?Uu|I9(x47g~vD?a_gVTU{{pjWl zD)3+@?SrHUzR+ekP6J&ooVH*G}C7RT;*hbGj4vI1!y!Y;X()sj%P& zEGF{taP+&1Q4b{wNEo;g!o*M-jH|g5aOzcQ+0XoVI?eXm@}NS3)l1-k!e{a8*Pgmc zk+!_cSDBcW>1me!WHFtqM8%-B6U!7 zV?6Es=Qq>>7mWebC~3~ij(Q{xm?oWcU|tFu)_xtmw~+We@L1}K5ZDk68H8*s1M*N! zeLp*!<6Ty>WXfd`)B+%iznAWh;a5HfKxkpL=H%LIoS7qzkzk6PhEv_;1_Vu@h7ld0 zqW)g0%Mu=)gZ0O{t(UFqI!iU0G=`|!&Rsdcl0d)w7Mp$F=Z?v_WERi2<09kX77=IR z0=N#T^ui`D3n1HuRD}xisW+Sac1-GBk4xIt39WTE2Ocxx^s?ekG&vS?)WC#S+Jv#W zFBpl>2?5e!v4Ur^P7r3 zg>32lS;5L)b%U3sX#_;gHosQF>>B_1{^j3D1S$Y*B<|O$I*)!`Oao;v14XVEV z>}nrnKf{9HKR8?FVskv2vC)4+m0I*BCg_mf zx*d~VFV&<>5jaBy5~HMgjx%^O4;Q64htXdj_@7|qB0vUzOI)vgZ}z;>^~mZNpoWUe zXVWhN-S?O>5iI$$$IHKe5A&SvM(G&k@2+>o73cuR@JHxjUQz|p8F&K<1m83Jh2hm< zQm67p397UwG4g!4$8QvEFNRq)9;1(gz1_y!L-Z;)<~L?)c#a)6q?B;i$gVa1O_l%XDo^TZ)}T00*>CID=zB zy4D8rG}|26e}SSd8_40-jH?um!62`Dqz6DLfUpPAbOKdwn*&(}0sXJPtbU&H)7FIa zO4~Eg`kf2bSl>6wViFnu1#TI*z%GAdnGp4@VbUj8fRuXNs!^Q>B}4VuY!DUu^CD>#~7B#G-K8JNRaG<{vt~#pm%#Q8t z2OP^n{2q5wl$yeQ1s#Fk^nMc3+WzXN$vIQ3e}>bE4Z#mVpaB ze`T{>4g&optvZPDC{wsI!F3Ud2p5(~R| z(ToB&Br~jte2MT=kd)NSgA^#*=~;s$8rM67mTPOkC*QTbynk>I0zyVjZ9Tm=fU_bZ zpq2<+)I^Mp=b6!>2j*4CCaFjX&FRqAR+!1M7SPP5S_sigSg6-q!vaI>TM zIW<0C2Jd*6L``L^ak;;b0kWR0y$fVyLf&E7aHAjl$f8Z_C}HHo$DORy;K!epjNm3m z7K{D8!B;ud5ZKGi1ZJhx^}nnpVJdRwI2d4-|}FtJ=ur4^eCaT|DNohWM&gU4;{DK#*5NkJ|As5 z3wFSmFjRtS4mdobgx_0HUAqnQP{c^>k%l#nu$=uw_mQ>%1#b;?Ct{*y9kLO2#-CzjW(ALD-Yi#s3Y$3S5oya4iOH;<35x+^O6;sSfjdzI% zSkLdI2QTMIRxk@AGgK}U3a~Wd4-Gaj+i+a8D-hN=ckUc1`6Vd+re3Rr$67=H+2h?w z4Y<0tI{oi_a_d;fc{WM6_7A+OApxX*4fZT7QVSy0wY3T#u2=xdL&pM45VN>$KOF*- zMze^$J1;v)mLZ*bmWZD5RDnxp^GF-f84Q!4KEhOS4cyx~*im=O0{QOL^22kolMj!> zg&px-@6cJsK{H!^PdA0C@MbDlM=ZDJYo6(}k5e9@=69Im1S&Q!^uKT%S0kzR(qpLg zdS%l(X_M>Ia1~~Xp28Boy2G6P3^DPQ8O51cu2+JIadlc~6iIW-s*#oZH% zOAN^(o?Fi{+=aovuht|RY^B8xQs!Dg8`;_Qrn{SQXa3A+glm>nIj^L5 zN#2}RovWDfX6N1bA*II-l{TYFA0~}HdF9{DfAcCHPPSEhX+NSA?NfAD8-DdI@j+(I z-JGk;Y)B(s!Dk5aTtjCO zxDmc06{3!8!VU{Ufu)jz(?XlW*|@a$zV{n3L|J{|MqE)IE0L89kg&t3Tf#JIU(HxGo|!HZ`)K3RK1Ho@S%kQgGs0_NM7!{_*9BZ<-W248X+1HeV*!? z5fStNKSsP~T+Fq$(iNN)&V=G|%wqwe~2Lo1{qAR8a7Qzfs@%!v=h zPJAoQZwXHG=5Ab?+kgie%vM;~tbSX@NM;3?#3XhSP(Y)X+T0fNc9zrg_)Toyj_uqx zZ%Ae`I#tnQiZmiwHvH~aBcct-ZnRH34azWNZ?VC2`jUT zA*VKt7cv$E@UTH?)2K|23N|_V{yB?f{NfwUEM`g3?$Wj84C^)$`{S&QpscQ4T@Skt zEdJFVcQ|~kADU(Oa>(KXJp*bcNAE(8(5{h)G1AsVx1|^hlcLxA%mqM9~3ea5cUaFUze8N`cZwgyfIU; z>$;MP=V%l^WAjN4{`EzF%w|=!56UJBLqf?M!lUvo9cwHV$otZ!7p@5dzja`fw_f!AU-1dY@#H}6RC)>?-dTG|Y5Jmw%Wr6;@K+fxuiFs6pT;GI z)wYR={;SsB>qS-O4IZyG38^runDxx{c{`vk__KWgK0PG~G$o(C?chd{cspsGF0eT8 zZiq&s!luVPx*GI(s1dlFF^6gu?0f4_Z`hLQL)sd~lL1V357D!?@zlvPXh)iAVt@jps$i(z2 z`X{_s=Cr7AgNNsFg5i7px@}Lyt8r}R^#Y@ElJ>FWCga2{guyyy)^=f=;ZG@gw0377 z3@GiaDl4(@l-3iXYEn)Hxs1bmWMpJ}0Js}776-`8rvq`K;Sw$$S{j=4Em+)okP|G@ zCX?@DGgX1sOp0W<$7UgUc)ed?m%%G|qB!O5n~9cM_w}!4T``%etHqOz{*pkRUl^$M zQ!w8lZSX0=5P~Wrz3_FXML1oLrmsMF`N-8sQ=P*z(uGqJBgC z5$YbhL*pa+D9La6QK5AlvDT-jT?4Sv(S`7?Kmz8pFy<2C+u)1df(i}m#w{ExpUPsN z$#`rq0^17U^FT5K2#;lXQdMZU`ynk&2sN>Ir%$xY_;d10P?w>`cTfNOJg$ zE`RyRzq>#0UbMN-G1Tz28zL@|X8ADt4N(7PVeE#L>_>w1oE+tbfvm-JCt2Ka)($mM zo2zkI0O`<{kCr!+^#lPXxaLC81L~&aeI0kRK>0v-nS&$}XYgf3UpolF|fD-Jj^$ktZSCIFtAjb-_ zK?l$f)+dS!^lB11^|vVQfrCufK`Ks5s}b1&{Soc^d^>lDcnw4(ZqrZz7Di35jNuo8 zsoe^;*HA?0{@48LfMVOT+!dozK7d$|nK5io10-Dc3!E>EV23}%oa0-s?{JDZe`7bR z9#`^zrMxtXZYnmK)pqg+C&tF&!-o&Qlai8@k9yc1zI3Nr zTB;}Jo6yqYe>eXmC8x1#M#tz?IX2gdIw=W1ePRR%FmB^;wVRlwWi~|=K?#MV4&|8r zauX=PTTdUNJ&gSQr2+5CoeVMpJy*X51`rzlWxonlNwew$d@o0y&(6+nT{Qvwc_{)R zB*k`0NHZJU-mY{{LV_6*4j3^wc34tC(Ltb5A+(tA6&Y&P(m@XGD0APzK~OD+@Eozn zdFUJoOu~bP;n0}OoC{2CQSC|(ZAgtjp&@mXTN$<{>H7G#y!?p+Qq#*fbvcvOu0qXw zE4}WR0UZ(FLpvr2Fg11$r^){4e;B!vz0&dwJVHVmj~|blPitgpf)0=k0A?o;L`3Pl zbKn-djDqcg~%#?n@rKUA+w#AS55hHWR2nq|MtK;M2 zgg~f#PN1G->cmqSzrDwcF@wIG6P7#b0eF5M0-QBTkOU5W&f1-A54AZ4EJRIXUod2i$<;Jjw^hiQ zg3rAuLpa`|Z+>QC0IU76&S)Ar8=bQNgL+g!?e`Kf%Yjq@A>9(W$$H6eu;5UX zh*_rzKpktxNeVdvfC5|0*@3=95g5t3rYHN-)Ul%R7KzWO!wu|H+0?n0=(GSS!y_C& zVm|KdKyjl-BmM+8Q6_^yz<5a?pQXhc14{)l2@7X`_hV!<5wcP%dgA)@3u+a2Q8trM z^Hskapo(Q5J!wy1fBf>+O54ByIgr9S2kG9d0OQ()E1Lhw@EnHmDfFaS5AqX+xiP(_o^5K|c|N+80Rl?# z^ixC__@4noLYAxFg6T{MofIZ&fvDN#$c{gnPft!xfE^dmF%0Z@35sZqJ4wL5HFmY{ zGY_~Fey^@(m6w+fB^(NIX97iw@QVHYeW3p}>ijk@<@4t^L4-gVPz@}My?;v60iU2x zjn=~cdWH(K3l& zFjD-(5UKoB{xum0Amzbs{+Pzi<@b#%faWQo+{dORXDtrabHh!x+TrFdh2#yL%Qb% z+2{Q9RtJcx*&EGMWT|->tw~K4*aC>I{rLH_b8EJ448Z{h921ZnZnnMl$LxSBJuWv? z%rC#Z?&54z@anhu?KFd`Zz!sb>0FtN%F4@JTwFA~VA+uIN8bT&;9`T{Mw>Nnycp9U z3`1%^9WZMU-#b%e02QfHkCTLMa|IWd(n04Mv^&32)6e8L@7{$S>EsHtPUswOc3u7? zJNq;NhQJ^)gPySK5w}c>2Z;SH-KD=?9nkaudvvHp6klveWY5mxoFfpnOt#T=`P2$& z{ADhSR<^>PXkp4p>b3vg<&ABBEJE6_PG6CcERf6f&V@|1)&S+X-DAdiA4Gx?+c66# zee*dJ!mB14CwSx@Lo*mC0MussBt;3t!0?-E!elZ2qJ%(hfAUSr_Wth9f07AW*Hyr@ z5@})!22hcPk(DG?3 z>mtfH8N(cv->HlhYiIhsHjo)Q;aG}aeKCP&EAw2NgWI}@Yuff`W`X|AyRNSBiEoLJ z+Jlt9`~C<1_*^?R0_Y~z>&DfmpEpX6WFfDB<)kD0yBJR>5Dl8dU|Sp(5t1gbdxRfe zRxOgI{aTsB&ihBo57!Zn^P5<3JO6Ri;JeNu*%b?=BvNuKVy1&T&xm^ zq2z9Vm%kHJ)5!!T-5-x+x0jcBGApBjzZQt?^SGi~1tA)Ao3PuOI>_B<3K*K+#>TXp z48_o{+oi?Qf30z*O`45JlGnr1QLSINB2|a>O_n%Ir{UAHc_{Mtj59ehv1w!l<2MiS z#YO}p`n=b!sdD)3yhg7e)iW#p@ryFQY-u7}nP>btlu0xuGAD$CBkplUjll3(p&u+qJ6uj8DGGU+@oeVEQpDu19XP5hDIgS9j2Tkp~W|jR~N&{F&cpM4kp7QiXN;U z0Pbjc58U3M_-q}w{DSOJ)?027X!QL$4SYpRWMR|6a<)J*o;t=~H=$PlQGfg}EIp6E z!J;)Z2A|}B4a%lC_zw9b9Ag1*q-b`g zDr|W%K5>^L-ERgN`P$fYBtZ2(2c+L>ow%rDqz@%g-& z*T3Ba3a>qJn)8kRj^e4)El}9naEEeJ}6IR4B52EgG{3`4E6-HgINrp5%Tp&)*`NgPm-8QUfzoJ3?`u*4RfMh>q;?g+K@_?SgaZkZ`TH5+ zOt&q6qzZYq2D)>B9S!7Ad8t>)=V`n!n{ZY3+Up@vgbtJHL9?|XnnPN+Rs*Q(%r6e( zZ0D(c)aP7_*I>k002KzYih+L&atSB*ua!uhi`9q~^v6>(NwiyRW%X@JA+jy{| zQC z^m<$IGpoK(*~RP-q2S)9^}^Ms?c^vO z1eq*krb&MCmdkoXP?}&7s?wrru!b&i_GPlJruoC zP+_*qEyHqR0LfYYLCudml4r6mb6!?9*N~^B3MY=!ZI?xT31Ymt`aB<0x7yH?W zvv~*>)^QLtf1Z{i|KK6^)nxN;MO@O9^9-)w6}#188UcmI?HgPaFA2WNSM6l;YASrr z%fkrUZ+DGLn!TQj~jqmc=$bhl3LU@ciiPnt|jVzR)}uCiFJmiFr68 zw82!*r-L__t0K3{uNpmCpuf>1aA<72A&UXADH~W;CRbbu${TUE1C?2;ov>=z*3oTq zolxQ8!r5UoLV7)xy^iCT>VpUG3DzB6az9lpDq4%SlmkJVE9eCz&YCS{-tQ1sZ{-CdeU=$|aTmgRru;9y4m>-OKNKJefDzn1I& zzoq){zmFqqzL181AFex)Z{AC~Yn)$|`xIsdA<~CAl%!|8x+ZtsSKM2A{?TdBF0TNz z)SHPDD$4Z)eW8*BnX|+vdG-@7MLNj{Bw^ zZ|Nt+0_ak`UQt!vGzb#O_Z9X>k34wXujE%RKa6A1Kw0%Cg@V&=3bY-N_Cu(O3>B|q zbuV8`W_|r71|fDO%;BsZF6Fk3By)IXtwhrhW8k`c)a}*42mHTG)ZxqUaus&4CZ>`w@$1(sHCeg2 zK6M}z2DB`9+aQ1c4iz|(Vf|KE4WgcVdOmlRwY>bq)7}3(1`!jlZM-eA_8i}E6yH5G z#AEXPnF*k@u8mv+bkQ!rI~LoB@*TVym|y%;MSW1t-2AKQ?;l+YfB%La9Qb=)g6=#w zCNsG7=sHhrBLczF+7{kwUK^1jDVDL3X1}n%b{8O~v{y$ga^bOtxbFZ9aJ&=N-0bwC z-iszX+g+hcp-88+h4W}^MrPJ2e}XvOAFB!B!x~u@r$oLG4^}N|A}F1*Q*VW7LNyW- zIwkm`0(|Fr;**r_3CE`7mkp!*PzfR}p4jh0jw5LnTU*_YX33952|nkAA4ywKyn59v zwu;JcvfJRRfy1X!o(rK8>yA)E5F-Zt$LFHp#Fw$VAw%yL6=q)@IITyLyXU%-n|$)= zVeCU){bY1|UK?x4L3D;7h%!<{ut@7;LC-lz2yMzW_!IyTBL(vJQ@b4#3KkIstk1#s zE>;Id$!P$-#B%s=h$K(RvPdyzDMt@mP?ZB8M`5!t)jw%iPk+2tBl-diL@G}ggQ;H( z<4MA(?zcuUd6}%KCyeUY@EgwuU<8mzWJpX#aq$zQO1saGH$#|iyL}G+@PUwmQJ6|{ znY}%6R65TO{VM9=Y;cM*^~>f!XAmXP=ow*g$)cOe-rhHsmNM0ijNU#@_L!Cue1tiK zXBRd%BN4`!sXqajX&h%KXj;gUcLUze(`BA2;@6+G^`bx*u(OKNV&CjbScM z5cNAR=JyKEEL7U)kyTc{h^B$y;fzKsBeZTSWRL77M1^j$t_=}ka52)(ghDCeEx2`! z>K0X?>EiSlU(uqd&;0%{Gpehq*9)%C-TZcG7MZJuXksM4()8^qev>G@%h!k_oSl8% z!T5(E!l`&4X`_#bN|dt*_F{*NfD(2lFz}p8ay} zJ4I?$K?eu|V`qDtq-r|YlI@?-dPho51f6;2g7!{8=_iDgLPEJK-_+6y+VF;y?iy-pzPwEgbanCu@0FzCK^5e$41S{turh~6F5bO+ zSKRmTCd3H@Pr&^(0Lt~AQgg_#g8%I7?8t#y0tC=q;DRnV{*$-+mV4`b@@KT(QtUzGT`u*_G5#$HOVBI)#Aqf z?@AREm9X}BS4bviOG_ufS_s}<6bhLT5)$gzsR0f1t&}nK)KQEC6ln&l2eo1>ky#=X ztX}?FatFHQ3WMyHqZ#Bg>N%?S2@g^{E!xW9OU)jT4y)8PqaDUlf(`qn?@kcjUie27 zL-hrd_!iCq>uQIlA%D$h8YJ#XNx@GD*Cmi}PauKlfGNHs`JPE&+YviwCH~P)dZBnX z|9Kh<$uZ*BD1!AZ<);B_$KN@PO@=6fPm#tQDERD7%tYbDreea(ht2_p#g8o?+~F-Y z(mi?|9WwS$^w%senJPHhwPlgC(~n;-xNW90i@)dBM~(C9*!fmJS^Yp4Z!A*J7qhhk z)|U&0J;=Vyo~cB3DR#>{(j@(3g^;qIN18iMireS#nOI}l&orGh9v_~Y0DJ&)0#seu z;jqK3jVs0~n1rarAtF2^KJMJjQgJ?A(@5?@7Wd>8TAmgCK+4xFZcTX9t}G-;(W3&pLWmM zE=<(avKnXJc<&p1nDce~EamdsY_e_w?W&`x87O+a9gHt@XmUKGd$9iT-G>kBi;d4HpK_;VRyTnuz~a3T`wI6J~m{t(QcxDyfOi!}`_ip21@(tMGjjhMgP_2gH&?31BrT9j0 z!qZ^~8Bwd+U#t<|479DnYNBy<80*=*;3x!co%_zzNAu=ADvhT1vx-g~I`u@@Bz@rZ zTf~^Tx*$=fd#tF+ea#q_62xtBSNSNqYAMbVJm~4yK@21xeJFnkf`^W`)Y^z?pXPr`p)QXn3Uk=1Xu@wBsXk3i!Pt zedA0NILXyAB!@?DihTL(x6v#~aw>v-z3hBq6ke4E%jC# zz@e$Cl9n@Bn`&1RgrwTk0S3k%n$iHIM z{_-pbtBasIpgXJ$>$TQL-zFgmAn`g9 zr9j)Cq9eoQUnw0LzT=DP@B%mNoZ`l%NCa-c;Eu07Rg(MVuU2WF`7p=&_#RyMwY0p8 z8Fq;Yaq-LhLZYN8oGK)>qml<2Qb#kcd!XxxKv%38#n^k6+OYLIYaL0}d8qzvqVuqu zZ)5|)1)h5NxOHIH1#Mw*o`+>ye+&In9zA{3r{nhb4A-Gx6sLhoFvge?%T4&2;9vYf z2*ZkoEC=|k&ZpH|R>3Zz;Jbd*DLgJ2vb947{6{EX{3|!ZV}&?9zI3vfWS?-q2^uu^I5#oF`me~O7)(no6lRR|o_ ztZ)YPw}0KX-2eS*A^hK^$p4wD{9mg?!vFdX{|8mh@huPB(1CH&RsM;I(-XyR@3vO~ z*eN96ssHAMglNkAdv7p=j8E42)45HuAi0*kCgqBfnky4q1lR2BAe~Gp-B|3eu%F3*31h4*PFa zp!Pu57V?G}=+U_Et(RYnq6g_M zH3+A(@qnrKQPOQKeXbaUO6l_?au_s7EUya)jG+{(Jt)9;I4f#_(z_c5DjwD9RM*i7 zudS6ZT<4$sr}hRaa7}j)jN>hSnF!}q#cirI5JDKV)z2^T`ua)5fL27IoJC6<3=@E2 zSQVt4pBuFZO0z%u`^U0zOP=$e2sm@fsHV9KAZuS7K6cBQNYAHjP`_vZSS?rlwDy>tDj4JMN!{AV*`_`uD=BUj7&n zD6lFkp2U_tYl!B z?C(;%Pa_`waeg5QXDjP9J~p=Krc4aW@w0ZY$5=U zzvRBI=Hc2 z7AqbmO%rTN-Oh>o+qL`mP!zfRPP^;QO1!7Mrl=G+Um7polc+vFPgomDa#C(LIJ5y`lii+u;k1OjA;7VppsFYrP!{bIs zGUari8*Io9`X7>hDgNekoVbPMfWMxi2Uk78E)o*GaZWW3w+*iZ=k8@7K$(;P2v+9@ zEM7D*blEr)Il1~c=}II{HP3@cPW42!#2P%FH`4bS0AYe=PNVptEEV#CiBIEmXZOTv zT7d54)xzSoBe;CeI=ZCxP~R6%lxeH3vwDn&8!)n{P==5(TlkUfHhz@B$f+A+{7(!D zfaT+u*K*!eCA=hzQeGuHV%+tvlVft`cLe(d3@|^8?(PyiS((dU4AE!)pA9ovmJ@MaSM zQulns6|Tb6QRfFKX8Tmz!*Q9+p5~k`b#p;q_#pj%?rx(J z8!sfa1X(?*hb|-r5(T^8V>|d+aeL(mmcfvHC-V7rl$|0T<2~X-jzAa^TpXE=0+Yss zPq6*)iKK(?`91*-qW`4t=*RS4C4Z~cX{tMpDx+c(ce^yUb$J#jAF`CCsZ^EB{b)M4 zcy++Rxs{s#Gn&0*7u1kFFyt_RqRh$xI&|&!g zUmIxN!^nAmEosK@KbDJUD7VZ7|0h4_zn&HGzxP@AUx?(t4+H-DvB%lq!2d)>$F)qg7<+#)?@UDz;T^Q-qRqxt5hNtT97hd7kpWAYwR z?R2x}MYRpp3yt~rw(vA;RISxAXVz>E+$*4@%{V z;9rMVIZl$lxZh*o{X^(gU3DHB9UV6t#EPtmt|fTRGJ;8@Ve2kQ5XCx@dl5H(C_0GC ziT>-*D0w4mE?ACbR(;wv%o6%sQ__F@A`ud3?L6%WS!GkuQ+>p#p5_QF$$} zfLk#!ei&bgLW%Dn;1(cN;!sMV7ti&O4ta&_nvmfhvHE(U$yY8v=WUM5+78AAfDF(U zfO8$Kvga?yPwnt3xWe&&G-GHuCrsY+Y-~jay0eHY0?_Ql`5-n@zXDyuPOXHPwj*kwHYo&0zle?a~82XFR@0+Rp2Q-==| zSbx1NOjmST5H1TY>cz|cWF-RRL7O56Z-%d7^bEHkzuE@MR9_hF{H5s=CA7wL`R#8+ zWqHfgXB4++>s@)dzV~Te89H)IeOCSANv7ES5k)iZ#fb?B5`o@T#xPkpS(0WJ$!@%6 zWCcqgL^H_?^`td}K!&HVF`llmeY(G0V;~8FXfHifl7EKJHTDlq+#2tyQ=)7cOw@2? z#&z3At6-8~f`zpvTy3x4;d@oIBjRbA%ym9K1>h@rip4H&Z^uMMQ4CoSKv>LCcv>3A z>FKG7X!7o;*3%X{(Kb8LbxnBe+w)RQ*}Hdvy9N$QH@ZwuPgYRWS5f&yLxUD5Tbqg| zf43Rq(`#3*rfdA#(dpyOa5>Xh>730YRZ|&nIt>_y+u1>N0!SEMz#Pg$zWX^uNb-s&4hnFm&-?G_cCuk_IuZ=BK_|Y+8a0`E79_cLh zbnr>M#xw1(J+#m7xcE$DuzlcmiGQM@fwu4kXvTJScGkl8-6&sF44E~9 ziLEPJD2er+F`9BTp0l#Zk2z2DV|eDWX~^u+Ky-xMWoDzM=82*QM^D1{hyYYfxk8dY zW8jCkZw)8KkYwN>#!`yXJmFRuzwQe^YjGwe$2hC#5-g6khE_cQqEL257-)EL-k z-TcN^*if8T`}V`I3!_;5;!X_F&(Rz>C%qee%@eD4h#aKi&0azZdAHT>S+@$Ml0eV& zZ8Q>LGH3_u$+8RnTEs5KU>VC%C{`lcp@ww5uE5WGeM*0eVxmM@@Q@QuQ*~Mg6{C^o@HpjtO;FWfv!!I;rtfF-!yPoSSMHd+O$G z7G<4g42?>J;_DZuNV2+4U+7~`Xs?|5oO{AHWu;~O3||4f_$*);J~KlG^4UOfCZGA- zF$TjU1Irj)uDPJBN03=~tS(yHZ+Tl&ODi@hiLV?76kg3O#(G1@E`pkq8)$3m{Bw_+ zh;j2syBJJUHb4_g7IV~QcR?ywx0qO8Bib|(F2^H)2~d`VyF&N}IycZI-9pJSSW`$* z?Ln!LBC*(Xft;M0i6X`Hj&>xeslEa}S{de%=(%+jG{4bZebU}2V6dQNOl=I^)j_mQ zyp;EN{Mae4<-Kn%SCpt`Mg73*w&*R&9V2MnKjEoEoIMyMIS=!s{q*hjmya^P1j+tZQK=ZcXq}0`iFM+7% z#yZM6F-9Na;S_})2zmJ9`?Qk{9zFJg-OKY~DJ&!LtgM+`3Gg3J+FORPDK36}!gqk=Ttx{F7t2zDJNFARs`UkjcU# z%-SD)Aa7&Cx3shb1p42USq*T5wFn%fZM>kOx4X2xjUZ0jRvYoI}J^o~t~`=NMp%Ixls z-`zUba=()55iBEdB<_EMnt!Hzw_Vo`DSs9G<7W!(P@^-k?>&ZZTH zv-pEGmLpkd3AUk?jV4l8ob{*pdeiq4MFy|Qn!MN>=hz6K7DLJ9$z3yXmyJNQlm_bc zI#+vi>ardDs9%KovAo`WUOs_}wY68$S9Hch%aHqEK2WHC|`eZh{edIKEUM8DV z@6$}*`PUCHt2uh#W1f6*-3QS&Sct?`>o7yRU)Hr4=%BMr59IbOtz^_cZFJ8syBWZR zTDBb^mq*s#=Rz*#I#6VN#b!=D#)lf=<)F7zep{k=fH(vLf8v_ z&%)hWmt}}!TExZx>DajF8TXo+Y9TQOz^QrpXLnhgXu(@o?A`sMAPuCgtRFu==cipY zmfOl}e5~0&-!GUXgT|NTE@zIw_w7nwWsbg-P)m1rcWcg|Q7%7`W8xo^BUgii#};^b zcocO>FM}m2*$3x$xU)6uEFjDA)DW%>N&OJgjM?sL9?5k!ir>BOC5{dWdx>1>{l#(l zvPa{Ir+sStDE|9wUDi`M2<^EB#RL&ji2E~36P$aJ^0qWfW!{#*H(;}&{w<5}($K7g0$2X>+N)h##iucGIE@u_|u!#~w-u5xf05Npw?@Px2{g z`yp)bOH?Xod<EUnBIU5|~0E@42}TiX<;KMM}+G7`?A5okyIxw4mwAtY7}I6DTv z9d8kC-*cJeeT2pwPj&gAb*#$n_#bI*BvGJ56__>}L@`_mF2Z@eOt4!#aZA=T^hMft zi(xTqNoV1wA|r;H`5uGkwSl+qHbRq5FA5vW1aZ7O>};y?Baow;g`o)@7y5Sq1;eE;$RgOA(A<_NV58O{vrSyJ;w*v(1 zB-~+^x!)VaM;mQqu$Aq#-ZP4G+D#tEc2eD$87D5;|EIWfk7hH?tkZaeciH(KiqLGiClDtTnyMU-+8CJAqV(> z40pkz$k#V(=JeenuHT<%H9DY#&?_(*IALOTz+%V{`ex=kJlbp>SDp4~J7FG~eQ-$; zWv~QOpO}i-aKTQ)(`Q5s{GrAW+5kI+?xNqFX@FP701h19mYABkOkNRPUY^#Wkg;FY zcLkx3aejZiD?od_C5*hgA5*ja+T|pyNf|6h&e^46%r<`Ho88JO-C^~?t!7Bg#(1xS zPEOQ*mZgTP$TS7R5?qwG1XkMN^9pux6zSmEM21DKyQ zpd+g3TDOKB`!b1cQ#lgw(Ojx=cyeGL#vwn!Q)0^;WIu36mdD1{!jDUke^{HLbj#lA z_-)|c5OGVuaV=OaONfAcZPD-=@nk$@$==%xQ^qQIu(70PGW0l!fh3s*KuA6-LZH z|Kj5Qm12AemJhF5-0Gp(e{Yz(bw}iywaD6ex-xYpQ%hMBI8c&$6pi$uUvKRJumx@O zuJT7r8*Ja5lH~tlIpepkjSsJ&zO}Es5S;s@=+HhD;U!_&%yTgHdCS~O2ecy8IDOPK z0i&1xLXXk6Xf4NS5sRaB7Nyj9A0?=Xkt`8EIERCAmA<~d^J9~iBUTN)UoP;K@Mye}_#?n!^Yj|J7_YGRW5c)Mj-_r+zI)W}G$H#eNmT$7G!h@}H}{T9H{jSmek`B6;s zaE6`PFK_O@>fkWa+N6=$NgHHl2)JxPPfveObG-1Q6}P}GnoNp`iQQ=>4>HADOl^PS z74gGpeB48)Kc~BUf{+lb-~s!8Tc&Z0GJ%RgtXHby9C|a`UKCjJOdtGJVs!KI?Aj%wzJr&IR`>Yg<9qPJ+Ffi%aG|vtlxryI^VXqn=38rnY)}PaXT04f zE~&9OEZc+J5nFb%%_m7#=VUtjJhrNj_&NzKK(V7dE+@s=gZ_7isj{*5p?{O9X-kuX z+TOZ&fk7v4bD}#Aa+hLG4rOfqL!Gxnp@7H*0zU&A$~5CAJ2*W`v^co&>PR;JgwAV_ z8iDpw!J(A*=Re)xj_9YlDu;obuMs#Ct-ZcnbpcF0-yB!$<+XsZV)bY%b7E!_V@RY} z0@G%(@3f`+_{HVCwcFlvPB=ts4Yv44v(Sz6af?6K+mK(B*49?A5S;z&E~&QYojs68 z<6>i-*WpoxvTjF{pX}-;XAFW72E9YkeLidaK;1)!gJ`#vW)*UOaUz3PB(&6oZ-RS` z3mcLCw%qbv$&vKsJU=24te5@6b$%7S`ZI`I$Co`kq?8b{yUrv-Ty$G_CLdWA>{VUP zObb#~$TJkPh75mRR+33I*J|lS3wPmKg4EUHK|9G)A_cyN^VUh@5#smD8B4X_2Bk^= zvU1x)OHY1@;Eo=OASvAl4N7hZ)TRg#gn|MrkT#x>Fr_<=_Iq5vFGbIgBYLv3{Z|JD z?nS*CHHJdcwol#()>vDv9gd6Np}yZ*v#M*{;1E1}RBYR@rQ?@`0nnXJnCItXOGpX` z4Ry04_J+&J77{8e!&2f*ftJqU3&l(KzI8e~uQ8|sWdwmAqkqi2pcxFWXu^g^FUugSB*g z0ECb=eihUuc?2%XtS3t68`_TUp_VcZ%q3iiD;t~`F-j0(}nI_UkD6OSKQhAXCm_c34nPOLjV8( diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index 5e4e36d0a219db653b4348c92d718dc19d232ed7..7f5d95abc7ab1c1c0824b4c177af84666a123df7 100644 GIT binary patch delta 51790 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⋘kjRYd(=X0OkRiONE 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

OMK}=u-m@R$MwQVdM5Us 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 Date: Tue, 22 Dec 2015 03:15:33 +0000 Subject: [PATCH 11/26] move smartfridge to better location --- maps/polaris-1.dmm | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/maps/polaris-1.dmm b/maps/polaris-1.dmm index 6fe1e7f92d..2c89508853 100644 --- a/maps/polaris-1.dmm +++ b/maps/polaris-1.dmm @@ -4608,8 +4608,8 @@ "bKF" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_two) "bKG" = (/obj/structure/flora/pottedplant{tag = "icon-plant-10"; icon_state = "plant-10"},/obj/effect/floor_decal/corner/paleblue/full,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception) "bKH" = (/obj/effect/floor_decal/corner/paleblue{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/reception) -"bKI" = (/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/reception) -"bKJ" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/machinery/camera/network/medbay{c_tag = "MED - Lobby Aft"; dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/medical/reception) +"bKI" = (/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/machinery/camera/network/medbay{c_tag = "MED - Lobby Aft"; dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/medical/reception) +"bKJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/medical/chemistry) "bKK" = (/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/machinery/newscaster{pixel_y = -30},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/reception) "bKL" = (/obj/item/weapon/storage/box/cups{pixel_x = 0; pixel_y = 0},/obj/structure/table/standard,/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/item/device/radio/intercom{broadcasting = 0; canhear_range = 5; dir = 1; frequency = 1487; icon_state = "medintercom"; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -21},/turf/simulated/floor/tiled/white,/area/medical/reception) "bKM" = (/obj/structure/reagent_dispensers/water_cooler,/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled/white,/area/medical/reception) @@ -4691,8 +4691,8 @@ "bMk" = (/turf/simulated/wall/r_wall,/area/medical/chemistry) "bMl" = (/obj/structure/sign/chemistry,/turf/simulated/wall/r_wall,/area/medical/chemistry) "bMm" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southright{name = "Chemistry Desk"; req_access = list(33)},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/northright{name = "Chemistry Desk"},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "chemcounter"; name = "Pharmacy Counter Shutters"; opacity = 0},/turf/simulated/floor/tiled/white,/area/medical/chemistry) -"bMn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/chemistry) -"bMo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/medical/chemistry) +"bMn" = (/obj/machinery/button/remote/blast_door{id = "chemwindow"; name = "Pharmacy Windows Shutter Control"; pixel_x = 0; pixel_y = 24; pixel_z = 0},/obj/machinery/light_switch{pixel_x = 12; pixel_y = 25},/obj/effect/floor_decal/corner/beige{dir = 5},/obj/structure/table/reinforced,/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the 'Space' from Space Cleaner and written in Chemistry. Scrawled on the back is, 'Okay, whoever filled this with polytrinic acid, it was only funny the first time. It was hard enough replacing the CMO's first cat!'"; name = "Chemistry Cleaner"},/turf/simulated/floor/tiled/white,/area/medical/chemistry) +"bMo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/medical/chemistry) "bMp" = (/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "bMq" = (/obj/effect/floor_decal/corner/pink{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "bMr" = (/obj/effect/floor_decal/corner/pink{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) @@ -4781,9 +4781,7 @@ "bNW" = (/turf/simulated/floor/tiled/white,/area/medical/chemistry) "bNX" = (/obj/effect/floor_decal/corner/beige{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/chemistry) "bNY" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/beige{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/chemistry) -"bNZ" = (/obj/structure/table/reinforced,/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the 'Space' from Space Cleaner and written in Chemistry. Scrawled on the back is, 'Okay, whoever filled this with polytrinic acid, it was only funny the first time. It was hard enough replacing the CMO's first cat!'"; name = "Chemistry Cleaner"},/obj/effect/floor_decal/corner/beige{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/chemistry) "bOa" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/screwdriver,/obj/effect/floor_decal/corner/beige{dir = 5},/obj/item/device/radio/intercom{broadcasting = 0; canhear_range = 5; frequency = 1487; icon_state = "medintercom"; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = 21},/turf/simulated/floor/tiled/white,/area/medical/chemistry) -"bOb" = (/obj/machinery/button/remote/blast_door{id = "chemwindow"; name = "Pharmacy Windows Shutter Control"; pixel_x = 0; pixel_y = 24; pixel_z = 0},/obj/machinery/light_switch{pixel_x = 12; pixel_y = 25},/obj/effect/floor_decal/corner/beige{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/chemistry) "bOc" = (/obj/machinery/smartfridge/secure/medbay{req_one_access = list(33,66)},/turf/simulated/wall/r_wall,/area/medical/chemistry) "bOd" = (/obj/effect/floor_decal/corner/pink{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "bOe" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/steel,/area/medical/medbay_emt_bay) @@ -9694,9 +9692,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaaaadaaaaaaaadbEMaadaaaaadbEMaadaaaaadbEMaadaaaaadbEMaadaaaaadaaaaaaaaabAZbBabENbEObEPbEQbznbERbESbETbEUbEUbEVbEWbtHbEXbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbwMbEYbEZbFabFbbFcbFdbFebFfbwMbFgbfubFhbFibFjbFkbFlbFmbFibFnbFobFnbyhbyhbyhbyhbyhbFpbFqbFrbyhbfzbeebFsbecbcnbFtbboaZdbFubFubFubFubFubFubFvbFwaZdbFxbFybFxaZdbFzbFAbFBbFCaZdaahaahaZdaZdaZGaZHaZGbFDbFEbFFbFGbEgbFHbFIbFJbFJbFKbFLbFMbFNbFObFPbFObEjbEjbEjbFQbEjaZdaZdaTobFRbgJaUvbFSaTobypbyqbFTbAlbFUbFVbFWbFXbEqbFYbFZbGabGbbGcbGdbGebGfbGgbGhbGibGjbGjbGkbGlbtbbGmbGnbGobGpbySbGqbGrbGsbGtbGubGvbGwbyWbAJbySaZWaZmaZmaahaahaahaahaahaahbgmbGxbGybGzbgmaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAacAacAaadaadbtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaaaadaaaaaaaaaaaaaaabGBbznbznbznbznbtHbtHbGCbGDbDibGEbGFbGGbGHbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbwMbwMbwMbGIbGJbGJbGJbwMbwMbwMbGKbGLbyfbGMbGNbGObGPbGQbFibGRbGSbGTbGUbGVbGWbGXbGYbFnbGZbFnbGYahybeebeebHabcnbecbHbbHcbFubHdbHebHfbHgbFubFubFubFubHhbHibHhbHjbHjbHkbHlbHjbHmaahaahaahaZdaZdaZHbEgbEgbHnbHobHpbEgbHqbHrbHsbHsbHsbHtbHubHvbHwbHwbHxbHybHzbHAbHBbEjahyahyaToaZjblDbHCaToaToahybxcbHDbHEbCqbHFbHGbHHbCqbHIbHJbHKbHLbHMbHNbHMbHObHPbHPbHQbHPbHPbHRbHSbHTbHUbHVbHWbHXbySbHYbHZbIabGtbGubGvbIbbyWbAJbySbbbbIcaZmaahaahaahaahaahaahbgmbIdbIebIfbgmaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaaaadaaaaaaaaaaahaahaahaahaahaahaahaahbtHbtHbtHbtHbtHbIgbIhbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbwMbIjbGJbGIbGJbGJbGJbGJbIkbwMbIlbfubImbInbIobIpbIqbIrbFibIsbItbIubIvbIubIwbIubIxbIybIzbIAbGYahyahybIBbecbcnbecbICbHcbIDbIEbIFbIFbIGbIHbIIbIJbFubIKbILbIMbHjbINbIObIPbHjaahaahaahaahaZdaZGaZHbEgbIQbIRbISbITbEgbIUbIVbIWbFJbFJbIXbIYbIZbJabJabJabJabJabJbbJcbJdahyahybJeaYGbetaUvbpPahyahybuobvPbvSbvSbJfbJgbvSbvSbJhbJibJjbJkbxqbJlbJmbJnbthbJobJpbJqbJrbJsbJtbJubJvbJwbJxbJybJzbJAbJBbJCbJDbJEbJFbJGbJHbJIbySbglbfpaZmaahaahaahaahaahaahbgmbgmbJJbJKbgmaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaabtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaaacAaaaaaaaahaahahyahyahyahyahyahyahyahyaahaahaahbtHbtHbJLbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbwMbJMbGJbJNbJObGJbGJbGJbIkbwMbJPbtUbJQbJRbJSbJTbJUbJVbFibGYbJWbJXbJYbJXbJXbJXbJZbJYbKabKbbKcahyahybKdbecbcnbecbKebHcbKfbKgbKhbKibKjbKhbKhbKkbFubKlbILbKmbHjbKnbKobKpbHjaahaahaahaahaZdbKqaZHbEgbIQbKrbKsbKtbEgbKubKvbKwbFJbKxbKybKzbKAbJabJabJabJabJabKBbKCbKDahyahybrGbKEbynbKFbrGahyahybvObKGbKHbKIbKJbKKbKLbKMbKNbKNbKObKPbKQbKRbKNbKSbKTbKUbKVbKSbKWbKWbKWbKWbKWbKXbKYbKZbLabySbySbySbySbySbySbySbySbySbySbLbbLcaZmbLdbLebLebLebLdbLdbLfbLgbLhbLibLfbLdaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaadbtEbGAbtGaadbtEbGAbtGaadbtEbGAbtGaadbtEbGAbtGaadacAaaabLjaahbLkbLkbLlbkQbkQbkQbLmbLkbLkahyaahaahaahbtHbLnbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbwMbLobLpbLqbGJbLrbGJbLsbwMbwMbLtbfubImbFibLubLvbLwbLxbLybGYbLzbLAbLBbLCbLCbLAbLAbLBbLDbLEbLFahyahybKdbLGbhqbecbKebHcbLHbLIbKhbLJbLKbLLbLMbLNbLObLPbLQbLRbLSbLTbLUbLVbHjaahaahaahaahaZdaZdaZHbEgbEgbLWbEgbEgbEgbLXbLYbLZbMabKxbMbbMcbMdbMebMfbMgbMhbKBbKBbMibKDahyahybvNbMjbgJaUvbvNahyahybMkbMlbMmbMnbMobMkbMkbMkbMkbMpbMqbMrbMsbMtbMsbKSbMubMvbMwbMxbKWbMybMzbMAbMBbMCbMDbMEbMFbMGbMHbMIbMJbMKbMLbMMbMNbMObMPbMQbMRbMSbMTbMUbMVbMWbMXbMYbMZbNabNbbNabNcbLdaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacOaaabtEbNdbtGaaabtEbNdbtGaaabtEbNdbtGaaabtEbNdbtGaaaaadaadbLjaahbLkbNebNfbNgbNfbNgbNfbNebLkahyahyaahaahbtHbNhbIibtHbtHaahaahaahaahaahaahaahaahaahaahaahbtHbtHbtHbwMbwMbwMbwMbwMbwMbwMbwMbwMbNibNjbfubyfbGMbNkbNlbNmbLxbNnbGYbNobNpbNpbNqbNqbNrbNqbNqbLDbNsbGYahyahybKdbecbDMbDNbKebNtbFubNubKhbNvbNwbNxbKhbNybFubNzbNAbNBbNCbNCbNCbNCbNCbNCbNCbNCaahaahaZdaZHbEgbNDbNEbNFbNGbNHbFJbFJbNIbFJbNJbEgbNKbNLbNMbNNbNObKBbNPbNQbNRbNSahyahyaTobNTbetbNUaToahyahybMkbNVbNWbNXbNYbNZbOabObbOcbOdbMqbMrbOebOfbOgbKSbOhbOibOjbOkbKWbOlbOmbOnbOobOpbOqbOrbOsbOtbOtbOubOvbOqbOtbOwbOtbOxbOybOzbOAbOBbOCbODbOEbOEbOFbOEbOGbOHbOIbOJbOKbLdaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaabtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaabtEbGAbtGaaaacAaaaaaaaahaahahyahyahyahyahyahyahyahyaahaahaahbtHbtHbJLbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbwMbJMbGJbJNbJObGJbGJbGJbIkbwMbJPbtUbJQbJRbJSbJTbJUbJVbFibGYbJWbJXbJYbJXbJXbJXbJZbJYbKabKbbKcahyahybKdbecbcnbecbKebHcbKfbKgbKhbKibKjbKhbKhbKkbFubKlbILbKmbHjbKnbKobKpbHjaahaahaahaahaZdbKqaZHbEgbIQbKrbKsbKtbEgbKubKvbKwbFJbKxbKybKzbKAbJabJabJabJabJabKBbKCbKDahyahybrGbKEbynbKFbrGahyahybvObKGbKHbKHbKIbKKbKLbKMbKNbKNbKObKPbKQbKRbKNbKSbKTbKUbKVbKSbKWbKWbKWbKWbKWbKXbKYbKZbLabySbySbySbySbySbySbySbySbySbySbLbbLcaZmbLdbLebLebLebLdbLdbLfbLgbLhbLibLfbLdaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaadbtEbGAbtGaadbtEbGAbtGaadbtEbGAbtGaadbtEbGAbtGaadacAaaabLjaahbLkbLkbLlbkQbkQbkQbLmbLkbLkahyaahaahaahbtHbLnbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbwMbLobLpbLqbGJbLrbGJbLsbwMbwMbLtbfubImbFibLubLvbLwbLxbLybGYbLzbLAbLBbLCbLCbLAbLAbLBbLDbLEbLFahyahybKdbLGbhqbecbKebHcbLHbLIbKhbLJbLKbLLbLMbLNbLObLPbLQbLRbLSbLTbLUbLVbHjaahaahaahaahaZdaZdaZHbEgbEgbLWbEgbEgbEgbLXbLYbLZbMabKxbMbbMcbMdbMebMfbMgbMhbKBbKBbMibKDahyahybvNbMjbgJaUvbvNahyahybMkbMlbMmbKJbOcbMkbMkbMkbMkbMpbMqbMrbMsbMtbMsbKSbMubMvbMwbMxbKWbMybMzbMAbMBbMCbMDbMEbMFbMGbMHbMIbMJbMKbMLbMMbMNbMObMPbMQbMRbMSbMTbMUbMVbMWbMXbMYbMZbNabNbbNabNcbLdaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacOaaabtEbNdbtGaaabtEbNdbtGaaabtEbNdbtGaaabtEbNdbtGaaaaadaadbLjaahbLkbNebNfbNgbNfbNgbNfbNebLkahyahyaahaahbtHbNhbIibtHbtHaahaahaahaahaahaahaahaahaahaahaahbtHbtHbtHbwMbwMbwMbwMbwMbwMbwMbwMbwMbNibNjbfubyfbGMbNkbNlbNmbLxbNnbGYbNobNpbNpbNqbNqbNrbNqbNqbLDbNsbGYahyahybKdbecbDMbDNbKebNtbFubNubKhbNvbNwbNxbKhbNybFubNzbNAbNBbNCbNCbNCbNCbNCbNCbNCbNCaahaahaZdaZHbEgbNDbNEbNFbNGbNHbFJbFJbNIbFJbNJbEgbNKbNLbNMbNNbNObKBbNPbNQbNRbNSahyahyaTobNTbetbNUaToahyahybMkbNVbNWbNXbNYbNXbOabMnbMobOdbMqbMrbOebOfbOgbKSbOhbOibOjbOkbKWbOlbOmbOnbOobOpbOqbOrbOsbOtbOtbOubOvbOqbOtbOwbOtbOxbOybOzbOAbOBbOCbODbOEbOEbOFbOEbOGbOHbOIbOJbOKbLdaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaaaadaaaaaaaaaaadaadaadaaaaaaaaaaaaaaaaaaaaaaadaaaaadaadaahaahaahbOLbOMbONbOObOPbOQbOLbORahyahyaahaahbtHbOSbIibOTbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbOUbOVbOWbOXbOYbOZbzHbPabPbbPcbPdbPebPfbPgbImbInbIobPhbPibLxbPjbGYbPkbPlbPmbNpbNpbNpbNpbNpbLDbPnbGYahyahybKdbecbcnbecbPobHcbFubPpbKhbPqbPrbPsbKhbPtbFubPubPvbPwbNCbPxbPybPzbPAbNCbPBbNCbNCaahaZdaZHbEgbPCbPDbPEbPEbPFbPEbPEbPGbFJbPHbEgbPIbPJbPKbPLbPMbPNbPIbPJbPKbEjbPObPPaToaZjblDbHCaToaToahybMkbPQbPRbPSbPTbPUbPVbPWbPXbPYbPZbQabQbbQcbQdbKSbQebQfbQgbQhbKWbQibQjbQkbMBbQlbQmbQnbQobQpbQqbQrbQsbQtbQpbQubQvbQwbMPbMQbQxbQybQzbMUbMVbQAbQBbOJbQCbQDbQEbOJbOJbLdaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczaczacAaczaczacOacAaadaadaadaadaaaaaaaaaaadaadaadacOaadaaaaahaahaahbNgbQFbQGbQHbQHbQIbNgahyahyahyaahaahbtHbQJbQKbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQMbQNbQObQPbQQbQRbQSbQTbQUbQVbQWbQXbQYbQZbyfbJRbRabRbbRcbRdbRebGYbRfbRgbRhbNpbNpbRibRjbRkbLDbRlbGYahyahybKdbecbcnbRmbRnbRobRpbRqbRrbRsbRtbRubRvbRwbFubRxbPvbRybNCbRzbRAbRBbRBbRCbRDbREbNCaahaZdaZHbEgbRFbRGbFJbRHbRIbFJbFJbFJbFJbRJbEgbRKbRLbRMbRNbRObRPbRQbRRbRSbRTbRUbRUbRVbRWbetaUvbRXaToahybMkbRYbRZbSabNWbSbbScbSdbSebSfbSgbShbSibMpbSjbKSbSkbQfbSlbSmbKWbKWbKWbKWbKWbSnbSobSpbSpbSpbSpbSpbSqbSrbSqbSqbSqbSqbSqbSsbStbSubSvbSwbSwbSwbLdbLdbSxbSybSzbSxbLdbLdaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahbOLbSAbQGbQHbQHbSBbOLbORahyahyaahaahbtHbSCbIibSDbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbSEbSEbSFbSGbSEbSHbSIbSJbSKbSLbSMbSNbSObSPbSLbSLbSLbSLbSLbSLbSQbSRbSQbSSbSSbSQbSTbSQbSUbSQbGYahyahybKdbecbcnbSVbbobbobFubFubFubFubFubFubSWbFubFubSXbSYbSZbNCbTabTbbTcbTdbNCbTebTfbNCaahaZdaZHbEgbFLbTgbEgbEgbThbTibTibTibTibEgbEgbTjbTkbTlbTmbTnbTkbTlbTkbTobTpaUvaUvaUvaUvbTqbTrbTsaToahybMkbTtbTubTvbTubTwbScbTxbTybTzbTAbTBbTCbTDbTEbKSbTFbTGbTHbTIbTJbTKbTLbTMbTNbTObTPbTQbTRbTSbTTbSpbTUbTVbTWbTXbTYbTZbSqbUabUbbSubUcbUdbUebSuaahaahbSxbUfbUgbSxaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From befb0f2407a886de11094de84e6f9139bda5de16 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Tue, 22 Dec 2015 03:21:46 +0000 Subject: [PATCH 12/26] add missing emergency shutter to new window --- maps/polaris-1.dmm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maps/polaris-1.dmm b/maps/polaris-1.dmm index 2c89508853..b75f72370f 100644 --- a/maps/polaris-1.dmm +++ b/maps/polaris-1.dmm @@ -4692,7 +4692,7 @@ "bMl" = (/obj/structure/sign/chemistry,/turf/simulated/wall/r_wall,/area/medical/chemistry) "bMm" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southright{name = "Chemistry Desk"; req_access = list(33)},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/northright{name = "Chemistry Desk"},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "chemcounter"; name = "Pharmacy Counter Shutters"; opacity = 0},/turf/simulated/floor/tiled/white,/area/medical/chemistry) "bMn" = (/obj/machinery/button/remote/blast_door{id = "chemwindow"; name = "Pharmacy Windows Shutter Control"; pixel_x = 0; pixel_y = 24; pixel_z = 0},/obj/machinery/light_switch{pixel_x = 12; pixel_y = 25},/obj/effect/floor_decal/corner/beige{dir = 5},/obj/structure/table/reinforced,/obj/item/weapon/packageWrap,/obj/item/weapon/hand_labeler,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the 'Space' from Space Cleaner and written in Chemistry. Scrawled on the back is, 'Okay, whoever filled this with polytrinic acid, it was only funny the first time. It was hard enough replacing the CMO's first cat!'"; name = "Chemistry Cleaner"},/turf/simulated/floor/tiled/white,/area/medical/chemistry) -"bMo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/medical/chemistry) +"bMo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/medical/chemistry) "bMp" = (/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "bMq" = (/obj/effect/floor_decal/corner/pink{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "bMr" = (/obj/effect/floor_decal/corner/pink{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) From 7cf839b1d7fd3237a603917a6201d7585bc3b163 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Tue, 22 Dec 2015 03:56:51 +0000 Subject: [PATCH 13/26] fix #646 --- icons/obj/food.dmi | Bin 92319 -> 92329 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/food.dmi b/icons/obj/food.dmi index 1187db615dcea827859d628ddb8c9a65434aec5e..967f92ede30cde0ac17c5f75f491305f75c4ce7b 100644 GIT binary patch delta 842 zcmV-Q1GW60(FLi|1%R{xabG5-D_2`>Fw{FueLaEUL@MRR;{E}G+ubI}~Xubhj%j>eP9EyW+;z{cl@ zhzJ9~7*<87llX7jv70qF{8#(~1OkCTAn0SbodIZ1{97W#-^;vuWp95ULEk}~i)O^R zXhxiiX2iK@Mx2XIacc}f%Rc|Ha~^hxztZ|IE307h{vr&c=k|#BPx>H1(uK%=#av|v zKyUORJ*SodI)6@?>nXbP%%__K0)aqqb|S_Abb=!OwbfM=RhR)>#J{YpqQ}L5+7|;Q zfMZ1_jun~Eg{WP`A7Fn(yq*P_!^BiWfj}S-2;7B+SKI&q0uM< z0)apv5OhGh2EbYT4;(nmqmM5qJ1dh3SN;F??%1V`Fb?DRa~XfaNdlom%pk@=2qaKC z1q7G&4`?RsQaXxpXdNU|OG|^BWEY$Yb+MZn0y-E7p^CdhhM;yjN*h8FdP9@zQ0_{q zX^o({knd-_gO_)Ee)qob@4c5^=)0|dcNzZD?|_e+Q*yTeBza%|W+b3!GAJ_==vy5C z004sx>;lNn<}#djD(#%+BPDx5W)-{neTz^E6P>lBxHN z|I_}n!k>tRRI@s=n?0>Ah4tYuptFm%60y)-P6+^jvG#x8LxA~o!8rMRd?oxF-@lEl z)vuDN8)hV+YPli1+4H&pUVr@RbqD|efWdBb4?sR$F!qZjUxdG_lBpZkieS+N0;9Eog z4CwjZvg1Cd@CN|kHn<3ANQ6HC0ON1y0ssI2j6Vth001Ts1poj56Nmx;0DuYf3rY=i UV~WaOZ~y=R07*qoM6N<$g8Vm*rvLx| delta 832 zcmV-G1Hb&K(FLE;1%R{xabZIP@x{4ljxWwdbNt>s7w7utKU>jwQn{u0102}+91#&= z02srn2z3(wZ98_e=7#@@e}+IH5C{Z)47W1??TLR&g!p@zSFh~tBj|rSh;z}5I2X-` zbJ5JXelE`S&+j2_jR9!c=RbDN!w&IRTK{Eb6>Q#LgkkjD9ufaZA0$Y+5ZSMotLy;i zjXtF3)G|Ql&na^~MR%V0)RRCU5D3mr#2A21P{hBsx{9I-Gk}Zumz7oYxcE=|VxR8WlItGe}R0(n{zx zeZR)L~JOk0D!N3+Xgt%G;1s*W}NA%Nl7ZW%b;pg<0WmsdDk>46 Date: Tue, 22 Dec 2015 05:03:57 -0500 Subject: [PATCH 14/26] Clarification on mercenary shuttle approaching message, and fixes typo on text when the drone event ends. --- code/controllers/shuttle_controller.dm | 2 +- code/modules/events/rogue_drones.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/controllers/shuttle_controller.dm b/code/controllers/shuttle_controller.dm index 0262558f2f..be9688b09b 100644 --- a/code/controllers/shuttle_controller.dm +++ b/code/controllers/shuttle_controller.dm @@ -287,7 +287,7 @@ var/global/datum/shuttle_controller/shuttle_controller ) VS.announcer = "Colony Automated Radar Array" - VS.arrival_message = "Attention. Unidentified object with no signature detected approaching the colony." + VS.arrival_message = "Attention. Unidentified object approaching the colony." VS.departure_message = "Attention. Unidentified object exiting local space. Unidentified object expected to escape Kara gravity well with current velocity." VS.interim = locate(/area/skipjack_station/transit) diff --git a/code/modules/events/rogue_drones.dm b/code/modules/events/rogue_drones.dm index ee748d6f8c..f1ea3593f2 100644 --- a/code/modules/events/rogue_drones.dm +++ b/code/modules/events/rogue_drones.dm @@ -53,6 +53,6 @@ num_recovered++ if(num_recovered > drones_list.len * 0.75) - command_announcement.Announce("The drones that were malfunctioning has been recovered safely.", "Rogue drone alert") + command_announcement.Announce("The drones that were malfunctioning have been recovered safely.", "Rogue drone alert") else command_announcement.Announce("We're disappointed at the loss of the drones, but the survivors have been recovered.", "Rogue drone alert") From e443ffd06a8083fde25fcf61c4802332cddb2023 Mon Sep 17 00:00:00 2001 From: Datraen Date: Tue, 22 Dec 2015 15:04:23 -0500 Subject: [PATCH 15/26] Changes time to respawn down to 15 minutes. --- code/modules/mob/mob.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index d30e23765e..0f41b859e5 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -406,8 +406,8 @@ var/deathtimeseconds = round((deathtime - deathtimeminutes * 600) / 10,1) usr << "You have been dead for[pluralcheck] [deathtimeseconds] seconds." - if (deathtime < 18000) - usr << "You must wait 30 minutes to respawn!" + if (deathtime < (15 * 600)) + usr << "You must wait 15 minutes to respawn!" return else usr << "You can respawn now, enjoy your new life!" From 0b4ed44ce4244f6781cb104520b6fae8d8f74a84 Mon Sep 17 00:00:00 2001 From: Datraen Date: Tue, 22 Dec 2015 15:09:25 -0500 Subject: [PATCH 16/26] Fixes admin verb, also adds changelog. --- code/modules/admin/verbs/randomverbs.dm | 4 +-- html/changelogs/Datraen.yml | 36 +++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 html/changelogs/Datraen.yml diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index ba00a930b3..e9772fe907 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -278,8 +278,8 @@ Ccomp's first proc. G.can_reenter_corpse = 1 G:show_message(text("\blue You may now respawn. You should roleplay as if you learned nothing about the round during your time with the dead."), 1) - log_admin("[key_name(usr)] allowed [key_name(G)] to bypass the 30 minute respawn limit") - message_admins("Admin [key_name_admin(usr)] allowed [key_name_admin(G)] to bypass the 30 minute respawn limit", 1) + log_admin("[key_name(usr)] allowed [key_name(G)] to bypass the 15 minute respawn limit") + message_admins("Admin [key_name_admin(usr)] allowed [key_name_admin(G)] to bypass the 15 minute respawn limit", 1) /client/proc/toggle_antagHUD_use() diff --git a/html/changelogs/Datraen.yml b/html/changelogs/Datraen.yml new file mode 100644 index 0000000000..b342e21d3d --- /dev/null +++ b/html/changelogs/Datraen.yml @@ -0,0 +1,36 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Datraen + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Respawn time moved down from 30 minutes to 15 minutes." From 30acc6de7e2255a2577a4018a5ec17e5421ac7d9 Mon Sep 17 00:00:00 2001 From: woodratt Date: Tue, 22 Dec 2015 22:51:36 -0800 Subject: [PATCH 17/26] 1.3.7. Fixes and Adjustments - Rough fix in place for the holodeck thunder dome. - Jukebox added to the coffee shop and bar. - Latex gloves added to Xenoflora. - Insulated gloves added to Engineering Outpost. - Connected the main airlocks on the mining and research outposts to the distro. - Changes 'Vir Regional Spaceport' to ' Vir Interstellar Spaceport' - Fixed another name issue in reference to crew transfer shuttle. --- .../emergency_shuttle_controller.dm | 6 +- code/game/area/Space Station 13 areas.dm | 1 + code/modules/shuttles/shuttle_emergency.dm | 2 +- maps/polaris-1.dmm | 12 +-- maps/polaris-4.dmm | 2 +- maps/polaris-5.dmm | 87 ++++++++++--------- 6 files changed, 58 insertions(+), 52 deletions(-) diff --git a/code/controllers/emergency_shuttle_controller.dm b/code/controllers/emergency_shuttle_controller.dm index b0f930786c..33a0ee88e0 100644 --- a/code/controllers/emergency_shuttle_controller.dm +++ b/code/controllers/emergency_shuttle_controller.dm @@ -48,7 +48,7 @@ var/global/datum/emergency_shuttle_controller/emergency_shuttle if (evac) emergency_shuttle_docked.Announce("The Emergency Shuttle has docked with the station at docks one and two. You have approximately [round(estimate_launch_time()/60,1)] minutes to board the Emergency Shuttle.") else - priority_announcement.Announce("The scheduled shuttle to the Vir Regional Spaceport has docked with the station at docks one and two. It will depart in approximately [round(emergency_shuttle.estimate_launch_time()/60,1)] minutes.") + priority_announcement.Announce("The scheduled shuttle to the Vir Interstellar Spaceport has docked with the station at docks one and two. It will depart in approximately [round(emergency_shuttle.estimate_launch_time()/60,1)] minutes.") //arm the escape pods if (evac) @@ -94,7 +94,7 @@ var/global/datum/emergency_shuttle_controller/emergency_shuttle //reset the shuttle transit time if we need to shuttle.move_time = SHUTTLE_TRANSIT_DURATION - priority_announcement.Announce("The regularly scheduled shuttle to the Vir Regional Spaceport will arrive in in approximately [round(estimate_arrival_time()/60)] minutes. Those leaving should proceed to docks one and two.") + priority_announcement.Announce("The regularly scheduled shuttle to the Vir Interstellar Spaceport will arrive in in approximately [round(estimate_arrival_time()/60)] minutes. Those leaving should proceed to docks one and two.") //recalls the shuttle /datum/emergency_shuttle_controller/proc/recall() @@ -111,7 +111,7 @@ var/global/datum/emergency_shuttle_controller/emergency_shuttle A.readyreset() evac = 0 else - priority_announcement.Announce("The scheduled crew transfer has been cancelled.") + priority_announcement.Announce("The scheduled transfer shuttle has been cancelled.") /datum/emergency_shuttle_controller/proc/can_call() if (!universe.OnShuttleCall(null)) diff --git a/code/game/area/Space Station 13 areas.dm b/code/game/area/Space Station 13 areas.dm index 167ee79fd0..6839c90beb 100755 --- a/code/game/area/Space Station 13 areas.dm +++ b/code/game/area/Space Station 13 areas.dm @@ -1480,6 +1480,7 @@ area/space/atmosalert() /area/holodeck/source_thunderdomecourt name = "\improper Holodeck - Thunderdome Court" + requires_power = 0 sound_env = ARENA /area/holodeck/source_courtroom diff --git a/code/modules/shuttles/shuttle_emergency.dm b/code/modules/shuttles/shuttle_emergency.dm index cb6b6d5ece..c6d7996fc9 100644 --- a/code/modules/shuttles/shuttle_emergency.dm +++ b/code/modules/shuttles/shuttle_emergency.dm @@ -30,7 +30,7 @@ if (emergency_shuttle.evac) priority_announcement.Announce("The Emergency Shuttle has left the station. Estimate [round(emergency_shuttle.estimate_arrival_time()/60,1)] minutes until the shuttle docks at [boss_name].") else - priority_announcement.Announce("The Crew Transfer Shuttle has left the station. Estimate [round(emergency_shuttle.estimate_arrival_time()/60,1)] minutes until the shuttle docks at [boss_name].") + priority_announcement.Announce("The Scheduled Transfer Shuttle has left the station. Estimate [round(emergency_shuttle.estimate_arrival_time()/60,1)] minutes until the shuttle docks at [boss_name].") /datum/shuttle/ferry/emergency/can_launch(var/user) if (istype(user, /obj/machinery/computer/shuttle_control/emergency)) diff --git a/maps/polaris-1.dmm b/maps/polaris-1.dmm index b75f72370f..577a86287d 100644 --- a/maps/polaris-1.dmm +++ b/maps/polaris-1.dmm @@ -2843,7 +2843,7 @@ "bcI" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bcJ" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bcK" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) -"bcL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) +"bcL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bcM" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bcN" = (/obj/structure/table/marble,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 8; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "bcO" = (/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) @@ -2884,7 +2884,7 @@ "bdx" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green,/obj/machinery/light_switch{dir = 2; name = "light switch "; pixel_x = -36; pixel_y = 0},/obj/structure/flora/pottedplant{icon_state = "plant-xmas"; light_color = "#FFC58F"; light_power = 1; light_range = 2; luminosity = 1; name = "Potted Christmas Tree"},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bdy" = (/obj/structure/bed/chair/wood{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bdz" = (/obj/structure/table/woodentable,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) -"bdA" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafe"; dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) +"bdA" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafe"; dir = 1},/obj/structure/sign/christmas/lights,/obj/machinery/media/jukebox,/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bdB" = (/obj/structure/bed/chair/wood{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bdC" = (/obj/structure/table/woodentable,/obj/machinery/light,/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) "bdD" = (/obj/structure/bed/chair/wood{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/simulated/floor/wood,/area/crew_quarters/coffee_shop) @@ -4781,7 +4781,9 @@ "bNW" = (/turf/simulated/floor/tiled/white,/area/medical/chemistry) "bNX" = (/obj/effect/floor_decal/corner/beige{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/chemistry) "bNY" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/beige{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/chemistry) +"bNZ" = (/obj/effect/floor_decal/corner/green{dir = 9},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/structure/table/standard,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) "bOa" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/screwdriver,/obj/effect/floor_decal/corner/beige{dir = 5},/obj/item/device/radio/intercom{broadcasting = 0; canhear_range = 5; frequency = 1487; icon_state = "medintercom"; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = 21},/turf/simulated/floor/tiled/white,/area/medical/chemistry) +"bOb" = (/obj/structure/sign/christmas/lights{dir = 4},/obj/machinery/media/jukebox,/turf/simulated/floor/wood,/area/crew_quarters/bar) "bOc" = (/obj/machinery/smartfridge/secure/medbay{req_one_access = list(33,66)},/turf/simulated/wall/r_wall,/area/medical/chemistry) "bOd" = (/obj/effect/floor_decal/corner/pink{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "bOe" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/steel,/area/medical/medbay_emt_bay) @@ -5470,7 +5472,6 @@ "cbl" = (/turf/simulated/floor/tiled/hydro,/area/rnd/xenobiology/xenoflora_storage) "cbm" = (/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor/tiled/hydro,/area/rnd/xenobiology/xenoflora_storage) "cbn" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/light,/turf/simulated/floor/tiled/hydro,/area/rnd/xenobiology/xenoflora_storage) -"cbo" = (/obj/effect/floor_decal/corner/green{dir = 9},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/structure/table/standard,/obj/item/weapon/storage/box/syringes,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) "cbp" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/item/device/radio/intercom{layer = 4; name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) "cbq" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) "cbr" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) @@ -6930,7 +6931,6 @@ "cDp" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) "cDq" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar) "cDr" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"cDs" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "cDt" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "cDu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "cDv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) @@ -9703,7 +9703,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybXsbXtbXubXvbXsahyahyahyaahaahaahaahbtHbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbXwbXxbXybXzbXAbXBbXCbXDbXEbXFbXGbXHbXIbXJbXKbXLbXMbXNbSLbXObUBbUBbXPbXQbXRbXRbXRbXSbXTbUEahyahybXUbXVbhqbXWbamahybXXbXYbXZbYabYbbYcbYdbYebYfbYgbYhbYibYjbYjbYkbYlbYmbYnbYnbYobNCaahaZdbYpbURbYqbTkbTlbWJbYrbWJbYrbWJbYrbWJbYsbTkbTlbUZbYtbVbbVcbTkbTlbYubURahyahyaTobYvbetbYwaToahyahyahyahyahyahyahyahyahyahybKNbKNbYxbYybKNbKNaahaahaahaahaahaahbTJbTJbTJbTJbTJbYzbYAbSpbSpbSpbSpbSpbSqbSqbSqbSqbSqbSqbSqbYBbYCbSubSubSubSuaahaahaahbSxbYDbVObYEbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybYFbYGbYHbYIbYFahyahyahyaahaahaahaahbtHbYJbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbYKbYLbYMbYNbYObYPbXMbYQbYRbYSbYTbYUbYRbYQbXMbXMbXMbYVbSLbWlbWmbWlbYWbUBbWlbWmbWlbYXbYYbUEbYZbZabeebecbDMbZbbamahybZcbZdbZebZfbZgbZhbZibZjbUGbWvbZkbZlbZmbZnbZobZpbZqbZrbZsbZtbNCaahaZdbYpbURbURbZubTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbZvbTjbZwbTlbTkbTjbZybZxahybJeaUvbetaUvbJeahyahyahyahyahyahyahyahyahyahyahybZzbZAbZBbZzaahaahaahaahaahaahaahbZCbZDbZEbZFbZGbTObTPbZHbZIbZJbZKbZLaahaahaahaahaahaahbZMbZNbZObZPbZQbZMaahaahaahaahbSxbZRbZSbZTbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybZUbZVbZWbZUbZUahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbZZcaacabcacbSEcadcaecaecaecafcagcahcaicaecaecaecajcakbSLbUybUybUybUBbUBbUybUybUybYXcalcamcanbecbecbecbcnaZzbamahycaocapbZecaqcarcarcasbULbUGbWvcatcaucavcavcawcaxcaybYnbYncazbNCaahaZdbYpcaAbURcaBbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkcaCcaDcaEcaFcaGcaHcaIahyahybrGaUvbetcaJbrGahyahyahyahyahyahyahyahyahyahyahycaKcaLcaMcaNaahaahaahaahaahaahaahbZCcaOcaPcaQcaRcaScaTcaUcaVcaWcaXbZLaahaahaahaahaahaahbZMcaYcaZcbacbbbZMaahaahaahaahcbccbdcbecbfcbcaahahyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahycbgcbhcbicbjcbgahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEcbkcblcbmcbnbSEcbocbpcbqcbrcbscbtcbucbvcbwcbxcbycbzcbAbSLcbBcbCbUBbUBbUBbUBcbDbUBcbEcbFcamcancbGcbHbecbcnaZzcbIahybUGcbJcbKcbLcbMbULcbNbUGcbOcbPcbQcbObNCcbRcbScbTcbUcbVcbWcbXbNCaahaZdbYpaZGbURccebTkbYsbTmbTnbTkbTlbTkcbZbTmbTlbTkbTlccabTnccbbTlbTkccccaIahyahybrGccdbgJaUvbrGahyahyahyahyahyahyahyahyahyahyahyccBccfccgcaNaahaahaahaahaahaahaahbZCcchcciccjbZGcckcclbZHccmccnccobZLaahaahaahaahaahaahbZMbZNbZMbZMbZMbZMaahaahaahaahcbcccpccqccrccscctccuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahycbgcbhcbicbjcbgahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEcbkcblcbmcbnbSEbNZcbpcbqcbrcbscbtcbucbvcbwcbxcbycbzcbAbSLcbBcbCbUBbUBbUBbUBcbDbUBcbEcbFcamcancbGcbHbecbcnaZzcbIahybUGcbJcbKcbLcbMbULcbNbUGcbOcbPcbQcbObNCcbRcbScbTcbUcbVcbWcbXbNCaahaZdbYpaZGbURccebTkbYsbTmbTnbTkbTlbTkcbZbTmbTlbTkbTlccabTnccbbTlbTkccccaIahyahybrGccdbgJaUvbrGahyahyahyahyahyahyahyahyahyahyahyccBccfccgcaNaahaahaahaahaahaahaahbZCcchcciccjbZGcckcclbZHccmccnccobZLaahaahaahaahaahaahbZMbZNbZMbZMbZMbZMaahaahaahaahcbcccpccqccrccscctccuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybXsccvccwccxbXsahyahyaahaahaahbZXbZXbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbSEccycczbSEbSEbSLbSLbSLbSLbSLccAbSLbSLbSLccEccCccDbSLbSLbUEbUEcdPccFccFccGbUEbUEbUEbUEbUEbYZbZabeeccHblnblmbeeahybUGbUGbUGbUGbUGbUGbUGbUGccIccJccKccLbNCbNCccMbNCbNCbNCccNccObNCccPaZdccQaZdbURccRbTlbUZccSbVbbVcccTccUbVbbVaccVccWbUZbVabWOccXbTkbTlcbYcaIahyahybrGaUvbetaUvbvNahyahyahyahyahyahyahyahyahyahyahyccBccYccZcaNaahaahaahaahaahaahaahbZCbZCbZCbZCbZCcdacdbbZLbZLbZLbZLbZLaahaahaahaahaahaahbZMbZNbZMaahaahaahaahaahaahaahcbccdccddcdecdfcdgcdhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybYFcdiccwcdjbYFahyahyaahaahaahbZXcdkcdlcdmbZXbZXbZXbZXaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbSEbSEbSEaahaahaahaahbZXcdncdobZXahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyaZybecbcnaZzcbOcbOcbOcbOcdpcdqcdrcdscdtcducdvcdwcdxcdycdzcdAcdBcdCcdDcbOcbOcbOcbOcbOcdEcdFcdGbURbURbTkccUbVbbYtccVcdHbUZbYtbWObVccdIccUcdJcdKcdLcdMcdNcdOcdSahyahybrGcdQbetcdRaTocaNahyahyahyahyahyahyahyahyahyahycelcdTcdUcaNaahaahaahaahaahaahaahaahaahaahaahbZMcdVcdWbZMaahaahaahaahaahaahaahaahaahaahbZMbZNbZMaahaahcbccbccbccbccbccbccdXcdXcbccbccbccbcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahbZUbVSbVQbZUcdYccwcdZbZUbVSbVQbZUbZUbZXbZXceacebceccedceecefbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbZXcegcehceiceiceiceiceiahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahybaicejbjSaZzcekceLcemcbOcenceocepceocencencenccJccKcencencencdBceqcercescbOcetceLceucevcewcexceycezceAceBceCceDceAceEceAceFceCceBceGceBceCceHceIbTkbTlceJbURahyahybvNaUvbetaUvceKcaNcgqceMceMceMceMceMceMceMceMceNcaNceOcePcaNbZMbZMbZMbZMaahaahaahaahaahbZMbZMbZMceQceRbZMaahaahaahaahaahaahaahaahaahbZMbZMbZNbZMaahaahcbcceSceTceTceTceTceUceUceVceTceTceWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9729,7 +9729,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMczrczsczrczscztczuczvczwczxczyczzcxgcArczBczCczDczEcuXcuXczFczGczGczGczGczGczGczGczGczGczGczHcxqcxrcxrcxrcxrcxrczIczIczJcxrcxqczKcxqcxrczLczMczNczOczPcwhcwhcwhcwhcwhczQczQczQcwhcwhcwhcwhczRcwhahyahyahyahyahycxzczSczScABczUczVczWczXczYcAIcAacAacxzaahahyahyahyahyaahaahczicAbcziaahaahaahahyahyahyahyahycqvcAccAdcAecqvahyahyahyahyahyahyahyahyahyahyahyahyaahcrQcAfcsYcsYcsYcvucvucsYcvucvucsYcxRczncxOcxPcAgcAhcrQaahaahaahaahaahaahcAicAjcAkcAlcAicAmcAncAocApcAqcBbcAoaahaahaahaahaahaahaahcAscAtcAucAvcAscAwcAxcAycAzcAAcBAcAyaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcACcADcACcAEcAFcxgcxgcvScvTcAGczzcAHcBTcAJcAKcALcAMcuXcxqcANcxqcxqcxrcxrcxrcxrcxrcxrcxrcxrcAOcxrcxraahaahaahcxrcAPcAPcAPcxrcxrcxrcxrcwdcwdcAQcARcAScwdcwdaahaahaahcwhcwhczQcwhcwhaahaahcwhczRcwhaahahyahyahyahycxzcATczecAUcAVczeczeczgcAWcAXczecAYcxzaahahyahyaahaahaahaahczicAZcziaahaahaahcBacCScBccBacqvcqvcBdcBecBfcqvcBgcBgcBgcBgcBgahyahyahyahyahyahyaahaahcrQcBhcvucsYcsYcBicxPcsYcxPcBjcsYcxRczncxOcBkcxOcBlcrQaahaahcAicAicAicAicAicBmcBncBocAiczpcBpcAocBqcBrcBscAocAocAocAocAocAscAscAscAscBtcBucBvcAscBwczqcAycBxcBycBzcAycAycAycAycAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcEBcyCcBBcBCcxgcxgcxgcBDcvTcAGczzcBEcuXcvrcvbcuXcuXcuXcxrcANcBFcxrcxraahaahaahaahaahaahcxrcBGcBHcxraahaahaahcBIcBIcBJcBIcBIaahaahaahaahcwdcBKcxucxvcwdaahaahaahaahaahcwhczQcwhaahaahaahcwhczRcwhaahaahaahahyahycxzcxzcxzcxzcBLcBMcBNcBOcBPcxzcxzcxzcxzaahaahaahaahaahaahaahczicAbczicziczicBacBacBQcBRcBacBScEIcrOcrPcqycBUcBgcBVcBWcBXcBgcBgahyahyahyahyahyaahaahcrQcBYcxPcsYcsYcxQcxQcsYcxQcxQcsYcxRczncxQcxQcxQcwAcrQaahaahcAicBZcCacCbcAicAicCccAicAicCdcvAcAocAocCecAocAocCfcCgcChcAocCicCjcCkcAscAscClcAscAscvHcCmcAycAycCncAycAycCocCpcCqcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcACcADcACcCrcyFcxgcxgcvScvTcAGczzcCscCtcCucCvcCwcCxcCycCzcCAcxrcxraahaahaahaahaahaahaahcxrcCBcCCcxraahaahaahcBIcCDcCEcCFcBIcCGcCGcCGaahcwdcCHcCIcCJcCKcCKcCKcCKcCKcCKcCKcCLcCKcCKaahahycwhczRcwhaahaahaahaahahycxzcCMcCNcABcCOczVcCPcCQcCRcEKcCTcCUcxzaahaahaahaahaahaahaahczicCVcCWcCXcCXcCYcCZcDacDbcDccDdcDecDfcDgcDhcDicBgcDjcDkcDlcDmcBgcBgcBgcBgcBgcBgcBgcBgcrQcDncxQcDocwycwycwycwycwycwycwycDpcDqcwscDrcsYcDscrQaahaahcAicDtcDucDvcDwcDvcDxcDycDzcDAcwIcDBcDCcDDcDEcDFcDEcDGcDHcAocDIcDJcDKcDLcDKcDMcDNcDOcwWcDAcDPcDQcDRcDScDTcDScDUcDVcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcACcADcACcCrcyFcxgcxgcvScvTcAGczzcCscCtcCucCvcCwcCxcCycCzcCAcxrcxraahaahaahaahaahaahaahcxrcCBcCCcxraahaahaahcBIcCDcCEcCFcBIcCGcCGcCGaahcwdcCHcCIcCJcCKcCKcCKcCKcCKcCKcCKcCLcCKcCKaahahycwhczRcwhaahaahaahaahahycxzcCMcCNcABcCOczVcCPcCQcCRcEKcCTcCUcxzaahaahaahaahaahaahaahczicCVcCWcCXcCXcCYcCZcDacDbcDccDdcDecDfcDgcDhcDicBgcDjcDkcDlcDmcBgcBgcBgcBgcBgcBgcBgcBgcrQcDncxQcDocwycwycwycwycwycwycwycDpcDqcwscDrcsYbObcrQaahaahcAicDtcDucDvcDwcDvcDxcDycDzcDAcwIcDBcDCcDDcDEcDFcDEcDGcDHcAocDIcDJcDKcDLcDKcDMcDNcDOcwWcDAcDPcDQcDRcDScDTcDScDUcDVcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcDWcDXcDWcDYcDZcEacEbcEccEdcEeczzcEfcCtcEgcEhcEicEjcEkcCtcxrcxraahaahaahaahaahaahaahaahcxrcElcEmcxraahaahaahcBIcCDcCEcCFcBIcEncEocCGcCGcwdcEpcEqcErcCKcEscEtcEucEvcEwcEwcEwcExcCKahyahycwhczRcwhaahaahaahaahaahcxzcATczecEycAVczecEzczgcEAcFHczeczecxzaahaahaahaahaahaahaahczicECcEDcEEcEDcBacEFcEGcEHcFXcEJcGfcELcEMcENcEOcEPcEQcERcERcEScETcEUcEUcEVcEWcEXcEXcEYcEZcxTcxTcxTcxTcxTcFacFacFacxTcxTcFbcFccFdcFdcFdcFecrQaahaahcAicFfcFgcFhcFicFjcFkcFlcAicyccydcAocFmcFncFocFpcFqcFrcFscAocFtcFucFvcFwcFxcFycFzcAscyscytcAycFAcFBcFCcFDcFEcFFcFGcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcGjcFIcFJcFKcDZcxgcxgcvScFLcyHcFMcFNcFOcFPcFQcFRcFScFTcCtaahaahaahaahaahaahaahaahaahaahcxrcElcFUcxraahaahaahcBIcFVcCEcCFcBIcFWcGpcFYcFZcwdcGacGbcGccCKcGdcGecEwcEwcEwcEwcEwcEwcCKahyahycwhczRcwhaahaahaahaahaahcxzcxzcxzcxzcGqczecGgcGhcGicGBczecGkcxzaahaahaahaahaahaahaahczicECcGlcziczicBacGmcGncGocGScEJcHccGrcrPcqycGscBgcGtcGucGvcGwcBgcBgcBgcGxcGycBgcBgcBgcrQcBhcvucsYcGzcGAcGAcGAcGAcGAcGzcxRctbcFdcFdcFdcFecrQaahaahcAicAicAicAicAicAicAicAicAiczpcuAcAocAocAocAocAocAocAocAocAocAscAscAscAscAscAscAscAscuLczqcAycAycAycAycAycAycAycAycAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMaadaaacHHcGCcGDcGEcGEcGFcGGcGGcGGcGGcGHcGIcGIcGJcGKcGLcCtbkQbkQahyahyahybkQbkQaahaahaahcxrcGMcGNcxraahaahaahcBIcGOcGPcGQcBIcGRcHRcCGcCGcwdcGTcCIcGUcGVcGWcGWcGWcGXcGXcGXcGXcGYcCKahyahycwhczRcwhaahaahaahaahaahcxzcGZczecABcHaczVcCPcCQcHbcHSczecGkcxzaahaahaahaahaahaahaahczicAbczicziaahcBacHdcHecHfcHgcHhcHccHicHjcHkcHlcHmcHncHocHmcHpcHmaahcBgcBgcHqcBgaahaahcrQcHrcxPcsYcGzcHscHtcHucHvcHwcGzcxRctbcFdcFdcFdcHxcrQaahaahaahaahaahaahcHycHzcHAcHBcHycHCcHDcHEcHFcHGcIzcHEaahaahaahaahaahaahaahcHIcHJcHKcHLcHIcHMcHNcHOcHPcHQcJtcHOaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/polaris-4.dmm b/maps/polaris-4.dmm index 42dec06b4c..ac32e37a7e 100644 --- a/maps/polaris-4.dmm +++ b/maps/polaris-4.dmm @@ -85,7 +85,7 @@ "bG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/outpost/engineering/hallway) "bH" = (/obj/structure/table/rack,/obj/item/weapon/pickaxe,/obj/item/weapon/pickaxe,/obj/item/weapon/pickaxe,/obj/item/weapon/pickaxe,/turf/simulated/floor/tiled,/area/outpost/engineering/storage) "bI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/outpost/engineering/storage) -"bJ" = (/obj/structure/table/rack,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil,/obj/item/weapon/module/power_control,/obj/item/weapon/module/power_control,/turf/simulated/floor/tiled,/area/outpost/engineering/storage) +"bJ" = (/obj/structure/table/rack,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil,/obj/item/weapon/module/power_control,/obj/item/weapon/module/power_control,/obj/item/clothing/gloves/yellow,/turf/simulated/floor/tiled,/area/outpost/engineering/storage) "bK" = (/obj/structure/table/rack,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/item/stack/cable_coil/yellow,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/tiled,/area/outpost/engineering/storage) "bL" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor/tiled,/area/outpost/engineering/storage) "bM" = (/obj/machinery/recharge_station,/turf/simulated/floor,/area/outpost/engineering/atmospherics) diff --git a/maps/polaris-5.dmm b/maps/polaris-5.dmm index 766dd9da3c..93f38d8b15 100644 --- a/maps/polaris-5.dmm +++ b/maps/polaris-5.dmm @@ -1,6 +1,6 @@ "aa" = (/turf/space,/area/space) "ab" = (/turf/space,/area/syndicate_station/mining) -"ac" = (turf/simulated/mineral,/area/mine/unexplored) +"ac" = (/turf/simulated/mineral,/area/mine/unexplored) "ad" = (/turf/simulated/wall/r_wall,/area/outpost/research/mixing) "ae" = (/turf/simulated/wall/r_wall,/area/outpost/research/hallway/toxins_hallway) "af" = (/turf/simulated/wall/r_wall,/area/outpost/research/tox_store) @@ -165,7 +165,7 @@ "di" = (/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/outpost/research/toxins_launch) "dj" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; layer = 4; name = "Test Chamber Telescreen"; network = list("Toxins Test Area"); pixel_x = 32; pixel_y = 0},/obj/effect/floor_decal/industrial/warning/corner{icon_state = "warningcorner"; dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/outpost/research/toxins_launch) "dk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/toxins_launch) -"dl" = (turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"dl" = (/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "dm" = (/obj/effect/landmark{name = "carpspawn"},/turf/space,/area/space) "dn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/outpost/research/test_area) "do" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 5},/turf/simulated/floor/reinforced,/area/outpost/research/mixing) @@ -263,7 +263,7 @@ "fc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/toxins_misc_lab) "fd" = (/obj/structure/closet,/turf/simulated/floor/tiled,/area/outpost/research/toxins_misc_lab) "fe" = (/obj/machinery/atmospherics/pipe/manifold/visible/purple{dir = 8},/obj/item/pipe_meter,/turf/simulated/floor/plating,/area/outpost/research/toxins_misc_lab) -"ff" = (/obj/machinery/light/small{dir = 8; pixel_x = 0},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"ff" = (/obj/machinery/light/small{dir = 8; pixel_x = 0},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "fg" = (/obj/machinery/atmospherics/pipe/simple/hidden/purple{dir = 10},/turf/simulated/wall/r_wall,/area/outpost/research/toxins_misc_lab) "fh" = (/turf/simulated/floor/reinforced,/area/outpost/research/xenobiology) "fi" = (/obj/structure/disposaloutlet{dir = 8},/obj/structure/disposalpipe/trunk,/turf/simulated/floor/reinforced,/area/outpost/research/xenobiology) @@ -281,7 +281,7 @@ "fu" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/camera/network/research_outpost{c_tag = "OPR - Toxins Access"; dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled/white,/area/outpost/research/hallway/toxins_hallway) "fv" = (/obj/item/weapon/wrench,/obj/structure/table/steel,/turf/simulated/floor/tiled/dark,/area/outpost/research/toxins_misc_lab) "fw" = (/obj/machinery/pipedispenser,/turf/simulated/floor/tiled/dark,/area/outpost/research/toxins_misc_lab) -"fx" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"fx" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "fy" = (/obj/machinery/atmospherics/pipe/manifold/visible/purple{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/plating,/area/outpost/research/toxins_misc_lab) "fz" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/reinforced,/area/outpost/research/xenobiology) "fA" = (/obj/structure/closet/l3closet/scientist,/turf/simulated/floor/tiled/dark,/area/outpost/research/xenobiology) @@ -289,7 +289,7 @@ "fC" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/outpost/research/hallway/toxins_hallway) "fD" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/tiled/white,/area/outpost/research/hallway/toxins_hallway) "fE" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction,/turf/space,/area/space) -"fF" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"fF" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "fG" = (/obj/structure/table/standard,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -7; pixel_y = 32},/turf/simulated/floor/tiled/white,/area/outpost/research/xenobiology) "fH" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) "fI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio1"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/outpost/research/xenobiology) @@ -329,7 +329,7 @@ "gq" = (/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) "gr" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) "gs" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/white,/area/outpost/research/xenobiology) -"gt" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"gt" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "gu" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) "gv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) "gw" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) @@ -348,8 +348,8 @@ "gJ" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/button/remote/blast_door{id = "xenobio3"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access = list(55)},/turf/simulated/floor/tiled/white,/area/outpost/research/xenobiology) "gK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio3"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/outpost/research/xenobiology) "gL" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/reinforced,/area/outpost/research/xenobiology) -"gM" = (/obj/structure/lattice,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) -"gN" = (/obj/structure/lattice,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"gM" = (/obj/structure/lattice,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"gN" = (/obj/structure/lattice,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "gO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) "gP" = (/obj/structure/lattice,/turf/space,/area/space) "gQ" = (/obj/structure/lattice,/obj/structure/window/reinforced,/turf/space,/area/space) @@ -421,8 +421,8 @@ "ie" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/space,/area/space) "if" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) "ig" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) -"ih" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) -"ii" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"ih" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"ii" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "ij" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 1},/turf/space,/area/space) "ik" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/airless,/area/mine/explored) "il" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue,/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) @@ -430,7 +430,7 @@ "in" = (/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) "io" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "xenobio3"; name = "Containment Blast Doors"; opacity = 0},/obj/machinery/door/window/eastleft{name = "Containment Pen"; req_access = list(55)},/turf/simulated/floor/reinforced,/area/outpost/research/xenobiology) "ip" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) -"iq" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"iq" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "ir" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/pen/blue{pixel_x = -5; pixel_y = -1},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = 3},/turf/simulated/floor/tiled/dark,/area/outpost/research/xenobiology) "is" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = 30},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) "it" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) @@ -477,7 +477,7 @@ "ji" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/reinforced,/area/outpost/research/xenobiology) "jj" = (/obj/machinery/door/blast/regular{desc = "By gods, release the hounds!"; id = "xenobioout6"; name = "Containment Release"},/turf/simulated/floor/reinforced,/area/outpost/research/xenobiology) "jk" = (/turf/simulated/floor/airless,/area/space) -"jl" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"jl" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "jm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) "jn" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light/small,/obj/machinery/camera/network/research_outpost{c_tag = "OPR - Main Exterior"; dir = 1},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) "jo" = (/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/outpost/research/hallway/catwalk) @@ -625,7 +625,7 @@ "ma" = (/obj/machinery/conveyor_switch{id = "anolongstorage"; name = "conveyor switch"; pixel_x = 0; pixel_y = 0; req_access = list(65)},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/outpost/research/tempstorage) "mb" = (/obj/effect/floor_decal/industrial/warning/dust{tag = "icon-warning_dust (EAST)"; icon_state = "warning_dust"; dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) "mc" = (/turf/simulated/wall,/area/outpost/research/dock) -"md" = (/obj/structure/lattice,/obj/machinery/light{icon_state = "tube1"; dir = 4},turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/research/dock) +"md" = (/obj/structure/lattice,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/research/dock) "me" = (/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/atmospherics/portables_connector{dir = 4},/turf/simulated/floor/tiled,/area/outpost/research/dock) "mf" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; icon_state = "intact"; tag = "icon-intact-f (SOUTHWEST)"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "mg" = (/turf/simulated/floor/tiled/white,/area/outpost/research/dock) @@ -652,7 +652,7 @@ "mB" = (/obj/machinery/conveyor{dir = 4; id = "anotempload"},/turf/simulated/floor/plating,/area/outpost/research/tempstorage) "mC" = (/obj/structure/plasticflaps/mining,/obj/machinery/conveyor{dir = 4; id = "anotempload"},/turf/simulated/floor/plating,/area/outpost/research/tempstorage) "mD" = (/obj/machinery/conveyor{dir = 4; id = "anotempload"},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/outpost/research/tempstorage) -"mE" = (turf/simulated/mineral/floor/ignore_mapgen,/area/shuttle/research/outpost) +"mE" = (/turf/simulated/mineral/floor/ignore_mapgen,/area/shuttle/research/outpost) "mF" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "mG" = (/obj/structure/table/standard,/obj/item/weapon/material/ashtray/glass,/obj/item/weapon/reagent_containers/food/drinks/coffee,/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "mH" = (/obj/effect/floor_decal/corner/purple{dir = 6},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) @@ -670,9 +670,9 @@ "mT" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) "mU" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) "mV" = (/obj/effect/floor_decal/corner/purple,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) -"mW" = (/obj/effect/floor_decal/corner/purple{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) -"mX" = (/obj/effect/floor_decal/corner/purple{dir = 8},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 1},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) -"mY" = (/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 1},/obj/machinery/conveyor_switch{id = "anotempload"; name = "conveyor switch"; pixel_x = 0; pixel_y = 0; req_access = list(65)},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) +"mW" = (/obj/effect/floor_decal/corner/purple{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) +"mX" = (/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 1},/obj/machinery/conveyor_switch{id = "anotempload"; name = "conveyor switch"; pixel_x = 0; pixel_y = 0; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) +"mY" = (/obj/effect/floor_decal/corner/purple{dir = 8},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) "mZ" = (/obj/structure/sign/science{desc = "A warning sign which reads 'SCIENCE!'. It has fine print below it reading 'May or may not contain spiders'."},/turf/simulated/wall/r_wall,/area/outpost/research/tempstorage) "na" = (/obj/machinery/conveyor_switch{id = "anotempload"; name = "conveyor switch"; pixel_x = 0; pixel_y = 0; req_access = list(65)},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/outpost/research/tempstorage) "nb" = (/obj/structure/lattice,/obj/machinery/light{dir = 1},/turf/space,/area/outpost/research/dock) @@ -693,7 +693,7 @@ "nq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/tempstorage) "nr" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/research{name = "Temporary Storage"; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/outpost/research/tempstorage) "ns" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/tempstorage) -"nt" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/tempstorage) +"nt" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/outpost/research/tempstorage) "nu" = (/turf/simulated/wall,/area/outpost/research/hallway/starboard) "nv" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/outpost/research/hallway/starboard) "nw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/hallway/starboard) @@ -728,13 +728,13 @@ "nZ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms) "oa" = (/obj/effect/floor_decal/corner/purple{dir = 4},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "ob" = (/obj/effect/floor_decal/corner/purple{dir = 1},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) -"oc" = (/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) +"oc" = (/obj/machinery/atmospherics/binary/pump/on,/obj/effect/floor_decal/industrial/outline/yellow,/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "od" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/hallway/starboard) "oe" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 2; frequency = 1379; id_tag = "research_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1379; id_tag = "research_airlock"; pixel_x = 0; pixel_y = 25; tag_airpump = "research_pump"; tag_chamber_sensor = "research_sensor"; tag_exterior_door = "research_outer"; tag_interior_door = "research_inner"},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "of" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 2; frequency = 1379; id_tag = "research_pump"},/obj/structure/ore_box,/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "og" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/hallway/starboard) "oh" = (/obj/effect/floor_decal/industrial/warning/dust/corner{tag = "icon-warningcorner_dust (WEST)"; icon_state = "warningcorner_dust"; dir = 8},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) -"oi" = (/obj/machinery/light/small{dir = 1},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"oi" = (/obj/machinery/light/small{dir = 1},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "oj" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "research_outpost_outer"; locked = 1; name = "Research Dock Airlock"; req_access = list(10,13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "research_outpost_airlock"; name = "exterior access button"; pixel_x = -6; pixel_y = -26; req_one_access = list(13,65)},/turf/simulated/floor/tiled,/area/outpost/research/dock) "ok" = (/turf/simulated/floor/tiled,/area/outpost/research/dock) "ol" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/outpost/research/dock) @@ -767,7 +767,7 @@ "oM" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "oN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "oO" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) -"oP" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1; icon_state = "map"; tag = "icon-manifold-f (NORTH)"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "research_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = 26; req_one_access = list(13,65)},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) +"oP" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "research_airlock"; name = "interior access button"; pixel_x = 26; pixel_y = 26; req_one_access = list(13,65)},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "oQ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "research_inner"; locked = 1; name = "Research Outpost External Access"},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "oR" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "oS" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) @@ -813,7 +813,7 @@ "pG" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "research_pump"},/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/camera/network/research_outpost{c_tag = "OPR - Expedition Airlock"; dir = 1},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) "pH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/hallway/starboard) "pI" = (/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning/dust/corner{tag = "icon-warningcorner_dust (NORTH)"; icon_state = "warningcorner_dust"; dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) -"pJ" = (/obj/structure/lattice,/obj/machinery/light,turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/research/dock) +"pJ" = (/obj/structure/lattice,/obj/machinery/light,/turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/research/dock) "pK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/floor/plating,/area/outpost/research/dock) "pL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/dock) "pM" = (/turf/simulated/wall/r_wall,/area/outpost/research/analysis) @@ -918,7 +918,7 @@ "rH" = (/obj/item/weapon/storage/box/excavation,/obj/item/weapon/pickaxe,/obj/item/weapon/wrench,/obj/item/device/measuring_tape,/obj/item/stack/flag/yellow,/obj/structure/table/steel,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/outpost/research/eva) "rI" = (/obj/item/weapon/storage/box/excavation,/obj/item/weapon/pickaxe,/obj/item/weapon/wrench,/obj/item/device/measuring_tape,/obj/item/stack/flag/yellow,/obj/structure/table/steel,/turf/simulated/floor/tiled,/area/outpost/research/eva) "rJ" = (/obj/structure/dispenser/oxygen,/obj/effect/floor_decal/corner/purple{dir = 6},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor/tiled,/area/outpost/research/eva) -"rK" = (/obj/machinery/light/small,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"rK" = (/obj/machinery/light/small,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "rL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/research/analysis) "rM" = (/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/obj/structure/table/standard,/turf/simulated/floor/tiled/dark,/area/outpost/research/analysis) "rN" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/dark,/area/outpost/research/analysis) @@ -1034,7 +1034,7 @@ "tT" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8},/obj/machinery/alarm/monitor/isolation{alarm_id = "isolation_three"; dir = 8; pixel_x = 22; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/outpost/research/anomaly) "tU" = (/turf/simulated/wall/r_wall,/area/outpost/research/power) "tV" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/outpost/research/power) -"tW" = (/obj/machinery/light/small{dir = 8},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"tW" = (/obj/machinery/light/small{dir = 8},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "tX" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor/tiled/dark,/area/outpost/research/anomaly) "tY" = (/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/outpost/research/anomaly) "tZ" = (/obj/machinery/artifact_analyser,/turf/simulated/floor/tiled/dark,/area/outpost/research/anomaly) @@ -1045,9 +1045,9 @@ "ue" = (/obj/machinery/atmospherics/pipe/simple/visible/supply,/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "uf" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "ug" = (/turf/simulated/wall,/area/outpost/mining_main/north_hall) -"uh" = (/obj/structure/lattice,turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/mining_main/north_hall) -"ui" = (turf/simulated/mineral/floor/ignore_mapgen,/area/space) -"uj" = (turf/simulated/mineral/floor/ignore_mapgen,/area/shuttle/mining/outpost) +"uh" = (/obj/structure/lattice,/turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/mining_main/north_hall) +"ui" = (/turf/simulated/mineral/floor/ignore_mapgen,/area/space) +"uj" = (/turf/simulated/mineral/floor/ignore_mapgen,/area/shuttle/mining/outpost) "uk" = (/obj/machinery/atmospherics/pipe/simple/visible/supply{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/visible/scrubbers{dir = 6; icon_state = "intact-scrubbers"; tag = "icon-intact-scrubbers (NORTHWEST)"},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "ul" = (/obj/machinery/atmospherics/pipe/simple/visible/supply{tag = "icon-intact-supply (NORTHWEST)"; icon_state = "intact-supply"; dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/visible/scrubbers{dir = 9; icon_state = "intact-scrubbers"; tag = "icon-intact-scrubbers (NORTHWEST)"},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "um" = (/turf/simulated/wall/r_wall,/area/outpost/mining_main/medbay) @@ -1142,7 +1142,7 @@ "vX" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/engineering/mining/hallway) "vY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "meoutpost_main_outer"; locked = 1; name = "Exterior Airlock"},/turf/simulated/floor/tiled,/area/outpost/engineering/mining/hallway) "vZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) -"wa" = (/obj/structure/lattice,/obj/machinery/light{dir = 1},turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/mining_main/north_hall) +"wa" = (/obj/structure/lattice,/obj/machinery/light{dir = 1},/turf/simulated/mineral/floor/ignore_mapgen,/area/outpost/mining_main/north_hall) "wb" = (/turf/simulated/wall,/area/outpost/mining_main/medbay) "wc" = (/obj/structure/grille,/obj/machinery/door/firedoor,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/outpost/mining_main/medbay) "wd" = (/obj/machinery/door/airlock/glass_medical{name = "Medbay"},/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/outpost/mining_main/medbay) @@ -1160,7 +1160,7 @@ "wp" = (/obj/machinery/mining/drill,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) "wq" = (/obj/structure/cable,/obj/machinery/power/apc/super{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) "wr" = (/obj/machinery/light/small,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) -"ws" = (/obj/structure/ore_box,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"ws" = (/obj/structure/ore_box,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "wt" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/outpost/mining_main/north_hall) "wu" = (/obj/structure/closet/hydrant{pixel_x = 0; pixel_y = 32},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/outpost/mining_main/north_hall) "wv" = (/obj/effect/floor_decal/corner/brown{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/north_hall) @@ -1226,7 +1226,7 @@ "xD" = (/obj/machinery/light/small,/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) "xE" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/outpost/mining_main/maintenance) "xF" = (/obj/effect/floor_decal/industrial/warning/dust{tag = "icon-warning_dust (NORTH)"; icon_state = "warning_dust"; dir = 1},/obj/machinery/light/small,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/mine/explored) -"xG" = (/obj/machinery/floodlight,turf/simulated/mineral/floor/ignore_mapgen,/area/mine/unexplored) +"xG" = (/obj/machinery/floodlight,/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/unexplored) "xH" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor/tiled,/area/outpost/engineering/mining/hallway) "xI" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/machinery/shieldwallgen,/turf/simulated/floor/tiled,/area/outpost/engineering/mining/hallway) "xJ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled,/area/outpost/engineering/mining/hallway) @@ -1468,7 +1468,7 @@ "Cl" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/mining_main/eva) "Cm" = (/obj/structure/dispenser/oxygen,/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "Cn" = (/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) -"Co" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Co" = (/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "Cp" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/machinery/access_button/airlock_interior{frequency = 1377; master_tag = "mcontrol"; pixel_x = 26; pixel_y = -26; req_access = list(48)},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "Cq" = (/obj/machinery/door/airlock/external{frequency = 1377; icon_state = "door_locked"; id_tag = "mint"; locked = 1},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "Cr" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) @@ -1532,14 +1532,14 @@ "Dx" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall/r_wall,/area/outpost/mining_main/south_hall) "Dy" = (/obj/structure/disposaloutlet,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "Dz" = (/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosiavulgaris,/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosiavulgaris,/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) -"DA" = (/obj/machinery/light/small{dir = 4; pixel_y = 0},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"DA" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "DB" = (/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap,/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "DC" = (/turf/space,/area/skipjack_station/mining) "DD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/airless,/area/outpost/research/test_area) "DE" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/outpost/engineering/mining/power) "DF" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/outpost/engineering/mining/power) "DG" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{tag = "icon-map (NORTH)"; icon_state = "map"; dir = 1},/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/research/anomaly) -"DH" = (/obj/machinery/light/small{dir = 4},turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"DH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "DI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/mining_main/north_hall) "DJ" = (/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "DK" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/mining_main/south_hall) @@ -1562,7 +1562,12 @@ "Eb" = (/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/effect/floor_decal/industrial/outline/yellow,/obj/structure/window/reinforced,/turf/simulated/floor/tiled,/area/outpost/research/toxins_misc_lab) "Ec" = (/obj/machinery/atmospherics/pipe/manifold/visible/purple{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/outpost/research/toxins_misc_lab) "Ed" = (/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/effect/floor_decal/industrial/outline/yellow,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) - +"Ee" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Ef" = (/obj/machinery/atmospherics/binary/pump/on{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Eg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Eh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Ei" = (/obj/machinery/light/small{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1683,7 +1688,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldldldljFlbkxlcldlelfkblglhliljlklllklklklklmlnlojPjPlojPlplojPlqjulrlskpnOjUltlulvlwlxlylzlzlzkZlakvacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldldldldljrjqjIlAlBlClAlBlDlEjAlFjtlGlHlIlJlKlLlMjClNjCjClOjCjClPjCjCjulQlRlSlTlUlVlWlXlYlZjvjvmakZkZkZmbacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagNmcgNgNmdmcjrmemfmgmhmimjmkjqmlmmmljtmnjPlImomplLnRjCmqnZjCmqnZjCpjmtmujumvmwmxjujUkVmymzmAmBmBmCmDmDmDkZmbacacacdldldldldldldldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamcmEmEmEmEmEjrmemFmgmgmgmGjrjrjzjAmHjrjtqclImJmKlLjPjCmLmMjCmLmMjCmNmOjtmPmQmRmSmPjvqomUmVmWmXmYjvmZnakZkZmbdldldldldldldldldldldldldldldldldldldldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamcmEmEmEmEmEjrmemFmgmgmgmGjrjrjzjAmHjrjtqclImJmKlLjPjCmLmMjCmLmMjCmNmOjtmPmQmRmSmPjvqomUmVmWmYmXjvmZnakZkZmbdldldldldldldldldldldldldldldldldldldldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanbmEmEmEmEmEncndnenfmgmgjrjrngnhninjnkjtjtjtjCkhkikjjCjtjtjCjCjCjCjtjtjtnlnmnnnonpjvjvjvnqnrnsntnumPnvnwkZmbdldldldldldldldldldldldldldldldldldldldldldldldldldldldldljWacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagNmEmEmEmEmEnxnynznxnAmgqFqEnBlFnCnDnEmgnFnGnHnInJnKnLnMnNqKnPnQqWnSnFnTnUnVnWnXnTnTnYrqoamRobocodoeofogohmbdldldldldldldldldldldldldldldldldldldldldldldldldldldldldloidldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagNmEmEmEmEmEojokolomonooopopoqrujrosotouovowoxoyoyozoyoAoBoCoDoDoEoDoFoGoHoImPoJoKoGoLCMoMoNoOoPoQoRoSoToUmboVoVoVoVoVdldldldldldldldldldldldldldldldldldldldldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1713,11 +1718,11 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlumumvIvJvKvLvMAt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlumwbwbwbwcwdwewfwgwhvbvbvbwiununvSvTwjwkwkwkwldldluedloVoVdldldldldlvVvXwmwnwmvXwowpwowqwrmbdlwsdldlxGacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlvtwtwuugwvwwwxwxwyvbwzwAwBwCwCwDwEwFwGwkwHwIwldldluedloVoVdldldldlvWvWvWwJwKwLwMwMwMwMwMwMwMwMwMwMwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlugwNwOwPwQwRwSwSwTwSwUvtwVwSwWwXwYwZxaxbxcxdxeuououldloVoVdldldlvWvWxfvWvXxgvXwMxhxixjxkxlxmxnxoxowMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlvtxpxqugxrxsxtxtxuvbxvxwxxvbxyxzxAxAxBxCxDxEwlxFktktDLoVoVdlDAvWvWxHxIxJxKxLxMwMxNxOxPxQxRxRxRxSxTwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlvtxpxqugxrxsxtxtxuvbxvxwxxvbxyxzxAxAxBxCxDxEwlxFktktDLoVoVdlCovWvWxHxIxJxKxLxMwMxNxOxPxQxRxRxRxSxTwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlxUxVxVxVxVxVxUxUxUBvxXDIxZyaybybybycycybycycybycqiqiqjoVoVdldlvWydyeyfyfyfygyhyiyjykylymynyoypyqxTwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlxUyrysxVytCgxVyvxUxUywyxyyybybyzyAyByCyDyEyFyGyHyIyIyIoVoVdlyJyJyJyJyKyfyLyMCUwMyOyPDeyRySyTyRyUyUwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlxVyVDixVyXyYxVyZzazbzczdDMybDNzgycycyczhziybybycktktkvoVoVdlyJzjzkyJzlyfyfwnzmwMwMwMwMwMwMwMwMwMwMwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlxVxVznxVxVzoxVzpzqzrzsztzuzvzwzwzxzyzzzAziybzCzBzCzDmboVoVDAyJzEzFzGzHzIzJzKDOzMzNzOzPzQzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlxVxVznxVxVzoxVzpzqzrzsztzuzvzwzwzxzyzzzAziybzCzBzCzDmboVoVCoyJzEzFzGzHzIzJzKDOzMzNzOzPzQzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlacxVzRzSzTzUzVzWzXzYzZAaAbAcAdAdAeAdAfAgAhybzCkZkZkZmboVoVdlyJDPAjyJzMzMAkAlAkzMAmAnAozQzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlacacxVApAqArAsDQAuAvAwAxAsAyAzAAABACADAEAFAGybzCkZwowpAHoVoVdlyJyJyJyJDRAJAKALAMANAOAPAQzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlacxVxVARxVxVASxVATyZzbAUAVAWzvAXAXAYAZBazhBbybBckZkZkZmboVoVdlaczMBdBdAoAoAoBeBfBfBfBgBhzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1725,16 +1730,16 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacxVBiBjxVBiBkxVyZ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacxUytDSxVytDSxVBwxUxUBxzUByybybBzBABBBCBDBEycBFBGqiqiqjoVoVdlacaczMzMBHAoBKDFDEAoBLzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacxUxVxVxVxVxVxUxUxUBMzczdzeBNBOBOBOBPBPBPBPBPBOBPtWdloVoVoVdldlacaczMzMzMBQBRBQzMzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaadmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBSBSBTBTBTBUBVBUBSBSBWBXBYBOBOBZCaBZCbCbCcCdCeCckvoVoVoVdldldlacacacaczMzMzMzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCfCfCfCfCfCfDTChCiCjCkClCmCnCnCnCoCpCqCrCsCtCuoVoVdldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSCvCfCfCwCfCxCyCzCACBCCCDCnCEDJCnCnCcCFCGCcqjoVoVdldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCvCfCHCICJCJCKCLDKCNCOCPCPCQCnCnCRBOCSCTBPdloVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCfCfCfCfCfCfDTChCiCjCkClCmDHDAEfEeCpCqCrCsCtCuoVoVdldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSCvCfCfCwCfCxCyCzCACBCCCDEgCEDJCnCnCcCFCGCcqjoVoVdldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCvCfCHCICJCJCKCLDKCNCOCPEhCQCnCnCRBOCSCTBPdloVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSDUCVCWCVCVCXCYCZDaDbDcDcDdDcDVBOBOdldldloVoVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSDfDgCfCfDhDWDjDkBPCnCnDlDmBOBOdldldloVoVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacBSBSBSDnDoDhDpDpCkBPDqDrBOBOBOdldldloVoVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacBSBSBSDhDsDtDuBPBOBOBOdldldldldloVoVdlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacBSBSDvDwDxBOBOacdldldldldldloVoVdlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacoVoVDyoVacacdldldldldldloVoVdldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacoVoVDzoVacacdldldldldldloVoVdlDHjWacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacoVoVDzoVacacdldldldldldloVoVdlEijWacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacoVDBacacacacdldldldldloVoVoVdldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacoVacacacacacdldldldldloVoVdldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacjWdldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacdldloVoVoVoVdldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacdloidldldldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 5be405cd9e7ea24c899ac8f2a13d7f85dc5531f8 Mon Sep 17 00:00:00 2001 From: sabess Date: Thu, 24 Dec 2015 19:28:47 +1100 Subject: [PATCH 18/26] Fixed knuckle dusters; forgot to commit he weapons.dmi file and therefore the file wasn't named correctly, resulting in a broken sprite. --- icons/obj/weapons.dmi | Bin 29541 -> 29541 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 877054a4519380e93985c469f51a6c92f2d4d3ac..8f2bf86905c1096f52ba80e81a030ccb060ead5e 100644 GIT binary patch delta 734 zcmV<40wMk7<^kpA0gya@;xG`#&*Ukr_L{B=q1qFdRjXAG?JJ;(JrE1W&W^{Wy!{@^ zreTFUPQ?YJ-~7qv&okjx{d)TS{Hh*bo~t*cXoFW9wf=EmEsoZ3r#7ltRf`VozT=M{ zk%3Wd)J;4FGWR#t!dQxGqn6cTN6_QP_e-pG39pl@YGKg9No~}Bs{TJaq4`GCo)G;v z;)XrgZ4s$SNU7_x!I#62=NkxF}a>aCZ>Z|W;iKz)HxE%!3%?zB70<LKIBHg zHQo>$l)?Mqs z;5H1oclYZ7Gv2*@&{$yq$jJ{B%v`=a@mGHW^4ozKY3EL5_wo`iRCPe0ec7w$Co6k4 zGRXVl7=mem<;p!WxFYhLQf}~HN||KPW%>j4+cJMpqC?GO^)~-@Jza!#Q#W-p=?EQ? z4JEywNm)2Xhb?gMWl3A$;N`4j18<>Vw;g=a2Zts_MvAi431U3QWa(S=^!lhCU!JSK QvqSBNd|dfBvj+oSaCJd)WB>pF delta 734 zcmV<40wMk7<^kpA0gya@+b|5q&+$_T?bRLXIK@u63@wHp+E)l@iHU{Cl1I@^^Y%M5 zbL}B2P^Q(G%c`n|Nq77bc)#k^2u{v49t=g)3U94KPhn7En zL$GX8V??@$<7rwJF!*rz%!1gkEjc!rg%Es;tUM4B5b9;tm;{NDT*f?yQ%^ugfb@KwXAWW}zIqM6n6vkvV0E31$$u&1Bmk zGkRbLG0KN_0TTy*m$a+{lW1Zy3z?sG*za5L37IF{-V$b6?gA#dpXxh+i_jp+IY)H) zz!^gq51lb`;X#aX-x)j_QnzI~ch254;9STU6P|NPJvjctMAQ0#WW#6&=Pr<(t;fDc ziao(uewx8K3UculShpyTv8d17=FHK7LkskVk&(m`on5ehX3$5M3Yu^jTZ=AZ^Ikyt zf*paugRFr=bHEn5E~87`f|aer!I^EcX8;ES_IDM`Ojco#xnN6tv!0X&)8KL74`&O#`T!t zvN31)dKq4SFT*#>@CSKXc^o=mt7TP2R90j}Wi>`rR$@eD6-HE6;A9C+j^pFWvThp( z26v%Py}MrzSn%%cgT@T|M;?4n!7SzT6Myw5AiW)!k@oJKcQ5C7rm8&x9r9j1KUvwc zkwM-Urw~j7ELZN3!DW$`lyZarQpzNQ&eI>L+vWLC6CG+Mt9R+Q>**pa>#{EENk{0A zY{=>TLdwE1I&6T0&r8|>2QOzO8+Zp9yR9LJ@#qJAbQr6ulDn8ir084q^!lhCU!IG< QP!sLXS$3%svj+oSaMcQN`Tzg` From d71573e7499742b8b3317581d218efecb5dbde80 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 18 Dec 2015 18:23:58 +1030 Subject: [PATCH 19/26] Further work on properly integrating, updating and fixing prosthetic options. WIP Allowed heads/bodies to be prosthetic. Removed IPC. Refactored some flags. --- code/ZAS/Phoron.dm | 10 +- code/__defines/chemistry.dm | 1 - code/__defines/species_languages.dm | 6 +- code/_helpers/mobs.dm | 26 +- code/datums/datacore.dm | 6 +- code/datums/disease.dm | 2 +- .../datums/diseases/advance/symptoms/vomit.dm | 33 +-- code/datums/diseases/appendicitis.dm | 10 +- code/game/atoms.dm | 2 +- code/game/dna/dna2_helpers.dm | 9 +- .../gamemodes/changeling/powers/absorb.dm | 4 +- .../gamemodes/changeling/powers/revive.dm | 2 +- code/game/gamemodes/cult/runes.dm | 4 +- code/game/jobs/job/silicon.dm | 2 +- code/game/machinery/adv_med.dm | 4 +- code/game/machinery/bioprinter.dm | 4 +- code/game/machinery/cloning.dm | 2 +- code/game/machinery/computer/cloning.dm | 6 +- code/game/machinery/doors/airlock.dm | 2 +- code/game/machinery/iv_drip.dm | 4 +- code/game/machinery/suit_storage_unit.dm | 6 +- .../objects/effects/decals/Cleanable/misc.dm | 8 +- code/game/objects/items.dm | 2 +- .../objects/items/weapons/material/shards.dm | 8 +- code/game/objects/items/weapons/tools.dm | 11 +- code/game/objects/structures/morgue.dm | 2 +- code/modules/admin/admin_verbs.dm | 7 +- .../preference_setup/general/01_basic.dm | 2 +- .../preference_setup/general/03_body.dm | 79 +++++- code/modules/client/preferences.dm | 10 +- .../clothing/under/accessories/accessory.dm | 8 +- code/modules/mob/language/station.dm | 10 +- code/modules/mob/living/carbon/brain/MMI.dm | 2 +- .../mob/living/carbon/brain/brain_item.dm | 21 +- code/modules/mob/living/carbon/breathe.dm | 2 +- code/modules/mob/living/carbon/carbon.dm | 8 + .../mob/living/carbon/carbon_powers.dm | 24 +- .../mob/living/carbon/human/appearance.dm | 34 ++- code/modules/mob/living/carbon/human/death.dm | 4 +- code/modules/mob/living/carbon/human/emote.dm | 2 +- .../mob/living/carbon/human/examine.dm | 31 ++- code/modules/mob/living/carbon/human/human.dm | 90 +++---- .../mob/living/carbon/human/human_damage.dm | 54 ++-- .../mob/living/carbon/human/human_defense.dm | 4 +- .../mob/living/carbon/human/human_defines.dm | 1 + .../mob/living/carbon/human/human_movement.dm | 4 +- .../mob/living/carbon/human/human_organs.dm | 7 +- .../mob/living/carbon/human/inventory.dm | 1 - code/modules/mob/living/carbon/human/life.dm | 97 ++++--- .../carbon/human/species/outsider/shadow.dm | 2 +- .../carbon/human/species/outsider/vox.dm | 16 +- .../living/carbon/human/species/species.dm | 21 +- .../carbon/human/species/station/golem.dm | 2 +- .../carbon/human/species/station/monkey.dm | 16 +- .../carbon/human/species/station/slime.dm | 2 +- .../carbon/human/species/station/station.dm | 100 ++----- .../human/species/xenomorphs/alien_species.dm | 18 +- .../mob/living/carbon/human/unarmed_attack.dm | 13 +- .../mob/living/carbon/human/update_icons.dm | 4 +- .../mob/living/carbon/metroid/powers.dm | 2 +- code/modules/mob/living/carbon/shock.dm | 2 +- code/modules/mob/living/living.dm | 48 ++++ code/modules/mob/living/living_defines.dm | 1 + .../mob/living/silicon/robot/drone/drone.dm | 2 +- .../modules/mob/living/silicon/robot/robot.dm | 8 +- .../simple_animal/borer/borer_powers.dm | 2 +- code/modules/mob/mob_defines.dm | 1 - code/modules/mob/mob_grab_specials.dm | 2 +- .../mob/new_player/preferences_setup.dm | 73 ++++-- code/modules/mob/transform_procs.dm | 4 +- code/modules/organs/blood.dm | 18 +- code/modules/organs/misc.dm | 13 +- code/modules/organs/organ.dm | 78 +++--- code/modules/organs/organ_external.dm | 246 ++++++++++++------ code/modules/organs/organ_icon.dm | 8 +- code/modules/organs/organ_internal.dm | 9 +- code/modules/organs/pain.dm | 20 +- code/modules/organs/robolimbs.dm | 1 - code/modules/organs/subtypes/diona.dm | 16 -- code/modules/organs/subtypes/machine.dm | 145 +++-------- code/modules/power/cable.dm | 12 +- code/modules/projectiles/projectile/change.dm | 6 +- .../Chemistry-Reagents-Core.dm | 6 +- .../Chemistry-Reagents-Dispenser.dm | 2 +- .../Chemistry-Reagents-Food-Drinks.dm | 9 +- .../Chemistry-Reagents-Medicine.dm | 2 +- .../Chemistry-Reagents-Toxins.dm | 5 + .../reagents/reagent_containers/syringes.dm | 2 +- code/modules/surgery/bones.dm | 1 - code/modules/surgery/generic.dm | 7 +- code/modules/surgery/organs_internal.dm | 6 +- code/modules/surgery/robotics.dm | 8 +- code/modules/virus2/admin.dm | 2 +- code/modules/virus2/disease2.dm | 4 +- code/modules/virus2/helpers.dm | 2 +- code/modules/virus2/items_devices.dm | 2 +- icons/mob/human_races/cyberlimbs/bishop.dmi | Bin 950 -> 1442 bytes .../human_races/cyberlimbs/hesphaistos.dmi | Bin 935 -> 1431 bytes icons/mob/human_races/cyberlimbs/ipc.dmi | Bin 1716 -> 1717 bytes icons/mob/human_races/cyberlimbs/xion.dmi | Bin 901 -> 1397 bytes icons/mob/human_races/cyberlimbs/zenghu.dmi | Bin 849 -> 1362 bytes icons/mob/human_races/r_machine.dmi | Bin 2120 -> 0 bytes 102 files changed, 925 insertions(+), 722 deletions(-) delete mode 100644 icons/mob/human_races/r_machine.dmi diff --git a/code/ZAS/Phoron.dm b/code/ZAS/Phoron.dm index ff03f947e1..cffa28a1fc 100644 --- a/code/ZAS/Phoron.dm +++ b/code/ZAS/Phoron.dm @@ -116,10 +116,6 @@ obj/var/contaminated = 0 /mob/living/carbon/human/proc/burn_eyes() - //The proc that handles eye burning. - if(!species.has_organ["eyes"]) - return - var/obj/item/organ/eyes/E = internal_organs_by_name["eyes"] if(E) if(prob(20)) src << "Your eyes burn!" @@ -143,15 +139,15 @@ obj/var/contaminated = 0 //Checks if the suit is adequately sealed. var/coverage = 0 for(var/obj/item/protection in list(wear_suit, gloves, shoes)) - if(!protection) + if(!protection) continue if(vsc.plc.PHORONGUARD_ONLY && !(protection.flags & PHORONGUARD)) return 0 coverage |= protection.body_parts_covered - + if(vsc.plc.PHORONGUARD_ONLY) return 1 - + return BIT_TEST_ALL(coverage, UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS) /mob/living/carbon/human/proc/suit_contamination() diff --git a/code/__defines/chemistry.dm b/code/__defines/chemistry.dm index 31bdcc9469..3c1be97566 100644 --- a/code/__defines/chemistry.dm +++ b/code/__defines/chemistry.dm @@ -23,7 +23,6 @@ #define IS_UNATHI 4 #define IS_TAJARA 5 #define IS_XENOS 6 -#define IS_MACHINE 7 #define CE_STABLE "stable" // Inaprovaline #define CE_ANTIBIOTIC "antibiotic" // Spaceacilin diff --git a/code/__defines/species_languages.dm b/code/__defines/species_languages.dm index e204cdb977..9dc9ecd0fd 100644 --- a/code/__defines/species_languages.dm +++ b/code/__defines/species_languages.dm @@ -1,12 +1,10 @@ // Species flags. -#define NO_BLOOD 0x1 // Vessel var is not filled with blood, cannot bleed out. -#define NO_BREATHE 0x2 // Cannot suffocate or take oxygen loss. +#define NO_MINOR_CUT 0x1 // Can step on broken glass with no ill-effects. Either thick skin (diona/vox), cut resistant (slimes) or incorporeal (shadows) +#define IS_PLANT 0x2 // Is a treeperson. #define NO_SCAN 0x4 // Cannot be scanned in a DNA machine/genome-stolen. #define NO_PAIN 0x8 // Cannot suffer halloss/recieves deceptive health indicator. #define NO_SLIP 0x10 // Cannot fall over. #define NO_POISON 0x20 // Cannot not suffer toxloss. -#define IS_PLANT 0x40 // Is a treeperson. -#define NO_MINOR_CUT 0x80 // Can step on broken glass with no ill-effects. Either thick skin (diona/vox), cut resistant (slimes) or incorporeal (shadows) // unused: 0x8000 - higher than this will overflow // Species spawn flags diff --git a/code/_helpers/mobs.dm b/code/_helpers/mobs.dm index 6e2a7fae36..96b50fc6c5 100644 --- a/code/_helpers/mobs.dm +++ b/code/_helpers/mobs.dm @@ -29,10 +29,13 @@ proc/random_hair_style(gender, species = "Human") var/list/valid_hairstyles = list() for(var/hairstyle in hair_styles_list) var/datum/sprite_accessory/S = hair_styles_list[hairstyle] - if(gender == MALE && S.gender == FEMALE) - continue - if(gender == FEMALE && S.gender == MALE) - continue + + if(gender != NEUTER) + if(gender == MALE && S.gender == FEMALE) + continue + if(gender == FEMALE && S.gender == MALE) + continue + if( !(species in S.species_allowed)) continue valid_hairstyles[hairstyle] = hair_styles_list[hairstyle] @@ -48,10 +51,13 @@ proc/random_facial_hair_style(gender, species = "Human") var/list/valid_facialhairstyles = list() for(var/facialhairstyle in facial_hair_styles_list) var/datum/sprite_accessory/S = facial_hair_styles_list[facialhairstyle] - if(gender == MALE && S.gender == FEMALE) - continue - if(gender == FEMALE && S.gender == MALE) - continue + + if(gender != NEUTER) + if(gender == MALE && S.gender == FEMALE) + continue + if(gender == FEMALE && S.gender == MALE) + continue + if( !(species in S.species_allowed)) continue @@ -61,12 +67,12 @@ proc/random_facial_hair_style(gender, species = "Human") f_style = pick(valid_facialhairstyles) return f_style - + proc/sanitize_name(name, species = "Human") var/datum/species/current_species if(species) current_species = all_species[species] - + return current_species ? current_species.sanitize_name(name) : sanitizeName(name) proc/random_name(gender, species = "Human") diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 5c86505da7..f748fdd53e 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -222,6 +222,7 @@ locked += L return +// TODO. proc/get_id_photo(var/mob/living/carbon/human/H, var/assigned_role) var/icon/preview_icon = null @@ -258,7 +259,10 @@ proc/get_id_photo(var/mob/living/carbon/human/H, var/assigned_role) if(!H.species || H.species.flags & HAS_SKIN_COLOR) preview_icon.Blend(rgb(H.r_skin, H.g_skin, H.b_skin), ICON_ADD) - var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = H.species ? H.species.eyes : "eyes_s") + var/use_eye_icon = "eyes_s" + var/obj/item/organ/external/head/temp_head = H.get_organ("head") + if(temp_head) use_eye_icon = temp_head.eye_icon + var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = use_eye_icon) if (H.species.flags & HAS_EYE_COLOR) eyes_s.Blend(rgb(H.r_eyes, H.g_eyes, H.b_eyes), ICON_ADD) diff --git a/code/datums/disease.dm b/code/datums/disease.dm index 606acdef99..453cd0d8bd 100644 --- a/code/datums/disease.dm +++ b/code/datums/disease.dm @@ -57,7 +57,7 @@ var/list/diseases = typesof(/datum/disease) - /datum/disease // Some species are immune to viruses entirely. if(affected_mob && istype(affected_mob, /mob/living/carbon/human)) var/mob/living/carbon/human/H = affected_mob - if(H.species.virus_immune) + if(H.species.get_virus_immune(H)) cure() return age++ diff --git a/code/datums/diseases/advance/symptoms/vomit.dm b/code/datums/diseases/advance/symptoms/vomit.dm index 1f62065ef9..ecfd2deb81 100644 --- a/code/datums/diseases/advance/symptoms/vomit.dm +++ b/code/datums/diseases/advance/symptoms/vomit.dm @@ -27,29 +27,15 @@ Bonus stage_speed = 0 transmittable = 1 level = 3 + var/bloodvomit /datum/symptom/vomit/Activate(var/datum/disease/advance/A) ..() if(prob(SYMPTOM_ACTIVATION_PROB / 2)) var/mob/living/M = A.affected_mob - switch(A.stage) - if(1, 2, 3, 4) - M << "[pick("You feel nauseous.", "You feel like you're going to throw up!")]" - else - Vomit(M) - + spawn M.vomit(M, bloodvomit) return -/datum/symptom/vomit/proc/Vomit(var/mob/living/M) - - M.visible_message("[M] vomits on the floor!") - - M.nutrition -= 20 - M.adjustToxLoss(-3) - - var/turf/pos = get_turf(M) - pos.add_vomit_floor(M) - playsound(pos, 'sound/effects/splat.ogg', 50, 1) /* ////////////////////////////////////// @@ -78,17 +64,4 @@ Bonus stage_speed = -1 transmittable = 1 level = 4 - -/datum/symptom/vomit/blood/Vomit(var/mob/living/M) - - M.Stun(1) - M.visible_message("[M] vomits on the floor!") - - // They lose blood and health. - var/brute_dam = M.getBruteLoss() - if(brute_dam < 50) - M.adjustBruteLoss(3) - - var/turf/simulated/pos = get_turf(M) - pos.add_blood_floor(M) - playsound(pos, 'sound/effects/splat.ogg', 50, 1) \ No newline at end of file + bloodvomit = 1 diff --git a/code/datums/diseases/appendicitis.dm b/code/datums/diseases/appendicitis.dm index b4f2b1a38a..d6f05d33ef 100644 --- a/code/datums/diseases/appendicitis.dm +++ b/code/datums/diseases/appendicitis.dm @@ -33,13 +33,9 @@ affected_mob.adjustToxLoss(1) if(stage > 2) if(prob(1)) - if (affected_mob.nutrition > 100) - var/mob/living/carbon/human/H = affected_mob - H.vomit() - else - affected_mob << "You gag as you want to throw up, but there's nothing in your stomach!" - affected_mob.Weaken(10) - affected_mob.adjustToxLoss(3) + var/mob/living/carbon/human/H = affected_mob + spawn H.vomit() + if(stage > 3) if(prob(1) && ishuman(affected_mob)) var/mob/living/carbon/human/H = affected_mob diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 1a9d246215..f219e1d6c7 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -400,7 +400,7 @@ its easier to just keep the beam vertical. M.dna.real_name = M.real_name M.check_dna() if (M.species) - blood_color = M.species.blood_color + blood_color = M.species.get_blood_colour(M) . = 1 return 1 diff --git a/code/game/dna/dna2_helpers.dm b/code/game/dna/dna2_helpers.dm index ce6320cd88..98acc1d335 100644 --- a/code/game/dna/dna2_helpers.dm +++ b/code/game/dna/dna2_helpers.dm @@ -150,10 +150,11 @@ H.s_tone = 35 - dna.GetUIValueRange(DNA_UI_SKIN_TONE, 220) // Value can be negative. - if (dna.GetUIState(DNA_UI_GENDER)) - H.gender = FEMALE - else - H.gender = MALE + if(H.gender != NEUTER) + if (dna.GetUIState(DNA_UI_GENDER)) + H.gender = FEMALE + else + H.gender = MALE //Hair var/hair = dna.GetUIValueRange(DNA_UI_HAIR_STYLE,hair_styles_list.len) diff --git a/code/game/gamemodes/changeling/powers/absorb.dm b/code/game/gamemodes/changeling/powers/absorb.dm index 7d5a42e7e8..0c13276f12 100644 --- a/code/game/gamemodes/changeling/powers/absorb.dm +++ b/code/game/gamemodes/changeling/powers/absorb.dm @@ -19,8 +19,8 @@ return var/mob/living/carbon/human/T = G.affecting - if(!istype(T)) - src << "[T] is not compatible with our biology." + if(!istype(T) || T.isSynthetic()) + src << "\The [T] is not compatible with our biology." return if(T.species.flags & NO_SCAN) diff --git a/code/game/gamemodes/changeling/powers/revive.dm b/code/game/gamemodes/changeling/powers/revive.dm index 465088a06a..f67df60f2a 100644 --- a/code/game/gamemodes/changeling/powers/revive.dm +++ b/code/game/gamemodes/changeling/powers/revive.dm @@ -23,7 +23,7 @@ C.radiation = 0 C.heal_overall_damage(C.getBruteLoss(), C.getFireLoss()) C.reagents.clear_reagents() - C.restore_all_organs() //Covers things like fractures and other things not covered by the above. + C.restore_all_organs(ignore_prosthetic_prefs=1) //Covers things like fractures and other things not covered by the above. if(ishuman(C)) var/mob/living/carbon/human/H = src H.restore_blood() diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index aafcd791e5..760a2d4833 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -162,8 +162,8 @@ var/list/sacrificed = list() target.adjustBrainLoss(rand(1,5)) initial_message = 1 - if (target.species && (target.species.flags & NO_PAIN)) - target.visible_message("The markings below [target] glow a bloody red.") + if (!target.can_feel_pain()) + target.visible_message("The markings below \the [target] glow a bloody red.") else target.visible_message("[target] writhes in pain as the markings below \him glow a bloody red.", "AAAAAAHHHH!", "You hear an anguished scream.") diff --git a/code/game/jobs/job/silicon.dm b/code/game/jobs/job/silicon.dm index 6cec7149e9..b64508499c 100644 --- a/code/game/jobs/job/silicon.dm +++ b/code/game/jobs/job/silicon.dm @@ -40,7 +40,7 @@ supervisors = "your laws and the AI" //Nodrak selection_color = "#ddffdd" minimal_player_age = 1 - alt_titles = list("Android", "Robot") + alt_titles = list("Robot", "Drone") account_allowed = 0 economic_modifier = 0 diff --git a/code/game/machinery/adv_med.dm b/code/game/machinery/adv_med.dm index af922271d9..64393c2bc4 100644 --- a/code/game/machinery/adv_med.dm +++ b/code/game/machinery/adv_med.dm @@ -399,9 +399,9 @@ for(var/obj/item/organ/i in occ["internal_organs"]) var/mech = "" - if(i.robotic == 1) + if(i.status & ORGAN_ASSISTED) mech = "Assisted:" - if(i.robotic == 2) + if(i.status & ORGAN_ROBOT) mech = "Mechanical:" var/infection = "None" diff --git a/code/game/machinery/bioprinter.dm b/code/game/machinery/bioprinter.dm index 23d00318ea..0bb7dd1935 100644 --- a/code/game/machinery/bioprinter.dm +++ b/code/game/machinery/bioprinter.dm @@ -41,7 +41,7 @@ var/obj/item/organ/O = new new_organ(get_turf(src)) if(prints_prosthetics) - O.robotic = 2 + O.robotize() else if(loaded_dna) visible_message("The printer injects the stored DNA into the biomass..") O.transplant_data = list() @@ -80,5 +80,5 @@ user << "\The [src] processes \the [W]. Levels of stored matter now: [stored_matter]" qdel(W) return - + return..() \ No newline at end of file diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index a2b2b63325..d3c152fa25 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -16,7 +16,7 @@ //They need a brain! if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M - if(H.species.has_organ["brain"] && !H.has_brain()) + if(!H.has_brain()) continue if(M.ckey == find_key) selected = M diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index 857832d2f5..83b6f2ce86 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -353,11 +353,15 @@ if (!subject.has_brain()) if(istype(subject, /mob/living/carbon/human)) var/mob/living/carbon/human/H = subject - if(H.species.has_organ["brain"]) + if(H.should_have_organ("brain")) scantemp = "Error: No signs of intelligence detected." else scantemp = "Error: No signs of intelligence detected." return + + if(subject.isSynthetic()) + scantemp = "Error: Subject is not organic." + return if (subject.suiciding == 1) scantemp = "Error: Subject's brain is not responding to scanning stimuli." return diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index d32c7e45ee..c2758a7ffd 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -943,7 +943,7 @@ About the new airlock wires panel: /mob/living/carbon/airlock_crush(var/crush_damage) . = ..() - if (!(species && (species.flags & NO_PAIN))) + if(can_feel_pain()) emote("scream") /mob/living/silicon/robot/airlock_crush(var/crush_damage) diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index c1b160c94b..0fec7a9c1b 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -106,7 +106,7 @@ if(NOCLONE in T.mutations) return - if(T.species.flags & NO_BLOOD) + if(!T.should_have_organ("heart")) return // If the human is losing too much blood, beep. @@ -165,4 +165,4 @@ /obj/machinery/iv_drip/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) if(height && istype(mover) && mover.checkpass(PASSTABLE)) //allow bullets, beams, thrown objects, mice, drones, and the like through. return 1 - return ..() + return ..() diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index 703760ddf0..d3fe17a068 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -333,16 +333,14 @@ OCCUPANT.apply_effect(50, IRRADIATE) var/obj/item/organ/diona/nutrients/rad_organ = locate() in OCCUPANT.internal_organs if (!rad_organ) + if (OCCUPANT.can_feel_pain()) + OCCUPANT.emote("scream") if(src.issuperUV) var/burndamage = rand(28,35) OCCUPANT.take_organ_damage(0,burndamage) - if (!(OCCUPANT.species && (OCCUPANT.species.flags & NO_PAIN))) - OCCUPANT.emote("scream") else var/burndamage = rand(6,10) OCCUPANT.take_organ_damage(0,burndamage) - if (!(OCCUPANT.species && (OCCUPANT.species.flags & NO_PAIN))) - OCCUPANT.emote("scream") if(i==3) //End of the cycle if(!src.issuperUV) if(src.HELMET) diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm index c70a5ab9fc..250e8f350e 100644 --- a/code/game/objects/effects/decals/Cleanable/misc.dm +++ b/code/game/objects/effects/decals/Cleanable/misc.dm @@ -102,10 +102,10 @@ random_icon_states = list("vomit_1", "vomit_2", "vomit_3", "vomit_4") var/list/viruses = list() - Destroy() - for(var/datum/disease/D in viruses) - D.cure(0) - ..() +/obj/effect/decal/cleanable/vomit/Destroy() + for(var/datum/disease/D in viruses) + D.cure(0) + return ..() /obj/effect/decal/cleanable/tomato_smudge name = "tomato smudge" diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 25320136b9..eeed37b9e7 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -465,7 +465,7 @@ var/list/global/slot_flags_enumeration = list( eyes.damage += rand(3,4) if(eyes.damage >= eyes.min_bruised_damage) if(M.stat != 2) - if(eyes.robotic <= 1) //robot eyes bleeding might be a bit silly + if(!(eyes.status & ORGAN_ROBOT)) //robot eyes bleeding might be a bit silly M << "Your eyes start to bleed profusely!" if(prob(50)) if(M.stat != 2) diff --git a/code/game/objects/items/weapons/material/shards.dm b/code/game/objects/items/weapons/material/shards.dm index 65bb1d4ebc..bb4b80c1b8 100644 --- a/code/game/objects/items/weapons/material/shards.dm +++ b/code/game/objects/items/weapons/material/shards.dm @@ -64,10 +64,10 @@ ..() if(isliving(AM)) var/mob/M = AM - + if(M.buckled) //wheelchairs, office chairs, rollerbeds return - + M << "You step on \the [src]!" playsound(src.loc, 'sound/effects/glass_step.ogg', 50, 1) // not sure how to handle metal shards with sounds if(ishuman(M)) @@ -78,7 +78,7 @@ if( H.shoes || ( H.wear_suit && (H.wear_suit.body_parts_covered & FEET) ) ) return - + var/list/check = list("l_foot", "r_foot") while(check.len) var/picked = pick(check) @@ -89,7 +89,7 @@ if(affecting.take_damage(5, 0)) H.UpdateDamageIcon() H.updatehealth() - if(!(H.species.flags & NO_PAIN)) + if(affecting.can_feel_pain()) H.Weaken(3) return check -= picked diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 282e7bece6..0e1f0dadc3 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -422,14 +422,18 @@ icon_state = "red_crowbar" item_state = "crowbar_red" +/obj/item/weapon/weldingtool/attack(var/atom/A, var/mob/living/user, var/def_zone) + if(ishuman(A) && user.a_intent == I_HELP) + return + return ..() + /obj/item/weapon/weldingtool/afterattack(var/mob/M, var/mob/user) if(ishuman(M)) var/mob/living/carbon/human/H = M var/obj/item/organ/external/S = H.organs_by_name[user.zone_sel.selecting] - if (!S) return - if(!(S.status & ORGAN_ROBOT) || user.a_intent != I_HELP) + if(!S || !(S.status & ORGAN_ROBOT) || user.a_intent != I_HELP) return ..() if(S.brute_dam) @@ -438,10 +442,9 @@ user.visible_message("\The [user] patches some dents on \the [M]'s [S.name] with \the [src].") else if(S.open != 2) user << "The damage is far too severe to patch over externally." - return 1 else if(S.open != 2) user << "Nothing to fix!" - + return else return ..() diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index 9f8eed2eb5..949cbc1ff6 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -324,7 +324,7 @@ M.emote("scream") else var/mob/living/carbon/C = M - if (!(C.species && (C.species.flags & NO_PAIN))) + if (C.can_feel_pain()) C.emote("scream") //Logging for this causes runtimes resulting in the cremator locking up. Commenting it out until that's figured out. diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index e959c1991b..19302f8d30 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -880,12 +880,15 @@ var/list/admin_verbs_mentor = list( if(new_fstyle) M.f_style = new_fstyle - var/new_gender = alert(usr, "Please select gender.", "Character Generation", "Male", "Female") + var/new_gender = alert(usr, "Please select gender.", "Character Generation", "Male", "Female", "Neuter") if (new_gender) if(new_gender == "Male") M.gender = MALE - else + else if (new_gender == "Female") M.gender = FEMALE + else + M.gender = NEUTER + M.update_hair() M.update_body() M.check_dna(M) diff --git a/code/modules/client/preference_setup/general/01_basic.dm b/code/modules/client/preference_setup/general/01_basic.dm index 440cf90e59..0f993b0fca 100644 --- a/code/modules/client/preference_setup/general/01_basic.dm +++ b/code/modules/client/preference_setup/general/01_basic.dm @@ -1,7 +1,7 @@ /datum/category_item/player_setup_item/general/basic name = "Basic" sort_order = 1 - var/list/valid_player_genders = list(MALE, FEMALE) + var/list/valid_player_genders = list(MALE, FEMALE, NEUTER, PLURAL) /datum/category_item/player_setup_item/general/basic/load_character(var/savefile/S) S["real_name"] >> pref.real_name diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index 07530881fe..720a3d3c07 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -75,8 +75,8 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O /datum/category_item/player_setup_item/general/body/content(var/mob/user) pref.update_preview_icon() if(pref.preview_icon_front && pref.preview_icon_side) - user << browse_rsc(pref.preview_icon_front, "previewicon.png") - user << browse_rsc(pref.preview_icon_side, "previewicon2.png") + user << browse_rsc(pref.preview_icon_front, "preview_icon.png") + user << browse_rsc(pref.preview_icon_side, "preview_icon2.png") var/mob_species = all_species[pref.species] . += "
Body " @@ -87,7 +87,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O if(has_flag(mob_species, HAS_SKIN_TONE)) . += "Skin Tone: [-pref.s_tone + 35]/220
" . += "Needs Glasses: [pref.disabilities & NEARSIGHTED ? "Yes" : "No"]
" - . += "Limbs: Adjust
" + . += "Limbs: Adjust Reset
" . += "Internal Organs: Adjust
" //display limbs below @@ -96,6 +96,13 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O var/status = pref.organ_data[name] var/organ_name = null switch(name) + + if("torso") + organ_name = "torso" + if("groin") + organ_name = "groin" + if("head") + organ_name = "head" if("l_arm") organ_name = "left arm" if("r_arm") @@ -116,6 +123,8 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O organ_name = "heart" if("eyes") organ_name = "eyes" + if("brain") + organ_name = "brain" if(status == "cyborg") ++ind @@ -136,7 +145,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O ++ind if(ind > 1) . += ", " - . += "\tMechanical [organ_name]" + . += "\tSynthetic [organ_name]" else if(status == "assisted") ++ind if(ind > 1) @@ -148,6 +157,8 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O . += "\tSurgically altered [organ_name]" if("eyes") . += "\tRetinal overlayed [organ_name]" + if("brain") + . += "\tAssisted-interface [organ_name]" else . += "\tMechanically assisted [organ_name]" if(!ind) @@ -155,7 +166,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O else . += "

" - . += "
Preview
" + . += "
Preview
" . += "
" . += "Hair
" @@ -252,6 +263,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O pref.b_hair = 0//hex2num(copytext(new_hair, 6, 8)) pref.s_tone = 0 + reset_limbs() // Safety for species with incompatible manufacturers; easier than trying to do it case by case. return TOPIC_REFRESH else if(href_list["hair_color"]) @@ -334,8 +346,12 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O pref.f_style = new_f_style return TOPIC_REFRESH + else if(href_list["reset_limbs"]) + reset_limbs() + return TOPIC_REFRESH + else if(href_list["limbs"]) - var/limb_name = input(user, "Which limb do you want to change?") as null|anything in list("Left Leg","Right Leg","Left Arm","Right Arm","Left Foot","Right Foot","Left Hand","Right Hand") + var/limb_name = input(user, "Which limb do you want to change?") as null|anything in list("Left Leg","Right Leg","Left Arm","Right Arm","Left Foot","Right Foot","Left Hand","Right Hand","Full Body") if(!limb_name && !CanUseTopic(user)) return TOPIC_NOACTION var/limb = null @@ -366,6 +382,9 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O if("Right Hand") limb = "r_hand" third_limb = "r_arm" + if("Full Body") + limb = "torso" + var/new_state = input(user, "What state do you wish the limb to be in?") as null|anything in list("Normal","Amputated","Prothesis") if(!new_state && !CanUseTopic(user)) return TOPIC_NOACTION @@ -378,6 +397,10 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O pref.organ_data[third_limb] = null pref.rlimb_data[third_limb] = null if("Amputated") + + if(limb == "torso") + return + pref.organ_data[limb] = "amputated" pref.rlimb_data[limb] = null if(second_limb) @@ -397,17 +420,31 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O var/choice = input(user, "Which manufacturer do you wish to use for this limb?") as null|anything in usable_manufacturers if(!choice) return + pref.rlimb_data[limb] = choice pref.organ_data[limb] = "cyborg" + if(second_limb) pref.rlimb_data[second_limb] = choice pref.organ_data[second_limb] = "cyborg" if(third_limb && pref.organ_data[third_limb] == "amputated") pref.organ_data[third_limb] = null + + if(limb == "torso") + for(var/other_limb in list("l_foot","r_foot","l_hand","r_hand","l_leg","r_leg","l_arm","r_arm","groin","head")) + if(pref.organ_data[other_limb]) + continue + pref.organ_data[other_limb] = "cyborg" + pref.rlimb_data[other_limb] = choice + if(!pref.organ_data["brain"]) + pref.organ_data["brain"] = "assisted" + for(var/internal_organ in list("heart","eyes")) + pref.organ_data[internal_organ] = "mechanical" + return TOPIC_REFRESH else if(href_list["organs"]) - var/organ_name = input(user, "Which internal function do you want to change?") as null|anything in list("Heart", "Eyes") + var/organ_name = input(user, "Which internal function do you want to change?") as null|anything in list("Heart", "Eyes", "Brain") if(!organ_name) return var/organ = null @@ -416,12 +453,20 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O organ = "heart" if("Eyes") organ = "eyes" + if("Brain") + if(pref.organ_data["head"] != "cyborg") + user << "You may only select an assisted or synthetic brain if you have a full prosthetic body." + return + organ = "brain" var/new_state = input(user, "What state do you wish the organ to be in?") as null|anything in list("Normal","Assisted","Mechanical") if(!new_state) return switch(new_state) if("Normal") + if(pref.organ_data["torso"] == "cyborg") + user << "A character with a synthetic body may only use synthetic organs." + return pref.organ_data[organ] = null if("Assisted") pref.organ_data[organ] = "assisted" @@ -436,6 +481,18 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O return ..() +/datum/category_item/player_setup_item/general/body/proc/reset_limbs() + + for(var/organ in pref.organ_data) + pref.organ_data[organ] = null + while(null in pref.organ_data) + pref.organ_data -= null + + for(var/organ in pref.rlimb_data) + pref.rlimb_data[organ] = null + while(null in pref.rlimb_data) + pref.rlimb_data -= null + /datum/category_item/player_setup_item/general/body/proc/SetSpecies(mob/user) if(!pref.species_preview || !(pref.species_preview in all_species)) pref.species_preview = "Human" @@ -455,10 +512,10 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O dat += "
Often present on human stations." if(current_species.spawn_flags & IS_WHITELISTED) dat += "
Whitelist restricted." - if(current_species.flags & NO_BLOOD) - dat += "
Does not have blood." - if(current_species.flags & NO_BREATHE) - dat += "
Does not breathe." + if(!current_species.has_organ["heart"]) + dat += "
Does not have a circulatory system." + if(!current_species.has_organ["lungs"]) + dat += "
Does not have a respiratory system." if(current_species.flags & NO_SCAN) dat += "
Does not have DNA." if(current_species.flags & NO_PAIN) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 6bc9b88845..b4060b221f 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -310,6 +310,8 @@ datum/preferences var/status = organ_data[name] var/obj/item/organ/external/O = character.organs_by_name[name] + if(name == "torso" && !O) + O = character.organs_by_name["chest"] if(O) O.status = 0 if(status == "amputated") @@ -334,20 +336,14 @@ datum/preferences I.robotize() character.underwear = underwear - character.undershirt = undershirt - character.socks = socks if(backbag > 4 || backbag < 1) backbag = 1 //Same as above character.backbag = backbag - //Debugging report to track down a bug, which randomly assigned the plural gender to people. - if(character.gender in list(PLURAL, NEUTER)) - if(isliving(src)) //Ghosts get neuter by default - message_admins("[character] ([character.ckey]) has spawned with their gender as plural or neuter. Please notify coders.") - character.gender = MALE + character.update_body() /datum/preferences/proc/open_load_dialog(mob/user) var/dat = "" diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 5610a23f63..f57b9c9be2 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -99,10 +99,9 @@ var/sound = "heartbeat" var/sound_strength = "cannot hear" var/heartbeat = 0 - if(M.species && M.species.has_organ["heart"]) - var/obj/item/organ/heart/heart = M.internal_organs_by_name["heart"] - if(heart && !heart.robotic) - heartbeat = 1 + var/obj/item/organ/heart/heart = M.internal_organs_by_name["heart"] + if(heart && !(heart.status & ORGAN_ROBOT)) + heartbeat = 1 if(M.stat == DEAD || (M.status_flags&FAKEDEATH)) sound_strength = "cannot hear" sound = "anything" @@ -112,7 +111,6 @@ sound_strength = "hear" sound = "no heartbeat" if(heartbeat) - var/obj/item/organ/heart/heart = M.internal_organs_by_name["heart"] if(heart.is_bruised() || M.getOxyLoss() > 50) sound = "[pick("odd noises in","weak")] heartbeat" else diff --git a/code/modules/mob/language/station.dm b/code/modules/mob/language/station.dm index cc477f0ee7..d237f36b09 100644 --- a/code/modules/mob/language/station.dm +++ b/code/modules/mob/language/station.dm @@ -96,13 +96,13 @@ /datum/language/machine name = "Encoded Audio Language" - desc = "A language of encoded tones that allow for IPCs to communicate auditorily between each other in a manner that allows for easier transfer of information." - speech_verb = "beeps" - ask_verb = "beeps" - exclaim_verb = "loudly beeps" + desc = "A efficient language of encoded tones developed by synthetics and cyborgs." + speech_verb = "whistles" + ask_verb = "chirps" + exclaim_verb = "whistles loudly" colour = "changeling" key = "6" - flags = RESTRICTED | NO_STUTTER + flags = NO_STUTTER syllables = list("beep","beep","beep","beep","beep","boop","boop","boop","bop","bop","dee","dee","doo","doo","hiss","hss","buzz","buzz","bzz","ksssh","keey","wurr","wahh","tzzz") space_chance = 10 diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index 07004f9754..03de410f5e 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -60,7 +60,7 @@ brainobj = O brainobj.loc = src - name = "Man-Machine Interface: [brainmob.real_name]" + name = "man-machine interface ([brainmob.real_name])" icon_state = "mmi_full" locked = 1 diff --git a/code/modules/mob/living/carbon/brain/brain_item.dm b/code/modules/mob/living/carbon/brain/brain_item.dm index 543c3d339f..fc1e7778ad 100644 --- a/code/modules/mob/living/carbon/brain/brain_item.dm +++ b/code/modules/mob/living/carbon/brain/brain_item.dm @@ -15,6 +15,25 @@ attack_verb = list("attacked", "slapped", "whacked") var/mob/living/carbon/brain/brainmob = null + +/obj/item/organ/brain/robotize() + replace_self_with(/obj/item/organ/mmi_holder/posibrain) + +/obj/item/organ/brain/mechassist() + replace_self_with(/obj/item/organ/mmi_holder) + +/obj/item/organ/brain/proc/replace_self_with(replace_path) + if(!owner) + new replace_path(src.loc) + qdel(src) + return + owner.internal_organs_by_name[organ_tag] = new replace_path(owner, 1) + owner.internal_organs -= src + while(null in owner.internal_organs_by_name) + owner.internal_organs_by_name -= null + while(null in owner.internal_organs) + owner.internal_organs -= null + /obj/item/organ/pariah_brain name = "brain remnants" desc = "Did someone tread on this? It looks useless for cloning or cyborgification." @@ -93,13 +112,11 @@ /obj/item/organ/brain/slime name = "slime core" desc = "A complex, organic knot of jelly and crystalline particles." - robotic = 2 icon = 'icons/mob/slimes.dmi' icon_state = "green slime extract" /obj/item/organ/brain/golem name = "chem" desc = "A tightly furled roll of paper, covered with indecipherable runes." - robotic = 2 icon = 'icons/obj/wizard.dmi' icon_state = "scroll" diff --git a/code/modules/mob/living/carbon/breathe.dm b/code/modules/mob/living/carbon/breathe.dm index 20f86d4dde..fa87736f26 100644 --- a/code/modules/mob/living/carbon/breathe.dm +++ b/code/modules/mob/living/carbon/breathe.dm @@ -7,7 +7,7 @@ /mob/living/carbon/proc/breathe() //if(istype(loc, /obj/machinery/atmospherics/unary/cryo_cell)) return - if(species && (species.flags & NO_BREATHE) || does_not_breathe) return + if(!should_have_organ("lungs") || does_not_breathe) return var/datum/gas_mixture/breath = null diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index fd6fd0f658..f0b09f88d6 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -472,3 +472,11 @@ if(!species) return null return species.default_language ? all_languages[species.default_language] : null + +/mob/living/carbon/proc/should_have_organ(var/organ_check) + return 0 + +/mob/living/carbon/proc/can_feel_pain(var/check_organ) + if(isSynthetic()) + return 0 + return !(species.flags & NO_PAIN) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/carbon_powers.dm b/code/modules/mob/living/carbon/carbon_powers.dm index 65fcbc7b17..f1360504ef 100644 --- a/code/modules/mob/living/carbon/carbon_powers.dm +++ b/code/modules/mob/living/carbon/carbon_powers.dm @@ -8,7 +8,7 @@ var/mob/living/simple_animal/borer/B = has_brain_worms() if(B && B.host_brain) - src << "\red You withdraw your probosci, releasing control of [B.host_brain]" + src << "You withdraw your probosci, releasing control of [B.host_brain]" B.detatch() @@ -17,7 +17,7 @@ verbs -= /mob/living/carbon/proc/spawn_larvae else - src << "\red ERROR NO BORER OR BRAINMOB DETECTED IN THIS MOB, THIS IS A BUG !" + src << "ERROR NO BORER OR BRAINMOB DETECTED IN THIS MOB, THIS IS A BUG !" //Brain slug proc for tormenting the host. /mob/living/carbon/proc/punish_host() @@ -31,13 +31,12 @@ return if(B.host_brain.ckey) - src << "\red You send a punishing spike of psychic agony lancing into your host's brain." - - if (species && (species.flags & NO_PAIN)) - B.host_brain << "\red You feel a strange sensation as a foreign influence prods your mind." - src << "\red It doesn't seem to be as effective as you hoped." + src << "You send a punishing spike of psychic agony lancing into your host's brain." + if (!can_feel_pain()) + B.host_brain << "You feel a strange sensation as a foreign influence prods your mind." + src << "It doesn't seem to be as effective as you hoped." else - B.host_brain << "\red Horrific, burning agony lances through you, ripping a soundless scream from your trapped mind!" + B.host_brain << "Horrific, burning agony lances through you, ripping a soundless scream from your trapped mind!" /mob/living/carbon/proc/spawn_larvae() set category = "Abilities" @@ -50,15 +49,14 @@ return if(B.chemicals >= 100) - src << "\red Your host twitches and quivers as you rapidly excrete a larva from your sluglike body." - visible_message("\red [src] heaves violently, expelling a rush of vomit and a wriggling, sluglike creature!") + src << "Your host twitches and quivers as you rapidly excrete a larva from your sluglike body." + visible_message("\The [src] heaves violently, expelling a rush of vomit and a wriggling, sluglike creature!") B.chemicals -= 100 B.has_reproduced = 1 - new /obj/effect/decal/cleanable/vomit(get_turf(src)) - playsound(loc, 'sound/effects/splat.ogg', 50, 1) + vomit(1) new /mob/living/simple_animal/borer(get_turf(src)) else - src << "You do not have enough chemicals stored to reproduce." + src << "You do not have enough chemicals stored to reproduce." return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/appearance.dm b/code/modules/mob/living/carbon/human/appearance.dm index 5f9d7e827c..cf404df6ff 100644 --- a/code/modules/mob/living/carbon/human/appearance.dm +++ b/code/modules/mob/living/carbon/human/appearance.dm @@ -157,30 +157,44 @@ return valid_species /mob/living/carbon/human/proc/generate_valid_hairstyles(var/check_gender = 1) + + var/use_species = species.get_bodytype() + var/obj/item/organ/external/head/H = get_organ("head") + if(H) use_species = H.species.get_bodytype() + var/list/valid_hairstyles = new() for(var/hairstyle in hair_styles_list) var/datum/sprite_accessory/S = hair_styles_list[hairstyle] - if(check_gender && gender == MALE && S.gender == FEMALE) - continue - if(check_gender && gender == FEMALE && S.gender == MALE) - continue - if(!(species.get_bodytype() in S.species_allowed)) + if(check_gender && gender != NEUTER) + if(gender == MALE && S.gender == FEMALE) + continue + else if(gender == FEMALE && S.gender == MALE) + continue + + if(!(use_species in S.species_allowed)) continue valid_hairstyles += hairstyle return valid_hairstyles /mob/living/carbon/human/proc/generate_valid_facial_hairstyles() + + var/use_species = species.get_bodytype() + var/obj/item/organ/external/head/H = get_organ("head") + if(H) use_species = H.species.get_bodytype() + var/list/valid_facial_hairstyles = new() for(var/facialhairstyle in facial_hair_styles_list) var/datum/sprite_accessory/S = facial_hair_styles_list[facialhairstyle] - if(gender == MALE && S.gender == FEMALE) - continue - if(gender == FEMALE && S.gender == MALE) - continue - if(!(species.get_bodytype() in S.species_allowed)) + if(gender != NEUTER) + if(gender == MALE && S.gender == FEMALE) + continue + else if(gender == FEMALE && S.gender == MALE) + continue + + if(!(use_species in S.species_allowed)) continue valid_facial_hairstyles += facialhairstyle diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index ff7255523d..a01a8f4ee8 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -15,7 +15,7 @@ I.throw_at(get_edge_target_turf(src,pick(alldirs)), rand(1,3), round(30/I.w_class)) ..(species.gibbed_anim) - gibs(loc, viruses, dna, null, species.flesh_color, species.blood_color) + gibs(loc, viruses, dna, null, species.get_flesh_colour(src), species.get_blood_colour(src)) /mob/living/carbon/human/dust() if(species) @@ -68,7 +68,7 @@ if(wearing_rig) wearing_rig.notify_ai("Warning: user death event. Mobility control passed to integrated intelligence system.") - return ..(gibbed,species.death_message) + return ..(gibbed,species.get_death_message(src)) /mob/living/carbon/human/proc/ChangeToHusk() if(HUSK in mutations) return diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index c1abe448f3..6509943754 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -207,7 +207,7 @@ m_type = 2 if ("deathgasp") - message = "[species.death_message]" + message = "[species.get_death_message()]" m_type = 1 if ("giggle") diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 07619bff1f..650a72014e 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -38,9 +38,21 @@ CRASH("Gender datum was null; key was '[(skipjumpsuit && skipface) ? PLURAL : gender]'") msg += "[src.name]" - if(species.name != "Human") - msg += ", a [species.name]" - msg += "!\n" + + + var/is_synth = isSynthetic() + if(is_synth) + var/use_gender = "a synthetic" + if(gender == MALE) + use_gender = "an android" + else if(gender == FEMALE) + use_gender = "a gynoid" + + msg += ", [use_gender]!
" + + else if(species.name != "Human") + msg += ", \a [species.name]!" + msg += "
" //uniform if(w_uniform && !skipjumpsuit) @@ -230,11 +242,12 @@ if(getBrainLoss() >= 60) msg += "[T.He] [T.has] a stupid expression on [T.his] face.\n" - if(species.show_ssd && (!species.has_organ["brain"] || has_brain()) && stat != DEAD) + var/ssd_msg = species.get_ssd(src) + if(ssd_msg && (!should_have_organ("brain") || has_brain()) && stat != DEAD) if(!key) - msg += "[T.He] [T.is] [species.show_ssd]. It doesn't look like [T.he] [T.is] waking up anytime soon.\n" + msg += "[T.He] [T.is] [ssd_msg]. It doesn't look like [T.he] [T.is] waking up anytime soon.\n" else if(!client) - msg += "[T.He] [T.is] [species.show_ssd].\n" + msg += "[T.He] [T.is] [ssd_msg].\n" var/list/wound_flavor_text = list() var/list/is_destroyed = list() @@ -261,12 +274,12 @@ is_destroyed["[temp.name]"] = 1 wound_flavor_text["[temp.name]"] = "[T.He] [T.is] missing [T.his] [temp.name].\n" continue - if(temp.status & ORGAN_ROBOT) + if(!is_synth && temp.status & ORGAN_ROBOT) if(!(temp.brute_dam + temp.burn_dam)) - wound_flavor_text["[temp.name]"] = "[T.He] [T.has] a robot [temp.name]!\n" + wound_flavor_text["[temp.name]"] = "[T.He] [T.has] a [temp.name]!\n" continue else - wound_flavor_text["[temp.name]"] = "[T.He] [T.has] a robot [temp.name]. It has[temp.get_wounds_desc()]!\n" + wound_flavor_text["[temp.name]"] = "[T.He] [T.has] a [temp.name]. It has[temp.get_wounds_desc()]!\n" else if(temp.wounds.len > 0 || temp.open) if(temp.is_stump() && temp.parent_organ && organs_by_name[temp.parent_organ]) var/obj/item/organ/external/parent = organs_by_name[temp.parent_organ] diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index eef1b95245..68662204a3 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -654,18 +654,12 @@ ///eyecheck() ///Returns a number between -1 to 2 /mob/living/carbon/human/eyecheck() + + var/obj/item/organ/I = internal_organs_by_name["eyes"] + if(!I || I.status & (ORGAN_CUT_AWAY|ORGAN_DESTROYED)) + return 2 + var/number = 0 - - if(!species.has_organ["eyes"]) //No eyes, can't hurt them. - return 2 - - if(internal_organs_by_name["eyes"]) // Eyes are fucked, not a 'weak point'. - var/obj/item/organ/I = internal_organs_by_name["eyes"] - if(I.status & ORGAN_CUT_AWAY) - return 2 - else - return 2 - if(istype(src.head, /obj/item/clothing/head/welding)) if(!src.head:up) number += 2 @@ -690,8 +684,6 @@ //Used by various things that knock people out by applying blunt trauma to the head. //Checks that the species has a "head" (brain containing organ) and that hit_zone refers to it. /mob/living/carbon/human/proc/headcheck(var/target_zone, var/brain_tag = "brain") - if(!species.has_organ[brain_tag]) - return 0 var/obj/item/organ/affecting = internal_organs_by_name[brain_tag] @@ -745,38 +737,16 @@ xylophone=0 return -/mob/living/carbon/human/proc/check_has_mouth() +/mob/living/proc/check_has_mouth() + return 1 + +/mob/living/carbon/human/check_has_mouth() // Todo, check stomach organ when implemented. var/obj/item/organ/external/head/H = get_organ("head") if(!H || !H.can_intake_reagents) return 0 return 1 -/mob/living/carbon/human/proc/vomit() - - if(!check_has_mouth()) - return - - if(!lastpuke) - lastpuke = 1 - src << "You feel nauseous..." - spawn(150) //15 seconds until second warning - src << "You feel like you are about to throw up!" - spawn(100) //and you have 10 more for mad dash to the bucket - Stun(5) - - src.visible_message("[src] throws up!","You throw up!") - playsound(loc, 'sound/effects/splat.ogg', 50, 1) - - var/turf/location = loc - if (istype(location, /turf/simulated)) - location.add_vomit_floor(src, 1) - - nutrition -= 40 - adjustToxLoss(-3) - spawn(350) //wait 35 seconds before next volley - lastpuke = 0 - /mob/living/carbon/human/proc/morph() set name = "Morph" set category = "Superpower" @@ -846,12 +816,14 @@ if(new_style) f_style = new_style - var/new_gender = alert(usr, "Please select gender.", "Character Generation", "Male", "Female") + var/new_gender = alert(usr, "Please select gender.", "Character Generation", "Male", "Female", "Neutral") if (new_gender) if(new_gender == "Male") gender = MALE - else + else if(new_gender == "Female") gender = FEMALE + else + gender = NEUTER regenerate_icons() check_dna() @@ -936,13 +908,12 @@ /mob/living/carbon/human/revive() - if(species && !(species.flags & NO_BLOOD)) + if(should_have_organ("heart")) vessel.add_reagent("blood",560-vessel.total_volume) fixblood() - // Fix up all organs. - // This will ignore any prosthetics in the prefs currently. - species.create_organs(src) + species.create_organs(src) // Reset our organs/limbs. + restore_all_organs() // Reapply robotics/amputated status from preferences. if(!client || !key) //Don't boot out anyone already in the mob. for (var/obj/item/organ/brain/H in world) @@ -1057,7 +1028,7 @@ for(var/obj/item/O in organ.implants) if(!istype(O,/obj/item/weapon/implant) && prob(5)) //Moving with things stuck in you could be bad. // All kinds of embedded objects cause bleeding. - if(species.flags & NO_PAIN) + if(!can_feel_pain(organ.limb_name)) src << "You feel [O] moving inside your [organ.name]." else var/msg = pick( \ @@ -1067,7 +1038,7 @@ src << msg organ.take_damage(rand(1,3), 0, 0) - if(!(organ.status & ORGAN_ROBOT) && !(species.flags & NO_BLOOD)) //There is no blood in protheses. + if(!(organ.status & ORGAN_ROBOT) && !should_have_organ("heart")) //There is no blood in protheses. organ.status |= ORGAN_BLEEDING src.adjustToxLoss(rand(1,3)) @@ -1302,11 +1273,15 @@ /mob/living/carbon/human/getDNA() if(species.flags & NO_SCAN) return null + if(isSynthetic()) + return ..() /mob/living/carbon/human/setDNA() if(species.flags & NO_SCAN) return + if(isSynthetic()) + return ..() /mob/living/carbon/human/has_brain() @@ -1423,3 +1398,24 @@ pulling_punches = !pulling_punches src << "You are now [pulling_punches ? "pulling your punches" : "not pulling your punches"]." return + +/mob/living/carbon/human/should_have_organ(var/organ_check) + + var/obj/item/organ/external/affecting + if(organ_check in list("heart","lungs")) + affecting = organs_by_name["chest"] + else if(organ_check in list("liver","kidneys")) + affecting = organs_by_name["groin"] + + if(affecting && (affecting.status & ORGAN_ROBOT)) + return 0 + return (species && species.has_organ[organ_check]) + +/mob/living/carbon/human/can_feel_pain(var/obj/item/organ/check_organ) + if(isSynthetic()) + return 0 + if(check_organ) + if(!istype(check_organ)) + return 0 + return check_organ.can_feel_pain() + return !(species.flags & NO_PAIN) diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index 377581d09b..517bc79a41 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -13,7 +13,7 @@ total_brute += O.brute_dam total_burn += O.burn_dam - var/oxy_l = ((species.flags & NO_BREATHE) ? 0 : getOxyLoss()) + var/oxy_l = getOxyLoss() var/tox_l = ((species.flags & NO_POISON) ? 0 : getToxLoss()) var/clone_l = getCloneLoss() @@ -28,7 +28,7 @@ if(status_flags & GODMODE) return 0 //godmode - if(species && species.has_organ["brain"]) + if(should_have_organ("brain")) var/obj/item/organ/brain/sponge = internal_organs_by_name["brain"] if(sponge) sponge.take_damage(amount) @@ -42,7 +42,7 @@ if(status_flags & GODMODE) return 0 //godmode - if(species && species.has_organ["brain"]) + if(should_have_organ("brain")) var/obj/item/organ/brain/sponge = internal_organs_by_name["brain"] if(sponge) sponge.damage = min(max(amount, 0),(maxHealth*2)) @@ -56,7 +56,7 @@ if(status_flags & GODMODE) return 0 //godmode - if(species && species.has_organ["brain"]) + if(should_have_organ("brain")) var/obj/item/organ/brain/sponge = internal_organs_by_name["brain"] if(sponge) brainloss = min(sponge.damage,maxHealth*2) @@ -142,12 +142,12 @@ ..() /mob/living/carbon/human/getCloneLoss() - if(species.flags & (NO_SCAN)) + if((species.flags & NO_SCAN) || isSynthetic()) cloneloss = 0 return ..() /mob/living/carbon/human/setCloneLoss(var/amount) - if(species.flags & (NO_SCAN)) + if((species.flags & NO_SCAN) || isSynthetic()) cloneloss = 0 else ..() @@ -155,7 +155,7 @@ /mob/living/carbon/human/adjustCloneLoss(var/amount) ..() - if(species.flags & (NO_SCAN)) + if((species.flags & NO_SCAN) || isSynthetic()) cloneloss = 0 return @@ -189,37 +189,37 @@ // Defined here solely to take species flags into account without having to recast at mob/living level. /mob/living/carbon/human/getOxyLoss() - if(species.flags & NO_BREATHE) + if(!should_have_organ("lungs")) oxyloss = 0 return ..() /mob/living/carbon/human/adjustOxyLoss(var/amount) - if(species.flags & NO_BREATHE) + if(!should_have_organ("lungs")) oxyloss = 0 else amount = amount*species.oxy_mod ..(amount) /mob/living/carbon/human/setOxyLoss(var/amount) - if(species.flags & NO_BREATHE) + if(!should_have_organ("lungs")) oxyloss = 0 else ..() /mob/living/carbon/human/getToxLoss() - if(species.flags & NO_POISON) + if((species.flags & NO_POISON) || isSynthetic()) toxloss = 0 return ..() /mob/living/carbon/human/adjustToxLoss(var/amount) - if(species.flags & NO_POISON) + if((species.flags & NO_POISON) || isSynthetic()) toxloss = 0 else amount = amount*species.toxins_mod ..(amount) /mob/living/carbon/human/setToxLoss(var/amount) - if(species.flags & NO_POISON) + if((species.flags & NO_POISON) || isSynthetic()) toxloss = 0 else ..() @@ -321,7 +321,7 @@ In most cases it makes more sense to use apply_damage() instead! And make sure t This function restores the subjects blood to max. */ /mob/living/carbon/human/proc/restore_blood() - if(!(species.flags & NO_BLOOD)) + if(should_have_organ("heart")) var/blood_volume = vessel.get_reagent_amount("blood") vessel.add_reagent("blood",560.0-blood_volume) @@ -329,9 +329,9 @@ This function restores the subjects blood to max. /* This function restores all organs. */ -/mob/living/carbon/human/restore_all_organs() +/mob/living/carbon/human/restore_all_organs(var/ignore_prosthetic_prefs) for(var/obj/item/organ/external/current_organ in organs) - current_organ.rejuvenate() + current_organ.rejuvenate(ignore_prosthetic_prefs) /mob/living/carbon/human/proc/HealDamage(zone, brute, burn) var/obj/item/organ/external/E = get_organ(zone) @@ -354,14 +354,19 @@ This function restores all organs. if(Debug2) world.log << "## DEBUG: human/apply_damage() was called on [src], with [damage] damage, and an armor value of [blocked]." - //visible_message("Hit debug. [damage] | [damagetype] | [def_zone] | [blocked] | [sharp] | [used_weapon]") + var/obj/item/organ/external/organ = null + if(isorgan(def_zone)) + organ = def_zone + else + if(!def_zone) def_zone = ran_zone(def_zone) + organ = get_organ(check_zone(def_zone)) //Handle other types of damage if((damagetype != BRUTE) && (damagetype != BURN)) - if(damagetype == HALLOSS && !(species && (species.flags & NO_PAIN))) - if ((damage > 25 && prob(20)) || (damage > 50 && prob(60))) - emote("scream") - + if(damagetype == HALLOSS) + if((damage > 25 && prob(20)) || (damage > 50 && prob(60))) + if(organ && organ.can_feel_pain()) + emote("scream") ..(damage, damagetype, def_zone, blocked) return 1 @@ -371,12 +376,7 @@ This function restores all organs. if(blocked >= 100) return 0 - var/obj/item/organ/external/organ = null - if(isorgan(def_zone)) - organ = def_zone - else - if(!def_zone) def_zone = ran_zone(def_zone) - organ = get_organ(check_zone(def_zone)) + if(!organ) return 0 if(blocked) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index e34a4de79e..b516852074 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -61,7 +61,7 @@ emp_act emote("me", 1, "drops what they were holding, their [affected.name] malfunctioning!") else var/emote_scream = pick("screams in pain and ", "lets out a sharp cry and ", "cries out and ") - emote("me", 1, "[(species && species.flags & NO_PAIN) ? "" : emote_scream ]drops what they were holding in their [affected.name]!") + emote("me", 1, "[affected.can_feel_pain() ? "" : emote_scream]drops what they were holding in their [affected.name]!") ..(stun_amount, agony_amount, def_zone) @@ -223,7 +223,7 @@ emp_act //Harder to score a stun but if you do it lasts a bit longer if(prob(effective_force)) apply_effect(20, PARALYZE, armor) - visible_message("[src] [species.knockout_message]") + visible_message("[src] [species.get_knockout_message(src)]") else //Easier to score a stun but lasts less time if(prob(effective_force + 10)) diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 7ed171a1f1..f116ae17f0 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -83,6 +83,7 @@ var/list/flavor_texts = list() var/gunshot_residue var/pulling_punches // Are you trying not to hurt your opponent? + var/full_prosthetic // We are a robutt. mob_bump_flag = HUMAN mob_push_flags = ~HEAVY diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index ca81defe0f..c8011cb059 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -16,7 +16,7 @@ var/health_deficiency = (100 - health) if(health_deficiency >= 40) tally += (health_deficiency / 25) - if (!(species && (species.flags & NO_PAIN))) + if(can_feel_pain()) if(halloss >= 10) tally += (halloss / 10) //halloss shouldn't slow you down if you can't even feel it var/hungry = (500 - nutrition)/5 // So overeat would be 100 and default level would be 80 @@ -42,7 +42,7 @@ var/obj/item/organ/external/E = get_organ(organ_name) if(!E || (E.status & ORGAN_DESTROYED)) tally += 4 - if(E.status & ORGAN_SPLINTED) + else if(E.status & ORGAN_SPLINTED) tally += 0.5 else if(E.status & ORGAN_BROKEN) tally += 1.5 diff --git a/code/modules/mob/living/carbon/human/human_organs.dm b/code/modules/mob/living/carbon/human/human_organs.dm index d69f6e57cc..cab9b5a1c2 100644 --- a/code/modules/mob/living/carbon/human/human_organs.dm +++ b/code/modules/mob/living/carbon/human/human_organs.dm @@ -68,6 +68,7 @@ if (istype(buckled, /obj/structure/bed)) return + var/limb_pain for(var/limb_tag in list("l_leg","r_leg","l_foot","r_foot")) var/obj/item/organ/external/E = organs_by_name[limb_tag] if(!E || (E.status & (ORGAN_DESTROYED|ORGAN_DEAD))) @@ -88,6 +89,8 @@ else if (E.is_dislocated()) stance_damage += 0.5 + if(E) limb_pain = E.can_feel_pain() + // Canes and crutches help you stand (if the latter is ever added) // One cane mitigates a broken leg+foot, or a missing foot. // Two canes are needed for a lost leg. If you are missing both legs, canes aren't gonna help you. @@ -99,7 +102,7 @@ // standing is poor if(stance_damage >= 4 || (stance_damage >= 2 && prob(5))) if(!(lying || resting)) - if(species && !(species.flags & NO_PAIN)) + if(limb_pain) emote("scream") custom_emote(1, "collapses!") Weaken(5) //can't emote while weakened, apparently. @@ -145,7 +148,7 @@ drop_from_inventory(r_hand) var/emote_scream = pick("screams in pain and ", "lets out a sharp cry and ", "cries out and ") - emote("me", 1, "[(species.flags & NO_PAIN) ? "" : emote_scream ]drops what they were holding in their [E.name]!") + emote("me", 1, "[(E.can_feel_pain()) ? "" : emote_scream ]drops what they were holding in their [E.name]!") else if(E.is_malfunctioning()) switch(E.body_part) diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index ae66cf3fe0..c3d0568b80 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -40,7 +40,6 @@ This saves us from having to call add_fingerprint() any time something is put in /mob/living/carbon/human/proc/has_organ(name) var/obj/item/organ/external/O = organs_by_name[name] - return (O && !(O.status & ORGAN_DESTROYED) && !O.is_stump()) /mob/living/carbon/human/proc/has_organ_for_slot(slot) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 97327c4bbd..8e77023fe7 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -254,6 +254,12 @@ radiation = Clamp(radiation,0,100) if (radiation) + + // TODO. + if(isSynthetic()) + radiation = 0 + return + var/obj/item/organ/diona/nutrients/rad_organ = locate() in internal_organs if(rad_organ && !rad_organ.is_broken()) var/rads = radiation/25 @@ -365,7 +371,7 @@ var/safe_pressure_min = 16 // Minimum safe partial pressure of breathable gas in kPa // Lung damage increases the minimum safe pressure. - if(species.has_organ["lungs"]) + if(should_have_organ("lungs")) var/obj/item/organ/lungs/L = internal_organs_by_name["lungs"] if(isnull(L)) safe_pressure_min = INFINITY //No lungs, how are you breathing? @@ -831,6 +837,7 @@ return min(1,thermal_protection) /mob/living/carbon/human/handle_chemicals_in_body() + if(in_stasis) return @@ -838,43 +845,48 @@ chem_effects.Cut() analgesic = 0 - if(touching) touching.metabolize() - if(ingested) ingested.metabolize() - if(bloodstr) bloodstr.metabolize() + if(!isSynthetic()) - if(CE_PAINKILLER in chem_effects) - analgesic = chem_effects[CE_PAINKILLER] + if(touching) touching.metabolize() + if(ingested) ingested.metabolize() + if(bloodstr) bloodstr.metabolize() - var/total_phoronloss = 0 - for(var/obj/item/I in src) - if(I.contaminated) - total_phoronloss += vsc.plc.CONTAMINATION_LOSS - if(!(status_flags & GODMODE)) adjustToxLoss(total_phoronloss) + if(CE_PAINKILLER in chem_effects) + analgesic = chem_effects[CE_PAINKILLER] + + var/total_phoronloss = 0 + for(var/obj/item/I in src) + if(I.contaminated) + total_phoronloss += vsc.plc.CONTAMINATION_LOSS + if(!(status_flags & GODMODE)) adjustToxLoss(total_phoronloss) if(status_flags & GODMODE) return 0 //godmode var/obj/item/organ/diona/node/light_organ = locate() in internal_organs - if(light_organ && !light_organ.is_broken()) - var/light_amount = 0 //how much light there is in the place, affects receiving nutrition and healing - if(isturf(loc)) //else, there's considered to be no light - var/turf/T = loc - var/atom/movable/lighting_overlay/L = locate(/atom/movable/lighting_overlay) in T - if(L) - light_amount = min(10,L.lum_r + L.lum_g + L.lum_b) - 5 //hardcapped so it's not abused by having a ton of flashlights - else - light_amount = 5 - nutrition += light_amount - traumatic_shock -= light_amount - if(species.flags & IS_PLANT) - if(nutrition > 450) - nutrition = 450 - if(light_amount >= 3) //if there's enough light, heal - adjustBruteLoss(-(round(light_amount/2))) - adjustFireLoss(-(round(light_amount/2))) - adjustToxLoss(-(light_amount)) - adjustOxyLoss(-(light_amount)) - //TODO: heal wounds, heal broken limbs. + if(!isSynthetic()) + if(light_organ && !light_organ.is_broken()) + var/light_amount = 0 //how much light there is in the place, affects receiving nutrition and healing + if(isturf(loc)) //else, there's considered to be no light + var/turf/T = loc + var/atom/movable/lighting_overlay/L = locate(/atom/movable/lighting_overlay) in T + if(L) + light_amount = min(10,L.lum_r + L.lum_g + L.lum_b) - 5 //hardcapped so it's not abused by having a ton of flashlights + else + light_amount = 5 + nutrition += light_amount + traumatic_shock -= light_amount + + if(species.flags & IS_PLANT) + if(nutrition > 450) + nutrition = 450 + + if(light_amount >= 3) //if there's enough light, heal + adjustBruteLoss(-(round(light_amount/2))) + adjustFireLoss(-(round(light_amount/2))) + adjustToxLoss(-(light_amount)) + adjustOxyLoss(-(light_amount)) + //TODO: heal wounds, heal broken limbs. if(species.light_dam) var/light_amount = 0 @@ -901,13 +913,14 @@ if(overeatduration > 1) overeatduration -= 2 //doubled the unfat rate - if(species.flags & IS_PLANT && (!light_organ || light_organ.is_broken())) + if(!isSynthetic() && (species.flags & IS_PLANT) && (!light_organ || light_organ.is_broken())) if(nutrition < 200) take_overall_damage(2,0) traumatic_shock++ // TODO: stomach and bloodstream organ. - handle_trace_chems() + if(!isSynthetic()) + handle_trace_chems() updatehealth() @@ -920,7 +933,7 @@ if(status_flags & GODMODE) return 0 //SSD check, if a logged player is awake put them back to sleep! - if(species.show_ssd && !client && !teleop) + if(species.get_ssd(src) && !client && !teleop) Sleeping(2) if(stat == DEAD) //DEAD. BROWN BREAD. SWIMMING WITH THE SPESS CARP blinded = 1 @@ -928,7 +941,7 @@ else //ALIVE. LIGHTS ARE ON updatehealth() //TODO - if(health <= config.health_threshold_dead || (species.has_organ["brain"] && !has_brain())) + if(health <= config.health_threshold_dead || (should_have_organ("brain") && !has_brain())) death() blinded = 1 silent = 0 @@ -1248,7 +1261,7 @@ if(2) healths.icon_state = "health7" else //switch(health - halloss) - switch(100 - ((species.flags & NO_PAIN) ? 0 : traumatic_shock)) + switch(100 - (!can_feel_pain() ? 0 : traumatic_shock)) if(100 to INFINITY) healths.icon_state = "health0" if(80 to 100) healths.icon_state = "health1" if(60 to 80) healths.icon_state = "health2" @@ -1410,7 +1423,7 @@ // Puke if toxloss is too high if(!stat) if (getToxLoss() >= 45 && nutrition > 20) - vomit() + spawn vomit() //0.1% chance of playing a scary sound to someone who's in complete darkness if(isturf(loc) && rand(1,1000) == 1) @@ -1484,7 +1497,7 @@ /mob/living/carbon/human/handle_shock() ..() if(status_flags & GODMODE) return 0 //godmode - if(species && species.flags & NO_PAIN) return + if(!can_feel_pain()) return if(health < config.health_threshold_softcrit)// health 0 makes you immediately collapse shock_stage = max(shock_stage, 61) @@ -1535,7 +1548,7 @@ /mob/living/carbon/human/proc/handle_pulse() if(life_tick % 5) return pulse //update pulse every 5 life ticks (~1 tick/sec, depending on server load) - if(species && species.flags & NO_BLOOD) + if(!internal_organs_by_name["heart"]) return PULSE_NONE //No blood, no pulse. if(stat == DEAD) @@ -1566,12 +1579,12 @@ return temp /mob/living/carbon/human/proc/handle_heartbeat() - if(pulse == PULSE_NONE || !species.has_organ["heart"]) + if(pulse == PULSE_NONE) return var/obj/item/organ/heart/H = internal_organs_by_name["heart"] - if(!H || H.robotic >=2 ) + if(!H || (H.status & ORGAN_ROBOT)) return if(pulse >= PULSE_2FAST || shock_stage >= 10 || istype(get_turf(src), /turf/space)) @@ -1734,7 +1747,7 @@ return slurring /mob/living/carbon/human/handle_stunned() - if(species.flags & NO_PAIN) + if(!can_feel_pain()) stunned = 0 return 0 if(..()) diff --git a/code/modules/mob/living/carbon/human/species/outsider/shadow.dm b/code/modules/mob/living/carbon/human/species/outsider/shadow.dm index 87fe13fb1d..8820ffaf5b 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/shadow.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/shadow.dm @@ -18,7 +18,7 @@ remains_type = /obj/effect/decal/cleanable/ash death_message = "dissolves into ash..." - flags = NO_BLOOD | NO_SCAN | NO_SLIP | NO_POISON | NO_MINOR_CUT + flags = NO_SCAN | NO_SLIP | NO_POISON | NO_MINOR_CUT spawn_flags = IS_RESTRICTED /datum/species/shadow/handle_death(var/mob/living/carbon/human/H) diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm index fa7dda8f57..c1c335a22d 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -25,7 +25,6 @@ cold_level_2 = 50 cold_level_3 = 0 - eyes = "vox_eyes_s" gluttonous = 2 breath_type = "nitrogen" @@ -45,6 +44,21 @@ /mob/living/carbon/human/proc/leap ) + has_limbs = list( + "chest" = list("path" = /obj/item/organ/external/chest), + "groin" = list("path" = /obj/item/organ/external/groin), + "head" = list("path" = /obj/item/organ/external/head/vox), + "l_arm" = list("path" = /obj/item/organ/external/arm), + "r_arm" = list("path" = /obj/item/organ/external/arm/right), + "l_leg" = list("path" = /obj/item/organ/external/leg), + "r_leg" = list("path" = /obj/item/organ/external/leg/right), + "l_hand" = list("path" = /obj/item/organ/external/hand), + "r_hand" = list("path" = /obj/item/organ/external/hand/right), + "l_foot" = list("path" = /obj/item/organ/external/foot), + "r_foot" = list("path" = /obj/item/organ/external/foot/right) + ) + + has_organ = list( "heart" = /obj/item/organ/heart, "lungs" = /obj/item/organ/lungs, diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index d6e32722b1..c0722fbca9 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -19,7 +19,6 @@ var/blood_mask = 'icons/mob/human_races/masks/blood_human.dmi' var/prone_icon // If set, draws this from icobase when mob is prone. - var/eyes = "eyes_s" // Icon for eyes. var/blood_color = "#A10808" // Red. var/flesh_color = "#FFC896" // Pink. var/base_color // Used by changelings. Should also be used for icon previes.. @@ -85,7 +84,7 @@ var/warning_low_pressure = WARNING_LOW_PRESSURE // Low pressure warning. var/hazard_low_pressure = HAZARD_LOW_PRESSURE // Dangerously low pressure. var/light_dam // If set, mob will be damaged in light over this value and heal in light below its negative. - var/body_temperature = 310.15 // Non-IS_SYNTHETIC species will try to stabilize at this temperature. + var/body_temperature = 310.15 // Species will try to stabilize at this temperature. // (also affects temperature processing) var/heat_discomfort_level = 315 // Aesthetic messages about feeling warm. @@ -177,6 +176,24 @@ /datum/species/proc/get_bodytype() return name +/datum/species/proc/get_knockout_message(var/mob/living/carbon/human/H) + return ((H && H.isSynthetic()) ? "encounters a hardware fault and suddenly reboots!" : knockout_message) + +/datum/species/proc/get_death_message(var/mob/living/carbon/human/H) + return ((H && H.isSynthetic()) ? "gives one shrill beep before falling lifeless." : death_message) + +/datum/species/proc/get_ssd(var/mob/living/carbon/human/H) + return ((H && H.isSynthetic()) ? "flashing a 'system offline' glyph on their monitor" : show_ssd) + +/datum/species/proc/get_blood_colour(var/mob/living/carbon/human/H) + return ((H && H.isSynthetic()) ? "#1F181F" : blood_color) + +/datum/species/proc/get_virus_immune(var/mob/living/carbon/human/H) + return ((H && H.isSynthetic()) ? 1 : virus_immune) + +/datum/species/proc/get_flesh_colour(var/mob/living/carbon/human/H) + return ((H && H.isSynthetic()) ? "#575757" : flesh_color) + /datum/species/proc/get_environment_discomfort(var/mob/living/carbon/human/H, var/msg_type) if(!prob(5)) diff --git a/code/modules/mob/living/carbon/human/species/station/golem.dm b/code/modules/mob/living/carbon/human/species/station/golem.dm index fae7d834e5..7faf868ac2 100644 --- a/code/modules/mob/living/carbon/human/species/station/golem.dm +++ b/code/modules/mob/living/carbon/human/species/station/golem.dm @@ -7,7 +7,7 @@ language = "Sol Common" //todo? unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/punch) - flags = NO_BREATHE | NO_PAIN | NO_BLOOD | NO_SCAN | NO_POISON | NO_MINOR_CUT + flags = NO_PAIN | NO_SCAN | NO_POISON | NO_MINOR_CUT spawn_flags = IS_RESTRICTED siemens_coefficient = 0 diff --git a/code/modules/mob/living/carbon/human/species/station/monkey.dm b/code/modules/mob/living/carbon/human/species/station/monkey.dm index d9d8347550..77a5f942f0 100644 --- a/code/modules/mob/living/carbon/human/species/station/monkey.dm +++ b/code/modules/mob/living/carbon/human/species/station/monkey.dm @@ -15,8 +15,6 @@ has_fine_manipulation = 0 show_ssd = null - eyes = "blank_eyes" - gibbed_anim = "gibbed-m" dusted_anim = "dust-m" death_message = "lets out a faint chimper as it collapses and stops moving..." @@ -40,6 +38,20 @@ pass_flags = PASSTABLE + has_limbs = list( + "chest" = list("path" = /obj/item/organ/external/chest), + "groin" = list("path" = /obj/item/organ/external/groin), + "head" = list("path" = /obj/item/organ/external/head/no_eyes), + "l_arm" = list("path" = /obj/item/organ/external/arm), + "r_arm" = list("path" = /obj/item/organ/external/arm/right), + "l_leg" = list("path" = /obj/item/organ/external/leg), + "r_leg" = list("path" = /obj/item/organ/external/leg/right), + "l_hand" = list("path" = /obj/item/organ/external/hand), + "r_hand" = list("path" = /obj/item/organ/external/hand/right), + "l_foot" = list("path" = /obj/item/organ/external/foot), + "r_foot" = list("path" = /obj/item/organ/external/foot/right) + ) + /datum/species/monkey/handle_npc(var/mob/living/carbon/human/H) if(H.stat != CONSCIOUS) return diff --git a/code/modules/mob/living/carbon/human/species/station/slime.dm b/code/modules/mob/living/carbon/human/species/station/slime.dm index 38db954932..96a926b14e 100644 --- a/code/modules/mob/living/carbon/human/species/station/slime.dm +++ b/code/modules/mob/living/carbon/human/species/station/slime.dm @@ -8,7 +8,7 @@ language = null //todo? unarmed_types = list(/datum/unarmed_attack/slime_glomp) - flags = NO_SCAN | NO_SLIP | NO_BREATHE | NO_MINOR_CUT + flags = NO_SCAN | NO_SLIP | NO_MINOR_CUT spawn_flags = IS_RESTRICTED siemens_coefficient = 3 //conductive darksight = 3 diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index e5b3ae6b0f..5fecc7c79b 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -131,7 +131,6 @@ name_plural = "Skrell" icobase = 'icons/mob/human_races/r_skrell.dmi' deform = 'icons/mob/human_races/r_def_skrell.dmi' - eyes = "skrell_eyes_s" primitive_form = "Neaera" unarmed_types = list(/datum/unarmed_attack/punch) blurb = "An amphibious species, Skrell come from the star system known as Qerr'Vallis, which translates to 'Star of \ @@ -152,6 +151,20 @@ reagent_tag = IS_SKRELL + has_limbs = list( + "chest" = list("path" = /obj/item/organ/external/chest), + "groin" = list("path" = /obj/item/organ/external/groin), + "head" = list("path" = /obj/item/organ/external/head/skrell), + "l_arm" = list("path" = /obj/item/organ/external/arm), + "r_arm" = list("path" = /obj/item/organ/external/arm/right), + "l_leg" = list("path" = /obj/item/organ/external/leg), + "r_leg" = list("path" = /obj/item/organ/external/leg/right), + "l_hand" = list("path" = /obj/item/organ/external/hand), + "r_hand" = list("path" = /obj/item/organ/external/hand/right), + "l_foot" = list("path" = /obj/item/organ/external/foot), + "r_foot" = list("path" = /obj/item/organ/external/foot/right) + ) + /datum/species/diona name = "Diona" name_plural = "Dionaea" @@ -164,7 +177,6 @@ rarity_value = 3 hud_type = /datum/hud_data/diona siemens_coefficient = 0.3 - eyes = "blank_eyes" show_ssd = "completely quiescent" num_alternate_languages = 1 name_language = "Rootspeak" @@ -189,7 +201,7 @@ has_limbs = list( "chest" = list("path" = /obj/item/organ/external/diona/chest), "groin" = list("path" = /obj/item/organ/external/diona/groin), - "head" = list("path" = /obj/item/organ/external/diona/head), + "head" = list("path" = /obj/item/organ/external/head/no_eyes/diona), "l_arm" = list("path" = /obj/item/organ/external/diona/arm), "r_arm" = list("path" = /obj/item/organ/external/diona/arm/right), "l_leg" = list("path" = /obj/item/organ/external/diona/leg), @@ -217,7 +229,7 @@ body_temperature = T0C + 15 //make the plant people have a bit lower body temperature, why not - flags = NO_BREATHE | NO_SCAN | IS_PLANT | NO_BLOOD | NO_PAIN | NO_SLIP | NO_MINOR_CUT + flags = NO_SCAN | IS_PLANT | NO_PAIN | NO_SLIP | NO_MINOR_CUT spawn_flags = CAN_JOIN | IS_WHITELISTED blood_color = "#004400" @@ -254,82 +266,4 @@ else qdel(D) - H.visible_message("[H] splits apart with a wet slithering noise!") - -/datum/species/machine - name = "Machine" - name_plural = "machines" - - blurb = "Positronic intelligence really took off in the 26th century, and it is not uncommon to see independant, free-willed \ - robots on many human stations, particularly in fringe systems where standards are slightly lax and public opinion less relevant \ - to corporate operations. IPCs (Integrated Positronic Chassis) are a loose category of self-willed robots with a humanoid form, \ - generally self-owned after being 'born' into servitude; they are reliable and dedicated workers, albeit more than slightly \ - inhuman in outlook and perspective." - - icobase = 'icons/mob/human_races/r_machine.dmi' - deform = 'icons/mob/human_races/r_machine.dmi' - - language = "Encoded Audio Language" - unarmed_types = list(/datum/unarmed_attack/punch) - rarity_value = 2 - num_alternate_languages = 1 // potentially could be 2? - name_language = "Encoded Audio Language" - - eyes = "blank_eyes" - brute_mod = 1.875 // 100% * 1.875 * 0.8 (robolimbs) ~= 150% - burn_mod = 1.875 // So they take 50% extra damage from brute/burn overall. - show_ssd = "flashing a 'system offline' glyph on their monitor" - death_message = "gives one shrill beep before falling lifeless." - knockout_message = "encounters a hardware fault and suddenly reboots!" - - warning_low_pressure = 50 - hazard_low_pressure = 0 - - cold_level_1 = 50 - cold_level_2 = -1 - cold_level_3 = -1 - - heat_level_1 = 500 // Gives them about 25 seconds in space before taking damage - heat_level_2 = 1000 - heat_level_3 = 2000 - - passive_temp_gain = 10 // This should cause IPCs to stabilize at ~80 C in a 20 C environment. - - flags = NO_BREATHE | NO_SCAN | NO_BLOOD | NO_PAIN | NO_POISON - spawn_flags = CAN_JOIN | IS_WHITELISTED - - blood_color = "#1F181F" - flesh_color = "#575757" - virus_immune = 1 - reagent_tag = IS_MACHINE - - has_organ = list( - "brain" = /obj/item/organ/mmi_holder/posibrain, - "cell" = /obj/item/organ/cell, - "optics" = /obj/item/organ/optical_sensor - ) - - vision_organ = "optics" - - has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/chest/ipc), - "groin" = list("path" = /obj/item/organ/external/groin/ipc), - "head" = list("path" = /obj/item/organ/external/head/ipc), - "l_arm" = list("path" = /obj/item/organ/external/arm/ipc), - "r_arm" = list("path" = /obj/item/organ/external/arm/right/ipc), - "l_leg" = list("path" = /obj/item/organ/external/leg/ipc), - "r_leg" = list("path" = /obj/item/organ/external/leg/right/ipc), - "l_hand" = list("path" = /obj/item/organ/external/hand/ipc), - "r_hand" = list("path" = /obj/item/organ/external/hand/right/ipc), - "l_foot" = list("path" = /obj/item/organ/external/foot/ipc), - "r_foot" = list("path" = /obj/item/organ/external/foot/right/ipc) - ) - -/datum/species/machine/handle_death(var/mob/living/carbon/human/H) - ..() - H.h_style = "" - spawn(100) - if(H) H.update_hair() - -/datum/species/machine/sanitize_name(var/name) - return sanitizeName(name, allow_numbers = 1) + H.visible_message("\The [H] splits apart with a wet slithering noise!") diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm index 1c5e88ce59..5f6ab38fad 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm @@ -13,8 +13,6 @@ siemens_coefficient = 0 gluttonous = 3 - eyes = "blank_eyes" - brute_mod = 0.5 // Hardened carapace. burn_mod = 2 // Weak to fire. @@ -25,7 +23,7 @@ cold_level_2 = -1 cold_level_3 = -1 - flags = NO_BREATHE | NO_SCAN | NO_PAIN | NO_SLIP | NO_POISON | NO_MINOR_CUT + flags = NO_SCAN | NO_PAIN | NO_SLIP | NO_POISON | NO_MINOR_CUT spawn_flags = IS_RESTRICTED reagent_tag = IS_XENOS @@ -62,6 +60,20 @@ var/weeds_heal_rate = 1 // Health regen on weeds. var/weeds_plasma_rate = 5 // Plasma regen on weeds. + has_limbs = list( + "chest" = list("path" = /obj/item/organ/external/chest), + "groin" = list("path" = /obj/item/organ/external/groin), + "head" = list("path" = /obj/item/organ/external/head/no_eyes), + "l_arm" = list("path" = /obj/item/organ/external/arm), + "r_arm" = list("path" = /obj/item/organ/external/arm/right), + "l_leg" = list("path" = /obj/item/organ/external/leg), + "r_leg" = list("path" = /obj/item/organ/external/leg/right), + "l_hand" = list("path" = /obj/item/organ/external/hand), + "r_hand" = list("path" = /obj/item/organ/external/hand/right), + "l_foot" = list("path" = /obj/item/organ/external/foot), + "r_foot" = list("path" = /obj/item/organ/external/foot/right) + ) + /datum/species/xenos/get_bodytype() return "Xenomorph" diff --git a/code/modules/mob/living/carbon/human/unarmed_attack.dm b/code/modules/mob/living/carbon/human/unarmed_attack.dm index 92a6089e9f..f6ecb54ce5 100644 --- a/code/modules/mob/living/carbon/human/unarmed_attack.dm +++ b/code/modules/mob/living/carbon/human/unarmed_attack.dm @@ -54,7 +54,7 @@ var/global/list/sparring_attack_cache = list() if("l_arm", "l_hand") if (target.l_hand) // Disarm left hand - //Urist McAssistant dropped the macguffin with a scream just sounds odd. Plus it doesn't work with NO_PAIN + //Urist McAssistant dropped the macguffin with a scream just sounds odd. target.visible_message("\The [target.l_hand] was knocked right out of [target]'s grasp!") target.drop_l_hand() if("r_arm", "r_hand") @@ -94,10 +94,13 @@ var/global/list/sparring_attack_cache = list() /datum/unarmed_attack/proc/handle_eye_attack(var/mob/living/carbon/human/user, var/mob/living/carbon/human/target) var/obj/item/organ/eyes/eyes = target.internal_organs_by_name["eyes"] - eyes.take_damage(rand(3,4), 1) - - user.visible_message("[user] presses \his [eye_attack_text] into [target]'s [eyes.name]!") - target << "You experience[(target.species.flags & NO_PAIN)? "" : " immense pain as you feel" ] [eye_attack_text_victim] being pressed into your [eyes.name][(target.species.flags & NO_PAIN)? "." : "!"]" + if(eyes) + eyes.take_damage(rand(3,4), 1) + user.visible_message("[user] presses \his [eye_attack_text] into [target]'s [eyes.name]!") + var/eye_pain = eyes.can_feel_pain() + target << "You experience[(eye_pain) ? "" : " immense pain as you feel" ] [eye_attack_text_victim] being pressed into your [eyes.name][(eye_pain)? "." : "!"]" + return + user.visible_message("[user] attempts to press \his [eye_attack_text] into [target]'s eyes, but they don't have any!") /datum/unarmed_attack/bite attack_verb = list("bit") diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 8fab931887..cc112b18d9 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -209,11 +209,11 @@ var/global/list/damage_icon_parts = list() O.update_icon() if(O.damage_state == "00") continue var/icon/DI - var/cache_index = "[O.damage_state]/[O.icon_name]/[species.blood_color]/[species.get_bodytype()]" + var/cache_index = "[O.damage_state]/[O.icon_name]/[O.species.get_blood_colour()]/[species.get_bodytype()]" if(damage_icon_parts[cache_index] == null) DI = new /icon(species.damage_overlays, O.damage_state) // the damage icon for whole human DI.Blend(new /icon(species.damage_mask, O.icon_name), ICON_MULTIPLY) // mask with this organ's pixels - DI.Blend(species.blood_color, ICON_MULTIPLY) + DI.Blend(O.species.get_blood_colour(), ICON_MULTIPLY) damage_icon_parts[cache_index] = DI else DI = damage_icon_parts[cache_index] diff --git a/code/modules/mob/living/carbon/metroid/powers.dm b/code/modules/mob/living/carbon/metroid/powers.dm index 8b8e875aec..2e1cc29595 100644 --- a/code/modules/mob/living/carbon/metroid/powers.dm +++ b/code/modules/mob/living/carbon/metroid/powers.dm @@ -63,7 +63,7 @@ H.custom_pain(painMes) else if (istype(M, /mob/living/carbon)) var/mob/living/carbon/C = M - if (!(C.species && (C.species.flags & NO_PAIN))) + if (C.can_feel_pain()) M << "[painMes]" gain_nutrition(rand(20,25)) diff --git a/code/modules/mob/living/carbon/shock.dm b/code/modules/mob/living/carbon/shock.dm index be31d28034..92eccc66df 100644 --- a/code/modules/mob/living/carbon/shock.dm +++ b/code/modules/mob/living/carbon/shock.dm @@ -3,7 +3,7 @@ // proc to find out in how much pain the mob is at the moment /mob/living/carbon/proc/updateshock() - if (species && (species.flags & NO_PAIN)) + if (!can_feel_pain()) src.traumatic_shock = 0 return 0 diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index ef7a33fd40..f575c6303d 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -813,3 +813,51 @@ default behaviour is: ear_damage = damage if(deaf >= 0) ear_deaf = deaf + +/mob/living/proc/vomit(var/skip_wait, var/blood_vomit) + + if(isSynthetic()) + src << "A sudden, dizzying wave of internal feedback rushes over you!" + src.Weaken(5) + return + + if(!check_has_mouth()) + return + + if(!lastpuke) + + if (nutrition <= 100) + src << "You gag as you want to throw up, but there's nothing in your stomach!" + src.Weaken(10) + src.adjustToxLoss(3) + return + + lastpuke = 1 + src << "You feel nauseous..." + + if(!skip_wait) + sleep(150) //15 seconds until second warning + src << "You feel like you are about to throw up!" + sleep(100) //and you have 10 more for mad dash to the bucket + + Stun(5) + src.visible_message("[src] throws up!","You throw up!") + playsound(loc, 'sound/effects/splat.ogg', 50, 1) + + var/turf/simulated/T = get_turf(src) + if(istype(T)) + if(blood_vomit) + T.add_blood_floor(src) + else + T.add_vomit_floor(src, 1) + + if(blood_vomit) + if(getBruteLoss() < 50) + adjustBruteLoss(3) + else + nutrition -= 40 + adjustToxLoss(-3) + + sleep(350) + lastpuke = 0 + diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 5a671afe99..c547211ecf 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -43,3 +43,4 @@ var/fire_stacks var/failed_last_breath = 0 //This is used to determine if the mob failed a breath. If they did fail a brath, they will attempt to breathe each tick, otherwise just once per 4 ticks. + var/lastpuke = 0 diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index 6b38a7c465..14434bfe6e 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -30,7 +30,7 @@ var/list/mob_hat_cache = list() universal_understand = 1 gender = NEUTER pass_flags = PASSTABLE - braintype = "Robot" + braintype = "Drone" lawupdate = 0 density = 1 req_access = list(access_engine, access_robotics) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 8507053e23..293a55b222 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -247,7 +247,7 @@ if((crisis && security_level == SEC_LEVEL_RED) || crisis_override) //Leaving this in until it's balanced appropriately. src << "\red Crisis mode active. Combat module available." modules+="Combat" - modtype = input("Please, select a module!", "Robot", null, null) as null|anything in modules + modtype = input("Please, select a module!", "Robot module", null, null) as null|anything in modules if(module) return @@ -267,9 +267,9 @@ modtype = prefix if(istype(mmi, /obj/item/device/mmi/digital/posibrain)) - braintype = "Android" - else if(istype(mmi, /obj/item/device/mmi/digital/robot)) braintype = "Robot" + else if(istype(mmi, /obj/item/device/mmi/digital/robot)) + braintype = "Drone" else braintype = "Cyborg" @@ -911,7 +911,7 @@ if(!(icontype in module_sprites)) icontype = module_sprites[1] else - icontype = input("Select an icon! [triesleft ? "You have [triesleft] more chance\s." : "This is your last try."]", "Robot", icontype, null) in module_sprites + icontype = input("Select an icon! [triesleft ? "You have [triesleft] more chance\s." : "This is your last try."]", "Robot Icon", icontype, null) in module_sprites icon_state = module_sprites[icontype] updateicon() diff --git a/code/modules/mob/living/simple_animal/borer/borer_powers.dm b/code/modules/mob/living/simple_animal/borer/borer_powers.dm index 88be25cc24..05bf7e8eef 100644 --- a/code/modules/mob/living/simple_animal/borer/borer_powers.dm +++ b/code/modules/mob/living/simple_animal/borer/borer_powers.dm @@ -77,7 +77,7 @@ if(!E || (E.status & ORGAN_DESTROYED)) src << "\The [H] does not have a head!" - if(!H.species.has_organ["brain"]) + if(!H.should_have_organ("brain")) src << "\The [H] does not seem to have an ear canal to breach." return diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 7885d3e8f7..9503800189 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -87,7 +87,6 @@ var/canmove = 1 //Allows mobs to move through dense areas without restriction. For instance, in space or out of holder objects. var/incorporeal_move = 0 //0 is off, 1 is normal, 2 is for ninjas. - var/lastpuke = 0 var/unacidable = 0 var/list/pinned = list() // List of things pinning this creature to walls (see living_defense.dm) var/list/embedded = list() // Embedded items, since simple mobs don't have organs. diff --git a/code/modules/mob/mob_grab_specials.dm b/code/modules/mob/mob_grab_specials.dm index 44303241db..fb51bc1572 100644 --- a/code/modules/mob/mob_grab_specials.dm +++ b/code/modules/mob/mob_grab_specials.dm @@ -99,7 +99,7 @@ if(!armor && target.headcheck("head") && prob(damage)) target.apply_effect(20, PARALYZE) - target.visible_message("[target] [target.species.knockout_message]") + target.visible_message("[target] [target.species.get_knockout_message(target)]") playsound(attacker.loc, "swing_hit", 25, 1, -1) attacker.attack_log += text("\[[time_stamp()]\] Headbutted [target.name] ([target.ckey])") diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index a3f81168b7..d20fe8bee2 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -3,8 +3,18 @@ datum/preferences proc/randomize_appearance_for(var/mob/living/carbon/human/H) gender = pick(MALE, FEMALE) s_tone = random_skin_tone() - h_style = random_hair_style(gender, species) - f_style = random_facial_hair_style(gender, species) + + var/use_head_species + var/obj/item/organ/external/head/temp_head = H.get_organ("head") + if(temp_head) + use_head_species = temp_head.species.get_bodytype() + else + use_head_species = H.species.get_bodytype() + + if(use_head_species) + h_style = random_hair_style(gender, species) + f_style = random_facial_hair_style(gender, species) + randomize_hair_color("hair") randomize_hair_color("facial") randomize_eyes_color() @@ -191,37 +201,58 @@ datum/preferences else icobase = 'icons/mob/human_races/r_human.dmi' - preview_icon = new /icon(icobase, "torso_[g]") - preview_icon.Blend(new /icon(icobase, "groin_[g]"), ICON_OVERLAY) - preview_icon.Blend(new /icon(icobase, "head_[g]"), ICON_OVERLAY) - - for(var/name in list("r_arm","r_hand","r_leg","r_foot","l_leg","l_foot","l_arm","l_hand")) - if(organ_data[name] == "amputated") continue + preview_icon = new /icon(icobase, "") + for(var/name in list("torso", "groin", "head", "r_arm","r_hand","r_leg","r_foot","l_leg","l_foot","l_arm","l_hand")) + if(organ_data[name] == "amputated") + continue if(organ_data[name] == "cyborg") var/datum/robolimb/R if(rlimb_data[name]) R = all_robolimbs[rlimb_data[name]] if(!R) R = basic_robolimb - preview_icon.Blend(icon(R.icon, "[name]"), ICON_OVERLAY) // This doesn't check gendered_icon. Not an issue while only limbs can be robotic. + if(name in list("torso", "groin", "head")) + preview_icon.Blend(icon(R.icon, "[name]_[g]"), ICON_OVERLAY) + else + preview_icon.Blend(icon(R.icon, "[name]"), ICON_OVERLAY) continue - preview_icon.Blend(new /icon(icobase, "[name]"), ICON_OVERLAY) + var/icon/limb_icon + if(name in list("torso", "groin", "head")) + limb_icon = new /icon(icobase, "[name]_[g]") + else + limb_icon = new /icon(icobase, "[name]") + // Skin color + if(current_species && (current_species.appearance_flags & HAS_SKIN_COLOR)) + limb_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) + // Skin tone + if(current_species && (current_species.appearance_flags & HAS_SKIN_TONE)) + if (s_tone >= 0) + limb_icon.Blend(rgb(s_tone, s_tone, s_tone), ICON_ADD) + else + limb_icon.Blend(rgb(-s_tone, -s_tone, -s_tone), ICON_SUBTRACT) + preview_icon.Blend(limb_icon, ICON_OVERLAY) //Tail if(current_species && (current_species.tail)) var/icon/temp = new/icon("icon" = 'icons/effects/species.dmi', "icon_state" = "[current_species.tail]_s") + if(current_species && (current_species.appearance_flags & HAS_SKIN_COLOR)) + temp.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) + if(current_species && (current_species.appearance_flags & HAS_SKIN_TONE)) + if (s_tone >= 0) + temp.Blend(rgb(s_tone, s_tone, s_tone), ICON_ADD) + else + temp.Blend(rgb(-s_tone, -s_tone, -s_tone), ICON_SUBTRACT) preview_icon.Blend(temp, ICON_OVERLAY) - // Skin color - if(current_species && (current_species.appearance_flags & HAS_SKIN_COLOR)) - preview_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) + // This is absolute garbage but whatever. It will do until this entire file can be rewritten without crashes. + var/use_eye_icon = "eyes_s" + var/list/use_eye_data = current_species.has_limbs["head"] + if(islist(use_eye_data)) + var/use_eye_path = use_eye_data["path"] + var/obj/item/organ/external/head/temp_head = new use_eye_path () + if(istype(temp_head)) + use_eye_icon = temp_head.eye_icon + qdel(temp_head) - // Skin tone - if(current_species && (current_species.appearance_flags & HAS_SKIN_TONE)) - if (s_tone >= 0) - preview_icon.Blend(rgb(s_tone, s_tone, s_tone), ICON_ADD) - else - preview_icon.Blend(rgb(-s_tone, -s_tone, -s_tone), ICON_SUBTRACT) - - var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = current_species ? current_species.eyes : "eyes_s") + var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = use_eye_icon) if ((current_species && (current_species.appearance_flags & HAS_EYE_COLOR))) eyes_s.Blend(rgb(r_eyes, g_eyes, b_eyes), ICON_ADD) diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 10b9d0ebbf..f200766179 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -145,9 +145,9 @@ O.loc = loc O.job = "Cyborg" if(O.mind.assigned_role == "Cyborg") - if(O.mind.role_alt_title == "Android") + if(O.mind.role_alt_title == "Robot") O.mmi = new /obj/item/device/mmi/digital/posibrain(O) - else if(O.mind.role_alt_title == "Robot") + else if(O.mind.role_alt_title == "Drone") O.mmi = new /obj/item/device/mmi/digital/robot(O) else O.mmi = new /obj/item/device/mmi(O) diff --git a/code/modules/organs/blood.dm b/code/modules/organs/blood.dm index ebc490601d..74d2cebce0 100644 --- a/code/modules/organs/blood.dm +++ b/code/modules/organs/blood.dm @@ -19,7 +19,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 vessel = new/datum/reagents(600) vessel.my_atom = src - if(species && species.flags & NO_BLOOD) //We want the var for safety but we can do without the actual blood. + if(!should_have_organ("heart")) //We want the var for safety but we can do without the actual blood. return vessel.add_reagent("blood",560) @@ -30,7 +30,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 /mob/living/carbon/human/proc/fixblood() for(var/datum/reagent/blood/B in vessel.reagent_list) if(B.id == "blood") - B.data = list( "donor"=src,"viruses"=null,"species"=species.name,"blood_DNA"=dna.unique_enzymes,"blood_colour"= species.blood_color,"blood_type"=dna.b_type, \ + B.data = list( "donor"=src,"viruses"=null,"species"=species.name,"blood_DNA"=dna.unique_enzymes,"blood_colour"= species.get_blood_colour(src),"blood_type"=dna.b_type, \ "resistances"=null,"trace_chem"=null, "virus2" = null, "antibodies" = list()) B.color = B.data["blood_colour"] @@ -39,7 +39,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 if(in_stasis) return - if(species && species.flags & NO_BLOOD) + if(!should_have_organ("heart")) return if(stat != DEAD && bodytemperature >= 170) //Dead or cryosleep people do not pump the blood. @@ -62,7 +62,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 // Damaged heart virtually reduces the blood volume, as the blood isn't // being pumped properly anymore. - if(species && species.has_organ["heart"]) + if(species && should_have_organ("heart")) var/obj/item/organ/heart/heart = internal_organs_by_name["heart"] if(!heart) @@ -126,7 +126,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 //Bleeding out var/blood_max = 0 for(var/obj/item/organ/external/temp in organs) - if(!(temp.status & ORGAN_BLEEDING) || temp.status & ORGAN_ROBOT) + if(!(temp.status & ORGAN_BLEEDING) || (temp.status & ORGAN_ROBOT)) continue for(var/datum/wound/W in temp.wounds) if(W.bleeding()) blood_max += W.damage / 40 @@ -137,7 +137,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 //Makes a blood drop, leaking amt units of blood from the mob /mob/living/carbon/human/proc/drip(var/amt as num) - if(species && species.flags & NO_BLOOD) //TODO: Make drips come from the reagents instead. + if(!should_have_organ("heart")) //TODO: Make drips come from the reagents instead. return if(!amt) @@ -175,7 +175,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 // Putting this here due to return shenanigans. if(istype(src,/mob/living/carbon/human)) var/mob/living/carbon/human/H = src - B.data["blood_colour"] = H.species.blood_color + B.data["blood_colour"] = H.species.get_blood_colour(H) B.color = B.data["blood_colour"] var/list/temp_chem = list() @@ -188,7 +188,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 //For humans, blood does not appear from blue, it comes from vessels. /mob/living/carbon/human/take_blood(obj/item/weapon/reagent_containers/container, var/amount) - if(species && species.flags & NO_BLOOD) + if(!should_have_organ("heart")) return null if(vessel.get_reagent_amount("blood") < amount) @@ -216,7 +216,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 //Transfers blood from reagents to vessel, respecting blood types compatability. /mob/living/carbon/human/inject_blood(var/datum/reagent/blood/injected, var/amount) - if(species.flags & NO_BLOOD) + if(should_have_organ("heart")) reagents.add_reagent("blood", amount, injected.data) reagents.update_total() return diff --git a/code/modules/organs/misc.dm b/code/modules/organs/misc.dm index a330e307a3..0ba128c1a6 100644 --- a/code/modules/organs/misc.dm +++ b/code/modules/organs/misc.dm @@ -46,7 +46,8 @@ /obj/item/organ/stack name = "cortical stack" parent_organ = "head" - robotic = 2 + icon_state = "brain-prosthetic" + organ_tag = "stack" vital = 1 var/backup_time = 0 var/datum/mind/backup @@ -56,15 +57,5 @@ backup_time = world.time if(owner.mind) backup = owner.mind -/obj/item/organ/stack/vox - /obj/item/organ/stack/vox/stack - -/obj/item/organ/stack - name = "cortical stack" - icon_state = "brain-prosthetic" - organ_tag = "stack" - robotic = 2 - -/obj/item/organ/stack/vox name = "vox cortical stack" diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index 5165108635..63c57acb21 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -3,33 +3,37 @@ var/list/organ_cache = list() /obj/item/organ name = "organ" icon = 'icons/obj/surgery.dmi' + germ_level = 0 + + // Strings. + var/organ_tag = "organ" + var/parent_organ = "chest" + + // Appearance. var/dead_icon - var/mob/living/carbon/human/owner = null + + // Status tracking. var/status = 0 var/vital //Lose a vital limb, die immediately. var/damage = 0 // amount of damage to the organ - var/min_bruised_damage = 10 - var/min_broken_damage = 30 - var/max_damage - var/organ_tag = "organ" - - var/parent_organ = "chest" - var/robotic = 0 //For being a robot - var/rejecting // Is this organ already being rejected? - + // Reference data. + var/mob/living/carbon/human/owner = null var/list/transplant_data var/list/datum/autopsy_data/autopsy_data = list() var/list/trace_chemicals = list() // traces of chemicals in the organ, - // links chemical IDs to number of ticks for which they'll stay in the blood - germ_level = 0 var/datum/dna/dna var/datum/species/species + // Damage vars. + var/min_bruised_damage = 10 + var/min_broken_damage = 30 + var/max_damage + var/rejecting // Is this organ already being rejected? + /obj/item/organ/Destroy() if(!owner) return ..() - if(istype(owner, /mob/living/carbon)) if((owner.internal_organs) && (src in owner.internal_organs)) owner.internal_organs -= src @@ -42,7 +46,7 @@ var/list/organ_cache = list() owner.organs_by_name -= src if(src in owner.contents) owner.contents -= src - + owner = null return ..() /obj/item/organ/proc/update_health() @@ -189,8 +193,25 @@ var/list/organ_cache = list() /obj/item/organ/proc/receive_chem(chemical as obj) return 0 -/obj/item/organ/proc/rejuvenate() +/obj/item/organ/proc/rejuvenate(var/ignore_prosthetic_prefs) damage = 0 + status = 0 + if(!ignore_prosthetic_prefs && owner && owner.client && owner.client.prefs && owner.client.prefs.real_name == owner.real_name) + var/status = owner.client.prefs.organ_data[organ_tag] + if(status == "assisted") + mechassist() + else if(status == "mechanical") + robotize() + +/obj/item/organ/proc/remove_rejuv() + if(owner) + owner.internal_organs -= src + owner.internal_organs_by_name[organ_tag] = null + while(null in owner.internal_organs) + owner.internal_organs -= null + while(null in owner.internal_organs_by_name) + owner.internal_organs_by_name -= null + qdel(src) /obj/item/organ/proc/is_damaged() return damage > 0 @@ -241,19 +262,13 @@ var/list/organ_cache = list() owner.custom_pain("Something inside your [parent.name] hurts a lot.", 1) /obj/item/organ/proc/robotize() //Being used to make robutt hearts, etc - robotic = 2 - src.status &= ~ORGAN_BROKEN - src.status &= ~ORGAN_BLEEDING - src.status &= ~ORGAN_SPLINTED - src.status &= ~ORGAN_CUT_AWAY - src.status &= ~ORGAN_DESTROYED - src.status |= ORGAN_ROBOT - src.status |= ORGAN_ASSISTED + status = 0 + status |= ORGAN_ASSISTED + status |= ORGAN_ROBOT /obj/item/organ/proc/mechassist() //Used to add things like pacemakers, etc - robotize() - src.status &= ~ORGAN_ROBOT - robotic = 1 + status = 0 + status |= ORGAN_ASSISTED min_bruised_damage = 15 min_broken_damage = 35 @@ -320,8 +335,6 @@ var/list/organ_cache = list() target.internal_organs |= src affected.internal_organs |= src target.internal_organs_by_name[organ_tag] = src - if(robotic) - status |= ORGAN_ROBOT /obj/item/organ/eyes/replaced(var/mob/living/carbon/human/target) @@ -335,10 +348,10 @@ var/list/organ_cache = list() /obj/item/organ/proc/bitten(mob/user) - if(robotic) + if(status & ORGAN_ROBOT) return - user << "\blue You take an experimental bite out of \the [src]." + user << "You take an experimental bite out of \the [src]." var/datum/reagent/blood/B = locate(/datum/reagent/blood) in reagents.reagent_list blood_splatter(src,B,1) @@ -361,6 +374,9 @@ var/list/organ_cache = list() /obj/item/organ/attack_self(mob/user as mob) // Convert it to an edible form, yum yum. - if(!robotic && user.a_intent == "help" && user.zone_sel.selecting == "mouth") + if((status & ORGAN_ROBOT) && user.a_intent == "help" && user.zone_sel.selecting == "mouth") bitten(user) return + +/obj/item/organ/proc/can_feel_pain() + return !(status & (ORGAN_ROBOT|ORGAN_DESTROYED)) && !(species.flags & NO_PAIN) diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index 1e2f7d1e52..ed9d32f122 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -14,49 +14,57 @@ dir = SOUTH organ_tag = "limb" - var/brute_mod = 1 - var/burn_mod = 1 + // Strings + var/limb_name + // Damage vars. + var/brute_mod = 1 // Multiplier for incoming brute damage. + var/burn_mod = 1 // As above for burn. + var/damage_state = "00" // Modifier used for generating the on-mob damage overlay for this limb. + var/brute_dam = 0 // Actual current brute damage. + var/burn_dam = 0 // Actual current burn damage. + var/last_dam = -1 + + // Appearance vars. var/icon_name = null var/body_part = null var/icon_position = 0 var/model var/force_icon - var/damage_state = "00" - var/brute_dam = 0 - var/burn_dam = 0 - var/max_size = 0 - var/last_dam = -1 var/icon/mob_icon var/gendered_icon = 0 - var/limb_name - var/disfigured = 0 - var/cannot_amputate - var/cannot_break var/s_tone var/list/s_col var/list/h_col + var/body_hair + + // Wound and structural data. + var/wound_update_accuracy = 1 // how often wounds should be updated, a higher number means less often var/list/wounds = list() var/number_wounds = 0 // cache the number of wounds, which is NOT wounds.len! - var/perma_injury = 0 var/obj/item/organ/external/parent var/list/obj/item/organ/external/children var/list/internal_organs = list() // Internal organs of this body part - var/damage_msg = "\red You feel an intense pain" var/broken_description - var/open = 0 - var/stage = 0 - var/cavity = 0 var/sabotaged = 0 // If a prosthetic limb is emagged, it will detonate when it fails. - var/encased // Needs to be opened with a saw to access the organs. var/list/implants = list() - var/wound_update_accuracy = 1 // how often wounds should be updated, a higher number means less often + + // Joint/state stuff. + var/can_grasp //It would be more appropriate if these two were named "affects_grasp" and "affects_stand" at this point + var/can_stand + var/disfigured = 0 + var/cannot_amputate + var/cannot_break var/joint = "joint" // Descriptive string used in dislocation. var/amputation_point // Descriptive string used in amputation. var/dislocated = 0 // If you target a joint, you can dislocate the limb, causing temporary damage to the organ. - var/can_grasp //It would be more appropriate if these two were named "affects_grasp" and "affects_stand" at this point - var/can_stand - var/body_hair + var/encased // Needs to be opened with a saw to access the organs. + + // Surgery vars. + var/open = 0 + var/stage = 0 + var/cavity = 0 + /obj/item/organ/external/Destroy() if(parent && parent.children) @@ -188,12 +196,6 @@ parent.children = list() parent.children.Add(src) -/obj/item/organ/external/robotize() - ..() - //robit limbs take reduced damage - brute_mod = 0.8 - burn_mod = 0.8 - /**************************************************** DAMAGE PROCS ****************************************************/ @@ -219,7 +221,7 @@ brute -= brute / 2 if(status & ORGAN_BROKEN && prob(40) && brute) - if (!(owner.species && (owner.species.flags & NO_PAIN))) + if(!((species.flags & NO_PAIN) || (status & ORGAN_ROBOT))) owner.emote("scream") //getting hit on broken hand hurts if(used_weapon) add_autopsy_data("[used_weapon]", brute + burn) @@ -316,7 +318,6 @@ if(internal) status &= ~ORGAN_BROKEN - perma_injury = 0 /*if((brute || burn) && children && children.len && (owner.species.flags & REGENERATES_LIMBS)) var/obj/item/organ/external/stump/S = locate() in children @@ -333,13 +334,10 @@ /* This function completely restores a damaged organ to perfect condition. */ -/obj/item/organ/external/rejuvenate() +/obj/item/organ/external/rejuvenate(var/ignore_prosthetic_prefs) damage_state = "00" - if(status & 128) //Robotic organs stay robotic. Fix because right click rejuvinate makes IPC's organs organic. - status = 128 - else - status = 0 - perma_injury = 0 + + status = 0 brute_dam = 0 burn_dam = 0 germ_level = 0 @@ -348,16 +346,44 @@ This function completely restores a damaged organ to perfect condition. // handle internal organs for(var/obj/item/organ/current_organ in internal_organs) - current_organ.rejuvenate() + current_organ.rejuvenate(ignore_prosthetic_prefs) // remove embedded objects and drop them on the floor for(var/obj/implanted_object in implants) if(!istype(implanted_object,/obj/item/weapon/implant)) // We don't want to remove REAL implants. Just shrapnel etc. - implanted_object.loc = owner.loc + implanted_object.loc = get_turf(src) implants -= implanted_object - owner.updatehealth() + if(owner && !ignore_prosthetic_prefs) + if(owner.client && owner.client.prefs && owner.client.prefs.real_name == owner.real_name) + var/status = owner.client.prefs.organ_data[limb_name] + if(status == "amputated") + remove_rejuv() + else if(status == "cyborg") + var/robodata = owner.client.prefs.rlimb_data[limb_name] + if(robodata) + robotize(robodata) + else + robotize() + owner.updatehealth() +/obj/item/organ/external/remove_rejuv() + if(owner) + owner.organs -= src + owner.organs_by_name[limb_name] = null + while(null in owner.organs) + owner.organs -= null + while(null in owner.organs_by_name) + owner.organs_by_name -= null + if(children && children.len) + for(var/obj/item/organ/external/E in children) + E.remove_rejuv() + children.Cut() + + for(var/obj/item/organ/O in contents) + O.remove_rejuv() + + qdel(src) /obj/item/organ/external/proc/createwound(var/type = CUT, var/damage) if(damage == 0) return @@ -384,13 +410,13 @@ This function completely restores a damaged organ to perfect condition. W.open_wound(damage) if(prob(25)) if(status & ORGAN_ROBOT) - owner.visible_message("\red The damage to [owner.name]'s [name] worsens.",\ - "\red The damage to your [name] worsens.",\ - "You hear the screech of abused metal.") + owner.visible_message("The damage to [owner.name]'s [name] worsens.",\ + "The damage to your [name] worsens.",\ + "You hear the screech of abused metal.") else - owner.visible_message("\red The wound on [owner.name]'s [name] widens with a nasty ripping noise.",\ - "\red The wound on your [name] widens with a nasty ripping noise.",\ - "You hear a nasty ripping noise, as if flesh is being torn apart.") + owner.visible_message("The wound on [owner.name]'s [name] widens with a nasty ripping noise.",\ + "The wound on your [name] widens with a nasty ripping noise.",\ + "You hear a nasty ripping noise, as if flesh is being torn apart.") return //Creating wound @@ -451,9 +477,6 @@ This function completely restores a damaged organ to perfect condition. if(trace_chemicals[chemID] <= 0) trace_chemicals.Remove(chemID) - if(!(status & ORGAN_BROKEN)) - perma_injury = 0 - //Infections update_germs() else @@ -629,7 +652,7 @@ Note that amputating the affected organ does in fact remove the infection from t else if(W.damage_type == BURN) burn_dam += W.damage - if(!(status & ORGAN_ROBOT) && W.bleeding() && (H && !(H.species.flags & NO_BLOOD))) + if(!(status & ORGAN_ROBOT) && W.bleeding() && (H && H.should_have_organ("heart"))) W.bleed_timer-- status |= ORGAN_BLEEDING @@ -638,7 +661,7 @@ Note that amputating the affected organ does in fact remove the infection from t number_wounds += W.amount //things tend to bleed if they are CUT OPEN - if (open && !clamped && (H && !(H.species.flags & NO_BLOOD))) + if (open && !clamped && (H && H.should_have_organ("heart"))) status |= ORGAN_BLEEDING //Bone fractures @@ -687,7 +710,7 @@ Note that amputating the affected organ does in fact remove the infection from t ****************************************************/ //Handles dismemberment -/obj/item/organ/external/proc/droplimb(var/clean, var/disintegrate, var/ignore_children) +/obj/item/organ/external/proc/droplimb(var/clean, var/disintegrate, var/ignore_children, var/silent) if(cannot_amputate || !owner) return @@ -762,12 +785,18 @@ Note that amputating the affected organ does in fact remove the infection from t I.loc = get_turf(src) qdel(src) if(DROPLIMB_BLUNT) - var/obj/effect/decal/cleanable/blood/gibs/gore = new victim.species.single_gib_type(get_turf(victim)) - if(victim.species.flesh_color) - gore.fleshcolor = victim.species.flesh_color - if(victim.species.blood_color) - gore.basecolor = victim.species.blood_color - gore.update_icon() + var/obj/effect/decal/cleanable/blood/gibs/gore + if(status & ORGAN_ROBOT) + gore = new /obj/effect/decal/cleanable/blood/gibs/robot(get_turf(victim)) + else + gore = new victim.species.single_gib_type(get_turf(victim)) + if(species) + if(species.get_flesh_colour()) + gore.fleshcolor = species.get_flesh_colour() + if(species.get_blood_colour()) + gore.basecolor = species.get_blood_colour() + gore.update_icon() + gore.throw_at(get_edge_target_turf(src,pick(alldirs)),rand(1,3),30) for(var/obj/item/organ/I in internal_organs) @@ -849,15 +878,14 @@ Note that amputating the affected organ does in fact remove the infection from t if(owner) owner.visible_message(\ - "\red You hear a loud cracking sound coming from \the [owner].",\ - "\red Something feels like it shattered in your [name]!",\ - "You hear a sickening crack.") - if(owner.species && !(owner.species.flags & NO_PAIN)) + "You hear a loud cracking sound coming from \the [owner].",\ + "Something feels like it shattered in your [name]!",\ + "You hear a sickening crack.") + if(!(species.flags & NO_PAIN)) owner.emote("scream") status |= ORGAN_BROKEN broken_description = pick("broken","fracture","hairline fracture") - perma_injury = brute_dam // Fractures have a chance of getting you out of restraints if (prob(25)) @@ -891,26 +919,55 @@ Note that amputating the affected organ does in fact remove the infection from t status &= ~ORGAN_BROKEN return 1 -/obj/item/organ/external/robotize(var/company) +/obj/item/organ/external/robotize(var/company, var/ski) + + if(status & ORGAN_ROBOT) + return + ..() + brute_mod = 0.8 + burn_mod = 0.8 + + brute_mod = 0.8 + burn_mod = 0.8 if(company) model = company var/datum/robolimb/R = all_robolimbs[company] - if(species && (species.name in R.species_cannot_use)) + if(!R || (species && (species.name in R.species_cannot_use))) R = basic_robolimb if(R) force_icon = R.icon - name = "[R.company] [initial(name)]" - desc = "[R.desc]" + name = "robotic [initial(name)]" + desc = "[R.desc] It looks like it was produced by [R.company]." - dislocated = -1 //TODO, make robotic limbs a separate type, remove snowflake + dislocated = -1 cannot_break = 1 get_icon() unmutate() - for (var/obj/item/organ/external/T in children) - if(T) - T.robotize() + + for(var/obj/item/organ/external/T in children) + T.robotize(company, 1) + + if(owner) + + if(!skip_prosthetics) + owner.full_prosthetic = null // Will be rechecked next isSynthetic() call. + + for(var/obj/item/organ/thing in src.contents) + if(istype(thing)) + if(thing.vital) + continue + owner.internal_organs_by_name[thing.organ_tag] = null + owner.internal_organs.Remove(thing) + qdel(thing) + + while(null in owner.internal_organs) + owner.internal_organs -= null + while(null in owner.internal_organs_by_name) + owner.internal_organs -= null + + return 1 /obj/item/organ/external/proc/mutate() if(src.status & ORGAN_ROBOT) @@ -923,7 +980,7 @@ Note that amputating the affected organ does in fact remove the infection from t if(owner) owner.update_body() /obj/item/organ/external/proc/get_damage() //returns total damage - return max(brute_dam + burn_dam - perma_injury, perma_injury) //could use max_damage? + return (brute_dam+burn_dam) //could use max_damage? /obj/item/organ/external/proc/has_infected_wound() for(var/datum/wound/W in wounds) @@ -1012,13 +1069,13 @@ Note that amputating the affected organ does in fact remove the infection from t return if(owner) if(type == "brute") - owner.visible_message("\red You hear a sickening cracking sound coming from \the [owner]'s [name].", \ - "\red Your [name] becomes a mangled mess!", \ - "\red You hear a sickening crack.") + owner.visible_message("You hear a sickening cracking sound coming from \the [owner]'s [name].", \ + "Your [name] becomes a mangled mess!", \ + "You hear a sickening crack.") else - owner.visible_message("\red \The [owner]'s [name] melts away, turning into mangled mess!", \ - "\red Your [name] melts away!", \ - "\red You hear a sickening sizzle.") + owner.visible_message("\The [owner]'s [name] melts away, turning into mangled mess!", \ + "Your [name] melts away!", \ + "You hear a sickening sizzle.") disfigured = 1 /obj/item/organ/external/proc/get_wounds_desc() @@ -1098,6 +1155,12 @@ Note that amputating the affected organ does in fact remove the infection from t parent_organ = null encased = "ribcage" +/obj/item/organ/external/chest/robotize() + if(..()) + // Give them a new cell. + owner.internal_organs_by_name["cell"] = new /obj/item/organ/cell(owner,1) + + /obj/item/organ/external/groin name = "lower body" limb_name = "groin" @@ -1224,6 +1287,8 @@ Note that amputating the affected organ does in fact remove the infection from t gendered_icon = 1 encased = "skull" + var/eye_icon = "eyes_s" + /obj/item/organ/external/head/removed() if(owner) name = "[owner.real_name]'s head" @@ -1244,3 +1309,32 @@ Note that amputating the affected organ does in fact remove the infection from t disfigure("brute") if (burn_dam > 40) disfigure("burn") + +/obj/item/organ/external/head/skrell + eye_icon = "skrell_eyes_s" + +/obj/item/organ/external/head/resomi + eye_icon = "eyes_resomi" + +/obj/item/organ/external/head/vox + eye_icon = "vox_eyes_s" + +/obj/item/organ/external/head/no_eyes + eye_icon = "blank_eyes" + +/obj/item/organ/external/head/no_eyes/diona + max_damage = 50 + min_broken_damage = 25 + cannot_break = 1 + amputation_point = "branch" + joint = "structural ligament" + dislocated = -1 + vital = 0 + +/obj/item/organ/external/head/no_eyes/diona/removed() + var/mob/living/carbon/human/H = owner + ..() + if(!istype(H) || !H.organs || !H.organs.len) + H.death() + if(prob(50) && spawn_diona_nymph(get_turf(src))) + qdel(src) \ No newline at end of file diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index bcc8de7694..4faa796107 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -53,10 +53,10 @@ var/global/list/limb_icon_cache = list() overlays.Cut() if(!owner || !owner.species) return - if(owner.species.has_organ["eyes"]) + if(owner.should_have_organ("eyes")) var/obj/item/organ/eyes/eyes = owner.internal_organs_by_name["eyes"] - if(species.eyes) - var/icon/eyes_icon = new/icon('icons/mob/human_face.dmi', species.eyes) + if(eye_icon) + var/icon/eyes_icon = new/icon('icons/mob/human_face.dmi', eye_icon) if(eyes) eyes_icon.Blend(rgb(eyes.eye_colour[1], eyes.eye_colour[2], eyes.eye_colour[3]), ICON_ADD) else @@ -91,7 +91,7 @@ var/global/list/limb_icon_cache = list() var/gender if(force_icon) - mob_icon = new /icon(force_icon, "[icon_name]") + mob_icon = new /icon(force_icon, "[icon_name][gendered_icon ? "_f" : ""]") else if(!dna) mob_icon = new /icon('icons/mob/human_races/r_human.dmi', "[icon_name][gendered_icon ? "_f" : ""]") diff --git a/code/modules/organs/organ_internal.dm b/code/modules/organs/organ_internal.dm index 39a8a142cf..cfd7ec78f7 100644 --- a/code/modules/organs/organ_internal.dm +++ b/code/modules/organs/organ_internal.dm @@ -70,6 +70,13 @@ parent_organ = "head" var/list/eye_colour = list(0,0,0) +/obj/item/organ/eyes/robotize() + ..() + name = "optical sensor" + icon = 'icons/obj/robot_component.dmi' + icon_state = "camera" + dead_icon = "camera_broken" + /obj/item/organ/eyes/proc/update_colour() if(!owner) return @@ -109,7 +116,7 @@ if (germ_level > INFECTION_LEVEL_ONE) if(prob(1)) - owner << "\red Your skin itches." + owner << "Your skin itches." if (germ_level > INFECTION_LEVEL_TWO) if(prob(1)) spawn owner.vomit() diff --git a/code/modules/organs/pain.dm b/code/modules/organs/pain.dm index e4e024be10..280ea53f49 100644 --- a/code/modules/organs/pain.dm +++ b/code/modules/organs/pain.dm @@ -8,9 +8,9 @@ mob/var/next_pain_time = 0 // partname is the name of a body part // amount is a num from 1 to 100 mob/living/carbon/proc/pain(var/partname, var/amount, var/force, var/burning = 0) - if(stat >= 1) + if(stat >= 1) return - if(species && (species.flags & NO_PAIN)) + if(!can_feel_pain()) return if(analgesic > 40) return @@ -25,13 +25,13 @@ mob/living/carbon/proc/pain(var/partname, var/amount, var/force, var/burning = 0 if(burning) switch(amount) if(1 to 10) - msg = "\red Your [partname] burns." + msg = "Your [partname] burns." if(11 to 90) flash_weak_pain() - msg = "\red Your [partname] burns badly!" + msg = "Your [partname] burns badly!" if(91 to 10000) flash_pain() - msg = "\red OH GOD! Your [partname] is on fire!" + msg = "OH GOD! Your [partname] is on fire!" else switch(amount) if(1 to 10) @@ -51,9 +51,9 @@ mob/living/carbon/proc/pain(var/partname, var/amount, var/force, var/burning = 0 // message is the custom message to be displayed // flash_strength is 0 for weak pain flash, 1 for strong pain flash mob/living/carbon/human/proc/custom_pain(var/message, var/flash_strength) - if(stat >= 1) + if(stat >= 1) return - if(species.flags & NO_PAIN) + if(!can_feel_pain()) return if(reagents.has_reagent("tramadol")) return @@ -61,9 +61,9 @@ mob/living/carbon/human/proc/custom_pain(var/message, var/flash_strength) return if(analgesic) return - var/msg = "\red [message]" + var/msg = "[message]" if(flash_strength >= 1) - msg = "\red [message]" + msg = "[message]" // Anti message spam checks if(msg && ((msg != last_pain_message) || (world.time >= next_pain_time))) @@ -74,7 +74,7 @@ mob/living/carbon/human/proc/custom_pain(var/message, var/flash_strength) mob/living/carbon/human/proc/handle_pain() // not when sleeping - if(species.flags & NO_PAIN) return + if(!can_feel_pain()) return if(stat >= 2) return if(analgesic > 70) diff --git a/code/modules/organs/robolimbs.dm b/code/modules/organs/robolimbs.dm index 774f7a5261..47ae475735 100644 --- a/code/modules/organs/robolimbs.dm +++ b/code/modules/organs/robolimbs.dm @@ -41,4 +41,3 @@ var/global/datum/robolimb/basic_robolimb company = "Morpheus Cyberkinetics" desc = "This limb is simple and functional; no effort has been made to make it look human." icon = 'icons/mob/human_races/cyberlimbs/ipc.dmi' - unavailable_at_chargen = 1 diff --git a/code/modules/organs/subtypes/diona.dm b/code/modules/organs/subtypes/diona.dm index edef9801c5..5d77383d2a 100644 --- a/code/modules/organs/subtypes/diona.dm +++ b/code/modules/organs/subtypes/diona.dm @@ -122,22 +122,6 @@ body_part = HAND_RIGHT parent_organ = "r_arm" -/obj/item/organ/external/diona/head - limb_name = "head" - icon_name = "head" - name = "head" - max_damage = 50 - min_broken_damage = 25 - w_class = 3 - body_part = HEAD - parent_organ = "chest" - -/obj/item/organ/external/diona/head/removed() - if(owner) - owner.u_equip(owner.head) - owner.u_equip(owner.l_ear) - ..() - //DIONA ORGANS. /obj/item/organ/external/diona/removed() var/mob/living/carbon/human/H = owner diff --git a/code/modules/organs/subtypes/machine.dm b/code/modules/organs/subtypes/machine.dm index fd94c2c759..3d551a3760 100644 --- a/code/modules/organs/subtypes/machine.dm +++ b/code/modules/organs/subtypes/machine.dm @@ -1,77 +1,3 @@ -// IPC limbs. -/obj/item/organ/external/head/ipc - dislocated = -1 - can_intake_reagents = 0 - vital = 0 - max_damage = 50 //made same as arm, since it is not vital - min_broken_damage = 30 - encased = null - -/obj/item/organ/external/head/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/chest/ipc - dislocated = -1 - encased = null -/obj/item/organ/external/chest/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/groin/ipc - dislocated = -1 -/obj/item/organ/external/groin/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/arm/ipc - dislocated = -1 -/obj/item/organ/external/arm/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/arm/right/ipc - dislocated = -1 -/obj/item/organ/external/arm/right/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/leg/ipc - dislocated = -1 -/obj/item/organ/external/leg/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/leg/right/ipc - dislocated = -1 -/obj/item/organ/external/leg/right/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/foot/ipc - dislocated = -1 -/obj/item/organ/external/foot/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/foot/right/ipc - dislocated = -1 -/obj/item/organ/external/foot/right/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/hand/ipc - dislocated = -1 -/obj/item/organ/external/hand/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - -/obj/item/organ/external/hand/right/ipc - dislocated = -1 -/obj/item/organ/external/hand/right/ipc/New() - robotize("Morpheus Cyberkinetics") - ..() - /obj/item/organ/cell name = "microbattery" desc = "A small, powerful cell for use in fully prosthetic bodies." @@ -92,34 +18,59 @@ owner.stat = 0 owner.visible_message("\The [owner] twitches visibly!") -/obj/item/organ/optical_sensor - name = "optical sensor" - organ_tag = "eyes" - parent_organ = "head" - icon = 'icons/obj/robot_component.dmi' - icon_state = "camera" - dead_icon = "camera_broken" - -/obj/item/organ/optical_sensor/New() - robotize() - ..() - // Used for an MMI or posibrain being installed into a human. /obj/item/organ/mmi_holder name = "brain" organ_tag = "brain" - parent_organ = "chest" + parent_organ = "head" vital = 1 var/obj/item/device/mmi/stored_mmi +/obj/item/organ/mmi_holder/Destroy() + stored_mmi = null + return ..() + +/obj/item/organ/mmi_holder/New() + ..() + if(!stored_mmi) + stored_mmi = new(src) + + spawn(1) + + if(!owner) + if(stored_mmi) + stored_mmi.loc = get_turf(src) + qdel(src) + return + + update_from_mmi() + if(stored_mmi.brainmob && owner && owner.stat == DEAD) + owner.stat = 0 + owner.visible_message("\The [owner] twitches visibly!") + /obj/item/organ/mmi_holder/proc/update_from_mmi() + if(!stored_mmi) return + + if(!stored_mmi.brainmob) + stored_mmi.brainmob = new(src) + + stored_mmi.brainmob.real_name = owner.name + stored_mmi.brainmob.name = stored_mmi.brainmob.real_name + + if(owner) + stored_mmi.name = "[initial(stored_mmi.name)] ([owner.name])" + name = stored_mmi.name desc = stored_mmi.desc icon = stored_mmi.icon icon_state = stored_mmi.icon_state +/obj/item/organ/mmi_holder/removed() + update_from_mmi() + return ..() + /obj/item/organ/mmi_holder/removed(var/mob/living/user) if(stored_mmi) @@ -133,25 +84,9 @@ holder_mob.drop_from_inventory(src) qdel(src) -/obj/item/organ/mmi_holder/New() - ..() - // This is very ghetto way of rebooting an IPC. TODO better way. - spawn(1) - if(owner && owner.stat == DEAD) - owner.stat = 0 - owner.visible_message("\The [owner] twitches visibly!") +/obj/item/organ/mmi_holder/posibrain + name = "positronic brain" /obj/item/organ/mmi_holder/posibrain/New() - robotize() stored_mmi = new /obj/item/device/mmi/digital/posibrain(src) ..() - spawn(1) - if(owner) - stored_mmi.name = "positronic brain ([owner.name])" - stored_mmi.brainmob.real_name = owner.name - stored_mmi.brainmob.name = stored_mmi.brainmob.real_name - stored_mmi.icon_state = "posibrain-occupied" - update_from_mmi() - else - stored_mmi.loc = get_turf(src) - qdel(src) \ No newline at end of file diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 25c8c4827f..12c48a7826 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -119,6 +119,7 @@ By design, d1 is the smallest direction and d2 is the highest // - Cable coil : merge cables // - Multitool : get the power currently passing through the cable // + /obj/structure/cable/attackby(obj/item/W, mob/user) var/turf/T = src.loc @@ -512,14 +513,18 @@ obj/structure/cable/proc/cableColor(var/colorC) /////////////////////////////////// //you can use wires to heal robotics +/obj/item/stack/cable_coil/attack(var/atom/A, var/mob/living/user, var/def_zone) + if(ishuman(A) && user.a_intent == I_HELP) + return + return ..() + /obj/item/stack/cable_coil/afterattack(var/mob/M, var/mob/user) if(ishuman(M)) var/mob/living/carbon/human/H = M var/obj/item/organ/external/S = H.organs_by_name[user.zone_sel.selecting] - if (!S) return - if(!(S.status & ORGAN_ROBOT) || user.a_intent != I_HELP) + if(!S || !(S.status & ORGAN_ROBOT) || user.a_intent != I_HELP) return ..() if(S.burn_dam) @@ -528,10 +533,9 @@ obj/structure/cable/proc/cableColor(var/colorC) user.visible_message("\The [user] repairs some burn damage on \the [M]'s [S.name] with \the [src].") else if(S.open != 2) user << "The damage is far too severe to patch over externally." - return 1 else if(S.open != 2) user << "Nothing to fix!" - + return else return ..() diff --git a/code/modules/projectiles/projectile/change.dm b/code/modules/projectiles/projectile/change.dm index c643e94dcc..45e8910b38 100644 --- a/code/modules/projectiles/projectile/change.dm +++ b/code/modules/projectiles/projectile/change.dm @@ -67,9 +67,13 @@ if(M.gender == MALE) H.gender = MALE H.name = pick(first_names_male) - else + else if(M.gender == FEMALE) H.gender = FEMALE H.name = pick(first_names_female) + else + H.gender = NEUTER + H.name = pick(first_names_female|first_names_male) + H.name += " [pick(last_names)]" H.real_name = H.name diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm index 4ed12a2846..f13c216945 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm @@ -70,8 +70,10 @@ infect_virus2(M, V.getcopy()) /datum/reagent/blood/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) - if(alien == IS_MACHINE) - return + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.check_is_prosthetic()) + return if(data && data["viruses"]) for(var/datum/disease/D in data["viruses"]) if(D.spread_type == SPECIAL || D.spread_type == NON_CONTAGIOUS) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm index 87897fd9a8..88f314c99d 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -328,7 +328,7 @@ if(affecting.take_damage(0, removed * power * 0.1)) H.UpdateDamageIcon() if(prob(100 * removed / meltdose)) // Applies disfigurement - if (!(H.species && (H.species.flags & NO_PAIN))) + if (affecting.can_feel_pain()) H.emote("scream") H.status_flags |= DISFIGURED else diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 0bfa1b4006..6c169852b9 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -233,12 +233,13 @@ M.adjustToxLoss(0.5 * removed) /datum/reagent/capsaicin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) - if(alien == IS_DIONA || alien == IS_MACHINE) + if(alien == IS_DIONA) return if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & (NO_PAIN))) + if(!H.can_feel_pain()) return + if(dose < 5 && (dose == metabolism || prob(5))) M << "Your insides feel uncomfortably hot!" if(dose >= 5) @@ -268,7 +269,7 @@ var/obj/item/safe_thing = null if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & NO_PAIN)) + if(!H.can_feel_pain()) return if(H.head) if(H.head.body_parts_covered & EYES) @@ -314,7 +315,7 @@ /datum/reagent/condensedcapsaicin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.species && (H.species.flags & (NO_PAIN))) + if(!H.can_feel_pain()) return if(dose == metabolism) M << "You feel like your insides are burning!" diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm index 1c4abbdfe8..b392e789e0 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm @@ -274,7 +274,7 @@ var/mob/living/carbon/human/H = M for(var/obj/item/organ/I in H.internal_organs) - if((I.damage > 0) && (I.robotic != 2)) //Peridaxon heals only non-robotic organs + if((I.damage > 0) && !(I.status & ORGAN_ROBOT)) //Peridaxon heals only non-robotic organs I.damage = max(I.damage - removed, 0) /datum/reagent/ryetalyn diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index d981734ec9..3de830f644 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -234,9 +234,14 @@ affect_blood(M, alien, removed) /datum/reagent/mutagen/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) + + if(M.isSynthetic()) + return + var/mob/living/carbon/human/H = M if(istype(H) && (H.species.flags & NO_SCAN)) return + if(M.dna) if(prob(removed * 0.1)) // Approx. one mutation per 10 injected/20 ingested/30 touching units randmuti(M) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 19ac8c62fb..75ef62894d 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -96,7 +96,7 @@ var/datum/reagent/B if(istype(T, /mob/living/carbon/human)) var/mob/living/carbon/human/H = T - if(H.species && H.species.flags & NO_BLOOD) + if(H.species && !H.should_have_organ("heart")) H.reagents.trans_to_obj(src, amount) else B = T.take_blood(src, amount) diff --git a/code/modules/surgery/bones.dm b/code/modules/surgery/bones.dm index 25addbd40a..823561b5d8 100644 --- a/code/modules/surgery/bones.dm +++ b/code/modules/surgery/bones.dm @@ -142,7 +142,6 @@ affected.status &= ~ORGAN_BROKEN affected.status &= ~ORGAN_SPLINTED affected.stage = 0 - affected.perma_injury = 0 fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index d1becd0cbf..0fef3de54c 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -51,9 +51,6 @@ //Could be cleaner ... affected.open = 1 - if(istype(target) && !(target.species.flags & NO_BLOOD)) - affected.status |= ORGAN_BLEEDING - affected.createwound(CUT, 1) affected.clamp() spread_germs_to_organ(affected, user) @@ -91,7 +88,7 @@ "\blue You have constructed a prepared incision on and within [target]'s [affected.name] with \the [tool].",) affected.open = 1 - if(istype(target) && !(target.species.flags & NO_BLOOD)) + if(istype(target) && target.should_have_organ("heart")) affected.status |= ORGAN_BLEEDING affected.createwound(CUT, 1) @@ -133,7 +130,7 @@ "\blue You have made an incision on [target]'s [affected.name] with \the [tool].",) affected.open = 1 - if(istype(target) && !(target.species.flags & NO_BLOOD)) + if(istype(target) && target.should_have_organ("heart")) affected.status |= ORGAN_BLEEDING affected.createwound(CUT, 1) diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index f0025b7429..e074cbcca5 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -91,7 +91,7 @@ for(var/obj/item/organ/I in affected.internal_organs) if(I && I.damage > 0) - if(I.robotic < 2) + if(!(I.status & ORGAN_ROBOT)) user.visible_message("[user] starts treating damage to [target]'s [I.name] with [tool_name].", \ "You start treating damage to [target]'s [I.name] with [tool_name]." ) @@ -111,7 +111,7 @@ for(var/obj/item/organ/I in affected.internal_organs) if(I && I.damage > 0) - if(I.robotic < 2) + if(!(I.status & ORGAN_ROBOT)) user.visible_message("[user] treats damage to [target]'s [I.name] with [tool_name].", \ "You treat damage to [target]'s [I.name] with [tool_name]." ) I.damage = 0 @@ -285,7 +285,7 @@ if(O.organ_tag == "limb") return 0 - else if(target.species.has_organ[O.organ_tag]) + else if(target.should_have_organ(O.organ_tag)) if(O.damage > (O.max_damage * 0.75)) user << "\The [O.organ_tag] [o_is] in no state to be transplanted." diff --git a/code/modules/surgery/robotics.dm b/code/modules/surgery/robotics.dm index 24bc848472..1ad2aec24f 100644 --- a/code/modules/surgery/robotics.dm +++ b/code/modules/surgery/robotics.dm @@ -212,7 +212,7 @@ if(!affected) return var/is_organ_damaged = 0 for(var/obj/item/organ/I in affected.internal_organs) - if(I.damage > 0 && I.robotic >= 2) + if(I.damage > 0 && (I.status & ORGAN_ROBOT)) is_organ_damaged = 1 break return affected.open == 2 && is_organ_damaged @@ -225,7 +225,7 @@ for(var/obj/item/organ/I in affected.internal_organs) if(I && I.damage > 0) - if(I.robotic >= 2) + if(I.status & ORGAN_ROBOT) user.visible_message("[user] starts mending the damage to [target]'s [I.name]'s mechanisms.", \ "You start mending the damage to [target]'s [I.name]'s mechanisms." ) @@ -241,7 +241,7 @@ for(var/obj/item/organ/I in affected.internal_organs) if(I && I.damage > 0) - if(I.robotic >= 2) + if(I.status & ORGAN_ROBOT) user.visible_message("[user] repairs [target]'s [I.name] with [tool].", \ "You repair [target]'s [I.name] with [tool]." ) I.damage = 0 @@ -393,7 +393,7 @@ user << "You have no idea what species this person is. Report this on the bug tracker." return SURGERY_FAILURE - if(!target.species.has_organ["brain"]) + if(!target.should_have_organ("brain")) user << "You're pretty sure [target.species.name_plural] don't normally have a brain." return SURGERY_FAILURE diff --git a/code/modules/virus2/admin.dm b/code/modules/virus2/admin.dm index dad0a30925..b36da37d6f 100644 --- a/code/modules/virus2/admin.dm +++ b/code/modules/virus2/admin.dm @@ -87,7 +87,7 @@ var/f = 1 for(var/k in all_species) var/datum/species/S = all_species[k] - if(S.virus_immune) + if(S.get_virus_immune()) continue if(!f) H += " | " else f = 0 diff --git a/code/modules/virus2/disease2.dm b/code/modules/virus2/disease2.dm index 81a57dd300..b6e56d231b 100644 --- a/code/modules/virus2/disease2.dm +++ b/code/modules/virus2/disease2.dm @@ -45,7 +45,7 @@ var/list/res = list() for (var/specie in all_species) var/datum/species/S = all_species[specie] - if(!S.virus_immune) + if(!S.get_virus_immune()) meat += S if(meat.len) var/num = rand(1,meat.len) @@ -71,7 +71,7 @@ // Some species are flat out immune to organic viruses. var/mob/living/carbon/human/H = mob - if(istype(H) && H.species.virus_immune) + if(istype(H) && H.species.get_virus_immune(H)) cure(mob) return diff --git a/code/modules/virus2/helpers.dm b/code/modules/virus2/helpers.dm index 1cd185a32b..4daae5c5e2 100644 --- a/code/modules/virus2/helpers.dm +++ b/code/modules/virus2/helpers.dm @@ -4,7 +4,7 @@ proc/infection_check(var/mob/living/carbon/M, var/vector = "Airborne") return 0 var/mob/living/carbon/human/H = M - if(istype(H) && H.species.virus_immune) + if(istype(H) && H.species.get_virus_immune(H)) return 0 var/protection = M.getarmor(null, "bio") //gets the full body bio armour value, weighted by body part coverage. diff --git a/code/modules/virus2/items_devices.dm b/code/modules/virus2/items_devices.dm index d318ca9f8a..69ede1d494 100644 --- a/code/modules/virus2/items_devices.dm +++ b/code/modules/virus2/items_devices.dm @@ -16,7 +16,7 @@ var/mob/living/carbon/C = M if (istype(C,/mob/living/carbon/human/)) var/mob/living/carbon/human/H = C - if(H.species.flags & NO_BLOOD) + if(!H.should_have_organ("heart")) report("Scan aborted: The target does not have blood.", user) return diff --git a/icons/mob/human_races/cyberlimbs/bishop.dmi b/icons/mob/human_races/cyberlimbs/bishop.dmi index 045c3a57249b655882152b59c2144fcae83e2a2c..ebc132f554fa1f0118f3e25323a07e59c1191e90 100644 GIT binary patch delta 1397 zcmY*Wdpy$%6yMZE9@&*gxOr4FkGiHO(k9n#wyxLcTKZ^}>{`ma(!BPQqMN)Q@$s6` zP-q%MF~)kh9@X*kW+A3Q?En^w)zQ(>+S%14D_V01$|r zpVa?Mi3?YWnHZ%gWz5ls$LRa-sC1d{zCFDyUGYj^GbKc&08@+pJYxVP`U|f$Qs7+` z!=$40pkrzw$O4x5N)Pc|fM=EZR1O)hbRyojvfU=vtSYLMsZZ2wcdG8rrs|>+t_9a< zzi>#LQ*?u5m@vU3VtApgJZVCo*WZjJ~_wlpNG}!~tAWM3q>4S!#*tYd3+Jj083Zc1*FyP#p{zQVYhnfwwJVDnOhdzYMhPt?Dfw#5tx63BtM;E-?!H1_g=2WNdg@ zq=^^^YmSpf^EHnY@yu2Kv5BUv6YtP0%o^BPB${mAyOro<8fV)cJyTPrAt5fJRs)%_ z0}(CpK;J3Hh0kY+ocaw@6yOzgSl7_JfuT?V?%WsHGzZ5S(`q0P@IOH$-QmAwJ9+q$fQWFtIIjc3R48Ui2kfz9 zbrL-)_azcnA1$WMO`Um3?PnpCZ5<@VQCC6S@vhzSuc|}bh%xg|-{Y|{kuaPJuM91i?5TW(D3g6#A==xouaEHmMa8T{8CsZJ&A4{Zu_Xq-O=6fN}R zzzf+r(?e3kPB%UE;^&=Lv2bb+o+Zn%sZ>F~E$_KiPwg?^;k8cMNL^Ndau%&^{qx9C ze+k3SwXkG_h&ugD@BpB-??zr)ibxpln^Z5V-=Q}dJu(hd``xwo|MnVk1+FCr=Q=E~ z8d<56PL_`!vYd4@fO|6}H#Hhjd8J>61FtTo5b;t&!B z*;XrZQPsUHhMXV=6b(%X)ic#g+vY50>sP3|5}ClM(A5bTSt6=NaYW~v wCp<>0zX+eWnk%zzg_1g0qOb4#YDGgB1st53kkntoncW(oQO*ue>@UXt3yE)(!vFvP delta 901 zcmV;01A6?T3$_O(iBL{Q4GJ0x0000DNk~Le0002M0002M2m=5B0A&K4H2?qrRFNe> zf5E}QwY9a%%F4sT!@Rt_udlCISXjWo!1QC=-~a#s0d!JMQvg8b*k%9#0FHW8Sad{X zb7OL8aCB*JZU6vyoKseCa&`CgQ*iP1Q`~Iik%5O8Mscr1uwB?md6pW&@>sYkjiI zfemEkOAcfN^UdsGAE_<-p`6iX1BHBZeZyf46c`W14IIWs8~B-Tu20fqpunT{UmOVu z<(tt@&!Gy>PYpsM`R$?s00000e*kc$R#Sjmkq2cwuoa?A2R1_@lY})=h6CFn<>A0~ zNO?H09p%|T>L&k$WSqKG{Jb6#8Nt*PX9MFj2R1NIeev^pNUIGL9bY7{0eLxI5mJ1n znPVhgyEzmB000000002^L!o~k>;KoY|7x53Qe^(I+CJ3(k7c)4=--F>fB&^6xi%YU ztI(%!*1Fe&oJaB2J0$g;#ar>5U3$spO?kz0_MDSr18G|A28O-kB%n;|eT7^H>12Lg z?FP=TkYfXBUhM`Xd0wG;y{`}e000000B*!?t$J=#`}b!5e{ubsPhFDY>5z+FQg_Pr zI(q-!?Ef#XpL?VGe!kq-f7f5>-`oBF#r1Pa^}lcazN5YdJwYa`|G&7tyyf~Sw_%^( zjGqkD6U3ZNEUqu_#woYqFuofb&=cg<>WnY0FCX?-_+f0I@(P)q@x}F}GiD6u-sQKoz@>@0ByzO$avH`n>dW&;?000000001h?J*ksz7fJLRU7=C_WrF^8~mR3 b{y+B%B()QTrkVi^00000NkvXXu0mjfE#0Pg diff --git a/icons/mob/human_races/cyberlimbs/hesphaistos.dmi b/icons/mob/human_races/cyberlimbs/hesphaistos.dmi index 5fbcd15861956af7ea2f167b7e7127212dfa8d89..225b18f5b9cf32ed5839d49c3ae5c441281d1383 100644 GIT binary patch delta 1386 zcmYjPc~H`M6vt~l8%#`Ab0iB|bv;nq%FJU)^PoT!C2NF6OC!Z&D@POgsU4K2iAOr7 zA(_(UMN%nVrEY4YWZ}sg+GU=ZBqa{~7HX#H{qeq^_jxm)&wFpaT-_2w)a4+Y-v$E< z0|*4NA;8}!7y{8yLCBPzmMV+c{*kK3mxXe6u(Y&PK_ZbzB9ZWTd~|d)27|G)vooWH zY*jThP6y*cAl@IwqE*EmRuT-zec5c#g*M8V9%mR7E>w?BR3pzD4gC50x%XNHddG&^ z8K;aY0-FMsXAxIorEvlVdf?t@LS;eHPUtDG3cmc9kQyFOsx^66nnE#fzj*w9@18Qd zT6zu7in^)yV8dVu+rl?H?w<$nZl5a)dIaM_8=eMB$9ZGat*o7Tlb;2E@6)}8X9ey{ zs6=wUcuaDbHo+Nh7s17E?si*;%|C-cw6Os`e-l&67t6)huJ1PXjWC1n+hg8906}gZ z`bKIa5oO-`4w?2f(8?xhurcUC3+FHwrrHkDDal)~vRyNA`iMZ@IAA*yclp#-PHdjO z`LI(jcWZ7=&1qU;EilyN=s4ti6%Kpl)W?0(k|I|IFFPd8Mlr?DtJ9r}YbgbI6pI)8 zR%+72r@`I!7M(DigTH^!&Fr1#oLFsftZ`0Wx}A@gA73NVMsrzRQHY3PeYqzmDX2e2 z!J}I^ZhWnB*f5ub-_m&pQO_ocG zWd3!z2YNMv@?x9F@4CG`EAHGSMtHl+;y|VCi4_=?ys?j+p*A@_A^yy%e1x;^4KyQmn!m@3ZJo=eS7|=#Sg&1x*RbEkj)%n%ehP4vXV76&Z>(%v`f0Un(%LV zTXqp4p4K^AtR2xIlYfNekEk0Z&Q)ocr#7g}u=GP8*%U&9bny#9*wzLkirG~M_aA}q znywIrm@;hI< zLxu~gBLweOYj~LIxJz&#c78!|_bm7RKCW7T8DzRZ*Zrpc^S?wVBDd-0uJOrP^go|^CVa;gp#~n^)%uGv!;L$O_9v&;OMLvV1k8O(VyCqb+)tex1=+c z;e`G(ibvYnK&d2A2WYZ2(x=Nc>qf@_9_W$zrlXGI8xnyqO%qE!lTZK!59J*R!m zZ+t@e%cUU8;-hVDY0~R_xiSpQoM1Ob0(ASJUJpWhuxR1^sZxLy(&O$kSG9#B3XXz`s?&Acw!@D`+)^ zNr;E*(Bv~VBAKq*JHu!GbfA^u;^m6>5`JFXipu-b)ME~%QS-#)m+i9iFe?~sJ ULB!W|h@pxK@WuJmVUA|~4=W~*Y5)KL delta 901 zcmbQvy_{XOGr-TCmrII^fq{Y7)59eQNFM-U4rU;k$~4CmNEuI5HLO2y;DC&b%+k$K zy+9Ghk|4ie28U-i(tw=4s*s2hm(=3qqRfJl%=|nChKf1CVFg8{-@gPGeEj-E%Uf6L z+?n&i8$t~(8b5fXbKXbuBtub8?+y#&Amhu%UJ7#_O*%3uL?L*khTTSu@Xl^y)y*p; zmH_Fs8iwYgN6cJSoKmd!3Jt7rON!$XY!h6%M#E0sbS}r?j=)fn`P1gdJGCVKn4+n@ zZf;c8~DwQoDru7^o(-LU1jI`BeFlkDrW3bpP^-Z!X}M9Yv0y-yUyb8EX5+W zN-O(!Xa0Ql>(iqj9J-O!7JA-q&V6_m{n|UQK0H(?IY=(fR`Og;aqa5Yue_tCx_eJD zln(fG_UqI&by`|QdR503@cubxem(rjS;K>~Go*LK++W`(5Wa7x-SaEg%kOvXse9UA zl?`+U5EN_=T+ZOmxp_`C`y{sd(hKgAWn2X!oq?~fop)AQdG$+XN1eq3izhifwa4bO z{}ouU0hoUPI9|;8(Hs@bDHs$cZ;*!uEq^k=QkG?mZ<@Q?9;(WXSo*x~ZWy9 zgXi6z{FS%lOyJq~G4c?T7#`HDY1;pu=b^*)vVWUD<@oQf-wu|k9k?i|SKUBCaP^WaC<3lTPc z;XYybkO+J*5d?}Uy4lkNZ9k%#FftGi&6y(e2FYKhsB#YONfv>#m3+CZ_;A(Y(+upK z7@6_I;+2;8BOD4Z_+ECXDLfog+$i(y#(NOY*CNIWVmzU!R6ptqi^2o7v6TQ#2fyou zV|`bCsitlEl`y)-uQnM|N@vw__R|z@Z!_BAQ;}q<^me|*_Sp%QA6rl}dLfsx`2B)! z34`|sSiKtjKWcvc++Fe<1ls0`wK?e;Q#4(Ck;FGuy{3HB^+D*+0=J`~SiaF}?u|meg_lZ`hBFkWR$SCsMv2)=b&}4eA;S%Rz=7*1<3|LYLMf#cQU}(t7(-f3T*Gusa?@66lr z>h9Bb4SAkxmP^I=@3JhnFfeFNEa=0m_?P}N2oX8@dSZSf{IB(Y;`+DdyCw~> zfXY-Cq>xtGk(Sp}S?l}L;Tm{gejye?2{^1~_R^`>|D|(6pD+uXng;Kz9E_EJJW=5&s5`#JvW}04+yU@Dv zO9RnHy3d#AH9gdtd^v#Sz^y2dQ$?vm^r zE&x8}pOF|8yu83&vs}NlTlv`I{&P8J&Iw8i-COXqGQ&Lh`0PS}L;uo$cK7jOEh73L zs_#Q03B3?11%9DyiQ6^0n)gA0m5}G1ECW>mLkrtXfKm(--R3-e58alzF*V2s1${M54~I9XKj;#MqH$eR1^0sg&}@Vc$pS{N~9U z@5vroB4~jm$ZS`8;)F(fTcF%x#F*S!5H(WdLVE~O*Yo2~=U8ETV;fc+CrY(0yv7xc zK?~@{Un~A@bcg5xgnHpx8itaG*=K%W?KgKo+5-}v!GIf*7D;$$r2p0DB*J`%yzhvu z+coG(CzqVQqXd6-egF5@}=SmybQv zJE896z61W@L@6^WN{51+q(_=+_9Api(b6$Y>G6)0z&PaguJL+LpuWcXG6VgourNFu zHxYWLy6H=D8Spl%&O2(ID>Is1Ue)R&T=8Zb>09C=9i1`;`On@lj~FQ1Ng!;J|1iY_ zkt@!ES3C!FpL+=7P^@vyo0CP|fpROn(Y>xcuM*)9>Dkfni$7mTCt4+WTaiWuf$}!S z9_OmuiI}XFk!pcYUz>zN6n<#beB>r?7FG@?*C?QML{P0;9qf+7U}jA#m2Dyz5dW4h zn(lx`qbx3Awl0(J%&;9KajEe!k65jji&q1K(4w6CPh~t{DM}*K*@z95&u_PrpcI>@ iYAw>ZvVUf~vUN>`xNhj~78Zd27{uD*Y#v&BCH)DoCmFf` delta 1643 zcmV-x29)`=4YUm(s00001bW%=J06^y0W&i*HpL$eSbVOxyV{&P5bZKvH004NLjnO>{!!Qg5 z;MqQfN%qpewM$6|8Ja5?gB9D5SRjk$`bpZMQ;9Y``1C-iHqW-}2h+TI{RS!tvw4{N z>8#a~JjX5Eu3AM%A@VmAb`0BCk##gze_HuOWna>2Bsar8UwDYDUJFDMf+vJ(VB znM9Et5m`_sVvJPqP(^UZM+U-_|Eb!vL-YCS3MZF_MqX2bCIA2hT1iAfRCt{2om*qu zC=i7;)1abKb(6SFVmtf)|K@_ceQ3;Ftc!!)^R;~`XqaPUWa$9vIsgCw007WFf5hDv zN3|~rH>454DQ)EphkVbG*}e2px0Aq}H1gaM~oikxCx5_MpqUq0}o<8k1jRz&OQ>vAUN@pFFB*@Hq<YMH%4qO>y(|C#0000000000004gt59EIW ze3S4{wdd{!9*6rDm=)f+z=0Pzsm=4$`K(@zb)4R<+I(KzgMxo(vZP&Je>gM}UF09u zFEu%cru>2i&f*g}EqJlWyB5#zpmc$)J8)kYnACIE-N0}@ z(S-V?wlmS_t~*M-O|;4YJyyN}#Qyw*s2B90)K*-_+^@#JAU^;A00000000000002s zwzzMDx1bqyeD2NN9$FW2f4YNNCYn#fp}GkCeu$f%p@zxL(h~kP8RQe#Ws_@8tZ78^ z?x)qpmJ5v8;ghR%Xf%A<9q)`LJUPr}c@LVitaj!(x?vCcY<$tcFA-|)`yZG+ST*oh z!Z-hCP$p6l1>@*nb`NfM8T0LDGS;Vk=;mKhx(X(Sqt|Mw-GXlTnKeOX6BuDn_Dby<&lrkm1qVDx=LHuR(y>HJXtzO@2 zrEi7R@&Et;0000000000;7S+{UE>C~?GEuz!~AG_n*rNf;~nqR3S-mT3^;nwvae{o zV72zOVS5=YTLvUif5Sb<_7Yp>Uq+44@F>H**@LeyFGh`&6zjv~A3EyH#oo|AUnFz` zQhZm#bo3|thqk}xv*)B5i~Yl?R6klv&*SgCO%|ONLJqQme`x48K7N<4rdxEXy|;#c zsF!-&LjV8(006KN)bQP=3uCq)`-fLSfAOb0{+`1>oRig>i2j_<-!uKgxp}RJ5KqYEoJ+ME z>gjO#xge1qe`{h$`~5xz@iG!(3MtCvRGz7XAni6W{9nAzI~!&|X`e6CdvT`$N_0pE zlFI{!A;bH6`JPK@*l@1~1B#QtC<-|6;gJ7{<++Q7e{mdTfw?dX{InUTOp`$IkpLYJ zx%_aHzhgz<`@1ag{k;hMG=GI@`VNW$`FPAdcswdUW?cf8XF3-?F}r-SzZ3^dFTD!Z zq-S$dv@u_H^XatalVj_K$vnRd0bA<}+I~G#jcpUym@)<|yPx@YtyH#wvp!n(V7PUK zS>Uphe^3|blE39=6gS;=Z4JzaLTYKg6KMR=K3o2$K7{Z{ZF@5mllV)xz)`;naCt#s z!vgc|NYw5%rYZlL!XmKc9;B4>SN4VDq32#V`P*LpR|W`HZZ^sg+59lM2<~qEw-x{Z z00000000000002+kw*T3*Lka)@0D!-X{{WXSAdu*hm3sgH002ovPDHLkV1jglA6fta diff --git a/icons/mob/human_races/cyberlimbs/xion.dmi b/icons/mob/human_races/cyberlimbs/xion.dmi index daf10298c217b113fa82934faed2049535e1d128..6c230675c3f84553a723a304fa9f02d07cab7f2b 100644 GIT binary patch delta 1346 zcmZ8hdpOez7~W7c93_>cB&2W-N1k!;7&UC=nBvK0r#Q4}VXo!ApHL|&LpViirx>}_ zTuwEO5Hspn*w|dlC2j7zxU}uid7hs0obQkCeZTjQ@BO~-kMEkY2x4^8!`)RKq5}be zKY{0s;L-k_i{6~&FrBOwAez>8?)0&Jp}m$$b!3WdUAu_h)a>WVJB4HX=7#@!R- zI5mLXD9RJOd}833=%6TEL<}w*4+6y%Wqo)FX|+&G86PA-as?$EZi!*K+B;M2v`NJr zl?yC7AzH2YWF2y0M(=jWawv^p@veds{wOCBsu2wzdn0kK+^K~GYlD#MF3=N5a_ z1e)EPQN;Od-oU6|7?(Uq@7u%s__R&`EWZN;Qqn=foxI|TW{X)@xVBpG{m%>@^UU8)T!E)TsCI7+n}?Si6<_>a`~o3)Y42W2cs){jJRegdK3OZ$n^oBy_j~AV z@ec~Ui69eO%EXl5%hG%bVROShZ__@6r3 z8c3hVWZL^fGbXIZP*Q3Vh6__QqV=3f%Y-w9AxO?nh3^L6$ckMj4Ru2ogZvtMm*DQu z<%kpBw1Z2Tc=NengUqXoT^yb$dMR0I$$Zskb9ipMsG?;dp|R@45*z3R--El*7t!*= z%7`pk3>@>te?DlS-hgEKUVr03L1*7jXb-W~OSAcd5C_H`+FM)4~KViVvj);zI zb=Ycu_WY$J;jV@8yWkFv!(;I4ggqW_@BKxn)5*?fFs$!P(Hz@Dl>RqwLFcQtcj&%( zB?0J+9eY>jAQr;C^4@Tp3^ZWd8Tjy8HiHq1N-2=yZ7^12RswPPY(BLxn3%_4dh35{ z<)}6vGCaD1lu~dxlkpEHL7t8U==DT^UgUh267ReFkASFY=RV4$0RFOG9#mP&HaH{P3&*ZITwePy;u=Tghl$f0x_$bI-+B$i z{h?(oUo06rwmzCAVao515sfGP);AyEzhQ4DSJZOB`Xvv@Ag!Ac(%BteeLNubA8THY A*8l(j delta 846 zcmV-U1F`(|3WWzHiBL{Q4GJ0x0000DNk~Le0002M0002M2m=5B0A&K4H2?qrMUf>& zf55=NE;(6n00001bW%=J06^y0W&i*Hj(SvBbVOxyV{&P5bZKvH004NLQ&wiFEu_#xG zi!&v&s2HS)i!-e#F*g;&Hbkh(Axc$Ie|$z_UJ4P05v8msJ|{Ju2*Zd`RTQ6=pI<_R zVfd6OE4cc(fCCu-Q1xbe6{Q==00071NklVA?*n}s}q%LM=cAj9?VD~FUu8u?a#!{{zB>WyBdOzwDW%dGua)=k}5n3iw#7b-5>sxB6FUvWyl*=NcYXo|Xvdn2C&_lFl>*q0_f4u*+Lx96Hz5)LN5zV!ckh`g)^(7dhu3!2a$l9Gc z=-%cMI3z6dc1K9g5ojxXZ5*4ai)B?88zH-H;1ak1?Zu%G000000000;rVX;QhT9K0 z0{A_@56%CLDSz}VAx@d!$L9aB?0m}nJ~sc4W$!@wZKsXyJ3+qV!{%?M|I000000001h6G|BHARj7Wz<;cS0sn)2 Y16#HY12mq>=>Px#07*qoM6N<$f&dbI*#H0l diff --git a/icons/mob/human_races/cyberlimbs/zenghu.dmi b/icons/mob/human_races/cyberlimbs/zenghu.dmi index a94eacc48a512f131f9f999ad93d7b764135fb2f..7ee24241b9faccd0a2ee27b65a245ddce179e596 100644 GIT binary patch delta 1335 zcmY*VdpOez82-(569;ufoH#hsqEpnNv|JC>IGbWw>EgIFp_prA_H#Qak0nEMv}JM` zlXP5?#6(3GWR%MuETVF0mW*w-ojHG;&iVfMzW4pU@AdHdBk8t|(}Fo(1>3^f1% z&_W${^9BHj0s=g!vLbVf4+koWYc6~zXklTYfLJURhr@Y!dExPRS65d{OG~4+5?93l z66=le0i0)s@d{FP341)&?QBd?bSNPP_IMEx$U~pgPi3nWH#`lE@ z{u;>3XYX|HFS4v5R@51X>UE><^-_xs-LuX|*XuuV%btfG)yYHDL2^}Xbc4#$?4V?@T&UP#ZnQSUFpG=Ndf53u)y*U_WJH9&B31WoWR=%c!MH8s4 zzr}S-m)}Z~J|sSj_hls|*61WAKYx~(1SajsukojP{R$Nc&Xj+V{e>!wmcAga%l#JD znRQM-%E!n>Wzpi66?IK!mT`$s8>;)9?smKGk3-V~VXis($mCmDTAbrmAbP&?hl)2l zq%2|>G*rpa$qIkmVE$U7U}9QN94Bfh%I`mBi-M(ByUl)WqKspp-~Oy4o+pLB)*MtH zLHCn(5OaKlcg?2Hy2McP#b$ajDXhqulXLvbrL7O>Z=tqqPmc@j1Wpposgk+IWj-LM2 zEsy7UVz}wWz^bRs z6@^tVRJzpM$X@yI^2DE0)|i1Z3#j10_GN2&sdvPJ$xd0_T3(Kq6=O>opbvNX!bU*+ zBqkm9r>1PByS_6B${y8F;rl3wR^Rhmy(8v8PsS=!1fs1N=l~C$X;s?LKF4}F#aU3i z^1AGE`-quavtjz?+E#GC?B1-|%~{76Fz@F^xKGby)i4rgXCM_jZtEN_Z%`@?%$+1l z?kaF_fa-9Pdc$%tc%#2!AN@8`j^K`({MVi~&9`~=^x`{>D@|hUL0R?|aBAe{(TD~9 zltH7ZDeJUveVT|UtCBK*>3ne=OBNd@NJNh)j7It692AIEqSd}**$P%EAC~G!;quP4 z^9~5*na$>nJ>7>Cdv#qWCESeksIB)U+P-m!2BG>t4)U{>Gq0+~Nw1}!j+}Es&;Gor z-gp_ZBp9tN?c;&9u)^gLkitK=D$+J7Q1RlK3{XE3mT(()Kn^D6iQuUQj7G4CVN3eg57iBL{Q4GJ0x0000DNk~Le0002M0002M1Oos70HE@5GynhqEs-TI zf55=N!^;e!00001bW%=J06^y0W&i*Hj(SvBbVOxyV{&P5bZKvH004NLQ&wiFEu_#xG zi!&v&s2HS)i!-e#F*g;&Hbkh(Axc$Ie|$z_UJ4P05v8msJ|{Ju2*Zd`RTQ6=pI<_R zVfd6OE4cc(fCCu-Q1xbe6{Q==0006wNklzI&#Y4gk zIr-J=8Byyg6O(0K8&M+bSwDRt7ASkyRF!ZAjh^*WPh!E|qdk6kjt^+`tlz<_T=5=n zD(XZ1000000D#0O#Vz(>XJIxwe}H-Lp;1?6vjg;|x5$kIf&5^TSW-wN?7!LaJ0mGh zZ|rgDhZ@~&mR@~G%d1akz`{GV+i}3Rk(STCoB>O}qT7J1kmnlt7ytkO004l#Sidjl z0iy065*xoC$OHc3cqwUGY5aa558Qj7>h1#?zaPj0{$kmEfc5xt9tf#3e=n{zq}<44 z^o%Wy5 zo2jZI&dl@sEDuEMbxo|~n7U2R@3TA*t&a~V{Q=}`v|iC2$*G<7%q%mz(R%h@!<>f5 z((S*eDsUH9U00000+X8(h w!d|iTh5CKw|9cPc;((YK`r*fc0UiDi?}SK|zN%-500000NkvXX1g=70f+!ep9smFU diff --git a/icons/mob/human_races/r_machine.dmi b/icons/mob/human_races/r_machine.dmi deleted file mode 100644 index 65f66c3238599dc86e3c0b902ee79973bee106ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2120 zcmZ8gXHXLe6HS8jCWst_2q?WsqERWqgepi$0tCWPL<9ng8ajw@1XNI|2MS0p3V0m7 zNKZtNj(|c`)TopIA=0D;o*?LR1JW1ONa;FIt+}0{}oS z1OfzjxXJ$?XB;=hVr_8d6beOERh3)KfcQ+b4hRH-rl#f_E;cd2?A1`w>uynwlCE3PmE3+S=M+Fc<^^K_Cz-D=P#7VPRoWngQT4YiMYs zwtsiaU)GA*0suHRHa1#XTdAqv-Q1S-^hODUk<84IBr%ZluhBy6(GCEk`S%2FL5ajU zhnV>Udj(w$2)RnU2>?XoB~Oe9b;CsXSA$tnKJAGPHJ7|kAX@P1_Xz%huF6$%U7ajF z5zNTRSPzb^Vr$!H1;?sEUlog@uYp*6s6OObc1QBfo1>#HPD{jxBoVQekC`A|H`HyQgwJ{Q_Qf_odS67Uw5& z4PcoPFX}_UqiT~+YQhRvt-kBNT=4wpzD5rUtr^-x$D}p(9M_7d319At#p>EC7Q((|s|b6`6bZ4iQieXK$7CJtb3Kuz9HK~@%nn~^5uTG!q*EZ9!u42| z{gIJiw$82fi9gq&xKY5+J{AHvSGH1c24GK1r`42r$FSOIzO@DM_4|ydAXWSfZT*Sr ztE1AxNUAyO1KHmnP^~pv<9_S!hVsgXui*IEd$L%6V|tl4YB$^=JicsqT_jB&*;@^_ z4HeW(UfF8S_Bw=Cn0vc0&+Pbj&EF#F)(K;@hl9y|ahSgH>x6q_Wv$-#ReSj#nU17O z-0)Tv=%~fuWV^it*Q}?fy*idym<#dsy0ep(4NF?DpwR870%vURd)?Bs%R9U^9*mbK zReX_~1RV?+=`WS-lsDEv`M%BRpTh}@Ok6*nqw~JQ&AUq=`zGer_?F zT#EVtH%iLzLYNC~sFfz*b?n?bTZ{8de3g6rAkpFB#GmTa9648mV7^bZ&$8#Q;L;~*rG*>q&<8ew5- z&v5odSL3^PNO$07Cs^#xcjE~KDSj6Qoi|G-WUyYi?{HigZ_t-3#oF6Wm;0ZjVjN=_ zvCYdp$K8RUj`0~hOAz7me^8M{I_-gN{8hT}rp=Pe9eeLxP|yMSpT~1)BaTx&_8IJ( zfx!oNJP~A$-7&wa!fMhJ8mEP4%$YVhyX{fm_1K6K5gh~E`@a&a!jjGX%siJ#mGY$h zdx`zEG#6Um= zUV1!@&vWg})~amkDuo#+Iw?OrTSHweeE)@>pWvBx%rbcZs8QnBTo|tVf%ALJ^L|xCJ?z{UWBQnj!f(fh zDLF+^)*hs$YE|Owc~dj~Jg`~yVDIm3Cbn=me1@+brNX4k6?xTV66~S|@3S~W%8V|1 ziyZ(L=eCO6D<`wr^ovR25j+#S*0+Zo4sX2}R<=JgO7bGVEBOlvbYc(?W_0f+mc3CkI_TM^*I9i znYnYMAHC`FanXAcdQW{X$E1jNyX_c~S#K7dU|QMG^kSM*76x973KL>FsKgvKVAPnh zWCN;aQ-R@S3IL^P4kz!MQh<2!t%=b!i54}gbj9<)THNc|?Z|^T^M*==A}ZARG;5Ya cbUpMH<(y`4Hg9%x;+Luy&CzDnCYR&>2bWpbb^rhX From 4a92b5ee70bb082a1550b55eb9f3ec8e5e7e8f65 Mon Sep 17 00:00:00 2001 From: NullSnapshot Date: Sun, 25 Oct 2015 18:10:14 -0700 Subject: [PATCH 20/26] Fixes #11350 --- code/game/machinery/rechargestation.dm | 47 ++++++++++++++++++-------- 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index ac5ae8d8c7..01d3d72dac 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -103,6 +103,11 @@ R.adjustBruteLoss(-weld_rate) if(wire_rate && R.getFireLoss() && cell.checked_use(wire_power_use * wire_rate * CELLRATE)) R.adjustFireLoss(-wire_rate) + else if(istype(occupant, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = occupant + if(!isnull(H.internal_organs_by_name["cell"] && H.nutrition < 450)) + H.nutrition = min(H.nutrition+10, 450) + /obj/machinery/recharge_station/examine(mob/user) ..(user) @@ -200,22 +205,36 @@ go_in(R) /obj/machinery/recharge_station/proc/go_in(var/mob/living/silicon/robot/R) - if(!istype(R)) - return - if(occupant) - return - if(R.incapacitated()) - return - if(!R.cell) - return + if(istype(R, /mob/living/silicon/robot)) + if(!istype(R)) + return + if(occupant) + return - add_fingerprint(R) - R.reset_view(src) - R.forceMove(src) - occupant = R - update_icon() - return 1 + if(R.incapacitated()) + return + if(!R.cell) + return + + add_fingerprint(R) + R.reset_view(src) + R.forceMove(src) + occupant = R + update_icon() + return 1 + + else if(istype(R, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = R + if(!isnull(H.internal_organs_by_name["cell"])) + add_fingerprint(H) + H.reset_view(src) + H.forceMove(src) + occupant = H + update_icon() + return 1 + else + return /obj/machinery/recharge_station/proc/go_out() if(!occupant) From 87afd2feb22b1fff68c72a962d9b9d62e31f2bb6 Mon Sep 17 00:00:00 2001 From: NullSnapshot Date: Sun, 25 Oct 2015 21:51:31 -0700 Subject: [PATCH 21/26] Fixes: #11351 #11357 #11359 #11361 --- code/__defines/damage_organs.dm | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/code/__defines/damage_organs.dm b/code/__defines/damage_organs.dm index 27a34f10eb..5fae0f9c48 100644 --- a/code/__defines/damage_organs.dm +++ b/code/__defines/damage_organs.dm @@ -29,7 +29,7 @@ #define FIRE_DAMAGE_MODIFIER 0.0215 // Higher values result in more external fire damage to the skin. (default 0.0215) #define AIR_DAMAGE_MODIFIER 2.025 // More means less damage from hot air scalding lungs, less = more damage. (default 2.025) -// Organ defines. +/*// Organ defines. #define ORGAN_CUT_AWAY 1<<0 #define ORGAN_BLEEDING 1<<1 #define ORGAN_BROKEN 1<<2 @@ -38,7 +38,18 @@ #define ORGAN_SPLINTED 1<<5 #define ORGAN_DEAD 1<<6 #define ORGAN_MUTATED 1<<7 -#define ORGAN_ASSISTED 1<<8 +#define ORGAN_ASSISTED 1<<8*/ + +// Organ defines. +#define ORGAN_CUT_AWAY 1 +#define ORGAN_BLEEDING 2 +#define ORGAN_BROKEN 4 +#define ORGAN_DESTROYED 8 +#define ORGAN_ROBOT 16 +#define ORGAN_SPLINTED 32 +#define ORGAN_DEAD 64 +#define ORGAN_MUTATED 128 +#define ORGAN_ASSISTED 256 #define DROPLIMB_EDGE 0 #define DROPLIMB_BLUNT 1 From f93ea6a78fb3a0d1bcb47104e1e7f435b6598bbd Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Fri, 4 Dec 2015 16:49:21 +1030 Subject: [PATCH 22/26] Tweaks to previous commits. More tweaks to IPC fixes. Merge resolution/compile fixes. Further work on properly integrating, updating and fixing prosthetic options. Repathed internal organs to organ/internal. More work on full synthetics, changelings, overheating. Working on getting organs to qdel properly and spawn properly when robotized. Finalized some overheating values, added remaining prosthetic icons. Finalizing the testing version of the full prosthetic bodies branch. Added suit cyclers to the autolathe and map. Fixing runtime errors. Fixing errors. Changelog. Replacing limb and organ strings with constants. Prevented brainless species from becoming full cyborgs. Fixed issues with brain/MMIs renaming themselves inappropriately. Various fixes and oversights. --- code/ATMOSPHERICS/he_pipes.dm | 2 +- code/ZAS/Airflow.dm | 12 +- code/ZAS/Fire.dm | 44 ++-- code/ZAS/Phoron.dm | 2 +- code/__defines/damage_organs.dm | 29 +-- code/__defines/mobs.dm | 36 ++++ code/_helpers/mobs.dm | 4 +- code/_onclick/hud/screen_objects.dm | 30 +-- code/datums/datacore.dm | 2 +- code/datums/diseases/appendicitis.dm | 2 +- code/game/antagonist/alien/borer.dm | 4 +- code/game/antagonist/station/changeling.dm | 11 + code/game/atoms.dm | 5 +- .../changeling/powers/bioelectrogenesis.dm | 8 +- .../changeling/powers/extract_dna_sting.dm | 13 +- code/game/gamemodes/cult/runes.dm | 4 +- code/game/gamemodes/objective.dm | 2 +- code/game/machinery/autolathe_datums.dm | 5 + code/game/machinery/bioprinter.dm | 10 +- code/game/machinery/bots/mulebot.dm | 12 +- code/game/machinery/doors/airlock.dm | 18 -- code/game/machinery/flasher.dm | 2 +- code/game/machinery/iv_drip.dm | 2 +- code/game/machinery/kitchen/gibber.dm | 17 +- code/game/machinery/portable_turret.dm | 4 +- code/game/machinery/rechargestation.dm | 21 +- code/game/machinery/suit_storage_unit.dm | 2 +- code/game/machinery/turrets.dm | 8 +- code/game/mecha/combat/combat.dm | 2 +- code/game/objects/effects/aliens.dm | 4 +- .../effects/decals/Cleanable/humans.dm | 6 + .../effects/decals/Cleanable/robots.dm | 6 +- code/game/objects/effects/spiders.dm | 4 +- code/game/objects/items.dm | 4 +- code/game/objects/items/devices/flashlight.dm | 2 +- .../objects/items/devices/suit_cooling.dm | 29 +-- code/game/objects/items/robot/robot_parts.dm | 14 +- code/game/objects/items/stacks/medical.dm | 6 +- .../objects/items/weapons/cigs_lighters.dm | 2 +- .../game/objects/items/weapons/clown_items.dm | 2 +- .../items/weapons/grenades/flashbang.dm | 2 +- code/game/objects/items/weapons/handcuffs.dm | 4 +- .../objects/items/weapons/material/kitchen.dm | 2 +- .../objects/items/weapons/storage/fancy.dm | 4 +- .../objects/items/weapons/swords_axes_etc.dm | 4 +- code/game/objects/items/weapons/tape.dm | 12 +- code/game/objects/items/weapons/tools.dm | 4 +- code/game/objects/items/weapons/trays.dm | 4 +- code/game/objects/structures.dm | 10 +- .../stool_bed_chair_nest/alien_nests.dm | 4 +- .../preference_setup/general/03_body.dm | 125 ++++++----- .../client/preference_setup/global/03_pai.dm | 3 + code/modules/client/preferences.dm | 35 ++-- code/modules/clothing/suits/armor.dm | 2 +- .../clothing/under/accessories/accessory.dm | 8 +- code/modules/clothing/under/miscellaneous.dm | 9 +- code/modules/detectivework/tools/rag.dm | 2 +- code/modules/detectivework/tools/swabs.dm | 10 +- code/modules/food/recipes_microwave.dm | 4 +- code/modules/genetics/side_effects.dm | 4 +- code/modules/hydroponics/seed.dm | 2 +- code/modules/library/lib_items.dm | 2 +- code/modules/materials/materials.dm | 2 +- code/modules/mining/abandonedcrates.dm | 12 +- code/modules/mob/language/language.dm | 5 +- code/modules/mob/language/outsider.dm | 2 +- code/modules/mob/language/station.dm | 9 +- .../mob/living/carbon/alien/larva/larva.dm | 2 +- code/modules/mob/living/carbon/brain/MMI.dm | 33 ++- .../mob/living/carbon/brain/brain_item.dm | 73 ++++--- code/modules/mob/living/carbon/brain/death.dm | 2 +- code/modules/mob/living/carbon/breathe.dm | 2 +- code/modules/mob/living/carbon/carbon.dm | 2 +- .../mob/living/carbon/human/appearance.dm | 4 +- code/modules/mob/living/carbon/human/death.dm | 2 +- code/modules/mob/living/carbon/human/emote.dm | 32 +++ .../mob/living/carbon/human/examine.dm | 123 +++-------- code/modules/mob/living/carbon/human/human.dm | 68 +++--- .../living/carbon/human/human_attackhand.dm | 2 +- .../mob/living/carbon/human/human_damage.dm | 21 +- .../mob/living/carbon/human/human_defense.dm | 12 +- .../mob/living/carbon/human/human_defines.dm | 5 +- .../mob/living/carbon/human/human_movement.dm | 4 +- .../mob/living/carbon/human/human_organs.dm | 6 +- .../mob/living/carbon/human/inventory.dm | 36 ++-- code/modules/mob/living/carbon/human/life.dm | 81 ++++---- .../carbon/human/species/outsider/vox.dm | 48 ++--- .../living/carbon/human/species/species.dm | 51 ++--- .../carbon/human/species/species_attack.dm | 2 +- .../carbon/human/species/station/golem.dm | 2 +- .../human/species/station/human_subspecies.dm | 12 +- .../carbon/human/species/station/monkey.dm | 22 +- .../carbon/human/species/station/slime.dm | 24 +-- .../carbon/human/species/station/station.dm | 62 +++--- .../human/species/xenomorphs/alien_embryo.dm | 6 +- .../species/xenomorphs/alien_facehugger.dm | 4 +- .../human/species/xenomorphs/alien_powers.dm | 20 +- .../human/species/xenomorphs/alien_species.dm | 86 ++++---- .../mob/living/carbon/human/stripping.dm | 2 +- .../mob/living/carbon/human/unarmed_attack.dm | 18 +- .../mob/living/carbon/human/update_icons.dm | 18 +- .../modules/mob/living/carbon/metroid/life.dm | 8 +- code/modules/mob/living/living.dm | 4 +- code/modules/mob/living/living_defense.dm | 2 +- .../mob/living/silicon/robot/analyzer.dm | 4 +- .../living/silicon/robot/drone/drone_items.dm | 2 +- .../mob/living/simple_animal/borer/borer.dm | 2 +- .../simple_animal/borer/borer_powers.dm | 8 +- .../mob/living/simple_animal/hostile/bear.dm | 2 +- .../mob/living/simple_animal/parrot.dm | 2 +- code/modules/mob/mob.dm | 3 + code/modules/mob/mob_grab.dm | 32 +-- code/modules/mob/mob_grab_specials.dm | 10 +- code/modules/mob/mob_helpers.dm | 116 ++++++----- .../mob/new_player/preferences_setup.dm | 10 +- code/modules/multiz/turf.dm | 12 +- code/modules/organs/blood.dm | 14 +- code/modules/organs/misc.dm | 30 +-- code/modules/organs/organ.dm | 85 +++----- code/modules/organs/organ_external.dm | 194 ++++++++++-------- code/modules/organs/organ_icon.dm | 6 +- code/modules/organs/organ_internal.dm | 95 ++++++--- code/modules/organs/organ_stump.dm | 2 +- code/modules/organs/robolimbs.dm | 16 +- code/modules/organs/subtypes/diona.dm | 106 +++++----- code/modules/organs/subtypes/machine.dm | 76 ++++--- code/modules/organs/subtypes/standard.dm | 30 +-- code/modules/organs/subtypes/xenos.dm | 38 ++-- code/modules/paperwork/paper.dm | 4 +- code/modules/projectiles/gun.dm | 4 +- .../Chemistry-Reagents-Core.dm | 2 +- .../Chemistry-Reagents-Dispenser.dm | 4 +- .../Chemistry-Reagents-Food-Drinks.dm | 2 +- .../Chemistry-Reagents-Medicine.dm | 2 +- .../reagent_containers/food/snacks.dm | 36 ---- .../reagents/reagent_containers/syringes.dm | 2 +- code/modules/surgery/bones.dm | 4 +- code/modules/surgery/face.dm | 4 +- code/modules/surgery/generic.dm | 28 +-- code/modules/surgery/implant.dm | 2 +- code/modules/surgery/organs_internal.dm | 45 ++-- code/modules/surgery/other.dm | 6 +- code/modules/surgery/robotics.dm | 33 ++- code/modules/tables/interactions.dm | 6 +- code/modules/vehicles/cargo_train.dm | 4 +- code/modules/virus2/effect.dm | 2 +- code/modules/virus2/items_devices.dm | 2 +- html/changelogs/Zuhayr-robolimbs.yml | 9 + icons/mob/back.dmi | Bin 47377 -> 50492 bytes icons/mob/human_races/cyberlimbs/bishop.dmi | Bin 1442 -> 4210 bytes .../human_races/cyberlimbs/hesphaistos.dmi | Bin 1431 -> 4054 bytes icons/mob/human_races/cyberlimbs/ipc.dmi | Bin 1717 -> 4379 bytes icons/mob/human_races/cyberlimbs/xion.dmi | Bin 1397 -> 3695 bytes icons/mob/human_races/cyberlimbs/zenghu.dmi | Bin 1362 -> 1363 bytes icons/mob/human_races/r_diona.dmi | Bin 2719 -> 2907 bytes icons/mob/uniform.dmi | Bin 316200 -> 316825 bytes icons/mob/zone_sel.dmi | Bin 1413 -> 961 bytes icons/obj/clothing/uniforms.dmi | Bin 78059 -> 78378 bytes maps/polaris-1.dmm | 25 +-- maps/polaris-2.dmm | 6 +- maps/polaris-5.dmm | 30 +-- 161 files changed, 1384 insertions(+), 1352 deletions(-) create mode 100644 html/changelogs/Zuhayr-robolimbs.yml diff --git a/code/ATMOSPHERICS/he_pipes.dm b/code/ATMOSPHERICS/he_pipes.dm index d78bb828e2..52dedfb089 100644 --- a/code/ATMOSPHERICS/he_pipes.dm +++ b/code/ATMOSPHERICS/he_pipes.dm @@ -81,7 +81,7 @@ obj/machinery/atmospherics/pipe/simple/heat_exchanging heat_limit = H.species.heat_level_3 if(pipe_air.temperature > heat_limit + 1) - buckled_mob.apply_damage(4 * log(pipe_air.temperature - heat_limit), BURN, "chest", used_weapon = "Excessive Heat") + buckled_mob.apply_damage(4 * log(pipe_air.temperature - heat_limit), BURN, BP_TORSO, used_weapon = "Excessive Heat") //fancy radiation glowing if(pipe_air.temperature && (icon_temperature > 500 || pipe_air.temperature > 500)) //start glowing at 500K diff --git a/code/ZAS/Airflow.dm b/code/ZAS/Airflow.dm index d14c760d85..8831f8aa40 100644 --- a/code/ZAS/Airflow.dm +++ b/code/ZAS/Airflow.dm @@ -227,14 +227,14 @@ mob/living/carbon/human/airflow_hit(atom/A) bloody_body(src) var/b_loss = airflow_speed * vsc.airflow_damage - var/blocked = run_armor_check("head","melee") - apply_damage(b_loss/3, BRUTE, "head", blocked, 0, "Airflow") + var/blocked = run_armor_check(BP_HEAD,"melee") + apply_damage(b_loss/3, BRUTE, BP_HEAD, blocked, 0, "Airflow") - blocked = run_armor_check("chest","melee") - apply_damage(b_loss/3, BRUTE, "chest", blocked, 0, "Airflow") + blocked = run_armor_check(BP_TORSO,"melee") + apply_damage(b_loss/3, BRUTE, BP_TORSO, blocked, 0, "Airflow") - blocked = run_armor_check("groin","melee") - apply_damage(b_loss/3, BRUTE, "groin", blocked, 0, "Airflow") + blocked = run_armor_check(BP_GROIN,"melee") + apply_damage(b_loss/3, BRUTE, BP_GROIN, blocked, 0, "Airflow") if(airflow_speed > 10) Paralyse(round(airflow_speed * vsc.airflow_stun)) diff --git a/code/ZAS/Fire.dm b/code/ZAS/Fire.dm index dba966e9fb..7222470f71 100644 --- a/code/ZAS/Fire.dm +++ b/code/ZAS/Fire.dm @@ -65,12 +65,12 @@ turf/proc/hotspot_expose(exposed_temperature, exposed_volume, soh = 0) /zone/proc/remove_liquidfuel(var/used_liquid_fuel, var/remove_fire=0) if(!fuel_objs.len) return - - //As a simplification, we remove fuel equally from all fuel sources. It might be that some fuel sources have more fuel, + + //As a simplification, we remove fuel equally from all fuel sources. It might be that some fuel sources have more fuel, //some have less, but whatever. It will mean that sometimes we will remove a tiny bit less fuel then we intended to. - + var/fuel_to_remove = used_liquid_fuel/(fuel_objs.len*LIQUIDFUEL_AMOUNT_TO_MOL) //convert back to liquid volume units - + for(var/O in fuel_objs) var/obj/effect/decal/cleanable/liquid_fuel/fuel = O if(!istype(fuel)) @@ -188,7 +188,7 @@ turf/proc/hotspot_expose(exposed_temperature, exposed_volume, soh = 0) return set_dir(pick(cardinal)) - + var/datum/gas_mixture/air_contents = loc.return_air() color = fire_color(air_contents.temperature) set_light(3, 1, color) @@ -209,7 +209,7 @@ turf/proc/hotspot_expose(exposed_temperature, exposed_volume, soh = 0) var/turf/T = loc if (istype(T)) set_light(0) - + T.fire = null loc = null air_master.active_hotspots.Remove(src) @@ -224,12 +224,12 @@ turf/proc/hotspot_expose(exposed_temperature, exposed_volume, soh = 0) /datum/gas_mixture/proc/zburn(zone/zone, force_burn, no_check = 0) . = 0 if((temperature > PHORON_MINIMUM_BURN_TEMPERATURE || force_burn) && (no_check ||check_recombustability(zone? zone.fuel_objs : null))) - + #ifdef FIREDBG log_debug("***************** FIREDBG *****************") log_debug("Burning [zone? zone.name : "zoneless gas_mixture"]!") #endif - + var/gas_fuel = 0 var/liquid_fuel = 0 var/total_fuel = 0 @@ -278,7 +278,7 @@ turf/proc/hotspot_expose(exposed_temperature, exposed_volume, soh = 0) var/total_reaction_progress = gas_reaction_progress + liquid_reaction_progress var/used_fuel = min(total_reaction_progress, reaction_limit) var/used_oxidizers = used_fuel*(FIRE_REACTION_OXIDIZER_AMOUNT/FIRE_REACTION_FUEL_AMOUNT) - + #ifdef FIREDBG log_debug("gas_fuel = [gas_fuel], liquid_fuel = [liquid_fuel], total_oxidizers = [total_oxidizers]") log_debug("fuel_area = [fuel_area], total_fuel = [total_fuel], reaction_limit = [reaction_limit]") @@ -312,12 +312,12 @@ turf/proc/hotspot_expose(exposed_temperature, exposed_volume, soh = 0) //calculate the energy produced by the reaction and then set the new temperature of the mix temperature = (starting_energy + vsc.fire_fuel_energy_release * (used_gas_fuel + used_liquid_fuel)) / heat_capacity() update_values() - + #ifdef FIREDBG log_debug("used_gas_fuel = [used_gas_fuel]; used_liquid_fuel = [used_liquid_fuel]; total = [used_fuel]") log_debug("new temperature = [temperature]; new pressure = [return_pressure()]") #endif - + return firelevel datum/gas_mixture/proc/check_recombustability(list/fuel_objs) @@ -369,19 +369,19 @@ datum/gas_mixture/proc/check_recombustability(list/fuel_objs) if(total_combustables > 0) //slows down the burning when the concentration of the reactants is low var/damping_multiplier = min(1, active_combustables / (total_moles/group_multiplier)) - + //weight the damping mult so that it only really brings down the firelevel when the ratio is closer to 0 damping_multiplier = 2*damping_multiplier - (damping_multiplier*damping_multiplier) - + //calculates how close the mixture of the reactants is to the optimum //fires burn better when there is more oxidizer -- too much fuel will choke the fire out a bit, reducing firelevel. var/mix_multiplier = 1 / (1 + (5 * ((total_fuel / total_combustables) ** 2))) - + #ifdef FIREDBG ASSERT(damping_multiplier <= 1) ASSERT(mix_multiplier <= 1) #endif - + //toss everything together -- should produce a value between 0 and fire_firelevel_multiplier firelevel = vsc.fire_firelevel_multiplier * mix_multiplier * damping_multiplier @@ -425,10 +425,10 @@ datum/gas_mixture/proc/check_recombustability(list/fuel_objs) //Always check these damage procs first if fire damage isn't working. They're probably what's wrong. - apply_damage(2.5*mx*head_exposure, BURN, "head", 0, 0, "Fire") - apply_damage(2.5*mx*chest_exposure, BURN, "chest", 0, 0, "Fire") - apply_damage(2.0*mx*groin_exposure, BURN, "groin", 0, 0, "Fire") - apply_damage(0.6*mx*legs_exposure, BURN, "l_leg", 0, 0, "Fire") - apply_damage(0.6*mx*legs_exposure, BURN, "r_leg", 0, 0, "Fire") - apply_damage(0.4*mx*arms_exposure, BURN, "l_arm", 0, 0, "Fire") - apply_damage(0.4*mx*arms_exposure, BURN, "r_arm", 0, 0, "Fire") + apply_damage(2.5*mx*head_exposure, BURN, BP_HEAD, 0, 0, "Fire") + apply_damage(2.5*mx*chest_exposure, BURN, BP_TORSO, 0, 0, "Fire") + apply_damage(2.0*mx*groin_exposure, BURN, BP_GROIN, 0, 0, "Fire") + apply_damage(0.6*mx*legs_exposure, BURN, BP_L_LEG, 0, 0, "Fire") + apply_damage(0.6*mx*legs_exposure, BURN, BP_R_LEG, 0, 0, "Fire") + apply_damage(0.4*mx*arms_exposure, BURN, BP_L_ARM, 0, 0, "Fire") + apply_damage(0.4*mx*arms_exposure, BURN, BP_R_ARM, 0, 0, "Fire") diff --git a/code/ZAS/Phoron.dm b/code/ZAS/Phoron.dm index cffa28a1fc..a29cbee046 100644 --- a/code/ZAS/Phoron.dm +++ b/code/ZAS/Phoron.dm @@ -116,7 +116,7 @@ obj/var/contaminated = 0 /mob/living/carbon/human/proc/burn_eyes() - var/obj/item/organ/eyes/E = internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/E = internal_organs_by_name[O_EYES] if(E) if(prob(20)) src << "Your eyes burn!" E.damage += 2.5 diff --git a/code/__defines/damage_organs.dm b/code/__defines/damage_organs.dm index 5fae0f9c48..09931cb622 100644 --- a/code/__defines/damage_organs.dm +++ b/code/__defines/damage_organs.dm @@ -29,27 +29,16 @@ #define FIRE_DAMAGE_MODIFIER 0.0215 // Higher values result in more external fire damage to the skin. (default 0.0215) #define AIR_DAMAGE_MODIFIER 2.025 // More means less damage from hot air scalding lungs, less = more damage. (default 2.025) -/*// Organ defines. -#define ORGAN_CUT_AWAY 1<<0 -#define ORGAN_BLEEDING 1<<1 -#define ORGAN_BROKEN 1<<2 -#define ORGAN_DESTROYED 1<<3 -#define ORGAN_ROBOT 1<<4 -#define ORGAN_SPLINTED 1<<5 -#define ORGAN_DEAD 1<<6 -#define ORGAN_MUTATED 1<<7 -#define ORGAN_ASSISTED 1<<8*/ - // Organ defines. -#define ORGAN_CUT_AWAY 1 -#define ORGAN_BLEEDING 2 -#define ORGAN_BROKEN 4 -#define ORGAN_DESTROYED 8 -#define ORGAN_ROBOT 16 -#define ORGAN_SPLINTED 32 -#define ORGAN_DEAD 64 -#define ORGAN_MUTATED 128 -#define ORGAN_ASSISTED 256 +#define ORGAN_CUT_AWAY (1<<0) +#define ORGAN_BLEEDING (1<<1) +#define ORGAN_BROKEN (1<<2) +#define ORGAN_DESTROYED (1<<3) +#define ORGAN_ROBOT (1<<4) +#define ORGAN_SPLINTED (1<<5) +#define ORGAN_DEAD (1<<6) +#define ORGAN_MUTATED (1<<7) +#define ORGAN_ASSISTED (1<<8) #define DROPLIMB_EDGE 0 #define DROPLIMB_BLUNT 1 diff --git a/code/__defines/mobs.dm b/code/__defines/mobs.dm index 88d584bbe4..aa3e1741b5 100644 --- a/code/__defines/mobs.dm +++ b/code/__defines/mobs.dm @@ -136,3 +136,39 @@ #define INCAPACITATION_DEFAULT (INCAPACITATION_RESTRAINED|INCAPACITATION_BUCKLED_FULLY) #define INCAPACITATION_ALL (INCAPACITATION_RESTRAINED|INCAPACITATION_BUCKLED_PARTIALLY|INCAPACITATION_BUCKLED_FULLY) + +// Bodyparts and organs. +#define O_MOUTH "mouth" +#define O_EYES "eyes" +#define O_HEART "heart" +#define O_LUNGS "lungs" +#define O_BRAIN "brain" +#define O_LIVER "liver" +#define O_KIDNEYS "kidneys" +#define O_PLASMA "plasma vessel" +#define O_HIVE "hive node" +#define O_NUTRIENT "nutrient vessel" +#define O_STRATA "neural strata" +#define O_RESPONSE "response node" +#define O_GBLADDER "gas bladder" +#define O_POLYP "polyp segment" +#define O_ANCHOR "anchoring ligament" +#define O_ACID "acid gland" +#define O_EGG "egg sac" +#define O_RESIN "resin spinner" + +#define BP_L_FOOT "l_foot" +#define BP_R_FOOT "r_foot" +#define BP_L_LEG "l_leg" +#define BP_R_LEG "r_leg" +#define BP_L_HAND "l_hand" +#define BP_R_HAND "r_hand" +#define BP_L_ARM "l_arm" +#define BP_R_ARM "r_arm" +#define BP_HEAD "head" +#define BP_TORSO "torso" +#define BP_GROIN "groin" +#define BP_ALL list(BP_GROIN, BP_TORSO, BP_HEAD, BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG) + +#define SYNTH_BLOOD_COLOUR "#030303" +#define SYNTH_FLESH_COLOUR "#575757" \ No newline at end of file diff --git a/code/_helpers/mobs.dm b/code/_helpers/mobs.dm index 96b50fc6c5..5bb4c93bbc 100644 --- a/code/_helpers/mobs.dm +++ b/code/_helpers/mobs.dm @@ -30,7 +30,7 @@ proc/random_hair_style(gender, species = "Human") for(var/hairstyle in hair_styles_list) var/datum/sprite_accessory/S = hair_styles_list[hairstyle] - if(gender != NEUTER) + if(gender != NEUTER && gender != PLURAL) if(gender == MALE && S.gender == FEMALE) continue if(gender == FEMALE && S.gender == MALE) @@ -52,7 +52,7 @@ proc/random_facial_hair_style(gender, species = "Human") for(var/facialhairstyle in facial_hair_styles_list) var/datum/sprite_accessory/S = facial_hair_styles_list[facialhairstyle] - if(gender != NEUTER) + if(gender != NEUTER && gender != PLURAL) if(gender == MALE && S.gender == FEMALE) continue if(gender == FEMALE && S.gender == MALE) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index d0904aa466..b066e431ce 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -98,7 +98,7 @@ name = "damage zone" icon_state = "zone_sel" screen_loc = ui_zonesel - var/selecting = "chest" + var/selecting = BP_TORSO /obj/screen/zone_sel/Click(location, control,params) var/list/PL = params2list(params) @@ -110,52 +110,52 @@ if(1 to 3) //Feet switch(icon_x) if(10 to 15) - selecting = "r_foot" + selecting = BP_R_FOOT if(17 to 22) - selecting = "l_foot" + selecting = BP_L_FOOT else return 1 if(4 to 9) //Legs switch(icon_x) if(10 to 15) - selecting = "r_leg" + selecting = BP_R_LEG if(17 to 22) - selecting = "l_leg" + selecting = BP_L_LEG else return 1 if(10 to 13) //Hands and groin switch(icon_x) if(8 to 11) - selecting = "r_hand" + selecting = BP_R_HAND if(12 to 20) - selecting = "groin" + selecting = BP_GROIN if(21 to 24) - selecting = "l_hand" + selecting = BP_L_HAND else return 1 if(14 to 22) //Chest and arms to shoulders switch(icon_x) if(8 to 11) - selecting = "r_arm" + selecting = BP_R_ARM if(12 to 20) - selecting = "chest" + selecting = BP_TORSO if(21 to 24) - selecting = "l_arm" + selecting = BP_L_ARM else return 1 if(23 to 30) //Head, but we need to check for eye or mouth if(icon_x in 12 to 20) - selecting = "head" + selecting = BP_HEAD switch(icon_y) if(23 to 24) if(icon_x in 15 to 17) - selecting = "mouth" + selecting = O_MOUTH if(26) //Eyeline, eyes are on 15 and 17 if(icon_x in 14 to 18) - selecting = "eyes" + selecting = O_EYES if(25 to 27) if(icon_x in 15 to 17) - selecting = "eyes" + selecting = O_EYES if(old_selecting != selecting) update_icon() diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index f748fdd53e..afe5bd01c3 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -260,7 +260,7 @@ proc/get_id_photo(var/mob/living/carbon/human/H, var/assigned_role) preview_icon.Blend(rgb(H.r_skin, H.g_skin, H.b_skin), ICON_ADD) var/use_eye_icon = "eyes_s" - var/obj/item/organ/external/head/temp_head = H.get_organ("head") + var/obj/item/organ/external/head/temp_head = H.get_organ(BP_HEAD) if(temp_head) use_eye_icon = temp_head.eye_icon var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = use_eye_icon) diff --git a/code/datums/diseases/appendicitis.dm b/code/datums/diseases/appendicitis.dm index d6f05d33ef..5a21e6cb40 100644 --- a/code/datums/diseases/appendicitis.dm +++ b/code/datums/diseases/appendicitis.dm @@ -42,7 +42,7 @@ H << "Your abdomen is a world of pain!" H.Weaken(10) - var/obj/item/organ/external/groin = H.get_organ("groin") + var/obj/item/organ/external/groin = H.get_organ(BP_GROIN) var/datum/wound/W = new /datum/wound/internal_bleeding(20) H.adjustToxLoss(25) groin.wounds += W diff --git a/code/game/antagonist/alien/borer.dm b/code/game/antagonist/alien/borer.dm index c76b5fe185..d0d1183a0d 100644 --- a/code/game/antagonist/alien/borer.dm +++ b/code/game/antagonist/alien/borer.dm @@ -37,12 +37,12 @@ var/datum/antagonist/xenos/borer/borers var/mob/living/carbon/human/host for(var/mob/living/carbon/human/H in mob_list) if(H.stat != DEAD && !H.has_brain_worms()) - var/obj/item/organ/external/head = H.get_organ("head") + var/obj/item/organ/external/head = H.get_organ(BP_HEAD) if(head && !(head.status & ORGAN_ROBOT)) host = H break if(istype(host)) - var/obj/item/organ/external/head = host.get_organ("head") + var/obj/item/organ/external/head = host.get_organ(BP_HEAD) borer.host = host head.implants += borer borer.forceMove(head) diff --git a/code/game/antagonist/station/changeling.dm b/code/game/antagonist/station/changeling.dm index b3f5605a91..60380677d6 100644 --- a/code/game/antagonist/station/changeling.dm +++ b/code/game/antagonist/station/changeling.dm @@ -54,3 +54,14 @@ survive_objective.owner = changeling changeling.objectives += survive_objective return + +/datum/antagonist/changeling/can_become_antag(var/datum/mind/player, var/ignore_role) + if(..()) + if(player.current && ishuman(player.current)) + var/mob/living/carbon/human/H = player.current + if(H.isSynthetic()) + return 0 + if(H.species.flags & NO_SCAN) + return 0 + return 1 + return 0 \ No newline at end of file diff --git a/code/game/atoms.dm b/code/game/atoms.dm index f219e1d6c7..9f8fe69202 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -198,7 +198,7 @@ its easier to just keep the beam vertical. f_name = "some " else f_name = "a " - if(blood_color != "#030303") + if(blood_color != SYNTH_BLOOD_COLOUR) f_name += "blood-stained [name][infix]!" else f_name += "oil-stained [name][infix]." @@ -399,8 +399,7 @@ its easier to just keep the beam vertical. M.dna = new /datum/dna(null) M.dna.real_name = M.real_name M.check_dna() - if (M.species) - blood_color = M.species.get_blood_colour(M) + blood_color = M.species.get_blood_colour(M) . = 1 return 1 diff --git a/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm b/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm index ff45c30d0a..694e22e8dd 100644 --- a/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm +++ b/code/game/gamemodes/changeling/powers/bioelectrogenesis.dm @@ -30,10 +30,10 @@ if(istype(held_item,/obj/item/weapon/grab)) var/obj/item/weapon/grab/G = held_item if(G.affecting) - G.affecting.electrocute_act(5,src,1.0,"chest") + G.affecting.electrocute_act(5,src,1.0,BP_TORSO) var/agony = 60 //The same as a stunbaton. var/stun = 0 - G.affecting.stun_effect_act(stun, agony, "chest", src) + G.affecting.stun_effect_act(stun, agony, BP_TORSO, src) msg_admin_attack("[key_name(src)] stunned [key_name(G.affecting)] with the [src].") @@ -112,10 +112,10 @@ src << "We require more chemicals to electrocute [C]!" return 0 - C.electrocute_act(5,src,1.0,"chest") + C.electrocute_act(5,src,1.0,BP_TORSO) var/agony = 60 //The same as a stunbaton. var/stun = 0 - C.stun_effect_act(stun, agony, "chest", src) + C.stun_effect_act(stun, agony, BP_TORSO, src) msg_admin_attack("[key_name(user)] stunned [key_name(C)] with the [src].") diff --git a/code/game/gamemodes/changeling/powers/extract_dna_sting.dm b/code/game/gamemodes/changeling/powers/extract_dna_sting.dm index d273cc9c33..9b0d1e149a 100644 --- a/code/game/gamemodes/changeling/powers/extract_dna_sting.dm +++ b/code/game/gamemodes/changeling/powers/extract_dna_sting.dm @@ -18,7 +18,18 @@ return 0 var/mob/living/carbon/human/T = changeling_sting(40, /mob/proc/changeling_extract_dna_sting) - if(!T) return 0 + + if(!istype(T) || T.isSynthetic()) + src << "\The [T] is not compatible with our biology." + return 0 + + if(T.species.flags & NO_SCAN) + src << "We do not know how to parse this creature's DNA!" + return 0 + + if(HUSK in T.mutations) + src << "This creature's DNA is ruined beyond useability!" + return 0 T.dna.real_name = T.real_name changeling.absorbed_dna |= T.dna diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 760a2d4833..c5ea0bf9a9 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -631,8 +631,8 @@ var/list/sacrificed = list() if(!(iscultist(V))) victims += V//Checks for cult status and mob type for(var/obj/item/I in src.loc)//Checks for MMIs/brains/Intellicards - if(istype(I,/obj/item/organ/brain)) - var/obj/item/organ/brain/B = I + if(istype(I,/obj/item/organ/internal/brain)) + var/obj/item/organ/internal/brain/B = I victims += B.brainmob else if(istype(I,/obj/item/device/mmi)) var/obj/item/device/mmi/B = I diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index ed7c6ac871..6b373953b1 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -406,7 +406,7 @@ datum/objective/harm if(!found) return 1 - var/obj/item/organ/external/head/head = H.get_organ("head") + var/obj/item/organ/external/head/head = H.get_organ(BP_HEAD) if(head.disfigured) return 1 return 0 diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 251a628697..7e40ee8318 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -107,6 +107,11 @@ path = /obj/item/device/radio/off category = "General" +/datum/autolathe/recipe/suit_cooler + name = "suit cooling unit" + path = /obj/item/device/suit_cooling_unit + category = "General" + /datum/autolathe/recipe/weldermask name = "welding mask" path = /obj/item/clothing/head/welding diff --git a/code/game/machinery/bioprinter.dm b/code/game/machinery/bioprinter.dm index 0bb7dd1935..aab0560fe1 100644 --- a/code/game/machinery/bioprinter.dm +++ b/code/game/machinery/bioprinter.dm @@ -16,11 +16,11 @@ var/stored_matter = 200 var/loaded_dna //Blood sample for DNA hashing. var/list/products = list( - "heart" = list(/obj/item/organ/heart, 50), - "lungs" = list(/obj/item/organ/lungs, 40), - "kidneys" = list(/obj/item/organ/kidneys,20), - "eyes" = list(/obj/item/organ/eyes, 30), - "liver" = list(/obj/item/organ/liver, 50) + O_HEART = list(/obj/item/organ/internal/heart, 50), + O_LUNGS = list(/obj/item/organ/internal/lungs, 40), + O_KIDNEYS = list(/obj/item/organ/internal/kidneys,20), + O_EYES = list(/obj/item/organ/internal/eyes, 30), + O_LIVER = list(/obj/item/organ/internal/liver, 50) ) /obj/machinery/bioprinter/prosthetics diff --git a/code/game/machinery/bots/mulebot.dm b/code/game/machinery/bots/mulebot.dm index 9e9571b177..27e6cb1a9d 100644 --- a/code/game/machinery/bots/mulebot.dm +++ b/code/game/machinery/bots/mulebot.dm @@ -722,12 +722,12 @@ playsound(src.loc, 'sound/effects/splat.ogg', 50, 1) var/damage = rand(5,15) - H.apply_damage(2*damage, BRUTE, "head") - H.apply_damage(2*damage, BRUTE, "chest") - H.apply_damage(0.5*damage, BRUTE, "l_leg") - H.apply_damage(0.5*damage, BRUTE, "r_leg") - H.apply_damage(0.5*damage, BRUTE, "l_arm") - H.apply_damage(0.5*damage, BRUTE, "r_arm") + H.apply_damage(2*damage, BRUTE, BP_HEAD) + H.apply_damage(2*damage, BRUTE, BP_TORSO) + H.apply_damage(0.5*damage, BRUTE, BP_L_LEG) + H.apply_damage(0.5*damage, BRUTE, BP_R_LEG) + H.apply_damage(0.5*damage, BRUTE, BP_L_ARM) + H.apply_damage(0.5*damage, BRUTE, BP_R_ARM) blood_splatter(src,H,1) bloodiness += 4 diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index c2758a7ffd..cb8b9f5e69 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -645,24 +645,6 @@ About the new airlock wires panel: if(src.shock(user, 100)) return - // No. -- cib - /** - if(ishuman(user) && prob(40) && src.density) - var/mob/living/carbon/human/H = user - if(H.getBrainLoss() >= 60) - playsound(src.loc, 'sound/effects/bang.ogg', 25, 1) - if(!istype(H.head, /obj/item/clothing/head/helmet)) - visible_message("[user] headbutts the airlock.") - var/obj/item/organ/external/affecting = H.get_organ("head") - H.Stun(8) - H.Weaken(5) - if(affecting.take_damage(10, 0)) - H.UpdateDamageIcon() - else - visible_message("[user] headbutts the airlock. Good thing they're wearing a helmet.") - return - **/ - if(src.p_open) user.set_machine(src) wires.Interact(user) diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm index e6fb41193c..c7c1d59a08 100644 --- a/code/game/machinery/flasher.dm +++ b/code/game/machinery/flasher.dm @@ -73,7 +73,7 @@ if(!H.eyecheck() <= 0) continue flash_time *= H.species.flash_mod - var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/E = H.internal_organs_by_name[O_EYES] if(!E) return if(E.is_bruised() && prob(E.damage + 50)) diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index 0fec7a9c1b..d694fd5d4c 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -106,7 +106,7 @@ if(NOCLONE in T.mutations) return - if(!T.should_have_organ("heart")) + if(!T.should_have_organ(O_HEART)) return // If the human is losing too much blood, beep. diff --git a/code/game/machinery/kitchen/gibber.dm b/code/game/machinery/kitchen/gibber.dm index 9a950cc023..f3d4e69611 100644 --- a/code/game/machinery/kitchen/gibber.dm +++ b/code/game/machinery/kitchen/gibber.dm @@ -172,8 +172,9 @@ if(!src.occupant) visible_message("You hear a loud metallic grinding sound.") return + use_power(1000) - visible_message("You hear a loud squelchy grinding sound.") + visible_message("You hear a loud [occupant.isSynthetic() ? "metallic" : "squelchy"] grinding sound.") src.operating = 1 update_icon() @@ -192,7 +193,7 @@ else if(istype(src.occupant,/mob/living/carbon/human)) var/mob/living/carbon/human/H = occupant slab_name = src.occupant.real_name - slab_type = H.species.meat_type + slab_type = H.isSynthetic() ? /obj/item/stack/material/steel : H.species.meat_type // Small mobs don't give as much nutrition. if(issmall(src.occupant)) @@ -200,12 +201,12 @@ slab_nutrition /= slab_count for(var/i=1 to slab_count) - var/obj/item/weapon/reagent_containers/food/snacks/meat/new_meat = new slab_type(src) - new_meat.name = "[slab_name] [new_meat.name]" - new_meat.reagents.add_reagent("nutriment",slab_nutrition) - - if(src.occupant.reagents) - src.occupant.reagents.trans_to_obj(new_meat, round(occupant.reagents.total_volume/slab_count,1)) + var/obj/item/weapon/reagent_containers/food/snacks/meat/new_meat = new slab_type(src, rand(3,8)) + if(istype(new_meat)) + new_meat.name = "[slab_name] [new_meat.name]" + new_meat.reagents.add_reagent("nutriment",slab_nutrition) + if(src.occupant.reagents) + src.occupant.reagents.trans_to_obj(new_meat, round(occupant.reagents.total_volume/slab_count,1)) src.occupant.attack_log += "\[[time_stamp()]\] Was gibbed by [user]/[user.ckey]" //One shall not simply gib a mob unnoticed! user.attack_log += "\[[time_stamp()]\] Gibbed [src.occupant]/[src.occupant.ckey]" diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 553cf612d5..355ee4b02d 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -627,9 +627,9 @@ var/list/turret_icons var/def_zone var/obj/item/weapon/grab/G = locate() in target if(G && G.state >= GRAB_NECK) //works because mobs are currently not allowed to upgrade to NECK if they are grabbing two people. - def_zone = pick("head", "l_hand", "r_hand", "l_foot", "r_foot", "l_arm", "r_arm", "l_leg", "r_leg") + def_zone = pick(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_FOOT, BP_R_FOOT, BP_L_ARM, BP_R_ARM, BP_L_LEG, BP_R_LEG) else - def_zone = pick("chest", "groin") + def_zone = pick(BP_TORSO, BP_GROIN) //Shooting Code: A.launch(target, def_zone) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 01d3d72dac..bdc6b5ca44 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -103,10 +103,21 @@ R.adjustBruteLoss(-weld_rate) if(wire_rate && R.getFireLoss() && cell.checked_use(wire_power_use * wire_rate * CELLRATE)) R.adjustFireLoss(-wire_rate) + else if(istype(occupant, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = occupant - if(!isnull(H.internal_organs_by_name["cell"] && H.nutrition < 450)) + + // In case they somehow end up with positive values for otherwise unobtainable damage... + if(H.getToxLoss()>0) H.adjustToxLoss(-(rand(1,3))) + if(H.getOxyLoss()>0) H.adjustOxyLoss(-(rand(1,3))) + if(H.getCloneLoss()>0) H.adjustCloneLoss(-(rand(1,3))) + if(H.getBrainLoss()>0) H.adjustBrainLoss(-(rand(1,3))) + + // Also recharge their internal battery. + if(!isnull(H.internal_organs_by_name["cell"]) && H.nutrition < 450) H.nutrition = min(H.nutrition+10, 450) + cell.use(7000/450*10) /obj/machinery/recharge_station/examine(mob/user) @@ -206,14 +217,14 @@ /obj/machinery/recharge_station/proc/go_in(var/mob/living/silicon/robot/R) + if(occupant) + return + if(istype(R, /mob/living/silicon/robot)) - if(!istype(R)) - return - if(occupant) - return if(R.incapacitated()) return + if(!R.cell) return diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index d3fe17a068..83b8614a0e 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -331,7 +331,7 @@ sleep(50) if(src.OCCUPANT) OCCUPANT.apply_effect(50, IRRADIATE) - var/obj/item/organ/diona/nutrients/rad_organ = locate() in OCCUPANT.internal_organs + var/obj/item/organ/internal/diona/nutrients/rad_organ = locate() in OCCUPANT.internal_organs if (!rad_organ) if (OCCUPANT.can_feel_pain()) OCCUPANT.emote("scream") diff --git a/code/game/machinery/turrets.dm b/code/game/machinery/turrets.dm index db548443ca..6254e2bb9d 100644 --- a/code/game/machinery/turrets.dm +++ b/code/game/machinery/turrets.dm @@ -266,15 +266,15 @@ else A = new /obj/item/projectile/energy/electrode( loc ) use_power(200) - + //Turrets aim for the center of mass by default. //If the target is grabbing someone then the turret smartly aims for extremities var/obj/item/weapon/grab/G = locate() in target if(G && G.state >= GRAB_NECK) //works because mobs are currently not allowed to upgrade to NECK if they are grabbing two people. - A.def_zone = pick("head", "l_hand", "r_hand", "l_foot", "r_foot", "l_arm", "r_arm", "l_leg", "r_leg") + A.def_zone = pick(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_FOOT, BP_R_FOOT, BP_L_ARM, BP_R_ARM, BP_L_LEG, BP_R_LEG) else - A.def_zone = pick("chest", "groin") - + A.def_zone = pick(BP_TORSO, BP_GROIN) + A.current = T A.starting = T A.yo = U.y - T.y diff --git a/code/game/mecha/combat/combat.dm b/code/game/mecha/combat/combat.dm index c9c5c32623..5424882adc 100644 --- a/code/game/mecha/combat/combat.dm +++ b/code/game/mecha/combat/combat.dm @@ -41,7 +41,7 @@ var/mob/living/carbon/human/H = target // if (M.health <= 0) return - var/obj/item/organ/external/temp = H.get_organ(pick("chest", "chest", "chest", "head")) + var/obj/item/organ/external/temp = H.get_organ(pick(BP_TORSO, BP_TORSO, BP_TORSO, BP_HEAD)) if(temp) var/update = 0 switch(damtype) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index aa9f939493..598b8ad5d3 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -104,7 +104,7 @@ // Aliens can get straight through these. if(istype(usr,/mob/living/carbon)) var/mob/living/carbon/M = usr - if(locate(/obj/item/organ/xenos/hivenode) in M.internal_organs) + if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs) for(var/mob/O in oviewers(src)) O.show_message("[usr] strokes the [name] and it melts away!", 1) health = 0 @@ -349,7 +349,7 @@ Alien plants should do something if theres a lot of poison /obj/effect/alien/egg/attack_hand(user as mob) var/mob/living/carbon/M = user - if(!istype(M) || !(locate(/obj/item/organ/xenos/hivenode) in M.internal_organs)) + if(!istype(M) || !(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs)) return attack_hand(user) switch(status) diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm index 3a0395636e..fcd53aab44 100644 --- a/code/game/objects/effects/decals/Cleanable/humans.dm +++ b/code/game/objects/effects/decals/Cleanable/humans.dm @@ -64,6 +64,12 @@ var/global/list/image/splatter_cache=list() /obj/effect/decal/cleanable/blood/update_icon() if(basecolor == "rainbow") basecolor = "#[get_random_colour(1)]" color = basecolor + if(basecolor == SYNTH_BLOOD_COLOUR) + name = "oil" + desc = "It's black and greasy." + else + name = initial(name) + desc = initial(desc) /obj/effect/decal/cleanable/blood/Crossed(mob/living/carbon/human/perp) if (!istype(perp)) diff --git a/code/game/objects/effects/decals/Cleanable/robots.dm b/code/game/objects/effects/decals/Cleanable/robots.dm index 150197347d..1f49fc9f66 100644 --- a/code/game/objects/effects/decals/Cleanable/robots.dm +++ b/code/game/objects/effects/decals/Cleanable/robots.dm @@ -3,7 +3,7 @@ desc = "It's a useless heap of junk... or is it?" icon = 'icons/mob/robots.dmi' icon_state = "gib1" - basecolor="#030303" + basecolor = SYNTH_BLOOD_COLOUR random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6", "gib7") /obj/effect/decal/cleanable/blood/gibs/robot/update_icon() @@ -38,9 +38,7 @@ random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6", "gib7","gibdown1","gibdown1") //2:7 is close enough to 1:4 /obj/effect/decal/cleanable/blood/oil - name = "motor oil" - desc = "It's black and greasy. Looks like Beepsky made another mess." - basecolor="#030303" + basecolor = SYNTH_BLOOD_COLOUR /obj/effect/decal/cleanable/blood/oil/dry() return diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index 3b566fee6e..4b6b437900 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -220,9 +220,9 @@ src.loc = O.owner ? O.owner.loc : O.loc src.visible_message("\A [src] makes its way out of [O.owner ? "[O.owner]'s [O.name]" : "\the [O]"]!") if(O.owner) - O.owner.apply_damage(1, BRUTE, O.limb_name) + O.owner.apply_damage(1, BRUTE, O.organ_tag) else if(prob(1)) - O.owner.apply_damage(1, TOX, O.limb_name) + O.owner.apply_damage(1, TOX, O.organ_tag) if(world.time > last_itch + 30 SECONDS) last_itch = world.time O.owner << "Your [O.name] itches..." diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index eeed37b9e7..240aa6783e 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -449,7 +449,7 @@ var/list/global/slot_flags_enumeration = list( if(istype(H)) - var/obj/item/organ/eyes/eyes = H.internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/eyes = H.internal_organs_by_name[O_EYES] if(H != user) for(var/mob/O in (viewers(M) - user - M)) @@ -477,7 +477,7 @@ var/list/global/slot_flags_enumeration = list( if (eyes.damage >= eyes.min_broken_damage) if(M.stat != 2) M << "You go blind!" - var/obj/item/organ/external/affecting = H.get_organ("head") + var/obj/item/organ/external/affecting = H.get_organ(BP_HEAD) if(affecting.take_damage(7)) M:UpdateDamageIcon() else diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 21b6a0e720..21e55e65ce 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -38,7 +38,7 @@ /obj/item/device/flashlight/attack(mob/living/M as mob, mob/living/user as mob) add_fingerprint(user) - if(on && user.zone_sel.selecting == "eyes") + if(on && user.zone_sel.selecting == O_EYES) if(((CLUMSY in user.mutations) || user.getBrainLoss() >= 60) && prob(50)) //too dumb to use flashlight properly return ..() //just hit them in the head diff --git a/code/game/objects/items/devices/suit_cooling.dm b/code/game/objects/items/devices/suit_cooling.dm index 7f9f7e2b98..37ceba9445 100644 --- a/code/game/objects/items/devices/suit_cooling.dm +++ b/code/game/objects/items/devices/suit_cooling.dm @@ -12,21 +12,25 @@ throwforce = 10.0 throw_speed = 1 throw_range = 4 + action_button_name = "Toggle Heatsink" + matter = list("steel" = 15000, "glass" = 3500) origin_tech = list(TECH_MAGNET = 2, TECH_MATERIAL = 2) var/on = 0 //is it turned on? var/cover_open = 0 //is the cover open? var/obj/item/weapon/cell/cell - var/max_cooling = 12 //in degrees per second - probably don't need to mess with heat capacity here - var/charge_consumption = 16.6 //charge per second at max_cooling + var/max_cooling = 12 // in degrees per second - probably don't need to mess with heat capacity here + var/charge_consumption = 3 // charge per second at max_cooling var/thermostat = T20C //TODO: make it heat up the surroundings when not in space +/obj/item/device/suit_cooling_unit/ui_action_click() + toggle(usr) + /obj/item/device/suit_cooling_unit/New() processing_objects |= src - cell = new/obj/item/weapon/cell() //comes with the crappy default power cell - high-capacity ones shouldn't be hard to find cell.loc = src @@ -56,7 +60,7 @@ cell.use(charge_usage) if(cell.charge <= 0) - turn_off() + turn_off(1) /obj/item/device/suit_cooling_unit/proc/get_environment_temperature() if (ishuman(loc)) @@ -97,14 +101,12 @@ on = 1 updateicon() -/obj/item/device/suit_cooling_unit/proc/turn_off() - if (ismob(src.loc)) - var/mob/M = src.loc - M.show_message("\The [src] clicks and whines as it powers down.", 2) //let them know in case it's run out of power. +/obj/item/device/suit_cooling_unit/proc/turn_off(var/failed) + if(failed) visible_message("\The [src] clicks and whines as it powers down.") on = 0 updateicon() -/obj/item/device/suit_cooling_unit/attack_self(mob/user as mob) +/obj/item/device/suit_cooling_unit/attack_self(var/mob/user) if(cover_open && cell) if(ishuman(user)) user.put_in_hands(cell) @@ -114,18 +116,19 @@ cell.add_fingerprint(user) cell.update_icon() - user << "You remove the [src.cell]." + user << "You remove \the [src.cell]." src.cell = null updateicon() return - //TODO use a UI like the air tanks + toggle(user) + +/obj/item/device/suit_cooling_unit/proc/toggle(var/mob/user) if(on) turn_off() else turn_on() - if (on) - user << "You switch on the [src]." + user << "You switch \the [src] [on ? "on" : "off"]." /obj/item/device/suit_cooling_unit/attackby(obj/item/weapon/W as obj, mob/user as mob) if (istype(W, /obj/item/weapon/screwdriver)) diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 1ccd2f8817..7cccb0eb10 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -30,35 +30,35 @@ name = "left arm" desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." icon_state = "l_arm" - part = list("l_arm","l_hand") + part = list(BP_L_ARM, BP_L_HAND) model_info = 1 /obj/item/robot_parts/r_arm name = "right arm" desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." icon_state = "r_arm" - part = list("r_arm","r_hand") + part = list(BP_R_ARM, BP_R_HAND) model_info = 1 /obj/item/robot_parts/l_leg name = "left leg" desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." icon_state = "l_leg" - part = list("l_leg","l_foot") + part = list(BP_L_LEG, BP_L_FOOT) model_info = 1 /obj/item/robot_parts/r_leg name = "right leg" desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." icon_state = "r_leg" - part = list("r_leg","r_foot") + part = list(BP_R_LEG, BP_R_FOOT) model_info = 1 /obj/item/robot_parts/chest - name = "torso" + name = "chest" desc = "A heavily reinforced case containing cyborg logic boards, with space for a standard power cell." icon_state = "chest" - part = list("groin","chest") + part = list(BP_GROIN,BP_TORSO) var/wires = 0.0 var/obj/item/weapon/cell/cell = null @@ -66,7 +66,7 @@ name = "head" desc = "A standard reinforced braincase, with spine-plugged neural socket and sensor gimbals." icon_state = "head" - part = list("head") + part = list(BP_HEAD) var/obj/item/device/flash/flash1 = null var/obj/item/device/flash/flash2 = null diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index d3ba0a96a8..b8b79a5ca1 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -24,7 +24,7 @@ var/mob/living/carbon/human/H = M var/obj/item/organ/external/affecting = H.get_organ(user.zone_sel.selecting) - if(affecting.name == "head") + if(affecting.organ_tag == BP_HEAD) if(H.head && istype(H.head,/obj/item/clothing/head/helmet/space)) user << "You can't apply [src] through [H.head]!" return 1 @@ -217,7 +217,7 @@ var/mob/living/carbon/human/H = M var/obj/item/organ/external/affecting = H.get_organ(user.zone_sel.selecting) var/limb = affecting.name - if(!(affecting.limb_name in list("l_arm","r_arm","l_leg","r_leg"))) + if(!(affecting.organ_tag in list("l_arm","r_arm","l_leg","r_leg"))) user << "You can't apply a splint there!" return if(affecting.status & ORGAN_SPLINTED) @@ -226,7 +226,7 @@ if (M != user) user.visible_message("[user] starts to apply \the [src] to [M]'s [limb].", "You start to apply \the [src] to [M]'s [limb].", "You hear something being wrapped.") else - if((!user.hand && affecting.limb_name == "r_arm") || (user.hand && affecting.limb_name == "l_arm")) + if((!user.hand && affecting.organ_tag == "r_arm") || (user.hand && affecting.organ_tag == "l_arm")) user << "You can't apply a splint to the arm you're using!" return user.visible_message("[user] starts to apply \the [src] to their [limb].", "You start to apply \the [src] to your [limb].", "You hear something being wrapped.") diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index a85ed010f9..0578c9ab6a 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -478,7 +478,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM return M.IgniteMob() - if(istype(M.wear_mask, /obj/item/clothing/mask/smokable/cigarette) && user.zone_sel.selecting == "mouth" && lit) + if(istype(M.wear_mask, /obj/item/clothing/mask/smokable/cigarette) && user.zone_sel.selecting == O_MOUTH && lit) var/obj/item/clothing/mask/smokable/cigarette/cig = M.wear_mask if(M == user) cig.attackby(src, user) diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm index e32b58e098..92814eea6c 100644 --- a/code/game/objects/items/weapons/clown_items.dm +++ b/code/game/objects/items/weapons/clown_items.dm @@ -39,7 +39,7 @@ return /obj/item/weapon/soap/attack(mob/target as mob, mob/user as mob) - if(target && user && ishuman(target) && ishuman(user) && !target.stat && !user.stat && user.zone_sel &&user.zone_sel.selecting == "mouth" ) + if(target && user && ishuman(target) && ishuman(user) && !target.stat && !user.stat && user.zone_sel &&user.zone_sel.selecting == O_MOUTH) user.visible_message("\The [user] washes \the [target]'s mouth out with soap!") return ..() diff --git a/code/game/objects/items/weapons/grenades/flashbang.dm b/code/game/objects/items/weapons/grenades/flashbang.dm index d01b380925..fe215be2d8 100644 --- a/code/game/objects/items/weapons/grenades/flashbang.dm +++ b/code/game/objects/items/weapons/grenades/flashbang.dm @@ -84,7 +84,7 @@ //This really should be in mob not every check if(ishuman(M)) var/mob/living/carbon/human/H = M - var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/E = H.internal_organs_by_name[O_EYES] if (E && E.damage >= E.min_bruised_damage) M << "Your eyes start to burn badly!" if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang))) diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index 09629e1ade..1ab42d80e2 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -94,11 +94,11 @@ var/last_chew = 0 var/mob/living/carbon/human/H = A if (!H.handcuffed) return if (H.a_intent != I_HURT) return - if (H.zone_sel.selecting != "mouth") return + if (H.zone_sel.selecting != O_MOUTH) return if (H.wear_mask) return if (istype(H.wear_suit, /obj/item/clothing/suit/straight_jacket)) return - var/obj/item/organ/external/O = H.organs_by_name[H.hand?"l_hand":"r_hand"] + var/obj/item/organ/external/O = H.organs_by_name[(H.hand ? BP_L_HAND : BP_R_HAND)] if (!O) return var/s = "[H.name] chews on \his [O.name]!" diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm index 6b2d0abf41..f256e38223 100644 --- a/code/game/objects/items/weapons/material/kitchen.dm +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -27,7 +27,7 @@ return ..() if(user.a_intent != I_HELP) - if(user.zone_sel.selecting == "head" || user.zone_sel.selecting == "eyes") + if(user.zone_sel.selecting == BP_HEAD || user.zone_sel.selecting == O_EYES) if((CLUMSY in user.mutations) && prob(50)) M = user return eyestab(M,user) diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index dd33c7a6f2..1af88c9fa8 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -159,7 +159,7 @@ if(!istype(M, /mob)) return - if(M == user && user.zone_sel.selecting == "mouth" && contents.len > 0 && !user.wear_mask) + if(M == user && user.zone_sel.selecting == O_MOUTH && contents.len > 0 && !user.wear_mask) var/obj/item/clothing/mask/smokable/cigarette/W = new /obj/item/clothing/mask/smokable/cigarette(user) reagents.trans_to_obj(W, (reagents.total_volume/contents.len)) user.equip_to_slot_if_possible(W, slot_wear_mask) @@ -252,7 +252,7 @@ if(!istype(M, /mob)) return - if(M == user && user.zone_sel.selecting == "mouth" && contents.len > 0 && !user.wear_mask) + if(M == user && user.zone_sel.selecting == O_MOUTH && contents.len > 0 && !user.wear_mask) var/obj/item/clothing/mask/smokable/cigarette/cigar/W = new /obj/item/clothing/mask/smokable/cigarette/cigar(user) reagents.trans_to_obj(W, (reagents.total_volume/contents.len)) user.equip_to_slot_if_possible(W, slot_wear_mask) diff --git a/code/game/objects/items/weapons/swords_axes_etc.dm b/code/game/objects/items/weapons/swords_axes_etc.dm index 15eb430a3f..c773f3da38 100644 --- a/code/game/objects/items/weapons/swords_axes_etc.dm +++ b/code/game/objects/items/weapons/swords_axes_etc.dm @@ -30,7 +30,7 @@ user.Weaken(3 * force) if(ishuman(user)) var/mob/living/carbon/human/H = user - H.apply_damage(2*force, BRUTE, "head") + H.apply_damage(2*force, BRUTE, BP_HEAD) else user.take_organ_damage(2*force) return @@ -123,7 +123,7 @@ user.Weaken(3 * force) if(ishuman(user)) var/mob/living/carbon/human/H = user - H.apply_damage(2*force, BRUTE, "head") + H.apply_damage(2*force, BRUTE, BP_HEAD) else user.take_organ_damage(2*force) return diff --git a/code/game/objects/items/weapons/tape.dm b/code/game/objects/items/weapons/tape.dm index 04c0a5fbfe..f87000dd87 100644 --- a/code/game/objects/items/weapons/tape.dm +++ b/code/game/objects/items/weapons/tape.dm @@ -7,9 +7,9 @@ /obj/item/weapon/tape_roll/attack(var/mob/living/carbon/human/H, var/mob/user) if(istype(H)) - if(user.zone_sel.selecting == "eyes") + if(user.zone_sel.selecting == O_EYES) - if(!H.organs_by_name["head"]) + if(!H.organs_by_name[BP_HEAD]) user << "\The [H] doesn't have a head." return if(!H.has_eyes()) @@ -27,14 +27,14 @@ return // Repeat failure checks. - if(!H || !src || !H.organs_by_name["head"] || !H.has_eyes() || H.glasses || (H.head && (H.head.body_parts_covered & FACE))) + if(!H || !src || !H.organs_by_name[BP_HEAD] || !H.has_eyes() || H.glasses || (H.head && (H.head.body_parts_covered & FACE))) return user.visible_message("\The [user] has taped up \the [H]'s eyes!") H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/blindfold/tape(H), slot_glasses) - else if(user.zone_sel.selecting == "mouth" || user.zone_sel.selecting == "head") - if(!H.organs_by_name["head"]) + else if(user.zone_sel.selecting == O_MOUTH || user.zone_sel.selecting == BP_HEAD) + if(!H.organs_by_name[BP_HEAD]) user << "\The [H] doesn't have a head." return if(!H.check_has_mouth()) @@ -52,7 +52,7 @@ return // Repeat failure checks. - if(!H || !src || !H.organs_by_name["head"] || !H.check_has_mouth() || H.wear_mask || (H.head && (H.head.body_parts_covered & FACE))) + if(!H || !src || !H.organs_by_name[BP_HEAD] || !H.check_has_mouth() || H.wear_mask || (H.head && (H.head.body_parts_covered & FACE))) return user.visible_message("\The [user] has taped up \the [H]'s mouth!") diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 0e1f0dadc3..2788905eeb 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -83,7 +83,7 @@ /obj/item/weapon/screwdriver/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) if(!istype(M) || user.a_intent == "help") return ..() - if(user.zone_sel.selecting != "eyes" && user.zone_sel.selecting != "head") + if(user.zone_sel.selecting != O_EYES && user.zone_sel.selecting != BP_HEAD) return ..() if((CLUMSY in user.mutations) && prob(50)) M = user @@ -333,7 +333,7 @@ var/safety = user:eyecheck() if(istype(user, /mob/living/carbon/human)) var/mob/living/carbon/human/H = user - var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/E = H.internal_organs_by_name[O_EYES] if(!E) return switch(safety) diff --git a/code/game/objects/items/weapons/trays.dm b/code/game/objects/items/weapons/trays.dm index aca5196cfd..d4a7117bbb 100644 --- a/code/game/objects/items/weapons/trays.dm +++ b/code/game/objects/items/weapons/trays.dm @@ -45,7 +45,7 @@ var/mob/living/carbon/human/H = M ///////////////////////////////////// /Let's have this ready for later. - if(!(user.zone_sel.selecting == ("eyes" || "head"))) //////////////hitting anything else other than the eyes + if(!(user.zone_sel.selecting == (O_EYES || BP_HEAD))) //////////////hitting anything else other than the eyes if(prob(33)) src.add_blood(H) var/turf/location = H.loc @@ -79,7 +79,7 @@ if(istype(protection) && (protection.body_parts_covered & FACE)) protected = 1 break - + if(protected) M << "You get slammed in the face with the tray, against your mask!" if(prob(33)) diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index 5b84455ac7..886ccc2cae 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -140,15 +140,15 @@ switch(pick(list("ankle","wrist","head","knee","elbow"))) if("ankle") - affecting = H.get_organ(pick("l_foot", "r_foot")) + affecting = H.get_organ(pick(BP_L_FOOT, BP_R_FOOT)) if("knee") - affecting = H.get_organ(pick("l_leg", "r_leg")) + affecting = H.get_organ(pick(BP_L_LEG, BP_R_LEG)) if("wrist") - affecting = H.get_organ(pick("l_hand", "r_hand")) + affecting = H.get_organ(pick(BP_L_HAND, BP_R_HAND)) if("elbow") - affecting = H.get_organ(pick("l_arm", "r_arm")) + affecting = H.get_organ(pick(BP_L_ARM, BP_R_ARM)) if("head") - affecting = H.get_organ("head") + affecting = H.get_organ(BP_HEAD) if(affecting) M << "You land heavily on your [affecting.name]!" diff --git a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm index 977a3939d9..cbe89ec86f 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/alien_nests.dm @@ -48,10 +48,10 @@ var/mob/living/carbon/xenos = user var/mob/living/carbon/victim = M - if(istype(victim) && locate(/obj/item/organ/xenos/hivenode) in victim.internal_organs) + if(istype(victim) && locate(/obj/item/organ/internal/xenos/hivenode) in victim.internal_organs) return - if(istype(xenos) && !(locate(/obj/item/organ/xenos/hivenode) in xenos.internal_organs)) + if(istype(xenos) && !(locate(/obj/item/organ/internal/xenos/hivenode) in xenos.internal_organs)) return if(M == usr) diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index 720a3d3c07..71b607be18 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -97,33 +97,33 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O var/organ_name = null switch(name) - if("torso") + if(BP_TORSO) organ_name = "torso" - if("groin") + if(BP_GROIN) organ_name = "groin" - if("head") + if(BP_HEAD) organ_name = "head" - if("l_arm") + if(BP_L_ARM) organ_name = "left arm" - if("r_arm") + if(BP_R_ARM) organ_name = "right arm" - if("l_leg") + if(BP_L_LEG) organ_name = "left leg" - if("r_leg") + if(BP_R_LEG) organ_name = "right leg" - if("l_foot") + if(BP_L_FOOT) organ_name = "left foot" - if("r_foot") + if(BP_R_FOOT) organ_name = "right foot" - if("l_hand") + if(BP_L_HAND) organ_name = "left hand" - if("r_hand") + if(BP_R_HAND) organ_name = "right hand" - if("heart") + if(O_HEART) organ_name = "heart" - if("eyes") + if(O_EYES) organ_name = "eyes" - if("brain") + if(O_BRAIN) organ_name = "brain" if(status == "cyborg") @@ -351,56 +351,73 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O return TOPIC_REFRESH else if(href_list["limbs"]) - var/limb_name = input(user, "Which limb do you want to change?") as null|anything in list("Left Leg","Right Leg","Left Arm","Right Arm","Left Foot","Right Foot","Left Hand","Right Hand","Full Body") - if(!limb_name && !CanUseTopic(user)) return TOPIC_NOACTION + + var/list/limb_selection_list = list("Left Leg","Right Leg","Left Arm","Right Arm","Left Foot","Right Foot","Left Hand","Right Hand","Full Body") + + // Full prosthetic bodies without a brain are borderline unkillable so make sure they have a brain to remove/destroy. + var/datum/species/current_species = all_species[pref.species] + if(!current_species.has_organ["brain"]) + limb_selection_list -= "Full Body" + + var/organ_tag = input(user, "Which limb do you want to change?") as null|anything in limb_selection_list + + if(!organ_tag && !CanUseTopic(user)) return TOPIC_NOACTION var/limb = null var/second_limb = null // if you try to change the arm, the hand should also change var/third_limb = null // if you try to unchange the hand, the arm should also change - switch(limb_name) + + // Do not let them amputate their entire body, ty. + var/list/choice_options = list("Normal","Amputated","Prothesis") + switch(organ_tag) if("Left Leg") - limb = "l_leg" - second_limb = "l_foot" + limb = BP_L_LEG + second_limb = BP_L_FOOT if("Right Leg") - limb = "r_leg" - second_limb = "r_foot" + limb = BP_R_LEG + second_limb = BP_R_FOOT if("Left Arm") - limb = "l_arm" - second_limb = "l_hand" + limb = BP_L_ARM + second_limb = BP_L_HAND if("Right Arm") - limb = "r_arm" - second_limb = "r_hand" + limb = BP_R_ARM + second_limb = BP_R_HAND if("Left Foot") - limb = "l_foot" - third_limb = "l_leg" + limb = BP_L_FOOT + third_limb = BP_L_LEG if("Right Foot") - limb = "r_foot" - third_limb = "r_leg" + limb = BP_R_FOOT + third_limb = BP_R_LEG if("Left Hand") - limb = "l_hand" - third_limb = "l_arm" + limb = BP_L_HAND + third_limb = BP_L_ARM if("Right Hand") - limb = "r_hand" - third_limb = "r_arm" + limb = BP_R_HAND + third_limb = BP_R_ARM if("Full Body") - limb = "torso" + limb = BP_TORSO + third_limb = BP_GROIN + choice_options = list("Normal","Prothesis") - - var/new_state = input(user, "What state do you wish the limb to be in?") as null|anything in list("Normal","Amputated","Prothesis") + var/new_state = input(user, "What state do you wish the limb to be in?") as null|anything in choice_options if(!new_state && !CanUseTopic(user)) return TOPIC_NOACTION switch(new_state) if("Normal") + + if(limb == BP_TORSO) + for(var/other_limb in BP_ALL - BP_TORSO) + pref.organ_data[other_limb] = null + pref.rlimb_data[other_limb] = null pref.organ_data[limb] = null pref.rlimb_data[limb] = null if(third_limb) pref.organ_data[third_limb] = null pref.rlimb_data[third_limb] = null + if("Amputated") - - if(limb == "torso") + if(limb == BP_TORSO) return - pref.organ_data[limb] = "amputated" pref.rlimb_data[limb] = null if(second_limb) @@ -430,43 +447,45 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O if(third_limb && pref.organ_data[third_limb] == "amputated") pref.organ_data[third_limb] = null - if(limb == "torso") - for(var/other_limb in list("l_foot","r_foot","l_hand","r_hand","l_leg","r_leg","l_arm","r_arm","groin","head")) + if(limb == BP_TORSO) + for(var/other_limb in BP_ALL - BP_TORSO) if(pref.organ_data[other_limb]) continue pref.organ_data[other_limb] = "cyborg" pref.rlimb_data[other_limb] = choice - if(!pref.organ_data["brain"]) - pref.organ_data["brain"] = "assisted" - for(var/internal_organ in list("heart","eyes")) + if(!pref.organ_data[O_BRAIN]) + pref.organ_data[O_BRAIN] = "assisted" + for(var/internal_organ in list(O_HEART,O_EYES)) pref.organ_data[internal_organ] = "mechanical" return TOPIC_REFRESH else if(href_list["organs"]) + var/organ_name = input(user, "Which internal function do you want to change?") as null|anything in list("Heart", "Eyes", "Brain") if(!organ_name) return var/organ = null switch(organ_name) if("Heart") - organ = "heart" + organ = O_HEART if("Eyes") - organ = "eyes" + organ = O_EYES if("Brain") - if(pref.organ_data["head"] != "cyborg") + if(pref.organ_data[BP_HEAD] != "cyborg") user << "You may only select an assisted or synthetic brain if you have a full prosthetic body." return organ = "brain" - var/new_state = input(user, "What state do you wish the organ to be in?") as null|anything in list("Normal","Assisted","Mechanical") + var/list/organ_choices = list("Normal","Assisted","Mechanical") + if(pref.organ_data[BP_TORSO] == "cyborg") + organ_choices -= "Normal" + + var/new_state = input(user, "What state do you wish the organ to be in?") as null|anything in organ_choices if(!new_state) return switch(new_state) if("Normal") - if(pref.organ_data["torso"] == "cyborg") - user << "A character with a synthetic body may only use synthetic organs." - return pref.organ_data[organ] = null if("Assisted") pref.organ_data[organ] = "assisted" @@ -512,9 +531,9 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O dat += "
Often present on human stations." if(current_species.spawn_flags & IS_WHITELISTED) dat += "
Whitelist restricted." - if(!current_species.has_organ["heart"]) + if(!current_species.has_organ[O_HEART]) dat += "
Does not have a circulatory system." - if(!current_species.has_organ["lungs"]) + if(!current_species.has_organ[O_LUNGS]) dat += "
Does not have a respiratory system." if(current_species.flags & NO_SCAN) dat += "
Does not have DNA." diff --git a/code/modules/client/preference_setup/global/03_pai.dm b/code/modules/client/preference_setup/global/03_pai.dm index 7944c7b6e7..8e0b4ea8a5 100644 --- a/code/modules/client/preference_setup/global/03_pai.dm +++ b/code/modules/client/preference_setup/global/03_pai.dm @@ -24,6 +24,9 @@ /datum/category_item/player_setup_item/player_global/pai/content(var/mob/user) . += "pAI:
" + if(!candidate) + log_debug("[user] pAI prefs have a null candidate var.") + return . . += "Name:
[candidate.name ? candidate.name : "None Set"]
" . += "Description: [candidate.description ? TextPreview(candidate.description, 40) : "None Set"]
" . += "Role: [candidate.role ? TextPreview(candidate.role, 40) : "None Set"]
" diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index b4060b221f..971d73ed6d 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -304,36 +304,29 @@ datum/preferences character.skills = skills character.used_skillpoints = used_skillpoints - // Destroy/cyborgize organs - - for(var/name in organ_data) - + // Destroy/cyborgize organs and limbs. + for(var/name in BP_ALL) var/status = organ_data[name] var/obj/item/organ/external/O = character.organs_by_name[name] - if(name == "torso" && !O) - O = character.organs_by_name["chest"] if(O) - O.status = 0 if(status == "amputated") - character.organs_by_name[O.limb_name] = null - character.organs -= O - if(O.children) // This might need to become recursive. - for(var/obj/item/organ/external/child in O.children) - character.organs_by_name[child.limb_name] = null - character.organs -= child - + O.remove_rejuv() else if(status == "cyborg") if(rlimb_data[name]) O.robotize(rlimb_data[name]) else O.robotize() - else - var/obj/item/organ/I = character.internal_organs_by_name[name] - if(I) - if(status == "assisted") - I.mechassist() - else if(status == "mechanical") - I.robotize() + + for(var/name in list(O_HEART,O_EYES,O_BRAIN)) + var/status = organ_data[name] + if(!status) + continue + var/obj/item/organ/I = character.internal_organs_by_name[name] + if(I) + if(status == "assisted") + I.mechassist() + else if(status == "mechanical") + I.robotize() character.underwear = underwear character.undershirt = undershirt diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index e7ba59a5ef..2b6cf43630 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -93,7 +93,7 @@ var/obj/item/projectile/P = damage_source var/reflectchance = 40 - round(damage/3) - if(!(def_zone in list("chest", "groin"))) + if(!(def_zone in list(BP_TORSO, BP_GROIN))) reflectchance /= 2 if(P.starting && prob(reflectchance)) visible_message("\The [user]'s [src.name] reflects [attack_text]!") diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index f57b9c9be2..51cbe7baa4 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -99,7 +99,7 @@ var/sound = "heartbeat" var/sound_strength = "cannot hear" var/heartbeat = 0 - var/obj/item/organ/heart/heart = M.internal_organs_by_name["heart"] + var/obj/item/organ/internal/heart/heart = M.internal_organs_by_name[O_HEART] if(heart && !(heart.status & ORGAN_ROBOT)) heartbeat = 1 if(M.stat == DEAD || (M.status_flags&FAKEDEATH)) @@ -107,7 +107,7 @@ sound = "anything" else switch(body_part) - if("chest") + if(BP_TORSO) sound_strength = "hear" sound = "no heartbeat" if(heartbeat) @@ -116,14 +116,14 @@ else sound = "healthy heartbeat" - var/obj/item/organ/heart/L = M.internal_organs_by_name["lungs"] + var/obj/item/organ/internal/heart/L = M.internal_organs_by_name[O_LUNGS] if(!L || M.losebreath) sound += " and no respiration" else if(M.is_lung_ruptured() || M.getOxyLoss() > 50) sound += " and [pick("wheezing","gurgling")] sounds" else sound += " and healthy respiration" - if("eyes","mouth") + if(O_EYES,O_MOUTH) sound_strength = "cannot hear" sound = "anything" else diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 105b8d9c80..061f7bf9e9 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -600,4 +600,11 @@ desc = "A red shirt that has had the top cut low." icon_state = "cuttop_red" item_state = "r_suit" - worn_state = "cuttop_red" \ No newline at end of file + worn_state = "cuttop_red" + +/obj/item/clothing/under/harness + name = "gear harness" + desc = "How... minimalist." + icon_state = "gear_harness" + worn_state = "gear_harness" + body_parts_covered = 0 \ No newline at end of file diff --git a/code/modules/detectivework/tools/rag.dm b/code/modules/detectivework/tools/rag.dm index 816a228a9c..300c48ee4c 100644 --- a/code/modules/detectivework/tools/rag.dm +++ b/code/modules/detectivework/tools/rag.dm @@ -111,7 +111,7 @@ user.do_attack_animation(src) M.IgniteMob() else if(reagents.total_volume) - if(user.zone_sel.selecting == "mouth") + if(user.zone_sel.selecting == O_MOUTH) user.do_attack_animation(src) user.visible_message( "\The [user] smothers [target] with [src]!", diff --git a/code/modules/detectivework/tools/swabs.dm b/code/modules/detectivework/tools/swabs.dm index 847c028012..b0b0bb7870 100644 --- a/code/modules/detectivework/tools/swabs.dm +++ b/code/modules/detectivework/tools/swabs.dm @@ -32,8 +32,8 @@ user.visible_message("\The [user] tries to take a swab sample from \the [H], but they move away.") return - if(user.zone_sel.selecting == "mouth") - if(!H.organs_by_name["head"]) + if(user.zone_sel.selecting == O_MOUTH) + if(!H.organs_by_name[BP_HEAD]) user << "They don't have a head." return if(!H.check_has_mouth()) @@ -43,13 +43,13 @@ dna = list(H.dna.unique_enzymes) sample_type = "DNA" - else if(user.zone_sel.selecting == "r_hand" || user.zone_sel.selecting == "l_hand") + else if(user.zone_sel.selecting == BP_R_HAND || user.zone_sel.selecting == BP_L_HAND) var/has_hand - var/obj/item/organ/external/O = H.organs_by_name["r_hand"] + var/obj/item/organ/external/O = H.organs_by_name[BP_R_HAND] if(istype(O) && !O.is_stump()) has_hand = 1 else - O = H.organs_by_name["l_hand"] + O = H.organs_by_name[BP_L_HAND] if(istype(O) && !O.is_stump()) has_hand = 1 if(!has_hand) diff --git a/code/modules/food/recipes_microwave.dm b/code/modules/food/recipes_microwave.dm index 9c696c975e..4eb60cc706 100644 --- a/code/modules/food/recipes_microwave.dm +++ b/code/modules/food/recipes_microwave.dm @@ -91,7 +91,7 @@ I said no! /datum/recipe/brainburger items = list( /obj/item/weapon/reagent_containers/food/snacks/bun, - /obj/item/organ/brain + /obj/item/organ/internal/brain ) result = /obj/item/weapon/reagent_containers/food/snacks/brainburger @@ -1020,5 +1020,5 @@ I said no! result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/applecake /datum/recipe/cake/brain - items = list(/obj/item/organ/brain) + items = list(/obj/item/organ/internal/brain) result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake \ No newline at end of file diff --git a/code/modules/genetics/side_effects.dm b/code/modules/genetics/side_effects.dm index d0768a3440..dcb5b4e499 100644 --- a/code/modules/genetics/side_effects.dm +++ b/code/modules/genetics/side_effects.dm @@ -25,7 +25,7 @@ finish(mob/living/carbon/human/H) if(!H.reagents.has_reagent("dexalin")) - for(var/organ_name in list("chest","l_arm","r_arm","r_leg","l_leg","head","groin")) + for(var/organ_name in BP_ALL) var/obj/item/organ/external/E = H.get_organ(organ_name) E.take_damage(0, 5, 0) @@ -41,7 +41,7 @@ finish(mob/living/carbon/human/H) if(!H.reagents.has_reagent("bicaridine")) - var/organ_name = pick("chest","l_arm","r_arm","r_leg","l_leg","head","groin") + var/organ_name = pick(BP_ALL) var/obj/item/organ/external/E = H.get_organ(organ_name) E.take_damage(20, 0, 0) E.fracture() diff --git a/code/modules/hydroponics/seed.dm b/code/modules/hydroponics/seed.dm index b1d17a6a69..e9be2bf993 100644 --- a/code/modules/hydroponics/seed.dm +++ b/code/modules/hydroponics/seed.dm @@ -110,7 +110,7 @@ return - if(!target_limb) target_limb = pick("l_foot","r_foot","l_leg","r_leg","l_hand","r_hand","l_arm", "r_arm","head","chest","groin") + if(!target_limb) target_limb = pick(BP_ALL) var/obj/item/organ/external/affecting = target.get_organ(target_limb) var/damage = 0 diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 44cde40ced..13caccfba0 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -252,7 +252,7 @@ ..() /obj/item/weapon/book/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - if(user.zone_sel.selecting == "eyes") + if(user.zone_sel.selecting == O_EYES) user.visible_message("You open up the book and show it to [M]. ", \ " [user] opens up a book and shows it to [M]. ") M << browse("Penned by [author].
" + "[dat]", "window=book") diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 158c9ef876..d4a6b85f5d 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -651,7 +651,7 @@ var/list/name_to_material /material/resin/can_open_material_door(var/mob/living/user) var/mob/living/carbon/M = user - if(istype(M) && locate(/obj/item/organ/xenos/hivenode) in M.internal_organs) + if(istype(M) && locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs) return 1 return 0 diff --git a/code/modules/mining/abandonedcrates.dm b/code/modules/mining/abandonedcrates.dm index 038591b735..1f6a663620 100644 --- a/code/modules/mining/abandonedcrates.dm +++ b/code/modules/mining/abandonedcrates.dm @@ -104,9 +104,9 @@ if(88) new/obj/item/xenos_claw(src) if(89) - new/obj/item/organ/xenos/plasmavessel(src) + new/obj/item/organ/internal/xenos/plasmavessel(src) if(90) - new/obj/item/organ/heart(src) + new/obj/item/organ/internal/heart(src) if(91) new/obj/item/device/soulstone(src) if(92) @@ -168,8 +168,8 @@ var/turf/T = get_turf(src.loc) explosion(T, 0, 0, 1, 2) qdel(src) - -/obj/structure/closet/crate/secure/loot/emag_act(var/remaining_charges, var/mob/user) + +/obj/structure/closet/crate/secure/loot/emag_act(var/remaining_charges, var/mob/user) if (locked) user << "The crate unlocks!" locked = 0 @@ -177,7 +177,7 @@ /obj/structure/closet/crate/secure/loot/proc/check_input(var/input) if(length(input) != codelen) return 0 - + . = 1 lastattempt.Cut() for(var/i in 1 to codelen) @@ -197,7 +197,7 @@ if(lastattempt.len) var/bulls = 0 var/cows = 0 - + var/list/code_contents = code.Copy() for(var/i in 1 to codelen) if(lastattempt[i] == code[i]) diff --git a/code/modules/mob/language/language.dm b/code/modules/mob/language/language.dm index c42f76623c..f496c82e67 100644 --- a/code/modules/mob/language/language.dm +++ b/code/modules/mob/language/language.dm @@ -131,6 +131,9 @@ return ask_verb return speech_verb +/datum/language/proc/can_speak_special(var/mob/speaker) + return 1 + // Language handling. /mob/proc/add_language(var/language) @@ -155,7 +158,7 @@ // Can we speak this language, as opposed to just understanding it? /mob/proc/can_speak(datum/language/speaking) - return (universal_speak || (speaking && speaking.flags & INNATE) || speaking in src.languages) + return (speaking.can_speak_special(src) && (universal_speak || (speaking && speaking.flags & INNATE) || speaking in src.languages)) /mob/proc/get_language_prefix() if(client && client.prefs.language_prefixes && client.prefs.language_prefixes.len) diff --git a/code/modules/mob/language/outsider.dm b/code/modules/mob/language/outsider.dm index 7295a6ae20..308bf0a7c8 100644 --- a/code/modules/mob/language/outsider.dm +++ b/code/modules/mob/language/outsider.dm @@ -24,7 +24,7 @@ var/mob/living/carbon/M = other if(!istype(M)) return 1 - if(locate(/obj/item/organ/xenos/hivenode) in M.internal_organs) + if(locate(/obj/item/organ/internal/xenos/hivenode) in M.internal_organs) return 1 return 0 diff --git a/code/modules/mob/language/station.dm b/code/modules/mob/language/station.dm index d237f36b09..53d42c4769 100644 --- a/code/modules/mob/language/station.dm +++ b/code/modules/mob/language/station.dm @@ -106,13 +106,14 @@ syllables = list("beep","beep","beep","beep","beep","boop","boop","boop","bop","bop","dee","dee","doo","doo","hiss","hss","buzz","buzz","bzz","ksssh","keey","wurr","wahh","tzzz") space_chance = 10 +/datum/language/machine/can_speak_special(var/mob/speaker) + return speaker.isSynthetic() + /datum/language/machine/get_random_name() - var/new_name if(prob(70)) - new_name = "[pick(list("PBU","HIU","SINA","ARMA","OSI"))]-[rand(100, 999)]" + return "[pick(list("PBU","HIU","SINA","ARMA","OSI"))]-[rand(100, 999)]" else - new_name = pick(ai_names) - return new_name + return pick(ai_names) //Syllable Lists /* diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index 548eee230b..4ebf7986b6 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -11,4 +11,4 @@ /mob/living/carbon/alien/larva/New() ..() add_language("Xenomorph") //Bonus language. - internal_organs |= new /obj/item/organ/xenos/hivenode(src) \ No newline at end of file + internal_organs |= new /obj/item/organ/internal/xenos/hivenode(src) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index 03de410f5e..5fe2255803 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -31,25 +31,24 @@ var/locked = 0 var/mob/living/carbon/brain/brainmob = null//The current occupant. - var/obj/item/organ/brain/brainobj = null //The current brain organ. + var/obj/item/organ/internal/brain/brainobj = null //The current brain organ. var/obj/mecha = null//This does not appear to be used outside of reference in mecha.dm. attackby(var/obj/item/O as obj, var/mob/user as mob) - if(istype(O,/obj/item/organ/brain) && !brainmob) //Time to stick a brain in it --NEO + if(istype(O,/obj/item/organ/internal/brain) && !brainmob) //Time to stick a brain in it --NEO - var/obj/item/organ/brain/B = O + var/obj/item/organ/internal/brain/B = O if(B.health <= 0) - user << "\red That brain is well and truly dead." + user << "That brain is well and truly dead." return else if(!B.brainmob) - user << "\red You aren't sure where this brain came from, but you're pretty sure it's a useless brain." + user << "You aren't sure where this brain came from, but you're pretty sure it's useless." return - for(var/mob/V in viewers(src, null)) - V.show_message(text("\blue [user] sticks \a [O] into \the [src].")) + user.visible_message("\The [user] sticks \a [O] into \the [src].") - brainmob = O:brainmob - O:brainmob = null + brainmob = B.brainmob + B.brainmob = null brainmob.loc = src brainmob.container = src brainmob.stat = 0 @@ -72,9 +71,9 @@ if((istype(O,/obj/item/weapon/card/id)||istype(O,/obj/item/device/pda)) && brainmob) if(allowed(user)) locked = !locked - user << "\blue You [locked ? "lock" : "unlock"] the brain holder." + user << "You [locked ? "lock" : "unlock"] the brain holder." else - user << "\red Access denied." + user << "Access denied." return if(brainmob) O.attack(brainmob, user)//Oh noooeeeee @@ -84,12 +83,12 @@ //TODO: ORGAN REMOVAL UPDATE. Make the brain remain in the MMI so it doesn't lose organ data. attack_self(mob/user as mob) if(!brainmob) - user << "\red You upend the MMI, but there's nothing in it." + user << "You upend the MMI, but there's nothing in it." else if(locked) - user << "\red You upend the MMI, but the brain is clamped into place." + user << "You upend the MMI, but the brain is clamped into place." else - user << "\blue You upend the MMI, spilling the brain onto the floor." - var/obj/item/organ/brain/brain + user << "You upend the MMI, spilling the brain onto the floor." + var/obj/item/organ/internal/brain/brain if (brainobj) //Pull brain organ out of MMI. brainobj.loc = user.loc brain = brainobj @@ -158,7 +157,7 @@ brainmob << "Can't do that while incapacitated or dead." radio.broadcasting = radio.broadcasting==1 ? 0 : 1 - brainmob << "\blue Radio is [radio.broadcasting==1 ? "now" : "no longer"] broadcasting." + brainmob << "Radio is [radio.broadcasting==1 ? "now" : "no longer"] broadcasting." Toggle_Listening() set name = "Toggle Listening" @@ -171,7 +170,7 @@ brainmob << "Can't do that while incapacitated or dead." radio.listening = radio.listening==1 ? 0 : 1 - brainmob << "\blue Radio is [radio.listening==1 ? "now" : "no longer"] receiving broadcast." + brainmob << "Radio is [radio.listening==1 ? "now" : "no longer"] receiving broadcast." /obj/item/device/mmi/emp_act(severity) if(!brainmob) diff --git a/code/modules/mob/living/carbon/brain/brain_item.dm b/code/modules/mob/living/carbon/brain/brain_item.dm index fc1e7778ad..6e1d4bce9c 100644 --- a/code/modules/mob/living/carbon/brain/brain_item.dm +++ b/code/modules/mob/living/carbon/brain/brain_item.dm @@ -1,9 +1,9 @@ -/obj/item/organ/brain +/obj/item/organ/internal/brain name = "brain" health = 400 //They need to live awhile longer than other organs. Is this even used by organ code anymore? desc = "A piece of juicy meat found in a person's head." organ_tag = "brain" - parent_organ = "head" + parent_organ = BP_HEAD vital = 1 icon_state = "brain2" force = 1.0 @@ -15,89 +15,86 @@ attack_verb = list("attacked", "slapped", "whacked") var/mob/living/carbon/brain/brainmob = null +/obj/item/organ/internal/brain/robotize() + replace_self_with(/obj/item/organ/internal/mmi_holder/posibrain) -/obj/item/organ/brain/robotize() - replace_self_with(/obj/item/organ/mmi_holder/posibrain) +/obj/item/organ/internal/brain/mechassist() + replace_self_with(/obj/item/organ/internal/mmi_holder) -/obj/item/organ/brain/mechassist() - replace_self_with(/obj/item/organ/mmi_holder) +/obj/item/organ/internal/brain/proc/replace_self_with(replace_path) + var/mob/living/carbon/human/tmp_owner = owner + qdel(src) + if(tmp_owner) + tmp_owner.internal_organs_by_name[organ_tag] = new replace_path(tmp_owner, 1) + tmp_owner = null -/obj/item/organ/brain/proc/replace_self_with(replace_path) - if(!owner) - new replace_path(src.loc) - qdel(src) - return - owner.internal_organs_by_name[organ_tag] = new replace_path(owner, 1) - owner.internal_organs -= src - while(null in owner.internal_organs_by_name) - owner.internal_organs_by_name -= null - while(null in owner.internal_organs) - owner.internal_organs -= null - -/obj/item/organ/pariah_brain +/obj/item/organ/internal/pariah_brain name = "brain remnants" desc = "Did someone tread on this? It looks useless for cloning or cyborgification." organ_tag = "brain" - parent_organ = "head" + parent_organ = BP_HEAD icon = 'icons/mob/alien.dmi' icon_state = "chitin" vital = 1 -/obj/item/organ/brain/xeno +/obj/item/organ/internal/brain/xeno name = "thinkpan" desc = "It looks kind of like an enormous wad of purple bubblegum." icon = 'icons/mob/alien.dmi' icon_state = "chitin" -/obj/item/organ/brain/New() +/obj/item/organ/internal/brain/New() ..() health = config.default_brain_health spawn(5) if(brainmob && brainmob.client) brainmob.client.screen.len = null //clear the hud -/obj/item/organ/brain/Destroy() +/obj/item/organ/internal/brain/Destroy() if(brainmob) qdel(brainmob) brainmob = null ..() -/obj/item/organ/brain/proc/transfer_identity(var/mob/living/carbon/H) - name = "\the [H]'s [initial(src.name)]" - brainmob = new(src) - brainmob.name = H.real_name - brainmob.real_name = H.real_name - brainmob.dna = H.dna.Clone() - brainmob.timeofhostdeath = H.timeofdeath +/obj/item/organ/internal/brain/proc/transfer_identity(var/mob/living/carbon/H) + + if(!brainmob) + brainmob = new(src) + brainmob.name = H.real_name + brainmob.real_name = H.real_name + brainmob.dna = H.dna.Clone() + brainmob.timeofhostdeath = H.timeofdeath + if(H.mind) H.mind.transfer_to(brainmob) - brainmob << "You feel slightly disoriented. That's normal when you're just a [initial(src.name)]." + brainmob << "You feel slightly disoriented. That's normal when you're just \a [initial(src.name)]." callHook("debrain", list(brainmob)) -/obj/item/organ/brain/examine(mob/user) // -- TLE +/obj/item/organ/internal/brain/examine(mob/user) // -- TLE ..(user) if(brainmob && brainmob.client)//if thar be a brain inside... the brain. user << "You can feel the small spark of life still left in this one." else user << "This one seems particularly lifeless. Perhaps it will regain some of its luster later.." -/obj/item/organ/brain/removed(var/mob/living/user) +/obj/item/organ/internal/brain/removed(var/mob/living/user) - name = "[owner.real_name]'s brain" + if(name == initial(name)) + name = "\the [owner.real_name]'s [initial(name)]" var/mob/living/simple_animal/borer/borer = owner.has_brain_worms() if(borer) borer.detatch() //Should remove borer if the brain is removed - RR - var/obj/item/organ/brain/B = src + var/obj/item/organ/internal/brain/B = src if(istype(B) && istype(owner)) B.transfer_identity(owner) ..() -/obj/item/organ/brain/replaced(var/mob/living/target) +/obj/item/organ/internal/brain/replaced(var/mob/living/target) if(target.key) target.ghostize() @@ -109,13 +106,13 @@ target.key = brainmob.key ..() -/obj/item/organ/brain/slime +/obj/item/organ/internal/brain/slime name = "slime core" desc = "A complex, organic knot of jelly and crystalline particles." icon = 'icons/mob/slimes.dmi' icon_state = "green slime extract" -/obj/item/organ/brain/golem +/obj/item/organ/internal/brain/golem name = "chem" desc = "A tightly furled roll of paper, covered with indecipherable runes." icon = 'icons/obj/wizard.dmi' diff --git a/code/modules/mob/living/carbon/brain/death.dm b/code/modules/mob/living/carbon/brain/death.dm index 43918f5288..8b6e7f7175 100644 --- a/code/modules/mob/living/carbon/brain/death.dm +++ b/code/modules/mob/living/carbon/brain/death.dm @@ -9,6 +9,6 @@ if(istype(container, /obj/item/device/mmi)) qdel(container)//Gets rid of the MMI if there is one if(loc) - if(istype(loc,/obj/item/organ/brain)) + if(istype(loc,/obj/item/organ/internal/brain)) qdel(loc)//Gets rid of the brain item ..(null,1) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/breathe.dm b/code/modules/mob/living/carbon/breathe.dm index fa87736f26..476e1c1117 100644 --- a/code/modules/mob/living/carbon/breathe.dm +++ b/code/modules/mob/living/carbon/breathe.dm @@ -7,7 +7,7 @@ /mob/living/carbon/proc/breathe() //if(istype(loc, /obj/machinery/atmospherics/unary/cryo_cell)) return - if(!should_have_organ("lungs") || does_not_breathe) return + if(!should_have_organ(O_LUNGS) || does_not_breathe) return var/datum/gas_mixture/breath = null diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index f0b09f88d6..a45f378ab4 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -56,7 +56,7 @@ var/d = rand(round(I.force / 4), I.force) if(istype(src, /mob/living/carbon/human)) var/mob/living/carbon/human/H = src - var/obj/item/organ/external/organ = H.get_organ("chest") + var/obj/item/organ/external/organ = H.get_organ(BP_TORSO) if (istype(organ)) if(organ.take_damage(d, 0)) H.UpdateDamageIcon() diff --git a/code/modules/mob/living/carbon/human/appearance.dm b/code/modules/mob/living/carbon/human/appearance.dm index cf404df6ff..823ac808ec 100644 --- a/code/modules/mob/living/carbon/human/appearance.dm +++ b/code/modules/mob/living/carbon/human/appearance.dm @@ -159,7 +159,7 @@ /mob/living/carbon/human/proc/generate_valid_hairstyles(var/check_gender = 1) var/use_species = species.get_bodytype() - var/obj/item/organ/external/head/H = get_organ("head") + var/obj/item/organ/external/head/H = get_organ(BP_HEAD) if(H) use_species = H.species.get_bodytype() var/list/valid_hairstyles = new() @@ -181,7 +181,7 @@ /mob/living/carbon/human/proc/generate_valid_facial_hairstyles() var/use_species = species.get_bodytype() - var/obj/item/organ/external/head/H = get_organ("head") + var/obj/item/organ/external/head/H = get_organ(BP_HEAD) if(H) use_species = H.species.get_bodytype() var/list/valid_facial_hairstyles = new() diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index a01a8f4ee8..359d60c3e1 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -38,7 +38,7 @@ animate_tail_stop() //Handle brain slugs. - var/obj/item/organ/external/head = get_organ("head") + var/obj/item/organ/external/head = get_organ(BP_HEAD) var/mob/living/simple_animal/borer/B for(var/I in head.implants) diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 6509943754..94c7f4600a 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -19,11 +19,43 @@ if(src.stat == 2.0 && (act != "deathgasp")) return switch(act) + if ("airguitar") if (!src.restrained()) message = "is strumming the air and headbanging like a safari chimp." m_type = 1 + if("ping", "beep", "buzz") + + if(!isSynthetic()) + src << "You are not a synthetic." + return + + var/M = null + if(param) + for (var/mob/A in view(null, null)) + if (param == A.name) + M = A + break + if(!M) + param = null + + var/display_msg = "beeps" + var/use_sound = 'sound/machines/twobeep.ogg' + if(act == "buzz") + display_msg = "buzzes" + use_sound = 'sound/machines/buzz-sigh.ogg' + else if(act == "ping") + display_msg = "pings" + use_sound = 'sound/machines/ping.ogg' + + if (param) + message = "[display_msg] at [param]." + else + message = "[display_msg]." + playsound(src.loc, use_sound, 50, 0) + m_type = 1 + if ("blink") message = "blinks." m_type = 1 diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 650a72014e..c6501aae7c 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -39,19 +39,19 @@ msg += "[src.name]" - var/is_synth = isSynthetic() - if(is_synth) - var/use_gender = "a synthetic" - if(gender == MALE) - use_gender = "an android" - else if(gender == FEMALE) - use_gender = "a gynoid" + if(!(skipjumpsuit && skipface)) + if(is_synth) + var/use_gender = "a synthetic" + if(gender == MALE) + use_gender = "an android" + else if(gender == FEMALE) + use_gender = "a gynoid" - msg += ", [use_gender]!" + msg += ", [use_gender]!" - else if(species.name != "Human") - msg += ", \a [species.name]!" + else if(species.name != "Human") + msg += ", \a [species.name]!" msg += "
" //uniform @@ -64,60 +64,60 @@ tie_msg += ". Attached to it is [lowertext(english_list(U.accessories))]" if(w_uniform.blood_DNA) - msg += "[T.He] [T.is] wearing \icon[w_uniform] [w_uniform.gender==PLURAL?"some":"a"] [(w_uniform.blood_color != "#030303") ? "blood" : "oil"]-stained [w_uniform.name][tie_msg]!\n" + msg += "[T.He] [T.is] wearing \icon[w_uniform] [w_uniform.gender==PLURAL?"some":"a"] [(w_uniform.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [w_uniform.name][tie_msg]!\n" else msg += "[T.He] [T.is] wearing \icon[w_uniform] \a [w_uniform][tie_msg].\n" //head if(head) if(head.blood_DNA) - msg += "[T.He] [T.is] wearing \icon[head] [head.gender==PLURAL?"some":"a"] [(head.blood_color != "#030303") ? "blood" : "oil"]-stained [head.name] on [T.his] head!\n" + msg += "[T.He] [T.is] wearing \icon[head] [head.gender==PLURAL?"some":"a"] [(head.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [head.name] on [T.his] head!\n" else msg += "[T.He] [T.is] wearing \icon[head] \a [head] on [T.his] head.\n" //suit/armour if(wear_suit) if(wear_suit.blood_DNA) - msg += "[T.He] [T.is] wearing \icon[wear_suit] [wear_suit.gender==PLURAL?"some":"a"] [(wear_suit.blood_color != "#030303") ? "blood" : "oil"]-stained [wear_suit.name]!\n" + msg += "[T.He] [T.is] wearing \icon[wear_suit] [wear_suit.gender==PLURAL?"some":"a"] [(wear_suit.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [wear_suit.name]!\n" else msg += "[T.He] [T.is] wearing \icon[wear_suit] \a [wear_suit].\n" //suit/armour storage if(s_store && !skipsuitstorage) if(s_store.blood_DNA) - msg += "[T.He] [T.is] carrying \icon[s_store] [s_store.gender==PLURAL?"some":"a"] [(s_store.blood_color != "#030303") ? "blood" : "oil"]-stained [s_store.name] on [T.his] [wear_suit.name]!\n" + msg += "[T.He] [T.is] carrying \icon[s_store] [s_store.gender==PLURAL?"some":"a"] [(s_store.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [s_store.name] on [T.his] [wear_suit.name]!\n" else msg += "[T.He] [T.is] carrying \icon[s_store] \a [s_store] on [T.his] [wear_suit.name].\n" //back if(back) if(back.blood_DNA) - msg += "[T.He] [T.has] \icon[back] [back.gender==PLURAL?"some":"a"] [(back.blood_color != "#030303") ? "blood" : "oil"]-stained [back] on [T.his] back.\n" + msg += "[T.He] [T.has] \icon[back] [back.gender==PLURAL?"some":"a"] [(back.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [back] on [T.his] back.\n" else msg += "[T.He] [T.has] \icon[back] \a [back] on [T.his] back.\n" //left hand if(l_hand) if(l_hand.blood_DNA) - msg += "[T.He] [T.is] holding \icon[l_hand] [l_hand.gender==PLURAL?"some":"a"] [(l_hand.blood_color != "#030303") ? "blood" : "oil"]-stained [l_hand.name] in [T.his] left hand!\n" + msg += "[T.He] [T.is] holding \icon[l_hand] [l_hand.gender==PLURAL?"some":"a"] [(l_hand.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [l_hand.name] in [T.his] left hand!\n" else msg += "[T.He] [T.is] holding \icon[l_hand] \a [l_hand] in [T.his] left hand.\n" //right hand if(r_hand) if(r_hand.blood_DNA) - msg += "[T.He] [T.is] holding \icon[r_hand] [r_hand.gender==PLURAL?"some":"a"] [(r_hand.blood_color != "#030303") ? "blood" : "oil"]-stained [r_hand.name] in [T.his] right hand!\n" + msg += "[T.He] [T.is] holding \icon[r_hand] [r_hand.gender==PLURAL?"some":"a"] [(r_hand.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [r_hand.name] in [T.his] right hand!\n" else msg += "[T.He] [T.is] holding \icon[r_hand] \a [r_hand] in [T.his] right hand.\n" //gloves if(gloves && !skipgloves) if(gloves.blood_DNA) - msg += "[T.He] [T.has] \icon[gloves] [gloves.gender==PLURAL?"some":"a"] [(gloves.blood_color != "#030303") ? "blood" : "oil"]-stained [gloves.name] on [T.his] hands!\n" + msg += "[T.He] [T.has] \icon[gloves] [gloves.gender==PLURAL?"some":"a"] [(gloves.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [gloves.name] on [T.his] hands!\n" else msg += "[T.He] [T.has] \icon[gloves] \a [gloves] on [T.his] hands.\n" else if(blood_DNA) - msg += "[T.He] [T.has] [(hand_blood_color != "#030303") ? "blood" : "oil"]-stained hands!\n" + msg += "[T.He] [T.has] [(hand_blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained hands!\n" //handcuffed? @@ -135,30 +135,30 @@ //belt if(belt) if(belt.blood_DNA) - msg += "[T.He] [T.has] \icon[belt] [belt.gender==PLURAL?"some":"a"] [(belt.blood_color != "#030303") ? "blood" : "oil"]-stained [belt.name] about [T.his] waist!\n" + msg += "[T.He] [T.has] \icon[belt] [belt.gender==PLURAL?"some":"a"] [(belt.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [belt.name] about [T.his] waist!\n" else msg += "[T.He] [T.has] \icon[belt] \a [belt] about [T.his] waist.\n" //shoes if(shoes && !skipshoes) if(shoes.blood_DNA) - msg += "[T.He] [T.is] wearing \icon[shoes] [shoes.gender==PLURAL?"some":"a"] [(shoes.blood_color != "#030303") ? "blood" : "oil"]-stained [shoes.name] on [T.his] feet!\n" + msg += "[T.He] [T.is] wearing \icon[shoes] [shoes.gender==PLURAL?"some":"a"] [(shoes.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [shoes.name] on [T.his] feet!\n" else msg += "[T.He] [T.is] wearing \icon[shoes] \a [shoes] on [T.his] feet.\n" else if(feet_blood_DNA) - msg += "[T.He] [T.has] [(feet_blood_color != "#030303") ? "blood" : "oil"]-stained feet!\n" + msg += "[T.He] [T.has] [(feet_blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained feet!\n" //mask if(wear_mask && !skipmask) if(wear_mask.blood_DNA) - msg += "[T.He] [T.has] \icon[wear_mask] [wear_mask.gender==PLURAL?"some":"a"] [(wear_mask.blood_color != "#030303") ? "blood" : "oil"]-stained [wear_mask.name] on [T.his] face!\n" + msg += "[T.He] [T.has] \icon[wear_mask] [wear_mask.gender==PLURAL?"some":"a"] [(wear_mask.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [wear_mask.name] on [T.his] face!\n" else msg += "[T.He] [T.has] \icon[wear_mask] \a [wear_mask] on [T.his] face.\n" //eyes if(glasses && !skipeyes) if(glasses.blood_DNA) - msg += "[T.He] [T.has] \icon[glasses] [glasses.gender==PLURAL?"some":"a"] [(glasses.blood_color != "#030303") ? "blood" : "oil"]-stained [glasses] covering [T.his] eyes!\n" + msg += "[T.He] [T.has] \icon[glasses] [glasses.gender==PLURAL?"some":"a"] [(glasses.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [glasses] covering [T.his] eyes!\n" else msg += "[T.He] [T.has] \icon[glasses] \a [glasses] covering [T.his] eyes.\n" @@ -194,7 +194,7 @@ msg += "[T.He] [T.is] twitching ever so slightly.\n" //splints - for(var/organ in list("l_leg","r_leg","l_arm","r_arm")) + for(var/organ in list(BP_L_LEG, BP_R_LEG, BP_L_ARM, BP_R_ARM)) var/obj/item/organ/external/o = get_organ(organ) if(o && o.status & ORGAN_SPLINTED) msg += "[T.He] [T.has] a splint on [T.his] [o.name]!\n" @@ -295,79 +295,6 @@ if(((temp.status & ORGAN_BROKEN) && temp.brute_dam > temp.min_broken_damage) || (temp.status & ORGAN_MUTATED)) wound_flavor_text["[temp.name]"] += "[T.His] [temp.name] is dented and swollen!
" - //Handles the text strings being added to the actual description. - //If they have something that covers the limb, and it is not missing, put flavortext. If it is covered but bleeding, add other flavortext. - - // *********************************************************************************** - // THIS NEEDS TO BE ENTIRELY REWRITTEN. Commenting out for now, BADLY NEEDS REWRITING. - // *********************************************************************************** - - /* - var/display_chest = 0 - var/display_shoes = 0 - var/display_gloves = 0 - - if(wound_flavor_text["head"] && (is_destroyed["head"] || (!skipmask && !(wear_mask && istype(wear_mask, /obj/item/clothing/mask/gas))))) - msg += wound_flavor_text["head"] - else if(is_bleeding["head"]) - msg += "[src] [T.has] blood running down [T.his] face!\n" - - if(wound_flavor_text["upper body"] && !w_uniform && !skipjumpsuit) //No need. A missing chest gibs you. - msg += wound_flavor_text["upper body"] - else if(is_bleeding["upper body"]) - display_chest = 1 - - if(wound_flavor_text["left arm"] && (is_destroyed["left arm"] || (!w_uniform && !skipjumpsuit))) - msg += wound_flavor_text["left arm"] - else if(is_bleeding["left arm"]) - display_chest = 1 - - if(wound_flavor_text["left hand"] && (is_destroyed["left hand"] || (!gloves && !skipgloves))) - msg += wound_flavor_text["left hand"] - else if(is_bleeding["left hand"]) - display_gloves = 1 - - if(wound_flavor_text["right arm"] && (is_destroyed["right arm"] || (!w_uniform && !skipjumpsuit))) - msg += wound_flavor_text["right arm"] - else if(is_bleeding["right arm"]) - display_chest = 1 - - if(wound_flavor_text["right hand"] && (is_destroyed["right hand"] || (!gloves && !skipgloves))) - msg += wound_flavor_text["right hand"] - else if(is_bleeding["right hand"]) - display_gloves = 1 - - if(wound_flavor_text["lower body"] && (is_destroyed["lower body"] || (!w_uniform && !skipjumpsuit))) - msg += wound_flavor_text["lower body"] - else if(is_bleeding["lower body"]) - display_chest = 1 - - if(wound_flavor_text["left leg"] && (is_destroyed["left leg"] || (!w_uniform && !skipjumpsuit))) - msg += wound_flavor_text["left leg"] - else if(is_bleeding["left leg"]) - display_chest = 1 - - if(wound_flavor_text["left foot"]&& (is_destroyed["left foot"] || (!shoes && !skipshoes))) - msg += wound_flavor_text["left foot"] - else if(is_bleeding["left foot"]) - display_shoes = 1 - if(wound_flavor_text["right leg"] && (is_destroyed["right leg"] || (!w_uniform && !skipjumpsuit))) - msg += wound_flavor_text["right leg"] - else if(is_bleeding["right leg"]) - display_chest = 1 - if(wound_flavor_text["right foot"]&& (is_destroyed["right foot"] || (!shoes && !skipshoes))) - msg += wound_flavor_text["right foot"] - else if(is_bleeding["right foot"]) - display_shoes = 1 - - if(display_chest) - msg += "[src] [T.has] blood soaking through from under [T.his] clothing!\n" - if(display_shoes) - msg += "[src] [T.has] blood running from [T.his] shoes!\n" - if(display_gloves) - msg += "[src] [T.has] blood running from under [T.his] gloves!\n" - */ - for(var/limb in wound_flavor_text) msg += wound_flavor_text[limb] is_bleeding[limb] = null diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 68662204a3..303e4a565e 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -71,7 +71,7 @@ stat("Tank Pressure", internal.air_contents.return_pressure()) stat("Distribution Pressure", internal.distribute_pressure) - var/obj/item/organ/xenos/plasmavessel/P = internal_organs_by_name["plasma vessel"] + var/obj/item/organ/internal/xenos/plasmavessel/P = internal_organs_by_name[O_PLASMA] if(P) stat(null, "Phoron Stored: [P.stored_plasma]/[P.max_plasma]") @@ -145,26 +145,12 @@ var/weapon_message = "Explosive Blast" for(var/obj/item/organ/external/temp in organs) - switch(temp.name) - if("head") + switch(temp.organ_tag) + if(BP_HEAD) update |= temp.take_damage(b_loss * 0.2, f_loss * 0.2, used_weapon = weapon_message) - if("chest") + if(BP_TORSO) update |= temp.take_damage(b_loss * 0.4, f_loss * 0.4, used_weapon = weapon_message) - if("l_arm") - update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) - if("r_arm") - update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) - if("l_leg") - update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) - if("r_leg") - update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) - if("r_foot") - update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) - if("l_foot") - update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) - if("r_arm") - update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) - if("l_arm") + else update |= temp.take_damage(b_loss * 0.05, f_loss * 0.05, used_weapon = weapon_message) if(update) UpdateDamageIcon() @@ -174,7 +160,7 @@ var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(M) L.imp_in = M L.implanted = 1 - var/obj/item/organ/external/affected = M.organs_by_name["head"] + var/obj/item/organ/external/affected = M.organs_by_name[BP_HEAD] affected.implants += L L.part = affected L.implanted(src) @@ -318,7 +304,7 @@ //Returns "Unknown" if facially disfigured and real_name if not. Useful for setting name when polyacided or when updating a human's name variable /mob/living/carbon/human/proc/get_face_name() - var/obj/item/organ/external/head = get_organ("head") + var/obj/item/organ/external/head = get_organ(BP_HEAD) if(!head || head.disfigured || (head.status & ORGAN_DESTROYED) || !real_name || (HUSK in mutations) ) //disfigured. use id-name if possible return "Unknown" return real_name @@ -655,7 +641,7 @@ ///Returns a number between -1 to 2 /mob/living/carbon/human/eyecheck() - var/obj/item/organ/I = internal_organs_by_name["eyes"] + var/obj/item/organ/I = internal_organs_by_name[O_EYES] if(!I || I.status & (ORGAN_CUT_AWAY|ORGAN_DESTROYED)) return 2 @@ -742,7 +728,7 @@ /mob/living/carbon/human/check_has_mouth() // Todo, check stomach organ when implemented. - var/obj/item/organ/external/head/H = get_organ("head") + var/obj/item/organ/external/head/H = get_organ(BP_HEAD) if(!H || !H.can_intake_reagents) return 0 return 1 @@ -908,7 +894,7 @@ /mob/living/carbon/human/revive() - if(should_have_organ("heart")) + if(should_have_organ(O_HEART)) vessel.add_reagent("blood",560-vessel.total_volume) fixblood() @@ -916,7 +902,7 @@ restore_all_organs() // Reapply robotics/amputated status from preferences. if(!client || !key) //Don't boot out anyone already in the mob. - for (var/obj/item/organ/brain/H in world) + for (var/obj/item/organ/internal/brain/H in world) if(H.brainmob) if(H.brainmob.real_name == src.real_name) if(H.brainmob.mind) @@ -935,11 +921,11 @@ ..() /mob/living/carbon/human/proc/is_lung_ruptured() - var/obj/item/organ/lungs/L = internal_organs_by_name["lungs"] + var/obj/item/organ/internal/lungs/L = internal_organs_by_name[O_LUNGS] return L && L.is_bruised() /mob/living/carbon/human/proc/rupture_lung() - var/obj/item/organ/lungs/L = internal_organs_by_name["lungs"] + var/obj/item/organ/internal/lungs/L = internal_organs_by_name[O_LUNGS] if(L && !L.is_bruised()) src.custom_pain("You feel a stabbing pain in your chest!", 1) @@ -1028,7 +1014,7 @@ for(var/obj/item/O in organ.implants) if(!istype(O,/obj/item/weapon/implant) && prob(5)) //Moving with things stuck in you could be bad. // All kinds of embedded objects cause bleeding. - if(!can_feel_pain(organ.limb_name)) + if(!can_feel_pain(organ.organ_tag)) src << "You feel [O] moving inside your [organ.name]." else var/msg = pick( \ @@ -1038,7 +1024,7 @@ src << msg organ.take_damage(rand(1,3), 0, 0) - if(!(organ.status & ORGAN_ROBOT) && !should_have_organ("heart")) //There is no blood in protheses. + if(!(organ.status & ORGAN_ROBOT) && !should_have_organ(O_HEART)) //There is no blood in protheses. organ.status |= ORGAN_BLEEDING src.adjustToxLoss(rand(1,3)) @@ -1140,6 +1126,8 @@ qdel(hud_used) hud_used = new /datum/hud(src) + full_prosthetic = null + if(species) return 1 else @@ -1205,7 +1193,7 @@ if(!target_zone) if(!user) - target_zone = pick("chest","chest","chest","left leg","right leg","left arm", "right arm", "head") + target_zone = pick(BP_TORSO,BP_TORSO,BP_TORSO,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_HEAD) else target_zone = user.zone_sel.selecting @@ -1219,7 +1207,7 @@ fail_msg = "That limb is robotic." else switch(target_zone) - if("head") + if(BP_HEAD) if(head && head.item_flags & THICKMATERIAL) . = 0 else @@ -1227,7 +1215,7 @@ . = 0 if(!. && error_msg && user) if(!fail_msg) - fail_msg = "There is no exposed flesh or thin material [target_zone == "head" ? "on their head" : "on their body"] to inject into." + fail_msg = "There is no exposed flesh or thin material [target_zone == BP_HEAD ? "on their head" : "on their body"] to inject into." user << "[fail_msg]" /mob/living/carbon/human/print_flavor_text(var/shrink = 1) @@ -1285,15 +1273,15 @@ ..() /mob/living/carbon/human/has_brain() - if(internal_organs_by_name["brain"]) - var/obj/item/organ/brain = internal_organs_by_name["brain"] + if(internal_organs_by_name[O_BRAIN]) + var/obj/item/organ/brain = internal_organs_by_name[O_BRAIN] if(brain && istype(brain)) return 1 return 0 /mob/living/carbon/human/has_eyes() - if(internal_organs_by_name["eyes"]) - var/obj/item/organ/eyes = internal_organs_by_name["eyes"] + if(internal_organs_by_name[O_EYES]) + var/obj/item/organ/eyes = internal_organs_by_name[O_EYES] if(eyes && istype(eyes) && !(eyes.status & ORGAN_CUT_AWAY)) return 1 return 0 @@ -1402,10 +1390,10 @@ /mob/living/carbon/human/should_have_organ(var/organ_check) var/obj/item/organ/external/affecting - if(organ_check in list("heart","lungs")) - affecting = organs_by_name["chest"] - else if(organ_check in list("liver","kidneys")) - affecting = organs_by_name["groin"] + if(organ_check in list(O_HEART, O_LUNGS)) + affecting = organs_by_name[BP_TORSO] + else if(organ_check in list(O_LIVER, O_KIDNEYS)) + affecting = organs_by_name[BP_GROIN] if(affecting && (affecting.status & ORGAN_ROBOT)) return 0 diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm index a0af1f2fcf..ae262677c8 100644 --- a/code/modules/mob/living/carbon/human/human_attackhand.dm +++ b/code/modules/mob/living/carbon/human/human_attackhand.dm @@ -180,7 +180,7 @@ */ if(prob(80)) hit_zone = ran_zone(hit_zone) - if(prob(15) && hit_zone != "chest") // Missed! + if(prob(15) && hit_zone != BP_TORSO) // Missed! if(!src.lying) attack_message = "[H] attempted to strike [src], but missed!" else diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index 517bc79a41..1c3f070b96 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -29,7 +29,7 @@ if(status_flags & GODMODE) return 0 //godmode if(should_have_organ("brain")) - var/obj/item/organ/brain/sponge = internal_organs_by_name["brain"] + var/obj/item/organ/internal/brain/sponge = internal_organs_by_name["brain"] if(sponge) sponge.take_damage(amount) brainloss = sponge.damage @@ -43,7 +43,7 @@ if(status_flags & GODMODE) return 0 //godmode if(should_have_organ("brain")) - var/obj/item/organ/brain/sponge = internal_organs_by_name["brain"] + var/obj/item/organ/internal/brain/sponge = internal_organs_by_name["brain"] if(sponge) sponge.damage = min(max(amount, 0),(maxHealth*2)) brainloss = sponge.damage @@ -57,7 +57,7 @@ if(status_flags & GODMODE) return 0 //godmode if(should_have_organ("brain")) - var/obj/item/organ/brain/sponge = internal_organs_by_name["brain"] + var/obj/item/organ/internal/brain/sponge = internal_organs_by_name["brain"] if(sponge) brainloss = min(sponge.damage,maxHealth*2) else @@ -189,19 +189,19 @@ // Defined here solely to take species flags into account without having to recast at mob/living level. /mob/living/carbon/human/getOxyLoss() - if(!should_have_organ("lungs")) + if(!should_have_organ(O_LUNGS)) oxyloss = 0 return ..() /mob/living/carbon/human/adjustOxyLoss(var/amount) - if(!should_have_organ("lungs")) + if(!should_have_organ(O_LUNGS)) oxyloss = 0 else amount = amount*species.oxy_mod ..(amount) /mob/living/carbon/human/setOxyLoss(var/amount) - if(!should_have_organ("lungs")) + if(!should_have_organ(O_LUNGS)) oxyloss = 0 else ..() @@ -321,7 +321,7 @@ In most cases it makes more sense to use apply_damage() instead! And make sure t This function restores the subjects blood to max. */ /mob/living/carbon/human/proc/restore_blood() - if(should_have_organ("heart")) + if(should_have_organ(O_HEART)) var/blood_volume = vessel.get_reagent_amount("blood") vessel.add_reagent("blood",560.0-blood_volume) @@ -345,9 +345,10 @@ This function restores all organs. /mob/living/carbon/human/proc/get_organ(var/zone) - if(!zone) zone = "chest" - if (zone in list( "eyes", "mouth" )) - zone = "head" + if(!zone) + zone = BP_TORSO + else if (zone in list( O_EYES, O_MOUTH )) + zone = BP_HEAD return organs_by_name[zone] /mob/living/carbon/human/apply_damage(var/damage = 0, var/damagetype = BRUTE, var/def_zone = null, var/blocked = 0, var/sharp = 0, var/edge = 0, var/obj/used_weapon = null) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index b516852074..2e69c9bdb6 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -44,11 +44,11 @@ emp_act agony_amount *= siemens_coeff switch (def_zone) - if("head") + if(BP_HEAD) agony_amount *= 1.50 - if("l_hand", "r_hand") + if(BP_L_HAND, BP_R_HAND) var/c_hand - if (def_zone == "l_hand") + if (def_zone == BP_L_HAND) c_hand = l_hand else c_hand = r_hand @@ -233,7 +233,7 @@ emp_act //Apply blood if(bloody) switch(hit_area) - if("head") + if(BP_HEAD) if(wear_mask) wear_mask.add_blood(src) update_inv_wear_mask(0) @@ -243,7 +243,7 @@ emp_act if(glasses && prob(33)) glasses.add_blood(src) update_inv_glasses(0) - if("chest") + if(BP_TORSO) bloody_body(src) if(Iforce > 10 || Iforce >= 5 && prob(33)) @@ -285,7 +285,7 @@ emp_act var/mob/living/L = O.thrower zone = check_zone(L.zone_sel.selecting) else - zone = ran_zone("chest",75) //Hits a random part of the body, geared towards the chest + zone = ran_zone(BP_TORSO,75) //Hits a random part of the body, geared towards the chest //check if we hit var/miss_chance = 15 diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index f116ae17f0..78dbee0552 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -82,8 +82,9 @@ var/list/flavor_texts = list() var/gunshot_residue - var/pulling_punches // Are you trying not to hurt your opponent? - var/full_prosthetic // We are a robutt. + var/pulling_punches // Are you trying not to hurt your opponent? + var/full_prosthetic // We are a robutt. + var/robolimb_count = 0 // Number of robot limbs. mob_bump_flag = HUMAN mob_push_flags = ~HEAVY diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index c8011cb059..ca052edb85 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -26,7 +26,7 @@ tally += wear_suit.slowdown if(istype(buckled, /obj/structure/bed/chair/wheelchair)) - for(var/organ_name in list("l_hand","r_hand","l_arm","r_arm")) + for(var/organ_name in list(BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM)) var/obj/item/organ/external/E = get_organ(organ_name) if(!E || (E.status & ORGAN_DESTROYED)) tally += 4 @@ -38,7 +38,7 @@ if(shoes) tally += shoes.slowdown - for(var/organ_name in list("l_foot","r_foot","l_leg","r_leg")) + for(var/organ_name in list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT)) var/obj/item/organ/external/E = get_organ(organ_name) if(!E || (E.status & ORGAN_DESTROYED)) tally += 4 diff --git a/code/modules/mob/living/carbon/human/human_organs.dm b/code/modules/mob/living/carbon/human/human_organs.dm index cab9b5a1c2..45a0a50364 100644 --- a/code/modules/mob/living/carbon/human/human_organs.dm +++ b/code/modules/mob/living/carbon/human/human_organs.dm @@ -1,5 +1,5 @@ /mob/living/carbon/human/proc/update_eyes() - var/obj/item/organ/eyes/eyes = internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/eyes = internal_organs_by_name[O_EYES] if(eyes) eyes.update_colour() regenerate_icons() @@ -113,7 +113,7 @@ // You should not be able to pick anything up, but stranger things have happened. if(l_hand) - for(var/limb_tag in list("l_hand","l_arm")) + for(var/limb_tag in list(BP_L_HAND, BP_L_ARM)) var/obj/item/organ/external/E = get_organ(limb_tag) if(!E) visible_message("Lacking a functioning left hand, \the [src] drops \the [l_hand].") @@ -121,7 +121,7 @@ break if(r_hand) - for(var/limb_tag in list("r_hand","r_arm")) + for(var/limb_tag in list(BP_R_HAND, BP_R_ARM)) var/obj/item/organ/external/E = get_organ(limb_tag) if(!E) visible_message("Lacking a functioning right hand, \the [src] drops \the [r_hand].") diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index c3d0568b80..2f0160f35e 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -45,44 +45,44 @@ This saves us from having to call add_fingerprint() any time something is put in /mob/living/carbon/human/proc/has_organ_for_slot(slot) switch(slot) if(slot_back) - return has_organ("chest") + return has_organ(BP_TORSO) if(slot_wear_mask) - return has_organ("head") + return has_organ(BP_HEAD) if(slot_handcuffed) - return has_organ("l_hand") && has_organ("r_hand") + return has_organ(BP_L_HAND) && has_organ(BP_R_HAND) if(slot_legcuffed) - return has_organ("l_leg") && has_organ("r_leg") + return has_organ(BP_L_FOOT) && has_organ(BP_R_FOOT) if(slot_l_hand) - return has_organ("l_hand") + return has_organ(BP_L_HAND) if(slot_r_hand) - return has_organ("r_hand") + return has_organ(BP_R_HAND) if(slot_belt) - return has_organ("chest") + return has_organ(BP_TORSO) if(slot_wear_id) // the only relevant check for this is the uniform check return 1 if(slot_l_ear) - return has_organ("head") + return has_organ(BP_HEAD) if(slot_r_ear) - return has_organ("head") + return has_organ(BP_HEAD) if(slot_glasses) - return has_organ("head") + return has_organ(BP_HEAD) if(slot_gloves) - return has_organ("l_hand") || has_organ("r_hand") + return has_organ(BP_L_HAND) || has_organ(BP_R_HAND) if(slot_head) - return has_organ("head") + return has_organ(BP_HEAD) if(slot_shoes) - return has_organ("r_foot") || has_organ("l_foot") + return has_organ(BP_L_FOOT) || has_organ(BP_R_FOOT) if(slot_wear_suit) - return has_organ("chest") + return has_organ(BP_TORSO) if(slot_w_uniform) - return has_organ("chest") + return has_organ(BP_TORSO) if(slot_l_store) - return has_organ("chest") + return has_organ(BP_TORSO) if(slot_r_store) - return has_organ("chest") + return has_organ(BP_TORSO) if(slot_s_store) - return has_organ("chest") + return has_organ(BP_TORSO) if(slot_in_backpack) return 1 if(slot_tie) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 8e77023fe7..971e8c4a6f 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -255,12 +255,7 @@ if (radiation) - // TODO. - if(isSynthetic()) - radiation = 0 - return - - var/obj/item/organ/diona/nutrients/rad_organ = locate() in internal_organs + var/obj/item/organ/internal/diona/nutrients/rad_organ = locate() in internal_organs if(rad_organ && !rad_organ.is_broken()) var/rads = radiation/25 radiation -= rads @@ -280,34 +275,36 @@ if (radiation > 50) damage = 1 radiation -= 1 * RADIATION_SPEED_COEFFICIENT - if(prob(5) && prob(100 * RADIATION_SPEED_COEFFICIENT)) - radiation -= 5 * RADIATION_SPEED_COEFFICIENT - src << "You feel weak." - Weaken(3) - if(!lying) - emote("collapse") - if(prob(5) && prob(100 * RADIATION_SPEED_COEFFICIENT) && species.get_bodytype() == "Human") //apes go bald - if((h_style != "Bald" || f_style != "Shaved" )) - src << "Your hair falls out." - h_style = "Bald" - f_style = "Shaved" - update_hair() + if(!isSynthetic()) + if(prob(5) && prob(100 * RADIATION_SPEED_COEFFICIENT)) + radiation -= 5 * RADIATION_SPEED_COEFFICIENT + src << "You feel weak." + Weaken(3) + if(!lying) + emote("collapse") + if(prob(5) && prob(100 * RADIATION_SPEED_COEFFICIENT) && species.get_bodytype() == "Human") //apes go bald + if((h_style != "Bald" || f_style != "Shaved" )) + src << "Your hair falls out." + h_style = "Bald" + f_style = "Shaved" + update_hair() if (radiation > 75) - radiation -= 1 * RADIATION_SPEED_COEFFICIENT damage = 3 - if(prob(5)) - take_overall_damage(0, 5 * RADIATION_SPEED_COEFFICIENT, used_weapon = "Radiation Burns") - if(prob(1)) - src << "You feel strange!" - adjustCloneLoss(5 * RADIATION_SPEED_COEFFICIENT) - emote("gasp") + radiation -= 1 * RADIATION_SPEED_COEFFICIENT + if(!isSynthetic()) + if(prob(5)) + take_overall_damage(0, 5 * RADIATION_SPEED_COEFFICIENT, used_weapon = "Radiation Burns") + if(prob(1)) + src << "You feel strange!" + adjustCloneLoss(5 * RADIATION_SPEED_COEFFICIENT) + emote("gasp") if(damage) - damage *= species.radiation_mod + damage *= isSynthetic() ? 0.5 : species.radiation_mod adjustToxLoss(damage * RADIATION_SPEED_COEFFICIENT) updatehealth() - if(organs.len) + if(!isSynthetic() && organs.len) var/obj/item/organ/external/O = pick(organs) if(istype(O)) O.add_autopsy_data("Radiation Poisoning", damage) @@ -371,8 +368,8 @@ var/safe_pressure_min = 16 // Minimum safe partial pressure of breathable gas in kPa // Lung damage increases the minimum safe pressure. - if(should_have_organ("lungs")) - var/obj/item/organ/lungs/L = internal_organs_by_name["lungs"] + if(should_have_organ(O_LUNGS)) + var/obj/item/organ/internal/lungs/L = internal_organs_by_name[O_LUNGS] if(isnull(L)) safe_pressure_min = INFINITY //No lungs, how are you breathing? else if(L.is_broken()) @@ -525,24 +522,24 @@ if(breath.temperature >= species.heat_level_1) if(breath.temperature < species.heat_level_2) - apply_damage(HEAT_GAS_DAMAGE_LEVEL_1, BURN, "head", used_weapon = "Excessive Heat") + apply_damage(HEAT_GAS_DAMAGE_LEVEL_1, BURN, BP_HEAD, used_weapon = "Excessive Heat") fire_alert = max(fire_alert, 2) else if(breath.temperature < species.heat_level_3) - apply_damage(HEAT_GAS_DAMAGE_LEVEL_2, BURN, "head", used_weapon = "Excessive Heat") + apply_damage(HEAT_GAS_DAMAGE_LEVEL_2, BURN, BP_HEAD, used_weapon = "Excessive Heat") fire_alert = max(fire_alert, 2) else - apply_damage(HEAT_GAS_DAMAGE_LEVEL_3, BURN, "head", used_weapon = "Excessive Heat") + apply_damage(HEAT_GAS_DAMAGE_LEVEL_3, BURN, BP_HEAD, used_weapon = "Excessive Heat") fire_alert = max(fire_alert, 2) else if(breath.temperature <= species.cold_level_1) if(breath.temperature > species.cold_level_2) - apply_damage(COLD_GAS_DAMAGE_LEVEL_1, BURN, "head", used_weapon = "Excessive Cold") + apply_damage(COLD_GAS_DAMAGE_LEVEL_1, BURN, BP_HEAD, used_weapon = "Excessive Cold") fire_alert = max(fire_alert, 1) else if(breath.temperature > species.cold_level_3) - apply_damage(COLD_GAS_DAMAGE_LEVEL_2, BURN, "head", used_weapon = "Excessive Cold") + apply_damage(COLD_GAS_DAMAGE_LEVEL_2, BURN, BP_HEAD, used_weapon = "Excessive Cold") fire_alert = max(fire_alert, 1) else - apply_damage(COLD_GAS_DAMAGE_LEVEL_3, BURN, "head", used_weapon = "Excessive Cold") + apply_damage(COLD_GAS_DAMAGE_LEVEL_3, BURN, BP_HEAD, used_weapon = "Excessive Cold") fire_alert = max(fire_alert, 1) @@ -691,13 +688,19 @@ */ /mob/living/carbon/human/proc/stabilize_body_temperature() - if (species.passive_temp_gain) // We produce heat naturally. + // We produce heat naturally. + if (species.passive_temp_gain) bodytemperature += species.passive_temp_gain + // Robolimbs cause overheating too. + if(robolimb_count) + bodytemperature += round(robolimb_count/2) + var/body_temperature_difference = species.body_temperature - bodytemperature if (abs(body_temperature_difference) < 0.5) return //fuck this precision + if (on_fire) return //too busy for pesky convection @@ -862,7 +865,7 @@ if(status_flags & GODMODE) return 0 //godmode - var/obj/item/organ/diona/node/light_organ = locate() in internal_organs + var/obj/item/organ/internal/diona/node/light_organ = locate() in internal_organs if(!isSynthetic()) if(light_organ && !light_organ.is_broken()) @@ -1548,7 +1551,7 @@ /mob/living/carbon/human/proc/handle_pulse() if(life_tick % 5) return pulse //update pulse every 5 life ticks (~1 tick/sec, depending on server load) - if(!internal_organs_by_name["heart"]) + if(!internal_organs_by_name[O_HEART]) return PULSE_NONE //No blood, no pulse. if(stat == DEAD) @@ -1582,7 +1585,7 @@ if(pulse == PULSE_NONE) return - var/obj/item/organ/heart/H = internal_organs_by_name["heart"] + var/obj/item/organ/internal/heart/H = internal_organs_by_name[O_HEART] if(!H || (H.status & ORGAN_ROBOT)) return diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm index c1c335a22d..94da415101 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -45,28 +45,28 @@ ) has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/chest), - "groin" = list("path" = /obj/item/organ/external/groin), - "head" = list("path" = /obj/item/organ/external/head/vox), - "l_arm" = list("path" = /obj/item/organ/external/arm), - "r_arm" = list("path" = /obj/item/organ/external/arm/right), - "l_leg" = list("path" = /obj/item/organ/external/leg), - "r_leg" = list("path" = /obj/item/organ/external/leg/right), - "l_hand" = list("path" = /obj/item/organ/external/hand), - "r_hand" = list("path" = /obj/item/organ/external/hand/right), - "l_foot" = list("path" = /obj/item/organ/external/foot), - "r_foot" = list("path" = /obj/item/organ/external/foot/right) + BP_TORSO = list("path" = /obj/item/organ/external/chest), + BP_GROIN = list("path" = /obj/item/organ/external/groin), + BP_HEAD = list("path" = /obj/item/organ/external/head/vox), + BP_L_ARM = list("path" = /obj/item/organ/external/arm), + BP_R_ARM = list("path" = /obj/item/organ/external/arm/right), + BP_L_LEG = list("path" = /obj/item/organ/external/leg), + BP_R_LEG = list("path" = /obj/item/organ/external/leg/right), + BP_L_HAND = list("path" = /obj/item/organ/external/hand), + BP_R_HAND = list("path" = /obj/item/organ/external/hand/right), + BP_L_FOOT = list("path" = /obj/item/organ/external/foot), + BP_R_FOOT = list("path" = /obj/item/organ/external/foot/right) ) has_organ = list( - "heart" = /obj/item/organ/heart, - "lungs" = /obj/item/organ/lungs, - "liver" = /obj/item/organ/liver, - "kidneys" = /obj/item/organ/kidneys, - "brain" = /obj/item/organ/brain, - "eyes" = /obj/item/organ/eyes, - "stack" = /obj/item/organ/stack/vox + O_HEART = /obj/item/organ/internal/heart, + O_LUNGS = /obj/item/organ/internal/lungs, + O_LIVER = /obj/item/organ/internal/liver, + O_KIDNEYS = /obj/item/organ/internal/kidneys, + O_BRAIN = /obj/item/organ/internal/brain, + O_EYES = /obj/item/organ/internal/eyes, + "stack" = /obj/item/organ/internal/stack/vox ) /datum/species/vox/get_random_name(var/gender) @@ -108,12 +108,12 @@ // Pariahs have no stack. has_organ = list( - "heart" = /obj/item/organ/heart, - "lungs" = /obj/item/organ/lungs, - "liver" = /obj/item/organ/liver, - "kidneys" = /obj/item/organ/kidneys, - "brain" = /obj/item/organ/pariah_brain, - "eyes" = /obj/item/organ/eyes + O_HEART = /obj/item/organ/internal/heart, + O_LUNGS = /obj/item/organ/internal/lungs, + O_LIVER = /obj/item/organ/internal/liver, + O_KIDNEYS = /obj/item/organ/internal/kidneys, + O_BRAIN = /obj/item/organ/internal/pariah_brain, + O_EYES = /obj/item/organ/internal/eyes ) flags = IS_RESTRICTED | NO_SCAN | HAS_EYE_COLOR diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index c0722fbca9..e19795b641 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -58,8 +58,6 @@ // Death vars. var/meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/human - var/gibber_type = /obj/effect/gibspawner/human - var/single_gib_type = /obj/effect/decal/cleanable/blood/gibs var/remains_type = /obj/effect/decal/remains/xeno var/gibbed_anim = "gibbed-h" var/dusted_anim = "dust-h" @@ -120,28 +118,28 @@ var/rarity_value = 1 // Relative rarity/collector value for this species. // Determines the organs that the species spawns with and var/list/has_organ = list( // which required-organ checks are conducted. - "heart" = /obj/item/organ/heart, - "lungs" = /obj/item/organ/lungs, - "liver" = /obj/item/organ/liver, - "kidneys" = /obj/item/organ/kidneys, - "brain" = /obj/item/organ/brain, - "appendix" = /obj/item/organ/appendix, - "eyes" = /obj/item/organ/eyes + O_HEART = /obj/item/organ/internal/heart, + O_LUNGS = /obj/item/organ/internal/lungs, + O_LIVER = /obj/item/organ/internal/liver, + O_KIDNEYS = /obj/item/organ/internal/kidneys, + O_BRAIN = /obj/item/organ/internal/brain, + O_APPENDIX = /obj/item/organ/internal/appendix, + O_EYES = /obj/item/organ/internal/eyes ) var/vision_organ // If set, this organ is required for vision. Defaults to "eyes" if the species has them. var/list/has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/chest), - "groin" = list("path" = /obj/item/organ/external/groin), - "head" = list("path" = /obj/item/organ/external/head), - "l_arm" = list("path" = /obj/item/organ/external/arm), - "r_arm" = list("path" = /obj/item/organ/external/arm/right), - "l_leg" = list("path" = /obj/item/organ/external/leg), - "r_leg" = list("path" = /obj/item/organ/external/leg/right), - "l_hand" = list("path" = /obj/item/organ/external/hand), - "r_hand" = list("path" = /obj/item/organ/external/hand/right), - "l_foot" = list("path" = /obj/item/organ/external/foot), - "r_foot" = list("path" = /obj/item/organ/external/foot/right) + BP_TORSO = list("path" = /obj/item/organ/external/chest), + BP_GROIN = list("path" = /obj/item/organ/external/groin), + BP_HEAD = list("path" = /obj/item/organ/external/head), + BP_L_ARM = list("path" = /obj/item/organ/external/arm), + BP_R_ARM = list("path" = /obj/item/organ/external/arm/right), + BP_L_LEG = list("path" = /obj/item/organ/external/leg), + BP_R_LEG = list("path" = /obj/item/organ/external/leg/right), + BP_L_HAND = list("path" = /obj/item/organ/external/hand), + BP_R_HAND = list("path" = /obj/item/organ/external/hand/right), + BP_L_FOOT = list("path" = /obj/item/organ/external/foot), + BP_R_FOOT = list("path" = /obj/item/organ/external/foot/right) ) // Bump vars @@ -158,8 +156,8 @@ hud = new() //If the species has eyes, they are the default vision organ - if(!vision_organ && has_organ["eyes"]) - vision_organ = "eyes" + if(!vision_organ && has_organ[O_EYES]) + vision_organ = O_EYES unarmed_attacks = list() for(var/u_type in unarmed_types) @@ -186,13 +184,13 @@ return ((H && H.isSynthetic()) ? "flashing a 'system offline' glyph on their monitor" : show_ssd) /datum/species/proc/get_blood_colour(var/mob/living/carbon/human/H) - return ((H && H.isSynthetic()) ? "#1F181F" : blood_color) + return ((H && H.isSynthetic()) ? SYNTH_BLOOD_COLOUR : blood_color) /datum/species/proc/get_virus_immune(var/mob/living/carbon/human/H) return ((H && H.isSynthetic()) ? 1 : virus_immune) /datum/species/proc/get_flesh_colour(var/mob/living/carbon/human/H) - return ((H && H.isSynthetic()) ? "#575757" : flesh_color) + return ((H && H.isSynthetic()) ? SYNTH_FLESH_COLOUR : flesh_color) /datum/species/proc/get_environment_discomfort(var/mob/living/carbon/human/H, var/msg_type) @@ -269,7 +267,10 @@ for(var/name in H.organs_by_name) H.organs |= H.organs_by_name[name] - for(var/obj/item/organ/external/O in H.organs) + for(var/name in H.internal_organs_by_name) + H.internal_organs |= H.internal_organs_by_name[name] + + for(var/obj/item/organ/O in (H.organs|H.internal_organs)) O.owner = H /datum/species/proc/hug(var/mob/living/carbon/human/H,var/mob/living/target) diff --git a/code/modules/mob/living/carbon/human/species/species_attack.dm b/code/modules/mob/living/carbon/human/species/species_attack.dm index 365109d7cf..cd4ca21e00 100644 --- a/code/modules/mob/living/carbon/human/species/species_attack.dm +++ b/code/modules/mob/living/carbon/human/species/species_attack.dm @@ -33,7 +33,7 @@ return 0 switch(zone) - if("head", "mouth", "eyes") + if(BP_HEAD, O_MOUTH, O_EYES) // ----- HEAD ----- // switch(attack_damage) if(1 to 2) diff --git a/code/modules/mob/living/carbon/human/species/station/golem.dm b/code/modules/mob/living/carbon/human/species/station/golem.dm index 7faf868ac2..23970c61b2 100644 --- a/code/modules/mob/living/carbon/human/species/station/golem.dm +++ b/code/modules/mob/living/carbon/human/species/station/golem.dm @@ -18,7 +18,7 @@ flesh_color = "#137E8F" has_organ = list( - "brain" = /obj/item/organ/brain/golem + "brain" = /obj/item/organ/internal/brain/golem ) death_message = "becomes completely motionless..." diff --git a/code/modules/mob/living/carbon/human/species/station/human_subspecies.dm b/code/modules/mob/living/carbon/human/species/station/human_subspecies.dm index b33d4e8ef7..89b1fc1bd7 100644 --- a/code/modules/mob/living/carbon/human/species/station/human_subspecies.dm +++ b/code/modules/mob/living/carbon/human/species/station/human_subspecies.dm @@ -38,12 +38,12 @@ toxins_mod = 1.1 has_organ = list( - "heart" = /obj/item/organ/heart, - "lungs" = /obj/item/organ/lungs, - "liver" = /obj/item/organ/liver, - "kidneys" = /obj/item/organ/kidneys, - "brain" = /obj/item/organ/brain, - "eyes" = /obj/item/organ/eyes + O_HEART = /obj/item/organ/heart, + O_LUNGS = /obj/item/organ/lungs, + O_LIVER = /obj/item/organ/liver, + O_KIDNEYS = /obj/item/organ/kidneys, + O_BRAIN = /obj/item/organ/brain, + O_EYES = /obj/item/organ/eyes ) /* diff --git a/code/modules/mob/living/carbon/human/species/station/monkey.dm b/code/modules/mob/living/carbon/human/species/station/monkey.dm index 77a5f942f0..85890f4de6 100644 --- a/code/modules/mob/living/carbon/human/species/station/monkey.dm +++ b/code/modules/mob/living/carbon/human/species/station/monkey.dm @@ -39,17 +39,17 @@ pass_flags = PASSTABLE has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/chest), - "groin" = list("path" = /obj/item/organ/external/groin), - "head" = list("path" = /obj/item/organ/external/head/no_eyes), - "l_arm" = list("path" = /obj/item/organ/external/arm), - "r_arm" = list("path" = /obj/item/organ/external/arm/right), - "l_leg" = list("path" = /obj/item/organ/external/leg), - "r_leg" = list("path" = /obj/item/organ/external/leg/right), - "l_hand" = list("path" = /obj/item/organ/external/hand), - "r_hand" = list("path" = /obj/item/organ/external/hand/right), - "l_foot" = list("path" = /obj/item/organ/external/foot), - "r_foot" = list("path" = /obj/item/organ/external/foot/right) + BP_TORSO = list("path" = /obj/item/organ/external/chest), + BP_GROIN = list("path" = /obj/item/organ/external/groin), + BP_HEAD = list("path" = /obj/item/organ/external/head/no_eyes), + BP_L_ARM = list("path" = /obj/item/organ/external/arm), + BP_R_ARM = list("path" = /obj/item/organ/external/arm/right), + BP_L_LEG = list("path" = /obj/item/organ/external/leg), + BP_R_LEG = list("path" = /obj/item/organ/external/leg/right), + BP_L_HAND = list("path" = /obj/item/organ/external/hand), + BP_R_HAND = list("path" = /obj/item/organ/external/hand/right), + BP_L_FOOT = list("path" = /obj/item/organ/external/foot), + BP_R_FOOT = list("path" = /obj/item/organ/external/foot/right) ) /datum/species/monkey/handle_npc(var/mob/living/carbon/human/H) diff --git a/code/modules/mob/living/carbon/human/species/station/slime.dm b/code/modules/mob/living/carbon/human/species/station/slime.dm index 96a926b14e..f2277f9921 100644 --- a/code/modules/mob/living/carbon/human/species/station/slime.dm +++ b/code/modules/mob/living/carbon/human/species/station/slime.dm @@ -20,7 +20,7 @@ death_message = "rapidly loses cohesion, splattering across the ground..." has_organ = list( - "brain" = /obj/item/organ/brain/slime + "brain" = /obj/item/organ/internal/brain/slime ) breath_type = null @@ -31,17 +31,17 @@ push_flags = MONKEY|SLIME|SIMPLE_ANIMAL has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/chest/unbreakable), - "groin" = list("path" = /obj/item/organ/external/groin/unbreakable), - "head" = list("path" = /obj/item/organ/external/head/unbreakable), - "l_arm" = list("path" = /obj/item/organ/external/arm/unbreakable), - "r_arm" = list("path" = /obj/item/organ/external/arm/right/unbreakable), - "l_leg" = list("path" = /obj/item/organ/external/leg/unbreakable), - "r_leg" = list("path" = /obj/item/organ/external/leg/right/unbreakable), - "l_hand" = list("path" = /obj/item/organ/external/hand/unbreakable), - "r_hand" = list("path" = /obj/item/organ/external/hand/right/unbreakable), - "l_foot" = list("path" = /obj/item/organ/external/foot/unbreakable), - "r_foot" = list("path" = /obj/item/organ/external/foot/right/unbreakable) + BP_TORSO = list("path" = /obj/item/organ/external/chest/unbreakable), + BP_GROIN = list("path" = /obj/item/organ/external/groin/unbreakable), + BP_HEAD = list("path" = /obj/item/organ/external/head/unbreakable), + BP_L_ARM = list("path" = /obj/item/organ/external/arm/unbreakable), + BP_R_ARM = list("path" = /obj/item/organ/external/arm/right/unbreakable), + BP_L_LEG = list("path" = /obj/item/organ/external/leg/unbreakable), + BP_R_LEG = list("path" = /obj/item/organ/external/leg/right/unbreakable), + BP_L_HAND = list("path" = /obj/item/organ/external/hand/unbreakable), + BP_R_HAND = list("path" = /obj/item/organ/external/hand/right/unbreakable), + BP_L_FOOT = list("path" = /obj/item/organ/external/foot/unbreakable), + BP_R_FOOT = list("path" = /obj/item/organ/external/foot/right/unbreakable) ) /datum/species/slime/handle_death(var/mob/living/carbon/human/H) diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index 5fecc7c79b..a0365f7cd0 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -152,17 +152,17 @@ reagent_tag = IS_SKRELL has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/chest), - "groin" = list("path" = /obj/item/organ/external/groin), - "head" = list("path" = /obj/item/organ/external/head/skrell), - "l_arm" = list("path" = /obj/item/organ/external/arm), - "r_arm" = list("path" = /obj/item/organ/external/arm/right), - "l_leg" = list("path" = /obj/item/organ/external/leg), - "r_leg" = list("path" = /obj/item/organ/external/leg/right), - "l_hand" = list("path" = /obj/item/organ/external/hand), - "r_hand" = list("path" = /obj/item/organ/external/hand/right), - "l_foot" = list("path" = /obj/item/organ/external/foot), - "r_foot" = list("path" = /obj/item/organ/external/foot/right) + BP_TORSO = list("path" = /obj/item/organ/external/chest), + BP_GROIN = list("path" = /obj/item/organ/external/groin), + BP_HEAD = list("path" = /obj/item/organ/external/head/skrell), + BP_L_ARM = list("path" = /obj/item/organ/external/arm), + BP_R_ARM = list("path" = /obj/item/organ/external/arm/right), + BP_L_LEG = list("path" = /obj/item/organ/external/leg), + BP_R_LEG = list("path" = /obj/item/organ/external/leg/right), + BP_L_HAND = list("path" = /obj/item/organ/external/hand), + BP_R_HAND = list("path" = /obj/item/organ/external/hand/right), + BP_L_FOOT = list("path" = /obj/item/organ/external/foot), + BP_R_FOOT = list("path" = /obj/item/organ/external/foot/right) ) /datum/species/diona @@ -190,26 +190,26 @@ water and other radiation." has_organ = list( - "nutrient channel" = /obj/item/organ/diona/nutrients, - "neural strata" = /obj/item/organ/diona/strata, - "response node" = /obj/item/organ/diona/node, - "gas bladder" = /obj/item/organ/diona/bladder, - "polyp segment" = /obj/item/organ/diona/polyp, - "anchoring ligament" = /obj/item/organ/diona/ligament + O_NUTRIENT = /obj/item/organ/internal/diona/nutrients, + O_STRATA = /obj/item/organ/internal/diona/strata, + O_RESPONSE = /obj/item/organ/internal/diona/node, + O_GBLADDER = /obj/item/organ/internal/diona/bladder, + O_POLYP = /obj/item/organ/internal/diona/polyp, + O_ANCHOR = /obj/item/organ/internal/diona/ligament ) has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/diona/chest), - "groin" = list("path" = /obj/item/organ/external/diona/groin), - "head" = list("path" = /obj/item/organ/external/head/no_eyes/diona), - "l_arm" = list("path" = /obj/item/organ/external/diona/arm), - "r_arm" = list("path" = /obj/item/organ/external/diona/arm/right), - "l_leg" = list("path" = /obj/item/organ/external/diona/leg), - "r_leg" = list("path" = /obj/item/organ/external/diona/leg/right), - "l_hand" = list("path" = /obj/item/organ/external/diona/hand), - "r_hand" = list("path" = /obj/item/organ/external/diona/hand/right), - "l_foot" = list("path" = /obj/item/organ/external/diona/foot), - "r_foot" = list("path" = /obj/item/organ/external/diona/foot/right) + BP_TORSO = list("path" = /obj/item/organ/external/diona/chest), + BP_GROIN = list("path" = /obj/item/organ/external/diona/groin), + BP_HEAD = list("path" = /obj/item/organ/external/head/no_eyes/diona), + BP_L_ARM = list("path" = /obj/item/organ/external/diona/arm), + BP_R_ARM = list("path" = /obj/item/organ/external/diona/arm/right), + BP_L_LEG = list("path" = /obj/item/organ/external/diona/leg), + BP_R_LEG = list("path" = /obj/item/organ/external/diona/leg/right), + BP_L_HAND = list("path" = /obj/item/organ/external/diona/hand), + BP_R_HAND = list("path" = /obj/item/organ/external/diona/hand/right), + BP_L_FOOT = list("path" = /obj/item/organ/external/diona/foot), + BP_R_FOOT = list("path" = /obj/item/organ/external/diona/foot/right) ) inherent_verbs = list( @@ -260,9 +260,13 @@ if(H.mind) H.mind.transfer_to(S) + if(H.isSynthetic()) + H.visible_message("\The [H] collapses into parts, revealing a solitary diona nymph at the core.") + return + for(var/mob/living/carbon/alien/diona/D in H.contents) if(D.client) - D.loc = H.loc + D.forceMove(get_turf(H)) else qdel(D) diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm index c60d8bca1d..de601b2592 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_embryo.dm @@ -108,7 +108,7 @@ Des: Removes all infection images from aliens and places an infection image on a for(var/mob/living/carbon/alien in player_list) - if(!locate(/obj/item/organ/xenos/hivenode) in alien.internal_organs) + if(!locate(/obj/item/organ/internal/xenos/hivenode) in alien.internal_organs) continue if(alien.client) @@ -130,7 +130,7 @@ Des: Checks if the passed mob (C) is infected with the alien egg, then gives eac for(var/mob/living/carbon/alien in player_list) - if(!locate(/obj/item/organ/xenos/hivenode) in alien.internal_organs) + if(!locate(/obj/item/organ/internal/xenos/hivenode) in alien.internal_organs) continue if(alien.client) @@ -149,7 +149,7 @@ Des: Removes the alien infection image from all aliens in the world located in p for(var/mob/living/carbon/alien in player_list) - if(!locate(/obj/item/organ/xenos/hivenode) in alien.internal_organs) + if(!locate(/obj/item/organ/internal/xenos/hivenode) in alien.internal_organs) continue if(alien.client) diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_facehugger.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_facehugger.dm index 335b566092..af8b93e620 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_facehugger.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_facehugger.dm @@ -110,7 +110,7 @@ var/const/MAX_ACTIVE_TIME = 400 return var/mob/living/carbon/C = M - if(istype(C) && locate(/obj/item/organ/xenos/hivenode) in C.internal_organs) + if(istype(C) && locate(/obj/item/organ/internal/xenos/hivenode) in C.internal_organs) return @@ -221,7 +221,7 @@ var/const/MAX_ACTIVE_TIME = 400 return 0 var/mob/living/carbon/C = M - if(istype(C) && locate(/obj/item/organ/xenos/hivenode) in C.internal_organs) + if(istype(C) && locate(/obj/item/organ/internal/xenos/hivenode) in C.internal_organs) return 0 if(ishuman(C)) diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm index a73e363904..c046c0d857 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_powers.dm @@ -11,7 +11,7 @@ /mob/living/carbon/human/proc/gain_plasma(var/amount) - var/obj/item/organ/xenos/plasmavessel/I = internal_organs_by_name["plasma vessel"] + var/obj/item/organ/internal/xenos/plasmavessel/I = internal_organs_by_name[O_PLASMA] if(!istype(I)) return if(amount) @@ -20,13 +20,13 @@ /mob/living/carbon/human/proc/check_alien_ability(var/cost,var/needs_foundation,var/needs_organ) - var/obj/item/organ/xenos/plasmavessel/P = internal_organs_by_name["plasma vessel"] + var/obj/item/organ/internal/xenos/plasmavessel/P = internal_organs_by_name[O_PLASMA] if(!istype(P)) src << "Your plasma vessel has been removed!" return if(needs_organ) - var/obj/item/organ/I = internal_organs_by_name[needs_organ] + var/obj/item/organ/internal/I = internal_organs_by_name[needs_organ] if(!I) src << "Your [needs_organ] has been removed!" return @@ -62,7 +62,7 @@ src << "You need to be closer." return - var/obj/item/organ/xenos/plasmavessel/I = M.internal_organs_by_name["plasma vessel"] + var/obj/item/organ/internal/xenos/plasmavessel/I = M.internal_organs_by_name[O_PLASMA] if(!istype(I)) src << "Their plasma vessel is missing." return @@ -70,7 +70,7 @@ var/amount = input("Amount:", "Transfer Plasma to [M]") as num if (amount) amount = abs(round(amount)) - if(check_alien_ability(amount,0,"plasma vessel")) + if(check_alien_ability(amount,0,O_PLASMA)) M.gain_plasma(amount) M << "[src] has transfered [amount] plasma to you." src << "You have transferred [amount] plasma to [M]." @@ -92,7 +92,7 @@ src << "There's already an egg here." return - if(check_alien_ability(75,1,"egg sac")) + if(check_alien_ability(75,1,O_EGG)) visible_message("[src] has laid an egg!") new /obj/effect/alien/egg(loc) @@ -119,7 +119,7 @@ set desc = "Plants some alien weeds" set category = "Abilities" - if(check_alien_ability(50,1,"resin spinner")) + if(check_alien_ability(50,1,O_RESIN)) visible_message("[src] has planted some alien weeds!") new /obj/effect/alien/weeds/node(loc) return @@ -153,7 +153,7 @@ src << "You cannot dissolve this object." return - if(check_alien_ability(200,0,"acid gland")) + if(check_alien_ability(200,0,O_ACID)) new /obj/effect/alien/acid(get_turf(O), O) visible_message("[src] vomits globs of vile stuff all over [O]. It begins to sizzle and melt under the bubbling mess of acid!") @@ -164,7 +164,7 @@ set desc = "Spits neurotoxin at someone, paralyzing them for a short time if they are not wearing protective gear." set category = "Abilities" - if(!check_alien_ability(50,0,"acid gland")) + if(!check_alien_ability(50,0,O_ACID)) return if(stat || paralysis || stunned || weakened || lying || restrained() || buckled) @@ -206,7 +206,7 @@ if(!choice) return - if(!check_alien_ability(75,1,"resin spinner")) + if(!check_alien_ability(75,1,O_RESIN)) return visible_message("[src] vomits up a thick purple substance and begins to shape it!", "You shape a [choice].") diff --git a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm index 5f6ab38fad..4425d23b7b 100644 --- a/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm +++ b/code/modules/mob/living/carbon/human/species/xenomorphs/alien_species.dm @@ -44,11 +44,11 @@ vision_flags = SEE_SELF|SEE_MOBS has_organ = list( - "heart" = /obj/item/organ/heart, - "brain" = /obj/item/organ/brain/xeno, - "plasma vessel" = /obj/item/organ/xenos/plasmavessel, - "hive node" = /obj/item/organ/xenos/hivenode, - "nutrient vessel" = /obj/item/organ/diona/nutrients + O_HEART = /obj/item/organ/internal/heart, + O_BRAIN = /obj/item/organ/internal/brain/xeno, + O_PLASMA = /obj/item/organ/internal/xenos/plasmavessel, + O_HIVE = /obj/item/organ/internal/xenos/hivenode, + O_NUTRIENT = /obj/item/organ/internal/diona/nutrients ) bump_flag = ALIEN @@ -61,17 +61,17 @@ var/weeds_plasma_rate = 5 // Plasma regen on weeds. has_limbs = list( - "chest" = list("path" = /obj/item/organ/external/chest), - "groin" = list("path" = /obj/item/organ/external/groin), - "head" = list("path" = /obj/item/organ/external/head/no_eyes), - "l_arm" = list("path" = /obj/item/organ/external/arm), - "r_arm" = list("path" = /obj/item/organ/external/arm/right), - "l_leg" = list("path" = /obj/item/organ/external/leg), - "r_leg" = list("path" = /obj/item/organ/external/leg/right), - "l_hand" = list("path" = /obj/item/organ/external/hand), - "r_hand" = list("path" = /obj/item/organ/external/hand/right), - "l_foot" = list("path" = /obj/item/organ/external/foot), - "r_foot" = list("path" = /obj/item/organ/external/foot/right) + BP_TORSO = list("path" = /obj/item/organ/external/chest), + BP_GROIN = list("path" = /obj/item/organ/external/groin), + BP_HEAD = list("path" = /obj/item/organ/external/head/no_eyes), + BP_L_ARM = list("path" = /obj/item/organ/external/arm), + BP_R_ARM = list("path" = /obj/item/organ/external/arm/right), + BP_L_LEG = list("path" = /obj/item/organ/external/leg), + BP_R_LEG = list("path" = /obj/item/organ/external/leg/right), + BP_L_HAND = list("path" = /obj/item/organ/external/hand), + BP_R_HAND = list("path" = /obj/item/organ/external/hand/right), + BP_L_FOOT = list("path" = /obj/item/organ/external/foot), + BP_R_FOOT = list("path" = /obj/item/organ/external/foot/right) ) /datum/species/xenos/get_bodytype() @@ -112,7 +112,7 @@ if(environment.gas["phoron"] > 0 || locate(/obj/effect/alien/weeds) in T) if(!regenerate(H)) - var/obj/item/organ/xenos/plasmavessel/P = H.internal_organs_by_name["plasma vessel"] + var/obj/item/organ/internal/xenos/plasmavessel/P = H.internal_organs_by_name[O_PLASMA] P.stored_plasma += weeds_plasma_rate P.stored_plasma = min(max(P.stored_plasma,0),P.max_plasma) ..() @@ -172,13 +172,13 @@ deform = 'icons/mob/human_races/xenos/r_xenos_drone.dmi' has_organ = list( - "heart" = /obj/item/organ/heart, - "brain" = /obj/item/organ/brain/xeno, - "plasma vessel" = /obj/item/organ/xenos/plasmavessel/queen, - "acid gland" = /obj/item/organ/xenos/acidgland, - "hive node" = /obj/item/organ/xenos/hivenode, - "resin spinner" = /obj/item/organ/xenos/resinspinner, - "nutrient vessel" = /obj/item/organ/diona/nutrients + O_HEART = /obj/item/organ/internal/heart, + O_BRAIN = /obj/item/organ/internal/brain/xeno, + O_PLASMA = /obj/item/organ/internal/xenos/plasmavessel/queen, + O_ACID = /obj/item/organ/internal/xenos/acidgland, + O_HIVE = /obj/item/organ/internal/xenos/hivenode, + O_RESIN = /obj/item/organ/internal/xenos/resinspinner, + O_NUTRIENT = /obj/item/organ/internal/diona/nutrients ) inherent_verbs = list( @@ -211,11 +211,11 @@ deform = 'icons/mob/human_races/xenos/r_xenos_hunter.dmi' has_organ = list( - "heart" = /obj/item/organ/heart, - "brain" = /obj/item/organ/brain/xeno, - "plasma vessel" = /obj/item/organ/xenos/plasmavessel/hunter, - "hive node" = /obj/item/organ/xenos/hivenode, - "nutrient vessel" = /obj/item/organ/diona/nutrients + O_HEART = /obj/item/organ/internal/heart, + O_BRAIN = /obj/item/organ/internal/brain/xeno, + O_PLASMA = /obj/item/organ/internal/xenos/plasmavessel/hunter, + O_HIVE = /obj/item/organ/internal/xenos/hivenode, + O_NUTRIENT = /obj/item/organ/internal/diona/nutrients ) inherent_verbs = list( @@ -239,12 +239,12 @@ deform = 'icons/mob/human_races/xenos/r_xenos_sentinel.dmi' has_organ = list( - "heart" = /obj/item/organ/heart, - "brain" = /obj/item/organ/brain/xeno, - "plasma vessel" = /obj/item/organ/xenos/plasmavessel/sentinel, - "acid gland" = /obj/item/organ/xenos/acidgland, - "hive node" = /obj/item/organ/xenos/hivenode, - "nutrient vessel" = /obj/item/organ/diona/nutrients + O_HEART = /obj/item/organ/internal/heart, + O_BRAIN = /obj/item/organ/internal/brain/xeno, + O_PLASMA = /obj/item/organ/internal/xenos/plasmavessel/sentinel, + O_ACID = /obj/item/organ/internal/xenos/acidgland, + O_HIVE = /obj/item/organ/internal/xenos/hivenode, + O_NUTRIENT = /obj/item/organ/internal/diona/nutrients ) inherent_verbs = list( @@ -271,14 +271,14 @@ deform = 'icons/mob/human_races/xenos/r_xenos_queen.dmi' has_organ = list( - "heart" = /obj/item/organ/heart, - "brain" = /obj/item/organ/brain/xeno, - "egg sac" = /obj/item/organ/xenos/eggsac, - "plasma vessel" = /obj/item/organ/xenos/plasmavessel/queen, - "acid gland" = /obj/item/organ/xenos/acidgland, - "hive node" = /obj/item/organ/xenos/hivenode, - "resin spinner" = /obj/item/organ/xenos/resinspinner, - "nutrient vessel" = /obj/item/organ/diona/nutrients + O_HEART = /obj/item/organ/internal/heart, + O_BRAIN = /obj/item/organ/internal/brain/xeno, + O_EGG = /obj/item/organ/internal/xenos/eggsac, + O_PLASMA = /obj/item/organ/internal/xenos/plasmavessel/queen, + O_ACID = /obj/item/organ/internal/xenos/acidgland, + O_HIVE = /obj/item/organ/internal/xenos/hivenode, + O_RESIN = /obj/item/organ/internal/xenos/resinspinner, + O_NUTRIENT = /obj/item/organ/internal/diona/nutrients ) inherent_verbs = list( diff --git a/code/modules/mob/living/carbon/human/stripping.dm b/code/modules/mob/living/carbon/human/stripping.dm index a6b566b0c9..3ebef9e127 100644 --- a/code/modules/mob/living/carbon/human/stripping.dm +++ b/code/modules/mob/living/carbon/human/stripping.dm @@ -121,7 +121,7 @@ if(can_reach_splints) var/removed_splint - for(var/organ in list("l_leg","r_leg","l_arm","r_arm")) + for(var/organ in list(BP_L_LEG, BP_R_LEG, BP_L_ARM, BP_R_ARM)) var/obj/item/organ/external/o = get_organ(organ) if (o && o.status & ORGAN_SPLINTED) var/obj/item/W = new /obj/item/stack/medical/splint(get_turf(src), 1) diff --git a/code/modules/mob/living/carbon/human/unarmed_attack.dm b/code/modules/mob/living/carbon/human/unarmed_attack.dm index f6ecb54ce5..b5a78b642c 100644 --- a/code/modules/mob/living/carbon/human/unarmed_attack.dm +++ b/code/modules/mob/living/carbon/human/unarmed_attack.dm @@ -47,22 +47,22 @@ var/global/list/sparring_attack_cache = list() if(attack_damage >= 5 && armour < 2 && !(target == user) && stun_chance <= attack_damage * 5) // 25% standard chance switch(zone) // strong punches can have effects depending on where they hit - if("head", "mouth", "eyes") + if(BP_HEAD, O_EYES, O_MOUTH) // Induce blurriness target.visible_message("[target] looks momentarily disoriented.", "You see stars.") target.apply_effect(attack_damage*2, EYE_BLUR, armour) - if("l_arm", "l_hand") + if(BP_L_ARM, BP_L_HAND) if (target.l_hand) // Disarm left hand //Urist McAssistant dropped the macguffin with a scream just sounds odd. target.visible_message("\The [target.l_hand] was knocked right out of [target]'s grasp!") target.drop_l_hand() - if("r_arm", "r_hand") + if(BP_R_ARM, BP_R_HAND) if (target.r_hand) // Disarm right hand target.visible_message("\The [target.r_hand] was knocked right out of [target]'s grasp!") target.drop_r_hand() - if("chest") + if(BP_TORSO) if(!target.lying) var/turf/T = get_step(get_turf(target), get_dir(get_turf(user), get_turf(target))) if(!T.density) @@ -73,7 +73,7 @@ var/global/list/sparring_attack_cache = list() if(prob(50)) target.set_dir(reverse_dir[target.dir]) target.apply_effect(attack_damage * 0.4, WEAKEN, armour) - if("groin") + if(BP_GROIN) target.visible_message("[target] looks like \he is in pain!", "[(target.gender=="female") ? "Oh god that hurt!" : "Oh no, not your[pick("testicles", "crown jewels", "clockweights", "family jewels", "marbles", "bean bags", "teabags", "sweetmeats", "goolies")]!"]") target.apply_effects(stutter = attack_damage * 2, agony = attack_damage* 3, blocked = armour) if("l_leg", "l_foot", "r_leg", "r_foot") @@ -93,7 +93,7 @@ var/global/list/sparring_attack_cache = list() playsound(user.loc, attack_sound, 25, 1, -1) /datum/unarmed_attack/proc/handle_eye_attack(var/mob/living/carbon/human/user, var/mob/living/carbon/human/target) - var/obj/item/organ/eyes/eyes = target.internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/eyes = target.internal_organs_by_name[O_EYES] if(eyes) eyes.take_damage(rand(3,4), 1) user.visible_message("[user] presses \his [eye_attack_text] into [target]'s [eyes.name]!") @@ -114,7 +114,7 @@ var/global/list/sparring_attack_cache = list() if (user.wear_mask && istype(user.wear_mask, /obj/item/clothing/mask/muzzle)) return 0 - if (user == target && (zone == "head" || zone == "eyes" || zone == "mouth")) + if (user == target && (zone == BP_HEAD || zone == O_EYES || zone == O_MOUTH)) return 0 return 1 @@ -137,7 +137,7 @@ var/global/list/sparring_attack_cache = list() if(!target.lying) switch(zone) - if("head", "mouth", "eyes") + if(BP_HEAD, O_MOUTH, O_EYES) // ----- HEAD ----- // switch(attack_damage) if(1 to 2) @@ -177,7 +177,7 @@ var/global/list/sparring_attack_cache = list() if (user.legcuffed) return 0 - if(!(zone in list("l_leg", "r_leg", "l_foot", "r_foot", "groin"))) + if(!(zone in list("l_leg", "r_leg", "l_foot", "r_foot", BP_GROIN))) return 0 var/obj/item/organ/external/E = user.organs_by_name["l_foot"] diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index cc112b18d9..8d7b0aeeae 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -208,12 +208,13 @@ var/global/list/damage_icon_parts = list() if(!(O.status & ORGAN_DESTROYED)) O.update_icon() if(O.damage_state == "00") continue + var/use_colour = ((O.status & ORGAN_ROBOT) ? SYNTH_BLOOD_COLOUR : O.species.get_blood_colour(src)) var/icon/DI - var/cache_index = "[O.damage_state]/[O.icon_name]/[O.species.get_blood_colour()]/[species.get_bodytype()]" + var/cache_index = "[O.damage_state]/[O.icon_name]/[use_colour]/[species.get_bodytype()]" if(damage_icon_parts[cache_index] == null) DI = new /icon(species.damage_overlays, O.damage_state) // the damage icon for whole human DI.Blend(new /icon(species.damage_mask, O.icon_name), ICON_MULTIPLY) // mask with this organ's pixels - DI.Blend(O.species.get_blood_colour(), ICON_MULTIPLY) + DI.Blend(use_colour, ICON_MULTIPLY) damage_icon_parts[cache_index] = DI else DI = damage_icon_parts[cache_index] @@ -252,7 +253,7 @@ var/global/list/damage_icon_parts = list() icon_key += "[lip_style]" else icon_key += "nolips" - var/obj/item/organ/eyes/eyes = internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/eyes = internal_organs_by_name[O_EYES] if(eyes) icon_key += "[rgb(eyes.eye_colour[1], eyes.eye_colour[2], eyes.eye_colour[3])]" else @@ -286,7 +287,7 @@ var/global/list/damage_icon_parts = list() base_icon = human_icon_cache[icon_key] else //BEGIN CACHED ICON GENERATION. - var/obj/item/organ/external/chest = get_organ("chest") + var/obj/item/organ/external/chest = get_organ(BP_TORSO) base_icon = chest.get_icon() for(var/obj/item/organ/external/part in organs) @@ -351,7 +352,7 @@ var/global/list/damage_icon_parts = list() //Reset our hair overlays_standing[HAIR_LAYER] = null - var/obj/item/organ/external/head/head_organ = get_organ("head") + var/obj/item/organ/external/head/head_organ = get_organ(BP_HEAD) if(!head_organ || head_organ.is_stump() || (head_organ.status & ORGAN_DESTROYED) ) if(update_icons) update_icons() return @@ -763,9 +764,10 @@ var/global/list/damage_icon_parts = list() if(wear_suit.blood_DNA) var/obj/item/clothing/suit/S = wear_suit - var/image/bloodsies = image("icon" = species.blood_mask, "icon_state" = "[S.blood_overlay_type]blood") - bloodsies.color = wear_suit.blood_color - standing.overlays += bloodsies + if(istype(S)) //You can put non-suits in your suit slot (diona nymphs etc). + var/image/bloodsies = image("icon" = species.blood_mask, "icon_state" = "[S.blood_overlay_type]blood") + bloodsies.color = wear_suit.blood_color + standing.overlays += bloodsies overlays_standing[SUIT_LAYER] = standing update_tail_showing(0) diff --git a/code/modules/mob/living/carbon/metroid/life.dm b/code/modules/mob/living/carbon/metroid/life.dm index 7e487269aa..352b7d955a 100644 --- a/code/modules/mob/living/carbon/metroid/life.dm +++ b/code/modules/mob/living/carbon/metroid/life.dm @@ -33,15 +33,9 @@ else loc_temp = environment.temperature - if(loc_temp < 310.15) // a cold place - bodytemperature += adjust_body_temperature(bodytemperature, loc_temp, 1) - else // a hot place - bodytemperature += adjust_body_temperature(bodytemperature, loc_temp, 1) - - //Account for massive pressure differences + bodytemperature += adjust_body_temperature(bodytemperature, loc_temp, 1) if(bodytemperature < (T0C + 5)) // start calculating temperature damage etc - if(bodytemperature <= (T0C - 50)) // hurt temperature if(bodytemperature <= 50) // sqrting negative numbers is bad adjustToxLoss(200) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index f575c6303d..b6cf19b849 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -344,8 +344,8 @@ default behaviour is: /mob/living/proc/get_organ_target() var/mob/shooter = src var/t = shooter:zone_sel.selecting - if ((t in list( "eyes", "mouth" ))) - t = "head" + if ((t in list( O_EYES, O_MOUTH ))) + t = BP_HEAD var/obj/item/organ/external/def_zone = ran_zone(t) return def_zone diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 4c108c69aa..e2535da5ea 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -404,7 +404,7 @@ var/total_damage = 0 for(var/i in 1 to 3) var/damage = min(W.force*1.5, 20)*damage_mod - apply_damage(damage, W.damtype, "head", 0, sharp=W.sharp, edge=W.edge) + apply_damage(damage, W.damtype, BP_HEAD, 0, sharp=W.sharp, edge=W.edge) total_damage += damage var/oxyloss = total_damage diff --git a/code/modules/mob/living/silicon/robot/analyzer.dm b/code/modules/mob/living/silicon/robot/analyzer.dm index 536d5bcc76..1f4024459e 100644 --- a/code/modules/mob/living/silicon/robot/analyzer.dm +++ b/code/modules/mob/living/silicon/robot/analyzer.dm @@ -65,10 +65,12 @@ user.show_message("\blue Operating Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)", 1) if("prosthetics") + var/mob/living/carbon/human/H = M user << "Analyzing Results for \the [H]:" + if(H.isSynthetic()) + user << "System instability: [H.getToxLoss()]" user << "Key: Electronics/Brute" - user << "External prosthetics:" var/organ_found if(H.internal_organs.len) diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index bb106f8bcd..88f989f15e 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -64,7 +64,7 @@ /obj/item/robot_parts, /obj/item/borg/upgrade, /obj/item/device/flash, //to build borgs - /obj/item/organ/brain, //to insert into MMIs. + /obj/item/organ/internal/brain, //to insert into MMIs. /obj/item/stack/cable_coil, //again, for borg building /obj/item/weapon/circuitboard, /obj/item/slime_extract, diff --git a/code/modules/mob/living/simple_animal/borer/borer.dm b/code/modules/mob/living/simple_animal/borer/borer.dm index d8606524e2..d4b5977a6e 100644 --- a/code/modules/mob/living/simple_animal/borer/borer.dm +++ b/code/modules/mob/living/simple_animal/borer/borer.dm @@ -106,7 +106,7 @@ if(istype(host,/mob/living/carbon/human)) var/mob/living/carbon/human/H = host - var/obj/item/organ/external/head = H.get_organ("head") + var/obj/item/organ/external/head = H.get_organ(BP_HEAD) head.implants -= src controlling = 0 diff --git a/code/modules/mob/living/simple_animal/borer/borer_powers.dm b/code/modules/mob/living/simple_animal/borer/borer_powers.dm index 05bf7e8eef..12c4099623 100644 --- a/code/modules/mob/living/simple_animal/borer/borer_powers.dm +++ b/code/modules/mob/living/simple_animal/borer/borer_powers.dm @@ -73,7 +73,7 @@ if(istype(M,/mob/living/carbon/human)) var/mob/living/carbon/human/H = M - var/obj/item/organ/external/E = H.organs_by_name["head"] + var/obj/item/organ/external/E = H.organs_by_name[BP_HEAD] if(!E || (E.status & ORGAN_DESTROYED)) src << "\The [H] does not have a head!" @@ -118,7 +118,7 @@ replace_brain() else // If they're in normally, implant removal can get them out. - var/obj/item/organ/external/head = H.get_organ("head") + var/obj/item/organ/external/head = H.get_organ(BP_HEAD) head.implants += src return @@ -181,11 +181,11 @@ H.ChangeToHusk() - var/obj/item/organ/borer/B = new(H) + var/obj/item/organ/internal/borer/B = new(H) H.internal_organs_by_name["brain"] = B H.internal_organs |= B - var/obj/item/organ/external/affecting = H.get_organ("head") + var/obj/item/organ/external/affecting = H.get_organ(BP_HEAD) affecting.implants -= src var/s2h_id = src.computer_id diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index 73de95acee..91f8aa958c 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -133,7 +133,7 @@ if(ishuman(target_mob)) var/mob/living/carbon/human/H = target_mob - var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") + var/dam_zone = pick(BP_TORSO, BP_L_HAND, BP_R_HAND, BP_L_LEG, BP_R_LEG) var/obj/item/organ/external/affecting = H.get_organ(ran_zone(dam_zone)) H.apply_damage(damage, BRUTE, affecting, H.run_armor_check(affecting, "melee"), sharp=1, edge=1) return H diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index 658f0f6d4e..5340ee39fb 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -53,7 +53,7 @@ var/parrot_state = PARROT_WANDER //Hunt for a perch when created var/parrot_sleep_max = 25 //The time the parrot sits while perched before looking around. Mosly a way to avoid the parrot's AI in life() being run every single tick. var/parrot_sleep_dur = 25 //Same as above, this is the var that physically counts down - var/parrot_dam_zone = list("chest", "head", "l_arm", "l_leg", "r_arm", "r_leg") //For humans, select a bodypart to attack + var/parrot_dam_zone = list(BP_TORSO, BP_HEAD, BP_L_ARM, BP_R_ARM, BP_L_LEG, BP_R_LEG) //For humans, select a bodypart to attack var/parrot_speed = 5 //"Delay in world ticks between movement." according to byond. Yeah, that's BS but it does directly affect movement. Higher number = slower. var/parrot_been_shot = 0 //Parrots get a speed bonus after being shot. This will deincrement every Life() and at 0 the parrot will return to regular speed. diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 0f41b859e5..ff45cb71d0 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1128,3 +1128,6 @@ mob/proc/yank_out_object() src.in_throw_mode = 1 if(src.throw_icon) src.throw_icon.icon_state = "act_throw_on" + +/mob/proc/isSynthetic() + return 0 diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm index a9d5456a93..c85b8d96a2 100644 --- a/code/modules/mob/mob_grab.dm +++ b/code/modules/mob/mob_grab.dm @@ -124,7 +124,7 @@ if(iscarbon(affecting)) handle_eye_mouth_covering(affecting, assailant, assailant.zone_sel.selecting) - + if(force_down) if(affecting.loc != assailant.loc) force_down = 0 @@ -148,14 +148,14 @@ /obj/item/weapon/grab/proc/handle_eye_mouth_covering(mob/living/carbon/target, mob/user, var/target_zone) var/announce = (target_zone != last_hit_zone) //only display messages when switching between different target zones last_hit_zone = target_zone - + switch(target_zone) - if("mouth") + if(O_MOUTH) if(announce) user.visible_message("\The [user] covers [target]'s mouth!") if(target.silent < 3) target.silent = 3 - if("eyes") + if(O_EYES) if(announce) assailant.visible_message("[assailant] covers [affecting]'s eyes!") if(affecting.eye_blind < 3) @@ -232,7 +232,7 @@ else assailant.visible_message("[assailant] pins [affecting] down to the ground (now hands)!") apply_pinning(affecting, assailant) - + state = GRAB_AGGRESSIVE icon_state = "grabbed1" hud.icon_state = "reinforce1" @@ -252,7 +252,7 @@ hud.name = "kill" affecting.Stun(10) //10 ticks of ensured grab else if(state < GRAB_UPGRADING) - assailant.visible_message("[assailant] starts to tighten \his grip on [affecting]'s neck!") + assailant.visible_message("[assailant] starts to tighten \his grip on [affecting]'s neck!") hud.icon_state = "kill1" state = GRAB_KILL @@ -264,7 +264,7 @@ affecting.setClickCooldown(10) affecting.losebreath += 1 affecting.set_dir(WEST) - adjust_position() + adjust_position() //This is used to make sure the victim hasn't managed to yackety sax away before using the grab. /obj/item/weapon/grab/proc/confirm() @@ -284,10 +284,10 @@ return if(world.time < (last_action + 20)) return - + last_action = world.time reset_kill_state() //using special grab moves will interrupt choking them - + //clicking on the victim while grabbing them if(M == affecting) if(ishuman(affecting)) @@ -300,21 +300,21 @@ force_down = 0 return inspect_organ(affecting, assailant, hit_zone) - + if(I_GRAB) jointlock(affecting, assailant, hit_zone) - + if(I_HURT) - if(hit_zone == "eyes") + if(hit_zone == O_EYES) attack_eye(affecting, assailant) - else if(hit_zone == "head") + else if(hit_zone == BP_HEAD) headbut(affecting, assailant) else dislocate(affecting, assailant, hit_zone) - + if(I_DISARM) pin_down(affecting, assailant) - + //clicking on yourself while grabbing them if(M == assailant && state >= GRAB_AGGRESSIVE) devour(affecting, assailant) @@ -325,7 +325,7 @@ qdel(src) /obj/item/weapon/grab/proc/reset_kill_state() - if(state == GRAB_KILL) + if(state == GRAB_KILL) assailant.visible_message("[assailant] lost \his tight grip on [affecting]'s neck!") hud.icon_state = "kill" state = GRAB_NECK diff --git a/code/modules/mob/mob_grab_specials.dm b/code/modules/mob/mob_grab_specials.dm index fb51bc1572..76de1cdc33 100644 --- a/code/modules/mob/mob_grab_specials.dm +++ b/code/modules/mob/mob_grab_specials.dm @@ -60,7 +60,7 @@ if(!istype(attacker)) return - var/datum/unarmed_attack/attack = attacker.get_unarmed_attack(target, "eyes") + var/datum/unarmed_attack/attack = attacker.get_unarmed_attack(target, O_EYES) if(!attack) return @@ -93,11 +93,11 @@ if(istype(hat)) damage += hat.force * 3 - var/armor = target.run_armor_check("head", "melee") - target.apply_damage(damage, BRUTE, "head", armor) - attacker.apply_damage(10, BRUTE, "head", attacker.run_armor_check("head", "melee")) + var/armor = target.run_armor_check(BP_HEAD, "melee") + target.apply_damage(damage, BRUTE, BP_HEAD, armor) + attacker.apply_damage(10, BRUTE, BP_HEAD, attacker.run_armor_check(BP_HEAD, "melee")) - if(!armor && target.headcheck("head") && prob(damage)) + if(!armor && target.headcheck(BP_HEAD) && prob(damage)) target.apply_effect(20, PARALYZE) target.visible_message("[target] [target.species.get_knockout_message(target)]") diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index bcb48f0bb0..b613fc0df2 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -11,15 +11,16 @@ return L.mob_size <= MOB_SMALL return 0 -/mob/living/proc/isSynthetic() - return 0 - +// If they are 100% robotic, they count as synthetic. /mob/living/carbon/human/isSynthetic() - // If they are 100% robotic, they count as synthetic. - for(var/obj/item/organ/external/E in organs) - if(!(E.status & ORGAN_ROBOT)) - return 0 - return 1 + if(isnull(full_prosthetic)) + robolimb_count = 0 + for(var/obj/item/organ/external/E in organs) + if(E.status & ORGAN_ROBOT) + robolimb_count++ + if(robolimb_count == organs.len) + full_prosthetic = 1 + return full_prosthetic /mob/living/silicon/isSynthetic() return 1 @@ -72,46 +73,13 @@ proc/getsensorlevel(A) Miss Chance */ -//TODO: Integrate defence zones and targeting body parts with the actual organ system, move these into organ definitions. - -//The base miss chance for the different defence zones -var/list/global/base_miss_chance = list( - "head" = 40, - "chest" = 10, - "groin" = 20, - "l_leg" = 20, - "r_leg" = 20, - "l_arm" = 20, - "r_arm" = 20, - "l_hand" = 50, - "r_hand" = 50, - "l_foot" = 50, - "r_foot" = 50, -) - -//Used to weight organs when an organ is hit randomly (i.e. not a directed, aimed attack). -//Also used to weight the protection value that armour provides for covering that body part when calculating protection from full-body effects. -var/list/global/organ_rel_size = list( - "head" = 25, - "chest" = 70, - "groin" = 30, - "l_leg" = 25, - "r_leg" = 25, - "l_arm" = 25, - "r_arm" = 25, - "l_hand" = 10, - "r_hand" = 10, - "l_foot" = 10, - "r_foot" = 10, -) - /proc/check_zone(zone) - if(!zone) return "chest" + if(!zone) return BP_TORSO switch(zone) - if("eyes") - zone = "head" - if("mouth") - zone = "head" + if(O_EYES) + zone = BP_HEAD + if(O_MOUTH) + zone = BP_HEAD return zone // Returns zone with a certain probability. If the probability fails, or no zone is specified, then a random body part is chosen. @@ -126,17 +94,17 @@ var/list/global/organ_rel_size = list( var/ran_zone = zone while (ran_zone == zone) ran_zone = pick ( - organ_rel_size["head"]; "head", - organ_rel_size["chest"]; "chest", - organ_rel_size["groin"]; "groin", - organ_rel_size["l_arm"]; "l_arm", - organ_rel_size["r_arm"]; "r_arm", - organ_rel_size["l_leg"]; "l_leg", - organ_rel_size["r_leg"]; "r_leg", - organ_rel_size["l_hand"]; "l_hand", - organ_rel_size["r_hand"]; "r_hand", - organ_rel_size["l_foot"]; "l_foot", - organ_rel_size["r_foot"]; "r_foot", + organ_rel_size[BP_HEAD]; BP_HEAD, + organ_rel_size[BP_TORSO]; BP_TORSO, + organ_rel_size[BP_GROIN]; BP_GROIN, + organ_rel_size[BP_L_ARM]; BP_L_ARM, + organ_rel_size[BP_R_ARM]; BP_R_ARM, + organ_rel_size[BP_L_LEG]; BP_L_LEG, + organ_rel_size[BP_R_LEG]; BP_R_LEG, + organ_rel_size[BP_L_HAND]; BP_L_HAND, + organ_rel_size[BP_R_HAND]; BP_R_HAND, + organ_rel_size[BP_L_FOOT]; BP_L_FOOT, + organ_rel_size[BP_R_FOOT]; BP_R_FOOT, ) return ran_zone @@ -564,3 +532,37 @@ proc/is_blind(A) return threatcount #undef SAFE_PERP + + +//TODO: Integrate defence zones and targeting body parts with the actual organ system, move these into organ definitions. + +//The base miss chance for the different defence zones +var/list/global/base_miss_chance = list( + "head" = 40, + "chest" = 10, + "groin" = 20, + "l_leg" = 20, + "r_leg" = 20, + "l_arm" = 20, + "r_arm" = 20, + "l_hand" = 50, + "r_hand" = 50, + "l_foot" = 50, + "r_foot" = 50, +) + +//Used to weight organs when an organ is hit randomly (i.e. not a directed, aimed attack). +//Also used to weight the protection value that armour provides for covering that body part when calculating protection from full-body effects. +var/list/global/organ_rel_size = list( + "head" = 25, + "chest" = 70, + "groin" = 30, + "l_leg" = 25, + "r_leg" = 25, + "l_arm" = 25, + "r_arm" = 25, + "l_hand" = 10, + "r_hand" = 10, + "l_foot" = 10, + "r_foot" = 10, +) \ No newline at end of file diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index d20fe8bee2..5a2076aba4 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -5,7 +5,7 @@ datum/preferences s_tone = random_skin_tone() var/use_head_species - var/obj/item/organ/external/head/temp_head = H.get_organ("head") + var/obj/item/organ/external/head/temp_head = H.get_organ(BP_HEAD) if(temp_head) use_head_species = temp_head.species.get_bodytype() else @@ -202,20 +202,20 @@ datum/preferences icobase = 'icons/mob/human_races/r_human.dmi' preview_icon = new /icon(icobase, "") - for(var/name in list("torso", "groin", "head", "r_arm","r_hand","r_leg","r_foot","l_leg","l_foot","l_arm","l_hand")) + for(var/name in BP_ALL) if(organ_data[name] == "amputated") continue if(organ_data[name] == "cyborg") var/datum/robolimb/R if(rlimb_data[name]) R = all_robolimbs[rlimb_data[name]] if(!R) R = basic_robolimb - if(name in list("torso", "groin", "head")) + if(name in list(BP_TORSO, BP_GROIN, BP_HEAD)) preview_icon.Blend(icon(R.icon, "[name]_[g]"), ICON_OVERLAY) else preview_icon.Blend(icon(R.icon, "[name]"), ICON_OVERLAY) continue var/icon/limb_icon - if(name in list("torso", "groin", "head")) + if(name in list(BP_TORSO, BP_GROIN, BP_HEAD)) limb_icon = new /icon(icobase, "[name]_[g]") else limb_icon = new /icon(icobase, "[name]") @@ -244,7 +244,7 @@ datum/preferences // This is absolute garbage but whatever. It will do until this entire file can be rewritten without crashes. var/use_eye_icon = "eyes_s" - var/list/use_eye_data = current_species.has_limbs["head"] + var/list/use_eye_data = current_species.has_limbs[BP_HEAD] if(islist(use_eye_data)) var/use_eye_path = use_eye_data["path"] var/obj/item/organ/external/head/temp_head = new use_eye_path () diff --git a/code/modules/multiz/turf.dm b/code/modules/multiz/turf.dm index b358cd0fbb..d85a464af2 100644 --- a/code/modules/multiz/turf.dm +++ b/code/modules/multiz/turf.dm @@ -68,12 +68,12 @@ if (istype(mover, /mob/living/carbon/human)) var/mob/living/carbon/human/H = mover var/damage = 5 - H.apply_damage(rand(0, damage), BRUTE, "head") - H.apply_damage(rand(0, damage), BRUTE, "chest") - H.apply_damage(rand(0, damage), BRUTE, "l_leg") - H.apply_damage(rand(0, damage), BRUTE, "r_leg") - H.apply_damage(rand(0, damage), BRUTE, "l_arm") - H.apply_damage(rand(0, damage), BRUTE, "r_arm") + H.apply_damage(rand(0, damage), BRUTE, BP_HEAD) + H.apply_damage(rand(0, damage), BRUTE, BP_TORSO) + H.apply_damage(rand(0, damage), BRUTE, BP_L_LEG) + H.apply_damage(rand(0, damage), BRUTE, BP_R_LEG) + H.apply_damage(rand(0, damage), BRUTE, BP_L_ARM) + H.apply_damage(rand(0, damage), BRUTE, BP_R_ARM) H.weakened = max(H.weakened,2) H.updatehealth() diff --git a/code/modules/organs/blood.dm b/code/modules/organs/blood.dm index 74d2cebce0..6621e0f102 100644 --- a/code/modules/organs/blood.dm +++ b/code/modules/organs/blood.dm @@ -19,7 +19,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 vessel = new/datum/reagents(600) vessel.my_atom = src - if(!should_have_organ("heart")) //We want the var for safety but we can do without the actual blood. + if(!should_have_organ(O_HEART)) //We want the var for safety but we can do without the actual blood. return vessel.add_reagent("blood",560) @@ -39,7 +39,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 if(in_stasis) return - if(!should_have_organ("heart")) + if(!should_have_organ(O_HEART)) return if(stat != DEAD && bodytemperature >= 170) //Dead or cryosleep people do not pump the blood. @@ -62,8 +62,8 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 // Damaged heart virtually reduces the blood volume, as the blood isn't // being pumped properly anymore. - if(species && should_have_organ("heart")) - var/obj/item/organ/heart/heart = internal_organs_by_name["heart"] + if(species && should_have_organ(O_HEART)) + var/obj/item/organ/internal/heart/heart = internal_organs_by_name[O_HEART] if(!heart) blood_volume = 0 @@ -137,7 +137,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 //Makes a blood drop, leaking amt units of blood from the mob /mob/living/carbon/human/proc/drip(var/amt as num) - if(!should_have_organ("heart")) //TODO: Make drips come from the reagents instead. + if(!should_have_organ(O_HEART)) //TODO: Make drips come from the reagents instead. return if(!amt) @@ -188,7 +188,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 //For humans, blood does not appear from blue, it comes from vessels. /mob/living/carbon/human/take_blood(obj/item/weapon/reagent_containers/container, var/amount) - if(!should_have_organ("heart")) + if(!should_have_organ(O_HEART)) return null if(vessel.get_reagent_amount("blood") < amount) @@ -216,7 +216,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 //Transfers blood from reagents to vessel, respecting blood types compatability. /mob/living/carbon/human/inject_blood(var/datum/reagent/blood/injected, var/amount) - if(should_have_organ("heart")) + if(should_have_organ(O_HEART)) reagents.add_reagent("blood", amount, injected.data) reagents.update_total() return diff --git a/code/modules/organs/misc.dm b/code/modules/organs/misc.dm index 0ba128c1a6..1f4fc2c1fe 100644 --- a/code/modules/organs/misc.dm +++ b/code/modules/organs/misc.dm @@ -1,5 +1,14 @@ //CORTICAL BORER ORGANS. -/obj/item/organ/borer/process() +/obj/item/organ/internal/borer + name = "cortical borer" + icon = 'icons/obj/objects.dmi' + icon_state = "borer" + organ_tag = "brain" + desc = "A disgusting space slug." + parent_organ = BP_HEAD + vital = 1 + +/obj/item/organ/internal/borer/process() // Borer husks regenerate health, feel no pain, and are resistant to stuns and brainloss. for(var/chem in list("tricordrazine","tramadol","hyperzine","alkysine")) @@ -21,16 +30,7 @@ goo.basecolor = "#412464" goo.update_icon() -/obj/item/organ/borer - name = "cortical borer" - icon = 'icons/obj/objects.dmi' - icon_state = "borer" - organ_tag = "brain" - desc = "A disgusting space slug." - parent_organ = "head" - vital = 1 - -/obj/item/organ/borer/removed(var/mob/living/user) +/obj/item/organ/internal/borer/removed(var/mob/living/user) ..() @@ -43,19 +43,19 @@ qdel(src) //VOX ORGANS. -/obj/item/organ/stack +/obj/item/organ/internal/stack name = "cortical stack" - parent_organ = "head" + parent_organ = BP_HEAD icon_state = "brain-prosthetic" organ_tag = "stack" vital = 1 var/backup_time = 0 var/datum/mind/backup -/obj/item/organ/stack/process() +/obj/item/organ/internal/stack/process() if(owner && owner.stat != DEAD && !is_broken()) backup_time = world.time if(owner.mind) backup = owner.mind -/obj/item/organ/stack/vox/stack +/obj/item/organ/internal/stack/vox/stack name = "vox cortical stack" diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index 63c57acb21..e085171678 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -6,47 +6,37 @@ var/list/organ_cache = list() germ_level = 0 // Strings. - var/organ_tag = "organ" - var/parent_organ = "chest" - - // Appearance. - var/dead_icon + var/organ_tag = "organ" // Unique identifier. + var/parent_organ = BP_TORSO // Organ holding this object. // Status tracking. - var/status = 0 - var/vital //Lose a vital limb, die immediately. - var/damage = 0 // amount of damage to the organ + var/status = 0 // Various status flags (such as robotic) + var/vital // Lose a vital limb, die immediately. + var/damage = 0 // Current damage to the organ // Reference data. - var/mob/living/carbon/human/owner = null - var/list/transplant_data - var/list/datum/autopsy_data/autopsy_data = list() - var/list/trace_chemicals = list() // traces of chemicals in the organ, - var/datum/dna/dna - var/datum/species/species + var/mob/living/carbon/human/owner // Current mob owning the organ. + var/list/transplant_data // Transplant match data. + var/list/autopsy_data = list() // Trauma data for forensics. + var/list/trace_chemicals = list() // Traces of chemicals in the organ. + var/datum/dna/dna // Original DNA. + var/datum/species/species // Original species. // Damage vars. - var/min_bruised_damage = 10 - var/min_broken_damage = 30 - var/max_damage - var/rejecting // Is this organ already being rejected? + var/min_bruised_damage = 10 // Damage before considered bruised + var/min_broken_damage = 30 // Damage before becoming broken + var/max_damage // Damage cap + var/rejecting // Is this organ already being rejected? /obj/item/organ/Destroy() - if(!owner) - return ..() - if(istype(owner, /mob/living/carbon)) - if((owner.internal_organs) && (src in owner.internal_organs)) - owner.internal_organs -= src - if(istype(owner, /mob/living/carbon/human)) - if((owner.internal_organs_by_name) && (src in owner.internal_organs_by_name)) - owner.internal_organs_by_name -= src - if((owner.organs) && (src in owner.organs)) - owner.organs -= src - if((owner.organs_by_name) && (src in owner.organs_by_name)) - owner.organs_by_name -= src - if(src in owner.contents) - owner.contents -= src - owner = null + + if(owner) owner = null + if(transplant_data) transplant_data.Cut() + if(autopsy_data) autopsy_data.Cut() + if(trace_chemicals) trace_chemicals.Cut() + dna = null + species = null + return ..() /obj/item/organ/proc/update_health() @@ -92,8 +82,6 @@ var/list/organ_cache = list() damage = max_damage status |= ORGAN_DEAD processing_objects -= src - if(dead_icon) - icon_state = dead_icon if(owner && vital) owner.death() @@ -115,7 +103,7 @@ var/list/organ_cache = list() germ_level = 0 return - if(!owner) + if(!owner && reagents) var/datum/reagent/blood/B = locate(/datum/reagent/blood) in reagents.reagent_list if(B && prob(40)) reagents.remove_reagent("blood",0.1) @@ -193,6 +181,9 @@ var/list/organ_cache = list() /obj/item/organ/proc/receive_chem(chemical as obj) return 0 +/obj/item/organ/proc/remove_rejuv() + qdel(src) + /obj/item/organ/proc/rejuvenate(var/ignore_prosthetic_prefs) damage = 0 status = 0 @@ -203,16 +194,6 @@ var/list/organ_cache = list() else if(status == "mechanical") robotize() -/obj/item/organ/proc/remove_rejuv() - if(owner) - owner.internal_organs -= src - owner.internal_organs_by_name[organ_tag] = null - while(null in owner.internal_organs) - owner.internal_organs -= null - while(null in owner.internal_organs_by_name) - owner.internal_organs_by_name -= null - qdel(src) - /obj/item/organ/proc/is_damaged() return damage > 0 @@ -336,16 +317,6 @@ var/list/organ_cache = list() affected.internal_organs |= src target.internal_organs_by_name[organ_tag] = src -/obj/item/organ/eyes/replaced(var/mob/living/carbon/human/target) - - // Apply our eye colour to the target. - if(istype(target) && eye_colour) - target.r_eyes = eye_colour[1] - target.g_eyes = eye_colour[2] - target.b_eyes = eye_colour[3] - target.update_eyes() - ..() - /obj/item/organ/proc/bitten(mob/user) if(status & ORGAN_ROBOT) @@ -374,7 +345,7 @@ var/list/organ_cache = list() /obj/item/organ/attack_self(mob/user as mob) // Convert it to an edible form, yum yum. - if((status & ORGAN_ROBOT) && user.a_intent == "help" && user.zone_sel.selecting == "mouth") + if((status & ORGAN_ROBOT) && user.a_intent == I_HELP && user.zone_sel.selecting == O_MOUTH) bitten(user) return diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index ed9d32f122..a8d6141630 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -15,50 +15,51 @@ organ_tag = "limb" // Strings - var/limb_name + var/broken_description // fracture string if any. + var/damage_state = "00" // Modifier used for generating the on-mob damage overlay for this limb. // Damage vars. - var/brute_mod = 1 // Multiplier for incoming brute damage. - var/burn_mod = 1 // As above for burn. - var/damage_state = "00" // Modifier used for generating the on-mob damage overlay for this limb. - var/brute_dam = 0 // Actual current brute damage. - var/burn_dam = 0 // Actual current burn damage. - var/last_dam = -1 + var/brute_mod = 1 // Multiplier for incoming brute damage. + var/burn_mod = 1 // As above for burn. + var/brute_dam = 0 // Actual current brute damage. + var/burn_dam = 0 // Actual current burn damage. + var/last_dam = -1 // used in healing/processing calculations. // Appearance vars. - var/icon_name = null - var/body_part = null - var/icon_position = 0 - var/model - var/force_icon - var/icon/mob_icon - var/gendered_icon = 0 - var/s_tone - var/list/s_col - var/list/h_col - var/body_hair + var/icon_name = null // Icon state base. + var/body_part = null // Part flag + var/icon_position = 0 // Used in mob overlay layering calculations. + var/model // Used when caching robolimb icons. + var/force_icon // Used to force override of species-specific limb icons (for prosthetics). + var/icon/mob_icon // Cached icon for use in mob overlays. + var/gendered_icon = 0 // Whether or not the icon state appends a gender. + var/s_tone // Skin tone. + var/list/s_col // skin colour + var/list/h_col // hair colour + var/body_hair // Icon blend for body hair if any. // Wound and structural data. - var/wound_update_accuracy = 1 // how often wounds should be updated, a higher number means less often - var/list/wounds = list() - var/number_wounds = 0 // cache the number of wounds, which is NOT wounds.len! - var/obj/item/organ/external/parent - var/list/obj/item/organ/external/children - var/list/internal_organs = list() // Internal organs of this body part - var/broken_description - var/sabotaged = 0 // If a prosthetic limb is emagged, it will detonate when it fails. - var/list/implants = list() + var/wound_update_accuracy = 1 // how often wounds should be updated, a higher number means less often + var/list/wounds = list() // wound datum list. + var/number_wounds = 0 // number of wounds, which is NOT wounds.len! + var/obj/item/organ/external/parent // Master-limb. + var/list/children // Sub-limbs. + var/list/internal_organs = list() // Internal organs of this body part + var/sabotaged = 0 // If a prosthetic limb is emagged, it will detonate when it fails. + var/list/implants = list() // Currently implanted objects. + var/organ_rel_size = 25 // Relative size of the organ. + var/base_miss_chance = 20 // Chance of missing. // Joint/state stuff. - var/can_grasp //It would be more appropriate if these two were named "affects_grasp" and "affects_stand" at this point - var/can_stand - var/disfigured = 0 - var/cannot_amputate - var/cannot_break - var/joint = "joint" // Descriptive string used in dislocation. - var/amputation_point // Descriptive string used in amputation. - var/dislocated = 0 // If you target a joint, you can dislocate the limb, causing temporary damage to the organ. - var/encased // Needs to be opened with a saw to access the organs. + var/can_grasp // It would be more appropriate if these two were named "affects_grasp" and "affects_stand" at this point + var/can_stand // Modifies stance tally/ability to stand. + var/disfigured = 0 // Scarred/burned beyond recognition. + var/cannot_amputate // Impossible to amputate. + var/cannot_break // Impossible to fracture. + var/joint = "joint" // Descriptive string used in dislocation. + var/amputation_point // Descriptive string used in amputation. + var/dislocated = 0 // If you target a joint, you can dislocate the limb, causing temporary damage to the organ. + var/encased // Needs to be opened with a saw to access the organs. // Surgery vars. var/open = 0 @@ -67,6 +68,7 @@ /obj/item/organ/external/Destroy() + if(parent && parent.children) parent.children -= src @@ -78,6 +80,13 @@ for(var/obj/item/organ/O in internal_organs) qdel(O) + if(owner) + owner.organs -= src + owner.organs_by_name[organ_tag] = null + owner.organs_by_name -= organ_tag + while(null in owner.organs) + owner.organs -= null + return ..() /obj/item/organ/external/attack_self(var/mob/user) @@ -183,7 +192,7 @@ /obj/item/organ/external/replaced(var/mob/living/carbon/human/target) owner = target if(istype(owner)) - owner.organs_by_name[limb_name] = src + owner.organs_by_name[organ_tag] = src owner.organs |= src for(var/obj/item/organ/organ in src) organ.loc = owner @@ -319,11 +328,6 @@ if(internal) status &= ~ORGAN_BROKEN - /*if((brute || burn) && children && children.len && (owner.species.flags & REGENERATES_LIMBS)) - var/obj/item/organ/external/stump/S = locate() in children - if(S) - world << "Extra healing to go around ([brute+burn]) and [owner] needs a replacement limb."*/ - //Sync the organ's damage with its wounds src.update_damages() owner.updatehealth() @@ -356,11 +360,11 @@ This function completely restores a damaged organ to perfect condition. if(owner && !ignore_prosthetic_prefs) if(owner.client && owner.client.prefs && owner.client.prefs.real_name == owner.real_name) - var/status = owner.client.prefs.organ_data[limb_name] + var/status = owner.client.prefs.organ_data[organ_tag] if(status == "amputated") remove_rejuv() else if(status == "cyborg") - var/robodata = owner.client.prefs.rlimb_data[limb_name] + var/robodata = owner.client.prefs.rlimb_data[organ_tag] if(robodata) robotize(robodata) else @@ -370,20 +374,16 @@ This function completely restores a damaged organ to perfect condition. /obj/item/organ/external/remove_rejuv() if(owner) owner.organs -= src - owner.organs_by_name[limb_name] = null - while(null in owner.organs) - owner.organs -= null - while(null in owner.organs_by_name) - owner.organs_by_name -= null + owner.organs_by_name[organ_tag] = null + owner.organs_by_name -= organ_tag + while(null in owner.organs) owner.organs -= null if(children && children.len) for(var/obj/item/organ/external/E in children) E.remove_rejuv() children.Cut() - - for(var/obj/item/organ/O in contents) - O.remove_rejuv() - - qdel(src) + for(var/obj/item/organ/internal/I in internal_organs) + I.remove_rejuv() + ..() /obj/item/organ/external/proc/createwound(var/type = CUT, var/damage) if(damage == 0) return @@ -652,7 +652,7 @@ Note that amputating the affected organ does in fact remove the infection from t else if(W.damage_type == BURN) burn_dam += W.damage - if(!(status & ORGAN_ROBOT) && W.bleeding() && (H && H.should_have_organ("heart"))) + if(!(status & ORGAN_ROBOT) && W.bleeding() && (H && H.should_have_organ(O_HEART))) W.bleed_timer-- status |= ORGAN_BLEEDING @@ -661,7 +661,7 @@ Note that amputating the affected organ does in fact remove the infection from t number_wounds += W.amount //things tend to bleed if they are CUT OPEN - if (open && !clamped && (H && H.should_have_organ("heart"))) + if (open && !clamped && (H && H.should_have_organ(O_HEART))) status |= ORGAN_BLEEDING //Bone fractures @@ -789,7 +789,7 @@ Note that amputating the affected organ does in fact remove the infection from t if(status & ORGAN_ROBOT) gore = new /obj/effect/decal/cleanable/blood/gibs/robot(get_turf(victim)) else - gore = new victim.species.single_gib_type(get_turf(victim)) + gore = new /obj/effect/decal/cleanable/blood/gibs(get_turf(victim)) if(species) if(species.get_flesh_colour()) gore.fleshcolor = species.get_flesh_colour() @@ -905,7 +905,7 @@ Note that amputating the affected organ does in fact remove the infection from t if(isnull(suit.supporting_limbs)) return - owner << "You feel \the [suit] constrict about your [name], supporting it." + owner << "You feel \the [suit] constrict about your [name], supporting it." status |= ORGAN_SPLINTED suit.supporting_limbs |= src return @@ -919,14 +919,20 @@ Note that amputating the affected organ does in fact remove the infection from t status &= ~ORGAN_BROKEN return 1 -/obj/item/organ/external/robotize(var/company, var/ski) +/obj/item/organ/external/robotize(var/company, var/skip_prosthetics = 0, var/keep_organs = 0) + + if(status & ORGAN_ROBOT) + return + if(status & ORGAN_ROBOT) return ..() - brute_mod = 0.8 - burn_mod = 0.8 + + brute_mod = 0.8 // More resistant to brute. + burn_mod = 0.8 // More resistant to burn. + max_damage = initial(max_damage)*0.65 // Significantly easier to remove with trauma. brute_mod = 0.8 burn_mod = 0.8 @@ -949,23 +955,25 @@ Note that amputating the affected organ does in fact remove the infection from t for(var/obj/item/organ/external/T in children) T.robotize(company, 1) + if(owner) if(!skip_prosthetics) owner.full_prosthetic = null // Will be rechecked next isSynthetic() call. - for(var/obj/item/organ/thing in src.contents) - if(istype(thing)) - if(thing.vital) - continue - owner.internal_organs_by_name[thing.organ_tag] = null - owner.internal_organs.Remove(thing) - qdel(thing) + if(!keep_organs) + for(var/obj/item/organ/thing in internal_organs) + if(istype(thing)) + if(thing.vital) + continue + internal_organs -= thing + owner.internal_organs_by_name[thing.organ_tag] = null + owner.internal_organs_by_name -= thing.organ_tag + owner.internal_organs.Remove(thing) + qdel(thing) while(null in owner.internal_organs) owner.internal_organs -= null - while(null in owner.internal_organs_by_name) - owner.internal_organs -= null return 1 @@ -1047,7 +1055,7 @@ Note that amputating the affected organ does in fact remove the infection from t release_restraints(victim) victim.organs -= src - victim.organs_by_name[limb_name] = null // Remove from owner's vars. + victim.organs_by_name[organ_tag] = null // Remove from owner's vars. //Robotic limbs explode if sabotaged. if(is_robotic && sabotaged) @@ -1140,7 +1148,7 @@ Note that amputating the affected organ does in fact remove the infection from t /obj/item/organ/external/chest name = "upper body" - limb_name = "chest" + organ_tag = BP_TORSO icon_name = "torso" max_damage = 100 min_broken_damage = 35 @@ -1154,43 +1162,46 @@ Note that amputating the affected organ does in fact remove the infection from t cannot_amputate = 1 parent_organ = null encased = "ribcage" + organ_rel_size = 70 + base_miss_chance = 10 /obj/item/organ/external/chest/robotize() if(..()) // Give them a new cell. - owner.internal_organs_by_name["cell"] = new /obj/item/organ/cell(owner,1) + owner.internal_organs_by_name["cell"] = new /obj/item/organ/internal/cell(owner,1) /obj/item/organ/external/groin name = "lower body" - limb_name = "groin" + organ_tag = BP_GROIN icon_name = "groin" max_damage = 100 min_broken_damage = 35 w_class = 5 body_part = LOWER_TORSO vital = 1 - parent_organ = "chest" + parent_organ = BP_TORSO amputation_point = "lumbar" joint = "hip" dislocated = -1 gendered_icon = 1 + organ_rel_size = 30 /obj/item/organ/external/arm - limb_name = "l_arm" + organ_tag = "l_arm" name = "left arm" icon_name = "l_arm" max_damage = 50 min_broken_damage = 30 w_class = 3 body_part = ARM_LEFT - parent_organ = "chest" + parent_organ = BP_TORSO joint = "left elbow" amputation_point = "left shoulder" can_grasp = 1 /obj/item/organ/external/arm/right - limb_name = "r_arm" + organ_tag = "r_arm" name = "right arm" icon_name = "r_arm" body_part = ARM_RIGHT @@ -1198,7 +1209,7 @@ Note that amputating the affected organ does in fact remove the infection from t amputation_point = "right shoulder" /obj/item/organ/external/leg - limb_name = "l_leg" + organ_tag = "l_leg" name = "left leg" icon_name = "l_leg" max_damage = 50 @@ -1206,13 +1217,13 @@ Note that amputating the affected organ does in fact remove the infection from t w_class = 3 body_part = LEG_LEFT icon_position = LEFT - parent_organ = "groin" + parent_organ = BP_GROIN joint = "left knee" amputation_point = "left hip" can_stand = 1 /obj/item/organ/external/leg/right - limb_name = "r_leg" + organ_tag = "r_leg" name = "right leg" icon_name = "r_leg" body_part = LEG_RIGHT @@ -1221,7 +1232,7 @@ Note that amputating the affected organ does in fact remove the infection from t amputation_point = "right hip" /obj/item/organ/external/foot - limb_name = "l_foot" + organ_tag = "l_foot" name = "left foot" icon_name = "l_foot" min_broken_damage = 15 @@ -1232,13 +1243,15 @@ Note that amputating the affected organ does in fact remove the infection from t joint = "left ankle" amputation_point = "left ankle" can_stand = 1 + organ_rel_size = 10 + base_miss_chance = 50 /obj/item/organ/external/foot/removed() if(owner) owner.u_equip(owner.shoes) ..() /obj/item/organ/external/foot/right - limb_name = "r_foot" + organ_tag = "r_foot" name = "right foot" icon_name = "r_foot" body_part = FOOT_RIGHT @@ -1248,7 +1261,7 @@ Note that amputating the affected organ does in fact remove the infection from t amputation_point = "right ankle" /obj/item/organ/external/hand - limb_name = "l_hand" + organ_tag = "l_hand" name = "left hand" icon_name = "l_hand" min_broken_damage = 15 @@ -1258,13 +1271,15 @@ Note that amputating the affected organ does in fact remove the infection from t joint = "left wrist" amputation_point = "left wrist" can_grasp = 1 + organ_rel_size = 10 + base_miss_chance = 50 /obj/item/organ/external/hand/removed() owner.u_equip(owner.gloves) ..() /obj/item/organ/external/hand/right - limb_name = "r_hand" + organ_tag = "r_hand" name = "right hand" icon_name = "r_hand" body_part = HAND_RIGHT @@ -1273,7 +1288,7 @@ Note that amputating the affected organ does in fact remove the infection from t amputation_point = "right wrist" /obj/item/organ/external/head - limb_name = "head" + organ_tag = BP_HEAD icon_name = "head" name = "head" max_damage = 75 @@ -1281,14 +1296,19 @@ Note that amputating the affected organ does in fact remove the infection from t w_class = 3 body_part = HEAD vital = 1 - parent_organ = "chest" + parent_organ = BP_TORSO joint = "jaw" amputation_point = "neck" gendered_icon = 1 encased = "skull" + base_miss_chance = 40 var/eye_icon = "eyes_s" +// These organs are important for robotizing at chargen. +/obj/item/organ/external/head/robotize(var/company, var/skip_prosthetics, var/keep_organs) + return ..(company, skip_prosthetics, 1) + /obj/item/organ/external/head/removed() if(owner) name = "[owner.real_name]'s head" diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index 4faa796107..3b55dc1dda 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -40,7 +40,7 @@ var/global/list/limb_icon_cache = list() /obj/item/organ/external/head/sync_colour_to_human(var/mob/living/carbon/human/human) ..() - var/obj/item/organ/eyes/eyes = owner.internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/eyes = owner.internal_organs_by_name[O_EYES] if(eyes) eyes.update_colour() /obj/item/organ/external/head/removed() @@ -53,8 +53,8 @@ var/global/list/limb_icon_cache = list() overlays.Cut() if(!owner || !owner.species) return - if(owner.should_have_organ("eyes")) - var/obj/item/organ/eyes/eyes = owner.internal_organs_by_name["eyes"] + if(owner.should_have_organ(O_EYES)) + var/obj/item/organ/internal/eyes/eyes = owner.internal_organs_by_name[O_EYES] if(eye_icon) var/icon/eyes_icon = new/icon('icons/mob/human_face.dmi', eye_icon) if(eyes) diff --git a/code/modules/organs/organ_internal.dm b/code/modules/organs/organ_internal.dm index cfd7ec78f7..175873e78b 100644 --- a/code/modules/organs/organ_internal.dm +++ b/code/modules/organs/organ_internal.dm @@ -3,24 +3,52 @@ /**************************************************** INTERNAL ORGANS DEFINES ****************************************************/ +/obj/item/organ/internal + var/dead_icon // Icon to use when the organ has died. +/obj/item/organ/internal/die() + ..() + if((status & ORGAN_DEAD) && dead_icon) + icon_state = dead_icon + +/obj/item/organ/internal/Destroy() + if(owner) + owner.internal_organs.Remove(src) + owner.internal_organs_by_name[organ_tag] = null + owner.internal_organs_by_name -= organ_tag + while(null in owner.internal_organs) + owner.internal_organs -= null + var/obj/item/organ/external/E = owner.organs_by_name[parent_organ] + if(istype(E)) E.internal_organs -= src + return ..() + +/obj/item/organ/internal/remove_rejuv() + if(owner) + owner.internal_organs -= src + owner.internal_organs_by_name[organ_tag] = null + owner.internal_organs_by_name -= organ_tag + while(null in owner.internal_organs) + owner.internal_organs -= null + var/obj/item/organ/external/E = owner.organs_by_name[parent_organ] + if(istype(E)) E.internal_organs -= src + ..() // Brain is defined in brain_item.dm. -/obj/item/organ/heart +/obj/item/organ/internal/heart name = "heart" icon_state = "heart-on" - organ_tag = "heart" - parent_organ = "chest" + organ_tag = O_HEART + parent_organ = BP_TORSO dead_icon = "heart-off" -/obj/item/organ/lungs +/obj/item/organ/internal/lungs name = "lungs" icon_state = "lungs" gender = PLURAL - organ_tag = "lungs" - parent_organ = "chest" + organ_tag = O_LUNGS + parent_organ = BP_TORSO -/obj/item/organ/lungs/process() +/obj/item/organ/internal/lungs/process() ..() if(!owner) @@ -38,14 +66,14 @@ spawn owner.emote("me", 1, "gasps for air!") owner.losebreath += 15 -/obj/item/organ/kidneys +/obj/item/organ/internal/kidneys name = "kidneys" icon_state = "kidneys" gender = PLURAL - organ_tag = "kidneys" - parent_organ = "groin" + organ_tag = O_KIDNEYS + parent_organ = BP_GROIN -/obj/item/organ/kidneys/process() +/obj/item/organ/internal/kidneys/process() ..() @@ -62,22 +90,39 @@ else if(is_broken()) owner.adjustToxLoss(0.3 * PROCESS_ACCURACY) -/obj/item/organ/eyes +/obj/item/organ/internal/eyes name = "eyeballs" icon_state = "eyes" gender = PLURAL - organ_tag = "eyes" - parent_organ = "head" + organ_tag = O_EYES + parent_organ = BP_HEAD var/list/eye_colour = list(0,0,0) -/obj/item/organ/eyes/robotize() +/obj/item/organ/internal/eyes/robotize() ..() name = "optical sensor" icon = 'icons/obj/robot_component.dmi' icon_state = "camera" dead_icon = "camera_broken" -/obj/item/organ/eyes/proc/update_colour() +/obj/item/organ/internal/eyes/robot + name = "optical sensor" + +/obj/item/organ/internal/eyes/robot/New() + ..() + robotize() + +/obj/item/organ/internal/eyes/replaced(var/mob/living/carbon/human/target) + + // Apply our eye colour to the target. + if(istype(target) && eye_colour) + target.r_eyes = eye_colour[1] + target.g_eyes = eye_colour[2] + target.b_eyes = eye_colour[3] + target.update_eyes() + ..() + +/obj/item/organ/internal/eyes/proc/update_colour() if(!owner) return eye_colour = list( @@ -86,13 +131,13 @@ owner.b_eyes ? owner.b_eyes : 0 ) -/obj/item/organ/eyes/take_damage(amount, var/silent=0) +/obj/item/organ/internal/eyes/take_damage(amount, var/silent=0) var/oldbroken = is_broken() ..() if(is_broken() && !oldbroken && owner && !owner.stat) owner << "You go blind!" -/obj/item/organ/eyes/process() //Eye damage replaces the old eye_stat var. +/obj/item/organ/internal/eyes/process() //Eye damage replaces the old eye_stat var. ..() if(!owner) return @@ -101,13 +146,13 @@ if(is_broken()) owner.eye_blind = 20 -/obj/item/organ/liver +/obj/item/organ/internal/liver name = "liver" icon_state = "liver" organ_tag = "liver" - parent_organ = "groin" + parent_organ = BP_GROIN -/obj/item/organ/liver/process() +/obj/item/organ/internal/liver/process() ..() @@ -130,7 +175,7 @@ src.damage += 0.2 * PROCESS_ACCURACY //Damaged one shares the fun else - var/obj/item/organ/O = pick(owner.internal_organs) + var/obj/item/organ/internal/O = pick(owner.internal_organs) if(O) O.damage += 0.2 * PROCESS_ACCURACY @@ -155,13 +200,13 @@ else take_damage(owner.chem_effects[CE_ALCOHOL_TOXIC] * 0.1 * PROCESS_ACCURACY, prob(1)) // Chance to warn them -/obj/item/organ/appendix +/obj/item/organ/internal/appendix name = "appendix" icon_state = "appendix" - parent_organ = "groin" + parent_organ = BP_GROIN organ_tag = "appendix" -/obj/item/organ/appendix/removed() +/obj/item/organ/internal/appendix/removed() if(owner) var/inflamed = 0 for(var/datum/disease/appendicitis/appendicitis in owner.viruses) diff --git a/code/modules/organs/organ_stump.dm b/code/modules/organs/organ_stump.dm index d59e747033..ef1fffd01b 100644 --- a/code/modules/organs/organ_stump.dm +++ b/code/modules/organs/organ_stump.dm @@ -5,7 +5,7 @@ /obj/item/organ/external/stump/New(var/mob/living/carbon/holder, var/internal, var/obj/item/organ/external/limb) if(istype(limb)) - limb_name = limb.limb_name + organ_tag = limb.organ_tag body_part = limb.body_part amputation_point = limb.amputation_point joint = limb.joint diff --git a/code/modules/organs/robolimbs.dm b/code/modules/organs/robolimbs.dm index 47ae475735..3c717847cc 100644 --- a/code/modules/organs/robolimbs.dm +++ b/code/modules/organs/robolimbs.dm @@ -1,6 +1,6 @@ -var/global/list/all_robolimbs = list() -var/global/list/chargen_robolimbs = list() -var/global/datum/robolimb/basic_robolimb +var/list/all_robolimbs = list() +var/list/chargen_robolimbs = list() +var/datum/robolimb/basic_robolimb /proc/populate_robolimb_list() basic_robolimb = new() @@ -18,26 +18,26 @@ var/global/datum/robolimb/basic_robolimb var/list/species_cannot_use = list() /datum/robolimb/bishop - company = "Bishop Cybernetics" + company = "Bishop" desc = "This limb has a white polymer casing with blue holo-displays." icon = 'icons/mob/human_races/cyberlimbs/bishop.dmi' /datum/robolimb/hesphaistos - company = "Hesphiastos Industries" + company = "Hesphiastos" desc = "This limb has a militaristic black and green casing with gold stripes." icon = 'icons/mob/human_races/cyberlimbs/hesphaistos.dmi' /datum/robolimb/zenghu - company = "Zeng-Hu Pharmaceuticals" + company = "Zeng-Hu" desc = "This limb has a rubbery fleshtone covering with visible seams." icon = 'icons/mob/human_races/cyberlimbs/zenghu.dmi' /datum/robolimb/xion - company = "Xion Manufacturing Group" + company = "Xion" desc = "This limb has a minimalist black and red casing." icon = 'icons/mob/human_races/cyberlimbs/xion.dmi' /datum/robolimb/ipc - company = "Morpheus Cyberkinetics" + company = "Morpheus" desc = "This limb is simple and functional; no effort has been made to make it look human." icon = 'icons/mob/human_races/cyberlimbs/ipc.dmi' diff --git a/code/modules/organs/subtypes/diona.dm b/code/modules/organs/subtypes/diona.dm index 5d77383d2a..3630719d94 100644 --- a/code/modules/organs/subtypes/diona.dm +++ b/code/modules/organs/subtypes/diona.dm @@ -26,7 +26,7 @@ /obj/item/organ/external/diona/chest name = "core trunk" - limb_name = "chest" + organ_tag = BP_TORSO icon_name = "torso" max_damage = 200 min_broken_damage = 50 @@ -35,56 +35,58 @@ vital = 1 cannot_amputate = 1 parent_organ = null + gendered_icon = 1 /obj/item/organ/external/diona/groin name = "fork" - limb_name = "groin" + organ_tag = BP_GROIN icon_name = "groin" max_damage = 100 min_broken_damage = 50 w_class = 4 body_part = LOWER_TORSO - parent_organ = "chest" + parent_organ = BP_TORSO + gendered_icon = 1 /obj/item/organ/external/diona/arm name = "left upper tendril" - limb_name = "l_arm" + organ_tag = "l_arm" icon_name = "l_arm" max_damage = 35 min_broken_damage = 20 w_class = 3 body_part = ARM_LEFT - parent_organ = "chest" + parent_organ = BP_TORSO can_grasp = 1 /obj/item/organ/external/diona/arm/right name = "right upper tendril" - limb_name = "r_arm" + organ_tag = "r_arm" icon_name = "r_arm" body_part = ARM_RIGHT /obj/item/organ/external/diona/leg name = "left lower tendril" - limb_name = "l_leg" + organ_tag = "l_leg" icon_name = "l_leg" max_damage = 35 min_broken_damage = 20 w_class = 3 body_part = LEG_LEFT icon_position = LEFT - parent_organ = "groin" + parent_organ = BP_GROIN can_stand = 1 /obj/item/organ/external/diona/leg/right name = "right lower tendril" - limb_name = "r_leg" + organ_tag = "r_leg" icon_name = "r_leg" body_part = LEG_RIGHT icon_position = RIGHT /obj/item/organ/external/diona/foot name = "left foot" - limb_name = "l_foot" + organ_tag = "l_foot" icon_name = "l_foot" max_damage = 20 min_broken_damage = 10 @@ -96,7 +98,7 @@ /obj/item/organ/external/diona/foot/right name = "right foot" - limb_name = "r_foot" + organ_tag = "r_foot" icon_name = "r_foot" body_part = FOOT_RIGHT icon_position = RIGHT @@ -106,7 +108,7 @@ /obj/item/organ/external/diona/hand name = "left grasper" - limb_name = "l_hand" + organ_tag = "l_hand" icon_name = "l_hand" max_damage = 30 min_broken_damage = 15 @@ -117,13 +119,15 @@ /obj/item/organ/external/diona/hand/right name = "right grasper" - limb_name = "r_hand" + organ_tag = "r_hand" icon_name = "r_hand" body_part = HAND_RIGHT parent_organ = "r_arm" //DIONA ORGANS. /obj/item/organ/external/diona/removed() + if(status & ORGAN_ROBOT) + return ..() var/mob/living/carbon/human/H = owner ..() if(!istype(H) || !H.organs || !H.organs.len) @@ -131,63 +135,65 @@ if(prob(50) && spawn_diona_nymph(get_turf(src))) qdel(src) -/obj/item/organ/diona/process() - return - -/obj/item/organ/diona/strata - name = "neural strata" - parent_organ = "chest" - -/obj/item/organ/diona/bladder - name = "gas bladder" - parent_organ = "head" - -/obj/item/organ/diona/polyp - name = "polyp segment" - parent_organ = "groin" - -/obj/item/organ/diona/ligament - name = "anchoring ligament" - parent_organ = "groin" - -/obj/item/organ/diona/node - name = "receptor node" - parent_organ = "head" - -/obj/item/organ/diona/nutrients - name = "nutrient vessel" - parent_organ = "chest" - -/obj/item/organ/diona +/obj/item/organ/internal/diona name = "diona nymph" icon = 'icons/obj/objects.dmi' icon_state = "nymph" organ_tag = "special" // Turns into a nymph instantly, no transplanting possible. -/obj/item/organ/diona/removed(var/mob/living/user) +/obj/item/organ/internal/diona/removed(var/mob/living/user, var/skip_nymph) + if(status & ORGAN_ROBOT) + return ..() var/mob/living/carbon/human/H = owner ..() if(!istype(H) || !H.organs || !H.organs.len) H.death() - if(prob(50) && spawn_diona_nymph(get_turf(src))) + if(prob(50) && !skip_nymph && spawn_diona_nymph(get_turf(src))) qdel(src) +/obj/item/organ/internal/diona/process() + return + +/obj/item/organ/internal/diona/strata + name = "neural strata" + parent_organ = BP_TORSO + +/obj/item/organ/internal/diona/bladder + name = "gas bladder" + parent_organ = BP_HEAD + +/obj/item/organ/internal/diona/polyp + name = "polyp segment" + parent_organ = BP_GROIN + +/obj/item/organ/internal/diona/ligament + name = "anchoring ligament" + parent_organ = BP_GROIN + +/obj/item/organ/internal/diona/node + name = "receptor node" + parent_organ = BP_HEAD + +/obj/item/organ/internal/diona/nutrients + name = O_NUTRIENT + parent_organ = BP_TORSO + // These are different to the standard diona organs as they have a purpose in other // species (absorbing radiation and light respectively) -/obj/item/organ/diona/nutrients - name = "nutrient vessel" - organ_tag = "nutrient vessel" +/obj/item/organ/internal/diona/nutrients + name = O_NUTRIENT + organ_tag = O_NUTRIENT icon = 'icons/mob/alien.dmi' icon_state = "claw" -/obj/item/organ/diona/nutrients/removed() - return +/obj/item/organ/internal/diona/nutrients/removed(var/mob/user) + return ..(user, 1) -/obj/item/organ/diona/node +/obj/item/organ/internal/diona/node name = "receptor node" organ_tag = "receptor node" icon = 'icons/mob/alien.dmi' icon_state = "claw" -/obj/item/organ/diona/node/removed() +/obj/item/organ/internal/diona/node/removed() return diff --git a/code/modules/organs/subtypes/machine.dm b/code/modules/organs/subtypes/machine.dm index 3d551a3760..db34e58891 100644 --- a/code/modules/organs/subtypes/machine.dm +++ b/code/modules/organs/subtypes/machine.dm @@ -1,17 +1,17 @@ -/obj/item/organ/cell +/obj/item/organ/internal/cell name = "microbattery" desc = "A small, powerful cell for use in fully prosthetic bodies." icon = 'icons/obj/power.dmi' icon_state = "scell" organ_tag = "cell" - parent_organ = "chest" + parent_organ = BP_TORSO vital = 1 -/obj/item/organ/cell/New() +/obj/item/organ/internal/cell/New() robotize() ..() -/obj/item/organ/cell/replaced() +/obj/item/organ/internal/cell/replaced() ..() // This is very ghetto way of rebooting an IPC. TODO better way. if(owner && owner.stat == DEAD) @@ -19,59 +19,50 @@ owner.visible_message("\The [owner] twitches visibly!") // Used for an MMI or posibrain being installed into a human. -/obj/item/organ/mmi_holder - name = "brain" +/obj/item/organ/internal/mmi_holder + name = "brain interface" organ_tag = "brain" - parent_organ = "head" + parent_organ = BP_HEAD vital = 1 var/obj/item/device/mmi/stored_mmi -/obj/item/organ/mmi_holder/Destroy() +/obj/item/organ/internal/mmi_holder/Destroy() stored_mmi = null return ..() -/obj/item/organ/mmi_holder/New() - ..() +/obj/item/organ/internal/mmi_holder/New(var/mob/living/carbon/human/new_owner, var/internal) + ..(new_owner, internal) if(!stored_mmi) stored_mmi = new(src) + sleep(-1) + update_from_mmi() - spawn(1) - - if(!owner) - if(stored_mmi) - stored_mmi.loc = get_turf(src) - qdel(src) - return - - update_from_mmi() - if(stored_mmi.brainmob && owner && owner.stat == DEAD) - owner.stat = 0 - owner.visible_message("\The [owner] twitches visibly!") - -/obj/item/organ/mmi_holder/proc/update_from_mmi() - - if(!stored_mmi) - return +/obj/item/organ/internal/mmi_holder/proc/update_from_mmi() if(!stored_mmi.brainmob) - stored_mmi.brainmob = new(src) + stored_mmi.brainmob = new(stored_mmi) + stored_mmi.brainobj = new(stored_mmi) + stored_mmi.brainmob.container = stored_mmi + stored_mmi.brainmob.real_name = owner.real_name + stored_mmi.brainmob.name = stored_mmi.brainmob.real_name + stored_mmi.name = "[initial(stored_mmi.name)] ([owner.real_name])" - stored_mmi.brainmob.real_name = owner.name - stored_mmi.brainmob.name = stored_mmi.brainmob.real_name - - if(owner) - stored_mmi.name = "[initial(stored_mmi.name)] ([owner.name])" + if(!owner) return name = stored_mmi.name desc = stored_mmi.desc icon = stored_mmi.icon + + stored_mmi.icon_state = "mmi_full" icon_state = stored_mmi.icon_state -/obj/item/organ/mmi_holder/removed() - update_from_mmi() - return ..() + if(owner && owner.stat == DEAD) + owner.stat = 0 + dead_mob_list -= owner + living_mob_list |= owner + owner.visible_message("\The [owner] twitches visibly!") -/obj/item/organ/mmi_holder/removed(var/mob/living/user) +/obj/item/organ/internal/mmi_holder/removed(var/mob/living/user) if(stored_mmi) stored_mmi.loc = get_turf(src) @@ -84,9 +75,14 @@ holder_mob.drop_from_inventory(src) qdel(src) -/obj/item/organ/mmi_holder/posibrain - name = "positronic brain" +/obj/item/organ/internal/mmi_holder/posibrain + name = "positronic brain interface" -/obj/item/organ/mmi_holder/posibrain/New() +/obj/item/organ/internal/mmi_holder/posibrain/New() stored_mmi = new /obj/item/device/mmi/digital/posibrain(src) ..() + +/obj/item/organ/internal/mmi_holder/posibrain/update_from_mmi() + ..() + stored_mmi.icon_state = "posibrain-occupied" + icon_state = stored_mmi.icon_state \ No newline at end of file diff --git a/code/modules/organs/subtypes/standard.dm b/code/modules/organs/subtypes/standard.dm index 54ec34ae70..5d195f3b0c 100644 --- a/code/modules/organs/subtypes/standard.dm +++ b/code/modules/organs/subtypes/standard.dm @@ -4,7 +4,7 @@ /obj/item/organ/external/chest name = "upper body" - limb_name = "chest" + organ_tag = BP_TORSO icon_name = "torso" max_damage = 100 min_broken_damage = 35 @@ -21,34 +21,34 @@ /obj/item/organ/external/groin name = "lower body" - limb_name = "groin" + organ_tag = BP_GROIN icon_name = "groin" max_damage = 100 min_broken_damage = 35 w_class = 4 body_part = LOWER_TORSO vital = 1 - parent_organ = "chest" + parent_organ = BP_TORSO amputation_point = "lumbar" joint = "hip" dislocated = -1 gendered_icon = 1 /obj/item/organ/external/arm - limb_name = "l_arm" + organ_tag = "l_arm" name = "left arm" icon_name = "l_arm" max_damage = 50 min_broken_damage = 30 w_class = 3 body_part = ARM_LEFT - parent_organ = "chest" + parent_organ = BP_TORSO joint = "left elbow" amputation_point = "left shoulder" can_grasp = 1 /obj/item/organ/external/arm/right - limb_name = "r_arm" + organ_tag = "r_arm" name = "right arm" icon_name = "r_arm" body_part = ARM_RIGHT @@ -56,7 +56,7 @@ amputation_point = "right shoulder" /obj/item/organ/external/leg - limb_name = "l_leg" + organ_tag = "l_leg" name = "left leg" icon_name = "l_leg" max_damage = 50 @@ -64,13 +64,13 @@ w_class = 3 body_part = LEG_LEFT icon_position = LEFT - parent_organ = "groin" + parent_organ = BP_GROIN joint = "left knee" amputation_point = "left hip" can_stand = 1 /obj/item/organ/external/leg/right - limb_name = "r_leg" + organ_tag = "r_leg" name = "right leg" icon_name = "r_leg" body_part = LEG_RIGHT @@ -79,7 +79,7 @@ amputation_point = "right hip" /obj/item/organ/external/foot - limb_name = "l_foot" + organ_tag = "l_foot" name = "left foot" icon_name = "l_foot" max_damage = 30 @@ -97,7 +97,7 @@ ..() /obj/item/organ/external/foot/right - limb_name = "r_foot" + organ_tag = "r_foot" name = "right foot" icon_name = "r_foot" body_part = FOOT_RIGHT @@ -107,7 +107,7 @@ amputation_point = "right ankle" /obj/item/organ/external/hand - limb_name = "l_hand" + organ_tag = "l_hand" name = "left hand" icon_name = "l_hand" max_damage = 30 @@ -124,7 +124,7 @@ ..() /obj/item/organ/external/hand/right - limb_name = "r_hand" + organ_tag = "r_hand" name = "right hand" icon_name = "r_hand" body_part = HAND_RIGHT @@ -133,7 +133,7 @@ amputation_point = "right wrist" /obj/item/organ/external/head - limb_name = "head" + organ_tag = BP_HEAD icon_name = "head" name = "head" max_damage = 75 @@ -141,7 +141,7 @@ w_class = 3 body_part = HEAD vital = 1 - parent_organ = "chest" + parent_organ = BP_TORSO joint = "jaw" amputation_point = "neck" gendered_icon = 1 diff --git a/code/modules/organs/subtypes/xenos.dm b/code/modules/organs/subtypes/xenos.dm index 0b1233085f..e734d745f7 100644 --- a/code/modules/organs/subtypes/xenos.dm +++ b/code/modules/organs/subtypes/xenos.dm @@ -1,52 +1,52 @@ //XENOMORPH ORGANS -/obj/item/organ/xenos +/obj/item/organ/internal/xenos name = "xeno organ" icon = 'icons/effects/blood.dmi' desc = "It smells like an accident in a chemical factory." -/obj/item/organ/xenos/eggsac +/obj/item/organ/internal/xenos/eggsac name = "egg sac" - parent_organ = "groin" + parent_organ = BP_GROIN icon_state = "xgibmid1" - organ_tag = "egg sac" + organ_tag = O_EGG -/obj/item/organ/xenos/plasmavessel +/obj/item/organ/internal/xenos/plasmavessel name = "plasma vessel" - parent_organ = "chest" + parent_organ = BP_TORSO icon_state = "xgibdown1" - organ_tag = "plasma vessel" + organ_tag = O_PLASMA var/stored_plasma = 0 var/max_plasma = 500 -/obj/item/organ/xenos/plasmavessel/queen +/obj/item/organ/internal/xenos/plasmavessel/queen name = "bloated plasma vessel" stored_plasma = 200 max_plasma = 500 -/obj/item/organ/xenos/plasmavessel/sentinel +/obj/item/organ/internal/xenos/plasmavessel/sentinel stored_plasma = 100 max_plasma = 250 -/obj/item/organ/xenos/plasmavessel/hunter +/obj/item/organ/internal/xenos/plasmavessel/hunter name = "tiny plasma vessel" stored_plasma = 100 max_plasma = 150 -/obj/item/organ/xenos/acidgland +/obj/item/organ/internal/xenos/acidgland name = "acid gland" - parent_organ = "head" + parent_organ = BP_HEAD icon_state = "xgibtorso" - organ_tag = "acid gland" + organ_tag = O_ACID -/obj/item/organ/xenos/hivenode +/obj/item/organ/internal/xenos/hivenode name = "hive node" - parent_organ = "chest" + parent_organ = BP_TORSO icon_state = "xgibmid2" - organ_tag = "hive node" + organ_tag = O_HIVE -/obj/item/organ/xenos/resinspinner +/obj/item/organ/internal/xenos/resinspinner name = "resin spinner" - parent_organ = "head" + parent_organ = BP_HEAD icon_state = "xgibmid2" - organ_tag = "resin spinner" + organ_tag = O_RESIN diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 66ee2b39dc..9cb37d98a9 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -140,12 +140,12 @@ return /obj/item/weapon/paper/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) - if(user.zone_sel.selecting == "eyes") + if(user.zone_sel.selecting == O_EYES) user.visible_message("You show the paper to [M]. ", \ " [user] holds up a paper and shows it to [M]. ") M.examinate(src) - else if(user.zone_sel.selecting == "mouth") // lipstick wiping + else if(user.zone_sel.selecting == O_MOUTH) // lipstick wiping if(ishuman(M)) var/mob/living/carbon/human/H = M if(H == user) diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index ee40394c78..7ed01b02fe 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -136,7 +136,7 @@ Fire(A,user,params) //Otherwise, fire normally. /obj/item/weapon/gun/attack(atom/A, mob/living/user, def_zone) - if (A == user && user.zone_sel.selecting == "mouth" && !mouthshoot) + if (A == user && user.zone_sel.selecting == O_MOUTH && !mouthshoot) handle_suicide(user) else if(user.a_intent == I_HURT) //point blank shooting Fire(A, user, pointblank=1) @@ -344,7 +344,7 @@ in_chamber.on_hit(M) if (in_chamber.damage_type != HALLOSS) - user.apply_damage(in_chamber.damage*2.5, in_chamber.damage_type, "head", used_weapon = "Point blank shot in the mouth with \a [in_chamber]", sharp=1) + user.apply_damage(in_chamber.damage*2.5, in_chamber.damage_type, BP_HEAD, used_weapon = "Point blank shot in the mouth with \a [in_chamber]", sharp=1) user.death() else user << "Ow..." diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm index f13c216945..3209560007 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm @@ -72,7 +72,7 @@ /datum/reagent/blood/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.check_is_prosthetic()) + if(H.isSynthetic()) return if(data && data["viruses"]) for(var/datum/disease/D in data["viruses"]) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm index 88f314c99d..e77b86a30a 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -246,7 +246,7 @@ if(prob(50)) M.apply_effect(50, IRRADIATE, check_protection = 0) // curing it that way may kill you instead var/absorbed = 0 - var/obj/item/organ/diona/nutrients/rad_organ = locate() in M.internal_organs + var/obj/item/organ/internal/diona/nutrients/rad_organ = locate() in M.internal_organs if(rad_organ && !rad_organ.is_broken()) absorbed = 1 if(!absorbed) @@ -323,7 +323,7 @@ if(!M.unacidable && removed > 0) if(istype(M, /mob/living/carbon/human) && volume >= meltdose) var/mob/living/carbon/human/H = M - var/obj/item/organ/external/affecting = H.get_organ("head") + var/obj/item/organ/external/affecting = H.get_organ(BP_HEAD) if(affecting) if(affecting.take_damage(0, removed * power * 0.1)) H.UpdateDamageIcon() diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 6c169852b9..6c899d831a 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -1763,7 +1763,7 @@ M.adjustToxLoss(2 * removed) if(dose > 60 && ishuman(M) && prob(5)) var/mob/living/carbon/human/H = M - var/obj/item/organ/heart/L = H.internal_organs_by_name["heart"] + var/obj/item/organ/internal/heart/L = H.internal_organs_by_name[O_HEART] if (L && istype(L)) if(dose < 120) L.take_damage(10 * removed, 0) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm index b392e789e0..e947e9ea15 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm @@ -255,7 +255,7 @@ M.eye_blind = max(M.eye_blind - 5, 0) if(ishuman(M)) var/mob/living/carbon/human/H = M - var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"] + var/obj/item/organ/internal/eyes/E = H.internal_organs_by_name[O_EYES] if(E && istype(E)) if(E.damage > 0) E.damage = max(E.damage - 5 * removed, 0) diff --git a/code/modules/reagents/reagent_containers/food/snacks.dm b/code/modules/reagents/reagent_containers/food/snacks.dm index e4e4ed4c31..48a0b9eb7c 100644 --- a/code/modules/reagents/reagent_containers/food/snacks.dm +++ b/code/modules/reagents/reagent_containers/food/snacks.dm @@ -1540,42 +1540,6 @@ if(wrapped) Unwrap(user) - /* - On_Consume(var/mob/M) - M << "Something inside of you suddently expands!" - - if (istype(M, /mob/living/carbon/human)) - //Do not try to understand. - var/obj/item/weapon/surprise = new/obj/item/weapon(M) - var/mob/ook = monkey_type - surprise.icon = initial(ook.icon) - surprise.icon_state = initial(ook.icon_state) - surprise.name = "malformed [initial(ook.name)]" - surprise.desc = "Looks like \a very deformed [initial(ook.name)], a little small for its kind. It shows no signs of life." - surprise.transform *= 0.6 - surprise.add_blood(M) - var/mob/living/carbon/human/H = M - var/obj/item/organ/external/E = H.get_organ("chest") - E.fracture() - for (var/obj/item/organ/I in E.internal_organs) - I.take_damage(rand(I.min_bruised_damage, I.min_broken_damage+1)) - - if (!E.hidden && prob(60)) //set it snuggly - E.hidden = surprise - E.cavity = 0 - else //someone is having a bad day - E.createwound(CUT, 30) - E.embed(surprise) - else if (issmall(M)) - M.visible_message("[M] suddenly tears in half!") - var/mob/living/carbon/monkey/ook = new monkey_type(M.loc) - ook.name = "malformed [ook.name]" - ook.transform *= 0.6 - ook.add_blood(M) - M.gib() - ..() - */ - proc/Expand() src.visible_message("\The [src] expands!") var/mob/living/carbon/human/H = new(src.loc) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 75ef62894d..e14bd53cc1 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -96,7 +96,7 @@ var/datum/reagent/B if(istype(T, /mob/living/carbon/human)) var/mob/living/carbon/human/H = T - if(H.species && !H.should_have_organ("heart")) + if(H.species && !H.should_have_organ(O_HEART)) H.reagents.trans_to_obj(src, amount) else B = T.take_blood(src, amount) diff --git a/code/modules/surgery/bones.dm b/code/modules/surgery/bones.dm index 823561b5d8..ff0ea12635 100644 --- a/code/modules/surgery/bones.dm +++ b/code/modules/surgery/bones.dm @@ -52,7 +52,7 @@ if (!hasorgans(target)) return 0 var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.name != "head" && !(affected.status & ORGAN_ROBOT) && affected.open >= 2 && affected.stage == 1 + return affected && affected.organ_tag != BP_HEAD && !(affected.status & ORGAN_ROBOT) && affected.open >= 2 && affected.stage == 1 begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -91,7 +91,7 @@ if (!hasorgans(target)) return 0 var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.name == "head" && !(affected.status & ORGAN_ROBOT) && affected.open >= 2 && affected.stage == 1 + return affected && affected.organ_tag == BP_HEAD && !(affected.status & ORGAN_ROBOT) && affected.open >= 2 && affected.stage == 1 begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) user.visible_message("[user] is beginning to piece together [target]'s skull with \the [tool]." , \ diff --git a/code/modules/surgery/face.dm b/code/modules/surgery/face.dm index 7272ecf49e..f4e723d0c6 100644 --- a/code/modules/surgery/face.dm +++ b/code/modules/surgery/face.dm @@ -12,7 +12,7 @@ var/obj/item/organ/external/affected = target.get_organ(target_zone) if (!affected || (affected.status & ORGAN_ROBOT)) return 0 - return target_zone == "mouth" + return target_zone == O_MOUTH /datum/surgery_step/generic/cut_face allowed_tools = list( @@ -25,7 +25,7 @@ max_duration = 110 can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - return ..() && target_zone == "mouth" && target.op_stage.face == 0 + return ..() && target_zone == O_MOUTH && target.op_stage.face == 0 begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) user.visible_message("[user] starts to cut open [target]'s face and neck with \the [tool].", \ diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index 0fef3de54c..2dd0390c61 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -8,7 +8,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if (isslime(target)) return 0 - if (target_zone == "eyes") //there are specific steps for eye surgery + if (target_zone == O_EYES) //there are specific steps for eye surgery return 0 if (!hasorgans(target)) return 0 @@ -35,7 +35,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if(..()) var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.open == 0 && target_zone != "mouth" + return affected && affected.open == 0 && target_zone != O_MOUTH begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -73,7 +73,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if(..()) var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.open == 0 && target_zone != "mouth" + return affected && affected.open == 0 && target_zone != O_MOUTH begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -88,7 +88,7 @@ "\blue You have constructed a prepared incision on and within [target]'s [affected.name] with \the [tool].",) affected.open = 1 - if(istype(target) && target.should_have_organ("heart")) + if(istype(target) && target.should_have_organ(O_HEART)) affected.status |= ORGAN_BLEEDING affected.createwound(CUT, 1) @@ -115,7 +115,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if(..()) var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.open == 0 && target_zone != "mouth" + return affected && affected.open == 0 && target_zone != O_MOUTH begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -130,7 +130,7 @@ "\blue You have made an incision on [target]'s [affected.name] with \the [tool].",) affected.open = 1 - if(istype(target) && target.should_have_organ("heart")) + if(istype(target) && target.should_have_organ(O_HEART)) affected.status |= ORGAN_BLEEDING affected.createwound(CUT, 1) @@ -195,10 +195,10 @@ var/obj/item/organ/external/affected = target.get_organ(target_zone) var/msg = "[user] starts to pry open the incision on [target]'s [affected.name] with \the [tool]." var/self_msg = "You start to pry open the incision on [target]'s [affected.name] with \the [tool]." - if (target_zone == "chest") + if (target_zone == BP_TORSO) msg = "[user] starts to separate the ribcage and rearrange the organs in [target]'s torso with \the [tool]." self_msg = "You start to separate the ribcage and rearrange the organs in [target]'s torso with \the [tool]." - if (target_zone == "groin") + if (target_zone == BP_GROIN) msg = "[user] starts to pry open the incision and rearrange the organs in [target]'s lower abdomen with \the [tool]." self_msg = "You start to pry open the incision and rearrange the organs in [target]'s lower abdomen with \the [tool]." user.visible_message(msg, self_msg) @@ -209,10 +209,10 @@ var/obj/item/organ/external/affected = target.get_organ(target_zone) var/msg = "\blue [user] keeps the incision open on [target]'s [affected.name] with \the [tool]." var/self_msg = "\blue You keep the incision open on [target]'s [affected.name] with \the [tool]." - if (target_zone == "chest") + if (target_zone == BP_TORSO) msg = "\blue [user] keeps the ribcage open on [target]'s torso with \the [tool]." self_msg = "\blue You keep the ribcage open on [target]'s torso with \the [tool]." - if (target_zone == "groin") + if (target_zone == BP_GROIN) msg = "\blue [user] keeps the incision open on [target]'s lower abdomen with \the [tool]." self_msg = "\blue You keep the incision open on [target]'s lower abdomen with \the [tool]." user.visible_message(msg, self_msg) @@ -222,10 +222,10 @@ var/obj/item/organ/external/affected = target.get_organ(target_zone) var/msg = "\red [user]'s hand slips, tearing the edges of the incision on [target]'s [affected.name] with \the [tool]!" var/self_msg = "\red Your hand slips, tearing the edges of the incision on [target]'s [affected.name] with \the [tool]!" - if (target_zone == "chest") + if (target_zone == BP_TORSO) msg = "\red [user]'s hand slips, damaging several organs in [target]'s torso with \the [tool]!" self_msg = "\red Your hand slips, damaging several organs in [target]'s torso with \the [tool]!" - if (target_zone == "groin") + if (target_zone == BP_GROIN) msg = "\red [user]'s hand slips, damaging several organs in [target]'s lower abdomen with \the [tool]" self_msg = "\red Your hand slips, damaging several organs in [target]'s lower abdomen with \the [tool]!" user.visible_message(msg, self_msg) @@ -245,7 +245,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if(..()) var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.open && target_zone != "mouth" + return affected && affected.open && target_zone != O_MOUTH begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -278,7 +278,7 @@ max_duration = 160 can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - if (target_zone == "eyes") //there are specific steps for eye surgery + if (target_zone == O_EYES) //there are specific steps for eye surgery return 0 if (!hasorgans(target)) return 0 diff --git a/code/modules/surgery/implant.dm b/code/modules/surgery/implant.dm index 213391fd62..f178a6a45b 100644 --- a/code/modules/surgery/implant.dm +++ b/code/modules/surgery/implant.dm @@ -153,7 +153,7 @@ max_duration = 100 can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - var/obj/item/organ/brain/sponge = target.internal_organs_by_name["brain"] + var/obj/item/organ/internal/brain/sponge = target.internal_organs_by_name["brain"] return ..() && (!sponge || !sponge.damage) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index e074cbcca5..41b6ad8cd4 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -35,7 +35,7 @@ if (!hasorgans(target)) return var/obj/item/organ/external/affected = target.get_organ(target_zone) - return ..() && affected && embryo && affected.open == 3 && target_zone == "chest" + return ..() && affected && embryo && affected.open == 3 && target_zone == BP_TORSO begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/msg = "[user] starts to pull something out from [target]'s ribcage with \the [tool]." @@ -218,8 +218,8 @@ var/list/removable_organs = list() for(var/organ in target.internal_organs_by_name) - var/obj/item/organ/I = target.internal_organs_by_name[organ] - if((I.status & ORGAN_CUT_AWAY) && I.parent_organ == target_zone) + var/obj/item/organ/internal/I = target.internal_organs_by_name[organ] + if(istype(I) && (I.status & ORGAN_CUT_AWAY) && I.parent_organ == target_zone) removable_organs |= organ var/organ_to_remove = input(user, "Which organ do you want to remove?") as null|anything in removable_organs @@ -262,7 +262,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - var/obj/item/organ/O = tool + var/obj/item/organ/internal/O = tool var/obj/item/organ/external/affected = target.get_organ(target_zone) if(!affected) return var/organ_compatible @@ -275,35 +275,24 @@ user << "You cannot install a naked organ into a robotic body." return SURGERY_FAILURE - if(!target.species) - user << "You have no idea what species this person is. Report this on the bug tracker." - return SURGERY_FAILURE - var/o_is = (O.gender == PLURAL) ? "are" : "is" var/o_a = (O.gender == PLURAL) ? "" : "a " var/o_do = (O.gender == PLURAL) ? "don't" : "doesn't" - if(O.organ_tag == "limb") - return 0 - else if(target.should_have_organ(O.organ_tag)) + if(O.damage > (O.max_damage * 0.75)) + user << "\The [O.organ_tag] [o_is] in no state to be transplanted." + return SURGERY_FAILURE - if(O.damage > (O.max_damage * 0.75)) - user << "\The [O.organ_tag] [o_is] in no state to be transplanted." - return SURGERY_FAILURE - - if(!target.internal_organs_by_name[O.organ_tag]) - organ_missing = 1 - else - user << "\The [target] already has [o_a][O.organ_tag]." - return SURGERY_FAILURE - - if(O && affected.limb_name == O.parent_organ) - organ_compatible = 1 - else - user << "\The [O.organ_tag] [o_do] normally go in \the [affected.name]." - return SURGERY_FAILURE + if(!target.internal_organs_by_name[O.organ_tag]) + organ_missing = 1 else - user << "You're pretty sure [target.species.name_plural] don't normally have [o_a][O.organ_tag]." + user << "\The [target] already has [o_a][O.organ_tag]." + return SURGERY_FAILURE + + if(O && affected.organ_tag == O.parent_organ) + organ_compatible = 1 + else + user << "\The [O.organ_tag] [o_do] normally go in \the [affected.name]." return SURGERY_FAILURE return ..() && organ_missing && organ_compatible @@ -350,7 +339,7 @@ var/list/removable_organs = list() for(var/organ in target.internal_organs_by_name) var/obj/item/organ/I = target.internal_organs_by_name[organ] - if(I && (I.status & ORGAN_CUT_AWAY) && !(I.status & ORGAN_ROBOT) && I.parent_organ == target_zone) + if(istype(I) && (I.status & ORGAN_CUT_AWAY) && !(I.status & ORGAN_ROBOT) && I.parent_organ == target_zone) removable_organs |= organ var/organ_to_replace = input(user, "Which organ do you want to reattach?") as null|anything in removable_organs diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index ba9334d933..721f124e4e 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -70,7 +70,7 @@ if(!hasorgans(target)) return 0 - if (target_zone == "mouth" || target_zone == "eyes") + if (target_zone == O_MOUTH || target_zone == O_EYES) return 0 var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -123,7 +123,7 @@ if(!hasorgans(target)) return 0 - if (target_zone == "mouth" || target_zone == "eyes") + if (target_zone == O_MOUTH || target_zone == O_EYES) return 0 var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -188,7 +188,7 @@ var/obj/item/weapon/weldingtool/welder = tool if(!welder.isOn() || !welder.remove_fuel(1,user)) return 0 - return (target_zone == "chest") && istype(target.back, /obj/item/weapon/rig) && !(target.back.canremove) + return (target_zone == BP_TORSO) && istype(target.back, /obj/item/weapon/rig) && !(target.back.canremove) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) user.visible_message("[user] starts cutting through the support systems of [target]'s [target.back] with \the [tool]." , \ diff --git a/code/modules/surgery/robotics.dm b/code/modules/surgery/robotics.dm index 1ad2aec24f..bc971478c1 100644 --- a/code/modules/surgery/robotics.dm +++ b/code/modules/surgery/robotics.dm @@ -8,7 +8,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if (isslime(target)) return 0 - if (target_zone == "eyes") //there are specific steps for eye surgery + if (target_zone == O_EYES) //there are specific steps for eye surgery return 0 if (!hasorgans(target)) return 0 @@ -34,7 +34,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if(..()) var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.open == 0 && target_zone != "mouth" + return affected && affected.open == 0 && target_zone != O_MOUTH begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -78,7 +78,7 @@ var/obj/item/organ/external/affected = target.get_organ(target_zone) user.visible_message("[user] opens the maintenance hatch on [target]'s [affected.name] with \the [tool].", \ "You open the maintenance hatch on [target]'s [affected.name] with \the [tool].") - affected.open = 2 + affected.open = 3 fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -98,7 +98,7 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) if(..()) var/obj/item/organ/external/affected = target.get_organ(target_zone) - return affected && affected.open && target_zone != "mouth" + return affected && affected.open && target_zone != O_MOUTH begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -134,7 +134,7 @@ var/obj/item/weapon/weldingtool/welder = tool if(!welder.isOn() || !welder.remove_fuel(1,user)) return 0 - return affected && affected.open == 2 && affected.brute_dam > 0 && target_zone != "mouth" + return affected && affected.open == 3 && (affected.disfigured || affected.brute_dam > 0) && target_zone != O_MOUTH begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) @@ -147,7 +147,7 @@ user.visible_message("[user] finishes patching damage to [target]'s [affected.name] with \the [tool].", \ "You finish patching damage to [target]'s [affected.name] with \the [tool].") affected.heal_damage(rand(30,50),0,1,1) - + affected.disfigured = 0 fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) user.visible_message("[user]'s [tool.name] slips, damaging the internal structure of [target]'s [affected.name].", @@ -166,7 +166,7 @@ if(..()) var/obj/item/stack/cable_coil/C = tool var/obj/item/organ/external/affected = target.get_organ(target_zone) - var/limb_can_operate = (affected && affected.open == 2 && affected.burn_dam > 0 && target_zone != "mouth") + var/limb_can_operate = (affected && affected.open == 2 && (affected.disfigured || affected.burn_dam > 0) && target_zone != O_MOUTH) if(limb_can_operate) if(istype(C)) if(!C.get_amount() >= 3) @@ -193,6 +193,7 @@ user.visible_message("[user] causes a short circuit in [target]'s [affected.name]!", "You cause a short circuit in [target]'s [affected.name]!") target.apply_damage(rand(5,10), BURN, affected) + affected.disfigured = 0 /datum/surgery_step/robotics/fix_organ_robotic //For artificial organs allowed_tools = list( @@ -215,7 +216,7 @@ if(I.damage > 0 && (I.status & ORGAN_ROBOT)) is_organ_damaged = 1 break - return affected.open == 2 && is_organ_damaged + return affected.open == 3 && is_organ_damaged begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -276,7 +277,7 @@ var/obj/item/organ/external/affected = target.get_organ(target_zone) if(!(affected && (affected.status & ORGAN_ROBOT))) return 0 - if(affected.open != 2) + if(affected.open < 3) return 0 target.op_stage.current_organ = null @@ -304,7 +305,7 @@ user.visible_message("[user] has decoupled [target]'s [target.op_stage.current_organ] with \the [tool]." , \ "You have decoupled [target]'s [target.op_stage.current_organ] with \the [tool].") - var/obj/item/organ/I = target.internal_organs_by_name[target.op_stage.current_organ] + var/obj/item/organ/internal/I = target.internal_organs_by_name[target.op_stage.current_organ] if(I && istype(I)) I.status |= ORGAN_CUT_AWAY @@ -325,7 +326,7 @@ var/obj/item/organ/external/affected = target.get_organ(target_zone) if(!(affected && (affected.status & ORGAN_ROBOT))) return 0 - if(affected.open != 2) + if(affected.open < 3) return 0 target.op_stage.current_organ = null @@ -370,12 +371,12 @@ can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - if(target_zone != "head") + if(target_zone != BP_HEAD) return var/obj/item/device/mmi/M = tool var/obj/item/organ/external/affected = target.get_organ(target_zone) - if(!(affected && affected.open == 2)) + if(!(affected && affected.open == 3)) return 0 if(!istype(M)) @@ -389,10 +390,6 @@ user << "You cannot install a computer brain into a meat skull." return SURGERY_FAILURE - if(!target.species) - user << "You have no idea what species this person is. Report this on the bug tracker." - return SURGERY_FAILURE - if(!target.should_have_organ("brain")) user << "You're pretty sure [target.species.name_plural] don't normally have a brain." return SURGERY_FAILURE @@ -415,7 +412,7 @@ "You have installed \the [tool] into [target]'s [affected.name].") var/obj/item/device/mmi/M = tool - var/obj/item/organ/mmi_holder/holder = new(target, 1) + var/obj/item/organ/internal/mmi_holder/holder = new(target, 1) target.internal_organs_by_name["brain"] = holder user.drop_from_inventory(tool) tool.loc = holder diff --git a/code/modules/tables/interactions.dm b/code/modules/tables/interactions.dm index 53c8c4ad40..05cc2eac20 100644 --- a/code/modules/tables/interactions.dm +++ b/code/modules/tables/interactions.dm @@ -85,7 +85,7 @@ if (G.state < 2) if(user.a_intent == I_HURT) if (prob(15)) M.Weaken(5) - M.apply_damage(8,def_zone = "head") + M.apply_damage(8,def_zone = BP_HEAD) visible_message("[G.assailant] slams [G.affecting]'s face against \the [src]!") if(material) playsound(loc, material.tableslam_noise, 50, 1) @@ -97,9 +97,9 @@ if(prob(50)) M.visible_message("\The [S] slices [M]'s face messily!", "\The [S] slices your face messily!") - M.apply_damage(10, def_zone = "head") + M.apply_damage(10, def_zone = BP_HEAD) if(prob(2)) - M.embed(S, def_zone = "head") + M.embed(S, def_zone = BP_HEAD) else user << "You need a better grip to do that!" return diff --git a/code/modules/vehicles/cargo_train.dm b/code/modules/vehicles/cargo_train.dm index c6ff870988..5b1fc876b3 100644 --- a/code/modules/vehicles/cargo_train.dm +++ b/code/modules/vehicles/cargo_train.dm @@ -55,7 +55,7 @@ if(is_train_head() && !on) return 0 - + //space check ~no flying space trains sorry if(on && istype(destination, /turf/space)) return 0 @@ -146,7 +146,7 @@ verbs += /obj/vehicle/train/cargo/engine/verb/stop_engine /obj/vehicle/train/cargo/RunOver(var/mob/living/carbon/human/H) - var/list/parts = list("head", "chest", "l_leg", "r_leg", "l_arm", "r_arm") + var/list/parts = list(BP_HEAD, BP_TORSO, BP_L_LEG, BP_R_LEG, BP_L_ARM, BP_R_ARM) H.apply_effects(5, 5) for(var/i = 0, i < rand(1,3), i++) diff --git a/code/modules/virus2/effect.dm b/code/modules/virus2/effect.dm index c111bf6657..bcb70768b3 100644 --- a/code/modules/virus2/effect.dm +++ b/code/modules/virus2/effect.dm @@ -237,7 +237,7 @@ activate(var/mob/living/carbon/mob,var/multiplier) if(istype(mob, /mob/living/carbon/human)) var/mob/living/carbon/human/H = mob - var/obj/item/organ/brain/B = H.internal_organs_by_name["brain"] + var/obj/item/organ/internal/brain/B = H.internal_organs_by_name["brain"] if (B && B.damage < B.min_broken_damage) B.take_damage(5) else diff --git a/code/modules/virus2/items_devices.dm b/code/modules/virus2/items_devices.dm index 69ede1d494..59e208f034 100644 --- a/code/modules/virus2/items_devices.dm +++ b/code/modules/virus2/items_devices.dm @@ -16,7 +16,7 @@ var/mob/living/carbon/C = M if (istype(C,/mob/living/carbon/human/)) var/mob/living/carbon/human/H = C - if(!H.should_have_organ("heart")) + if(!H.should_have_organ(O_HEART)) report("Scan aborted: The target does not have blood.", user) return diff --git a/html/changelogs/Zuhayr-robolimbs.yml b/html/changelogs/Zuhayr-robolimbs.yml new file mode 100644 index 0000000000..c63ca3f97b --- /dev/null +++ b/html/changelogs/Zuhayr-robolimbs.yml @@ -0,0 +1,9 @@ +author: Zuhayr +delete-after: True +changes: + - rscadd: "Removed the species restrictions on transplanted internal organs. Have fun." + - rscadd: "Added 'full body' prosthetic options to character generation." + - rscadd: "Removed IPC. No tears were shed." + - rscadd: "RE: borgs, Renamed 'robot' type to 'drone' and 'android' type to 'robot' for clarity with new 'android' human mobs." + - rscadd: "Rejuvenate will now reapply robolimb/autopsy data." + - rscadd: "Lots of backend work relating to the above. If you're a coder go look at the PR or ask Zuhayr for details." diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 8600c9c26adef16db1a980ffdcfc29ecb3c95b44..f7a49811cea3568771f891da8dfeb1d58b0e3cd2 100644 GIT binary patch literal 50492 zcmc$`2UL^a*CrZ3ML|TQcSXTM6A^+)lV+i-^bXQ{?*yeu7g0Kdru5!xP?|{ZozPq8 z5PFh1`Tf8D_sy&|bJv}_X5C@QI>}4kobv9o_p_h<97B{9Uy_k9kU$_1ve&Pq-$EdS zY2erI>J@NB>dW5)@aC)Mdktr46DMOw3wvh^J6j0EJvk+|$9C%R^^U&1cUQLrn7=-i zQL4TEFo@9V`05qzfmjC3C-+ub>=06$?QN6M551r44(Z=(E7nFItdAY!Pd16r63b7t zr3qSMj8(cLd%vhMx*#5z(&!qmU&LIyIwCuh_EO=YYnoeFl98#-U(3wVwgSa|BQ?g# zhGyzDU1HCUPkX~qx&RH$uwSiT?Ow5w5^wYP8ZPI>(;xQdM`-oj-}~g3!1Z-#lltY$ zNxhuq)o(#J#DiJHNU#j9iugJT(8Xscpp&sQ(vNNlxotfq5GOIy06)ETvqk<+J^Axq@=m~MEl757cKQq z{k;DW+qW@V-WBj_lCgSdo;63&_{&*g>?_A=^NgW+t96*S6P>0_DRs-&Q)n5LlF`xJ zNdwD7_{BF*w;RHIj7GPJGb%(`=b3L_nqzlSisj`DZ9ggg3meqfS

g7O7F}=kFbN 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

0e|kw#ejH<(BZIS2xQ30m~kOTZEvu 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 H?B)LgV}78N literal 47377 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 VNq#aPJobOBs;qgpMCsAX{{t=GBK`mX diff --git a/icons/mob/human_races/cyberlimbs/bishop.dmi b/icons/mob/human_races/cyberlimbs/bishop.dmi index ebc132f554fa1f0118f3e25323a07e59c1191e90..ce332e9bc4c6a613d1715558ca28be72f661f00c 100644 GIT binary patch literal 4210 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 delta 1435 zcmYjPdpOez7~a&OT(TpVaB`_;E_IMDNLG%W!^(XfqerV`$0Bn}bK6fsC%KP!+-Brb zXu?p8p^M`-w-|e}BXo{j7GpBD-=Y5KeE)pk^FH7AKHvL(--=GLT$(zt3j%>~sdm@5 z6T$f+2E}5r($mxZ{rx!{4x7#H?d@%DZjOtKL!;3UpPFM6ph`aI;o$+|%^+qV*lR|i zP?D3AiA3V|AcMi^?(S}HZ}05vY-wqs)9F|&R!>iFn;V0{xVyVMIXU6+cpDoVLqkJo z;&1mL5C8%Vb#-)uocqYZZ?`>(z+gjdeL}p034x&mVgLj}%1<78A=_ypA2T&hmZdC| zj!l#viIeX$I&g1xSH_+jgRSHc`2uvk{pUIDBtLq;WYs&s!6;@zxPF?uVzZbbp_J3xVuDZf|=YL&{$) z@N(mtz))^3h=idGXOV%$^DiK>wpK9UIJku7sF$w(lwe)6!pzRfpf$kq6t?w302bKa z{Q592>q3hS01q-PZ8mt+6cpRB8AW?kMMhbxtXpgIZga0E-$K||4aek@9jsLlrM#^B zYH!Mn>E8e^EBZ`;C{cQ~<52ZL#R$&fvMdnkUcz4r5NPdDNH-L}dtACe)q0B2vaZ%~Eom#PPdm7?;P;Toyj*OJ zlIakWxjt>r9x7|zSe;*)n;2gaOPsF-a`;ztT_=~_h&=!*+&Z_&X!jZKVJUC59?pLMlbLk;U@`FT*J#F^+jQ=@sens%84Sb zk;1>0(d11+9L?CUiJ3*Dfs0=41P6n7tFGv|x^iVPVHvd^SQ|SGM6@LUgXis*K3^iR z8n+BkfM=AMhK^AaU8WM+vo$Qz_dQqsIFPpp|MK29W<|*yyP+yV@H143n7bQ(RiwlR z%@k5pMkeXAir2JdLb{)o0P(y z!v(Qm-XnM&5>=^d3<2=7fZ)quh}3K3+UdTS(T+@=?)~O{K`nUD;_e4zHOls?gv!P-z#PjedHZ)2?7NLrw$WbCP2yJCstla9Y+>b>M~eDO5bn{&0PztGTA9#c z)x)>*(o=1fU*P~&^w#_!vkkt(rmIaud0zBy;DK{8!2dE6A3chNTS zqKogWYHXc^)>&_)t{hZAia(TO{4KlXErK2Fm!M-USUSeXkqFqXdZCko#&r?w3@M;! zbV{IKdY^IW?S4XB(t0jv(GDke iGlXBS`PGW1Ffvp*I4v=GsDw4YgV>`SZJ*g(jr|Y6r?nRV diff --git a/icons/mob/human_races/cyberlimbs/hesphaistos.dmi b/icons/mob/human_races/cyberlimbs/hesphaistos.dmi index 225b18f5b9cf32ed5839d49c3ae5c441281d1383..7e075269a42fd5f7e3f3aaa18f8e83b4db892bf7 100644 GIT binary patch literal 4054 zcmcInc|4SB-@l!rQkHUrk;c&?WJyFL#unuijvsL8%4TnQFb47W@SaPtS>lnL3H*xor*Zmj(vr0wpl%2 zZFTI-R|iY{_+{#`u}f0-(o;)_*{_bM+si-Qc{2=Ih~`$LmGoOi8Cs?G^!s5wyA4w= z^f&9?IKH2VIl3~z_SK+==mZTFZ2FYmS0K&_HX<(!CIybK?e?*%>=vwE9s&T#`SX@$ zj^U4%rtEGj-hzm&SlhnXw~%t*Y(pi6u;~E(U)!^=@vKE^8v%lJzu6-(KwwU?mvST%U1+>_pu2 zO7(Sg+;L6^<>lqk7#YaG&OKc-32jmaoaHk9yeJsarQ?41P(zfk12|Uz_vm?IdMe*P z<{ree?n?I)7RD%sYNdMzU7MhaUyjR4HH=x0n+Xx}8-#6ORQMYEVEpg;RPI`wh%_@< zCF_e-iGz1U9Lz~w_VB)`B$lNTX$g$AELJoi?BA<3et^VRMz;vDRGiyRIp3y;`XtL@ z>PGvdJ}~#7w2Be5i_L36wa+RH>|A4G9CLsD(8!Yp)IG! zaHOwr?efP|R);S@uUFTaUZc!T{od$vjNqh1nqtxo%;k{JJ~HXcD_uJh!TlAYUkI_2 zxEB6O=P%Jjo|0Dkr7qT*V#Dws=B>md6Lp8)Tps@x7|o^aq7`6`*SUK&LO8nnRohup zAMSP}3%C(Nc2Bj4sbyzx?oTrR^V$Ee&GEw%YK%o=z4IPWcL&~2XK|`jVW+1QHzLEh z3va4LRxU3hd;`2cFq9U*4M|@hzl_{rbfQtu-*`WFbX7m9hu9RB<+fe~Yl`1?Nj@YH5AtKu6Us!U`noU&5rCh+gmwOI1~F zmm7Qn8~LpRP%fVNM2`I%7eBo9|Awp|&)_1GX;X5X)!I)@^Uk}Zo)Z+~U$K6xVN~ZL zInO0;d^)?iWFg9{HpU;e@C9eINGcqnZ77&}wM)Ui-VS~0pr&z>R#x@cJ8!%X+2%2% zdC}z|+hp?C=b~Vl*WinRc*M;)t`1o77+#OjMjdTqj(r5#Bk419$OoxvLeADGsZVSuLM(_?l!LH{EI5#=W8%@>n$7$=N&i%9llp z)&nP{AF-*}o#>UU{Bo__%yS`)ZewQ2mIjrBM-D`PE=_6~`fz=J3wK1aZ_oByf`*@z zbC)`*@KEz2@z3i_O*xE%2`SxNwu!ZF(eKGJuK4KWTH@+eR426*^x70XhZ`Bj2?nh- zjyZ~S>C{Brd_pg_1<~AL7$X1hf|yXCx+1WwVX80b?k1~qLV1F zChJv&|9s4m35AD!l6Q;Xg!EV4TN;~u_Y$+Pt^ok`?IExwMoU|Hvuo>X3uo;Q^l(|i zW-Nj~K~@0qI{vyD>lb=V6#2-92zP7II&^Cl=m^CQdqBwDz3i z0zk8$gzCYIH;yCXvr@wy*5MQ!roQ@}?fS@DVJOUvj_o6^5+o?TM(;C5K7A@CGY_fY zXU>}bEmlkHE3r!s^KbODLbn=@1fklph?gyl#x`4oZj{X%61HQg1&Aqwr@(xc5eb2k zzK`dPi@mhqCug5O3?# z-+*SNAPRY~x1vIKn!8q`%IecSYZqCA5RS=SCoqBqf&x<2Upi;Zc7*rpp8bQuAee$w ze&T`Jr-3q#E6OyOuXyiFdan#90=~}(JbnIdU}h;!E7dc_5Mt+k^VBAltot?3@L_kq zpQQEdE^s_Ns?c{ZZ?ceJ z-*qnqx-BikHUZ1SidxSmYvSP$yP3Xa=aQHKnQAX|DMjQ!V zG@ocDIQ4>6zrh&((nG$!53I+QSNU%9uO8SkEI$N}|7dyspEB%N!kU5Ir!g)=oL>i( zev3rYpI4?ae+~QiN_0>sHOd58;iz-w%wnXFSPj){*!Gvt;MsY;cV3 z-Jv={|KaQ87^MG{?5$}Ga=-5VEGz90G1|%s`Zl+~e!k$1&K^f~Sw8{^ajfYgtH_~Z zrVNjL2NSA34ljQDJOA5sC;+ge!AJ)v6NWxAF4My>uUHLSb}t)V13enqFjUqg=h{Uk zWVC=3Vcc@ZJv@AZ%vMZ@>*?v~?R#UweLlR_g#KtgJ3$nOV&+k9b{b~VJ^@dWdZ_TJ ze0&?F?c-)0d!P(-8N)Mm|1y&Qx2m>F#?FO#{Ssj);I- zX_WvINME^8)`$SK~W%=7X7_rtk0z7$rG)4TrPedlrYE6hrxV#SnIp* z(d&Hyr!2+{?q_K(cT#w@>DS9K-A_8aoQVxtskftCUW~F&KB!dC8n-Ve=@&BlhS?}r zYw0=Cd?HZlef8u#CkxcCk@vFSBtuUL_7u39feH(bE}uVArbi)s_OTZ}K26E6sh*4E z&tX7G9Wk0nHkbX=@S)%H^KzIr8P#l%iBTze50`^k6Q_l(%$@Ie{;u1=Z@Ys)c!F7P zV2Vb+lfftig04xEozw{l6>aw0k$Q8x$3qnWq)(6@L9Ig*+aXvj>f3PZ>8$q$Y%k{2 z`wIT#9ZPohnALio?1a|RhpQPCl>_QGDUQD60NAnMH!E3aS|&PTCfc=$SP-T5hb zAroZz?PGKfZ3rL6JaHMcO|q3u%bByk720EjCuYD3IR@4Dsufa3)!dIb2eXWn=aF(R z+0>Lh^}9lgXKkK;*v??o*}S@J=Qy|$#}U=8e@~p=?(^M86Rf6dRUdl?N}$R2Ql1Im zJR@PK3(oNig{PG4af>C@rp`h29I}oUg~Xfd+L4ZPXptBtU=0YKujwC#42ABmY2ym9 zk%Gq4Y)5g0fusi-HH^YB4`migi6x>3ku0obkFKI{*a?X~IGf&(XSNP$APh-7!mZ5F z)|?L2?+OvRnG|A2Y9Ajv)vA()W3JHg*hYG)H`fdFGZadpTWlQ}5*tPNvVRyZzuu?> z3UTKbPnFV9{LBLIDTP2BXcUOdiQ}HX) zm~O#B?8oML%WF)YizJ}321k;9*|~Q~>OcK1ZlQbwr~8Lm<`w*s&(?4I`Lni`)#mPZ F{s|TOg_8gP literal 1431 zcmYjQc~H^`6vk^kveCq3HAk}0RoA>|OEZrp$ukf|$r_>YKvD5Xb2Jsy4ocHJ%P|ef zlrArlO7Wo7O>LDdJXu4#yv-yjap1R5GfnT0cYJT&``&vq@3KG2bGw$276=5|?(O9f z00Jq=UC@k%id+lmUSV>B^!LLexm>Qfxp_oHgrm2Oqobo6+&ubRh+m9zDCS7t9n3r* z4G`hLzi<#7Ff}zbHa3>mVX;^o4u?jgi9{j-fv~c&G9U%+ktdW=0#Jb<_m2}qd2shE z_IQd%WODdvQep}zAsz%ut15WarqyGoojp5A(JEc88=tC!o!1`v^Y?QfR7x}=M!G1; z+SNX--fIicE3u+D4#jTh{&+%7NzwtGWVdRzB!Wi@iN`hQy{||kXgObue9(WW(yAe| zo@GMX*?+8g_&VJPnHP8ZA*9#i%CZJVx732ARIFydBm8#m0gdU;9OSdZ+s<;FSIrXf zMS=<83Gx(UvWpK9yuH_J8ocxz1XA_&_V^o{R<%+kxOT%)7a3{*IdaIb83O>!Lc5#k zEm$+dj`y&PuRbOgNy9Dv58D|hm|*#?Ag-`**~D^F&vqUPyXj{+7k4>%45!h3IV^i9bmp~Pm{<3*7hYXgwq5s>ay(18we$6vtm~4JCR-= zn+$O}To$dr2>I}^m)1Yah~8+oskcvEy;FpiL~dfq;|0Y%;n2`gO^GWb$$v0P%E~md z+3`kdp}RR7X2fiw6PhltHeRfgUyL&i3`YKw7)L* z>0AvZyxhz8ykTu!9Cz*#C8Wz?WvIq7dL2x{?--zGD>x#j1fLl-&(W2phbDA?VpkC( zF1ttL()lhkA#)ZB@6P|E_~B4|9Zu@P+8Dg{bC-I>*Ei`XlOFuYLD9-a!ar4=d1aV* zGIya|HMCnSnFkk*DH7N1YcmkfEX;C(vyRWx37BTl$`>fFvlEOJ&})w!Jqcn@bln1p$=?l&TOvb*8GB7Z>f$qO3tMgJ-0V zRr9D7!bG)JOKr_eiE`uk1eFE2l@eLkJ<|85sw?{-NSeP7S>J2 z>B;vPF#Zx{#@)z}j8&$==A@Y?x*q|gtjDgFDq{wF*+X6(QVKrg9a~DSFHM3z+R{lq zW5E}zE2y*Gb}s3F;foTmItM>a4dHv56Q`F{#zbs_r`uBk*ly`QP(rz7x&(E#(sbnt zX-&6#J~qLgs8_ts_gmF0QHt53X;x-^^BJBwkTa#7;A>ZIr@tyAN!w*#Reh)2YF9r& zNT|_IQ1^86AOSUKZE-K06HnEluz+}v{lLDb&d|ZpAESJ~#J3cg+JD*}1^(DKnF_!g LiSlSfoXY(l*;b($ diff --git a/icons/mob/human_races/cyberlimbs/ipc.dmi b/icons/mob/human_races/cyberlimbs/ipc.dmi index 7af14de51fa18a189e0881911fd01ea69f9b1cf0..e1e948f5b5cb37f021123d25116338aeb7655638 100644 GIT binary patch literal 4379 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 delta 1712 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 Ve)0;Qp&tHEB22AJ@J4PA{{@i;!esye delta 1389 zcmYjRc{tPw82&kmP)aJ~NUp+S@eGSKLo<%DLz&09#gai7XSwGmY$+*&n2M&^a^))5 zR-+-r7-~(9Va8dGWZZK&nwh2T>Dl+6_x;{K-tT+fKfWbpj#RcHC}+o15F(+BTg5Kog+s6abhAg+qY0wziLtkAZ;!5{b01 zu!u1LR8>{){R&jTw}Su_3gzzZ?(FQ0Mx%9gb@z(dF}Gcjm~%*105&s(-X6*mP#!Vx z05IA=DmWr0I2;22afMkQUP`qY$)rpUW2JIg#dJooX1dHfJ%zMsu^h>ZG%_|?rs#CN zW;L-Z?PoL?$13@3yR=&{d~axNh(BgbcKXywUSOCSuSctT*zh) zjeCVLh{NRmBg~Ia+tuCXI{`pk$q{aYiYr_wqFrHF$ir2hX*?RZ{GbtHE)){nA<4md z?{F}E8hWX6>Z%6%n#Nnr#*Z;7JC(H9&rS<)BwZW1&5aGy@@!IaW4m?r3iv^`#!Q^r zZ%EOJSJ@2GJJTwWHPn_EtAKF|n5SRDm?{5We^+ZV&5kuGh`R|X!Q-)2GgtU?3THg! zt%)=ajhuIoRx>!#OD*elkssr%%#~d(+;nZ$Cukn1)lc+`DgK0VYIY0HRqw9tvzXBsb^}?h6Ny_tFYkf_*(!Vw)dO!#!QcQCpDQx%UUucKP^+-f$pdwdV5P z6J4||1dm+vo6^TQnX8H?|MJo?lMl^N8kyUT3r)+wdXkM7=0A0|HxfQi2ozL8Gp5WY zocXm$0Su_L7OD4KS|*&z4soO(6#bqLe&=<|E|T+guy*u`-UZ)PsJE6 z25MwpUFoJXInk@hd}HdXesk@`{hW%{<%FiH7psF{pU7Rf9eKrDs4d};C5WK}wb+c% z91gp8EI})GKhZK?&4QAT>cK9tJ47L!L!ytL!;9g&;!kPJD?~&`f^F8jt=ukLN@5>c zp1dQ{Nwgg?-`X8QvCMeh>f5rch#?QwsPP^8nKcQx>;;A-@(Mh|8l;-POMZz+{#}M#tAd zM}BE=&UF04X}}d$;JuXyk_!=cO5;5b-}8-{Mf8_Wv*0fqgfS}x3nu)pMq<=s;x979 z-w2P3)^nFi*4T?;a^J8zN^-n4p8WNq9HYmU$ZA2{2Y!K8EDOJDb|T7^5^vk zyhSIQtBHu}mI1%0xu*|MODKZbk0?l%L`fXTpRN1|~3}{b_ zzP@eK#&eTx?cpJ!`dXB+Sp)4ZJA6HyCLuh*WT^eW6@gNvUZ5H9L(iC@^taa)^BphGXCc`dq^fJj-}Vpl^})(hv? zg874j(S)#MIkCZ??4lmvV!537=N;Z#OsAqq&1N7VKuN5939)Fe|sLV?6 z76#x-oqAsNi4D$H_}CNP`0T-R20%vwZFyeJ`lh(^#8RvMhsiI7a-kwK?Bi?RsTWhw zg94&WowQolz6(doERxQrmZuY+ZIp7Do8f!%>p{EGuw2v9FHGtEvroLXYNU`4jqB#Q tya|)7@hl!ycz*(?Gwrpt^F#lGm8DS34(*jZB#>&`aU2myc(tu>>c9W%pke?3 diff --git a/icons/mob/human_races/cyberlimbs/zenghu.dmi b/icons/mob/human_races/cyberlimbs/zenghu.dmi index 7ee24241b9faccd0a2ee27b65a245ddce179e596..bf5087827706a73ac1bc16432b71db9de3a2cf61 100644 GIT binary patch delta 1267 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 diff --git a/icons/mob/uniform.dmi b/icons/mob/uniform.dmi index 6ed423e2bff8c080ceefff97635e292189e475c3..7bf3f386950307415e7b5f64a2c8fbe09f4bd2b7 100644 GIT binary patch delta 16838 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 delta 16311 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 Qm?s%LUHx3vIVCg!05kZM*8l(j literal 1413 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRStExgGN?cNllZ!G7N;32F7#J$% z^j`4gI;!Zz&25jmF!E1flF*M4{FZm@#T0X|3GDrh2Ryk9GTv_A zAbLV!JL`_qx#8avdW)z0{xR$GiC6~J6AI7YJ$P95L}P6z|A%`H1#&yN6(lhN3}WpS zJ57sZQ2q9&`peAY zA`6(RV-Hlz3e95+OVZzV=jZ(^D%N=D^zTa$rZk^`VSO;^V4IlasCL?tFojtqI_MXbk zWFO}Pnu!lKaD(Fi@*hUQ%O+d-6nncmc9zOreR?$}XsvhG_NUKuPwqcRyd(Rne%*e%tvRy~#BkNunp*!1x_{8as$S{XGu;Nu z|3zh;Iq|M8Tb88#$edj1`%k?+=$V(Ks^a~7+cujE#)s-2So_XbId`Sd0r`f^(qX9V%D+;EuUiFGFbmupLM@oOAEJ3{W+iO zrxyE)xoK%V8I;mn)eIcqyD)K=V&P@266}r6jQop8t_s+Eq^UEgd+oYel_UgehlMOmDe*U@+Eyv$AA6|PyEq+JRkKUe- z;cRB|KNdXGJ#hHT!Lq92MEROHeWfIq(A1g#YUWwKyYlR8rnk<7l!oxk+1nY??wY!> zy>EW2>6$42W@+TVqU8>&<7az6Tljvv+ga9#lQU+-2LHFvF<@cZcUHP+~gCTUyxm2@jz;czr)78&qol`;+0PS&dKmY&$ diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index 882a692877335a843b24ca97f90423fb0a68d992..09828580c6220792d93de9172188201ff7dfcd5f 100644 GIT binary patch delta 3462 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 delta 3141 zcmZuzX*`rs7k?y689QT*M$}7EL`j)pNVHg5D2%c1Yu0QJS)#>KBqmKml5He3%vh>P zlvI?1TOk@81?@JE18S{3X#5vCdnaGxbC57ve4;=|-Li##N^ zzojT1yfj|nubN}xfAxsLnA<`cOUe;_#yZHLX`vJe5fjVhg9fy_@erF-aXhJz#-8`Mq2o2 zTG?R#$5XmlvBa~YsDOk3Nrn%#Tz*48C|yNnSo@S8|fCpWk~bRpwJ?C(dW}XrT}7ZBPltE%|agB-32E%SX59 zt6zHyM)9fqgL2pU!5mBVh+79KDOwW38J>E3B004*s@U^^KM)z!d!tdLTub$aD|*{1 zQj`ViRgtdT1Lr2^sZFIMZV7rlNEu|zwl z_FW;OvU{EUta5O*%c6xmCo$^ zVY?hPY%%;8o8eD?*e=iQsV19(;;M5*WPy!}JVdmx{|E_d= zd%5M*p4bZ2cGl@{VV;gzdj98Tvph0mI!iZ6g3>}I-6uNZ-~1AHU6l2W+gR*FTH4r% zlVOraUcFr8N1B_P_bvY&&&D{yolG(^GP*(``*~-cprN3InwpxPGQY5-q@+R?Un)-t z=>+~6qt=s zDZj09oMkAShJ^86VL13C5|=a0WFBR2@9ZQ>?oCUjEu?FAzlsvJBMSk}Jrkoj>PLKe zh*QlTh8lnc`~V8swTaikSxU9oAO02{nOP-^1q~!5rbxupe*ZKzE1qdZHF(zU%PiVX z1~rGaiI?9eNs+pCYiZ9N@<7Y2`V-aG>`6?>=<25J)^C0xvEfze%)TW%G+O))nXjsE zFCed^WM)*HJ`&t{SN1RfY{skf_Vzw0Dnjaj1!O#mwAj4;WobF+V2X9QbT4w$0-oJx ze^~ipYHx+ikgPx%6XmenFiFCtXItD8=&rFJ@b2UuEg+lYl6bOs&*MUYW6!>Ol-QbB z2%m{s`D0vwKy!Tb6h4lJ>Fev8*yWM%V7;ovA&jGuq-4+ByJY^$$K++;SaC+EJP60y zU|y;O0w%>`08j4B+DDp7!B*4!{&$2z2+)K6uJ?`#NO^P+DWz?+=a5LVq>dyHfQ9J%F_gVTp zRN^1E6eS>nXL;o#bN2mdW=l!|IvmOglCAn4F{|4n?xsZBcMTF>QIR#|tN-3heLJqlV=d zU#VK~^eJ!3{T_hhPlCdO|ExM5&UDe@QG4JB)KGoTU3J`>aQ{Yu6jRCU&c+{nCL*fK zG0p)R6&itjFttj__pY`)QUJhkFyU9fnhKb$^mEItUY6umnP7UeS=rm$8vq6a?KkXm z9u*gt+y+D{}BD%yFD?24l;i zvL-|j9+ee=3MDzyid8k58C0Tu(3!~fBPV-77vm}#7JaZ4R>u#|L05tYz|99 z5WxCb?hl+sK-AyNjL`Gkre%H|MB!~Ft+CqFxs7=WFH{o zGv5P@87iXokc_jAFOMx1Xr6TWS+{+uMkUafm3QB29QSqtND{44*$zGO(qrb`?7oqK zfyvGdnoBaNCmZ`vvwC}kek|TgSc$g%E-M(-eUh|;`L!bz&~NN`0^d9{xzyJ!7jc9> zKQXn=bq(P*$Etn;HN-t*bQSqs5L@Ch(Tsp&IyZ8w`U$3N!~uaOMdRxe%iju5NZnIA zg$v`-?`VB7$5a}Q5SQb9d|aRH%IT}+fByn?=C`Mh(nTRWnhd42Hn3>faFwJ zxZ5o-ofah4Uduej(zq$DoZ6Kb-TZH`{H8%EM#M?C{LZR4z_wdxGLd^<8`~Z7d&PlP zg1?=4uGa1E&l?SaL%07-M@Arebu`Y^mU{I6KE^*5|r=jR^Tz;k&V&*||N z)pRIZj0Zu|)U}F;>mhWs!iQ!NIm+@hS(vMzj$d!Q{I^^;;>^~uZ>XjWW-VmKap!Uc z$m*_5WSox{jIDIuiCI(pI=tg`BfXFY2A;WgqMGn!0aTYtE~K?9un@eY<;$PFsrHg{ zLBm3nE%s^^kmqu)bdRlINZWl4ub?@EjWgH4n~8oJz;kxt`dHJUXO+L5d&Wz%;YHzz zbN1tFZ0aSLALp{SRGO%)M`A7&N!+p|q~@tw=%x_W_*Y zzc##sxN0@?ermzk#;P5$WrNF7ZHxHzdK0)y+v&AI1br!su3MH_Z(V=6R)A2E0iR8L zYDfb9BcjT4pSuM|9HuT$={Qqc7J0`Ci|AS{Ls1lpVI&(*`N{H$Y7Dc}4+@V%yCB%^Cl9%-8^nq-|aFs$B7n P0B>2HwKm5iU2p#v33DTR diff --git a/maps/polaris-1.dmm b/maps/polaris-1.dmm index 577a86287d..d99aa801ea 100644 --- a/maps/polaris-1.dmm +++ b/maps/polaris-1.dmm @@ -5374,7 +5374,7 @@ "bZr" = (/obj/structure/table/woodentable,/obj/machinery/computer/skills,/obj/item/weapon/hand_tele,/turf/simulated/floor/wood,/area/crew_quarters/captain) "bZs" = (/obj/machinery/door/window/southright{name = "Captain's Desk Door"; req_access = list(20)},/turf/simulated/floor/wood,/area/crew_quarters/captain) "bZt" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/blue,/obj/item/weapon/pen,/obj/item/device/megaphone,/obj/machinery/requests_console{announcementConsole = 1; department = "Captain's Desk"; departmentType = 5; name = "Captain RC"; pixel_x = 30; pixel_y = 0},/obj/structure/window/reinforced,/turf/simulated/floor/wood,/area/crew_quarters/captain) -"bZu" = (/obj/structure/bed/chair,/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/neutral,/area/crew_quarters/cafeteria) +"bZu" = (/obj/machinery/recharge_station,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/recreation_area_restroom) "bZv" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "bZw" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "bZx" = (/turf/simulated/mineral/floor/ignore_mapgen,/area/space) @@ -5432,8 +5432,8 @@ "cax" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain) "cay" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/captain) "caz" = (/obj/structure/filingcabinet,/obj/machinery/light{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain) -"caA" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/maintenance/central) -"caB" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafeteria Port"; dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"caA" = (/obj/machinery/recharge_station,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"caB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/maintenance/central) "caC" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/neutral,/area/crew_quarters/cafeteria) "caD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "caE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/neutral,/area/crew_quarters/cafeteria) @@ -5472,6 +5472,7 @@ "cbl" = (/turf/simulated/floor/tiled/hydro,/area/rnd/xenobiology/xenoflora_storage) "cbm" = (/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor/tiled/hydro,/area/rnd/xenobiology/xenoflora_storage) "cbn" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/light,/turf/simulated/floor/tiled/hydro,/area/rnd/xenobiology/xenoflora_storage) +"cbo" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/command{c_tag = "EVA - Fore"},/obj/structure/table/rack,/obj/item/device/suit_cooling_unit,/obj/item/device/suit_cooling_unit,/obj/item/device/suit_cooling_unit,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) "cbp" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/item/device/radio/intercom{layer = 4; name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) "cbq" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) "cbr" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) @@ -5513,7 +5514,7 @@ "ccb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "ccc" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/obj/item/weapon/material/kitchen/utensil/fork,/obj/item/weapon/material/kitchen/utensil/spoon{pixel_x = 2},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/tiled/neutral,/area/crew_quarters/cafeteria) "ccd" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_two) -"cce" = (/obj/structure/bed/chair{dir = 1},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/tiled/neutral,/area/crew_quarters/cafeteria) +"cce" = (/obj/machinery/recharge_station,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/tiled/neutral,/area/crew_quarters/cafeteria) "ccf" = (/obj/effect/floor_decal/corner/pink{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/medical_emergency_hallway) "ccg" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/pink{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/medical_emergency_hallway) "cch" = (/obj/effect/floor_decal/corner/pink/full,/obj/machinery/computer/med_data/laptop,/obj/structure/table/glass,/obj/machinery/light,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/tiled/white,/area/medical/patient_e) @@ -6710,7 +6711,7 @@ "czc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/maintenance/engineering) "czd" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/requests_console{department = "EVA"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) "cze" = (/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) -"czf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/command{c_tag = "EVA - Fore"},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) +"czf" = (/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable,/obj/structure/table/steel_reinforced,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/suit_cooling_unit,/obj/item/device/suit_cooling_unit,/turf/simulated/floor/tiled,/area/engineering/engine_eva) "czg" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) "czh" = (/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 4},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) "czi" = (/turf/simulated/wall,/area/maintenance/evahallway) @@ -6931,6 +6932,7 @@ "cDp" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) "cDq" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/bar) "cDr" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"cDs" = (/obj/machinery/recharge_station,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "cDt" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "cDu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "cDv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) @@ -8249,7 +8251,6 @@ "dcI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/engineering/engine_eva) "dcJ" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{tag = "icon-map (NORTH)"; icon_state = "map"; dir = 1},/obj/machinery/meter,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{density = 0; dir = 1; icon_state = "pdoor0"; id = "atmoslockdown"; name = "Atmospherics Lockdown"; opacity = 0},/turf/simulated/floor,/area/engineering/workshop) "dcK" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/machinery/door/window/southright{name = "Jetpack Storage"; req_one_access = list(11,24)},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/engineering/engine_eva) -"dcL" = (/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable,/obj/structure/table/steel_reinforced,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor/tiled,/area/engineering/engine_eva) "dcM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = list(12,47)},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/maintenance/engineering) "dcN" = (/obj/structure/closet,/obj/item/weapon/lipstick/purple,/turf/simulated/floor/plating,/area/maintenance/engineering) "dcO" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/engineering) @@ -9653,7 +9654,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaMWaMWaOpaOqaOraOsaOtaOuaMWaJJaLUaOvaOwaOwaOxaOyaOzaOAaOBaOCaODaOEaOFaMdaOGaOHaKSaOIaOJaOKaOLaOMaFaaONaOOaOPaLmaLmaOQaLmaORaFhaOSaOTaOTaOUaFaaFaaOVaFaaFaaahaahaahatNatNaNIatNaahaNJaOWaOXaOYaOZaOXaPaaxlaxmawnaJjaJkaPbaPcaJkaKuaFoahyaCjaPdaPeaGDaPfaPgaLGaHYaHYaHYaHYaHYaHYaHYaHYaHYaHYaHZaPhaLIaIcaPiaPjaPkaPlaPlaPmaPnaPoaPlaPpaPqaPraPsaJAaKBaKCaKCaKCaKCaKCaKCaKCaKDaGRaJEaDtaPtaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaMWaMWaMWaPuaPvaPwaPuaPuaMWaJJaKIaPxaKIaKIaKIaPyaPzaPAaPBaPCaPDaJQaKVaPEaPFaPFaPFaPGaPHaPIaPJaPKaPLaPMaPNaPOaPNaPPaPQaPNaPRaPSaPTaPUaPVaPWaFaaPXaPYaPZaFaaahaahaahaahatNaHNatNaahaNJaQaaOXaQbaQcaQdaQeaQfaQgaQhaKraJkaQiaJmaJnaQjaFoahyaCjaPdaCjaGDaGDaGDaGDaHYaHYaHYaHYaHYaHYaHYaHYaHYaHYaJqaKvaLIaIcaQkaQlaQmaQnaQnaQoaQnaQnaQpaQqaQraLQaQsaJAaKBaKCaKCaKCaKCaKCaKCaKCaKDaGRaKEaDtaOoaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaMWaMWaMWaMWaMWaMWaMWaMWaJJaJJaPxaKIaQtaQuaQvaLXaQwaQxaQyaQzaJQaQAaQBaQCaKSaQCaQDaQEaFhaFhaFhaFhaQFaLgaQGaQHaQHaMtaLmaQIaQJaPNaPPaQKaQLaFaaQMaPYaQNaFaaahaahaahaahatNaHNatNaahaNJaNJaQOaOXaQPaQQaNPawnaxmaQRaFoaJkaJkaHVaQSaFoaFoahyaCjaPdaCjaahaahaGDaQTaHYaHYaHYaHYaHYaHYaHYaHYaHYaHYaJqaQUaQVaDraQWaClaQnaQnaQXaQYaQZaQnaQnaRaaQnaQnaRbaJAaRcaRdaRdaRdaRdaRdaRdaRdaReaGRaJEaDtaFJaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahahyaRfaRfaRfaRfaRfaRfaRfaRfaRfaRfaRfaRfaahaahaahaahaahaMWaMWaMWaMWaMWaMWaMWaJJaRgaRhaRgaRgaJJaJJaJJaJJaJJaJJaJJaRiaRiaRiaRjaRkaRjaRiaRiaRiaahaahaFhaFhaRlaRmaRnaRoaRpaRqaRraPSaPTaRsaRtaRuaFhaFaaFaaRvaFaaahaahaahatNatNaHNatNaahaahaNJaNJaRwaRxaRyaPaawnaxmaRzaFoaRAaRBaGCaFoaFoahyahyaCjaPdaCjaahaahaGDaHXaHYaHYaHYaHYaHYaHYaHYaHYaHYaHYaLHaIaaLIaIcaRCaClaRDaREaRFaRGaQZaQnaRHaRGaRIaQnaRbaRJaRKaRKaRKaRKaRKaRKaRKaRKaRKaRLaGRaRMaRNaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahahyaRfaRfaRfaRfaRfaRfaRfaRfaRfaRfaRfaRfaahaahaahaahaahaMWaMWaMWaMWaMWaMWaMWaJJaRgaRhaRgaRgaJJaJJaJJaJJaJJaJJaJJaRiaRiaRiaRjaRkaRjaRiaRiaRiaahaahaFhaFhaRlaRmaRnaRoaRpaRqaRraPSaPTaRsaRtaRuaFhaFaaFaaRvaFaaahaahaahatNatNaHNatNaahaahaNJaNJaRwaRxaRyaPaawnaxmaRzaFoaRAaRBaGCaFoaFoahyahyaCjaPdaCjaahaahaGDaHXaHYaHYaHYaHYaHYaHYaHYaHYaHYaHYaLHaIaaLIaIcaRCaClbZuaREaRFaRGaQZaQnaRHaRGaRIaQnaRbaRJaRKaRKaRKaRKaRKaRKaRKaRKaRKaRLaGRaRMaRNaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaROaRPaRPaRPaRPaRPaRPaRPaRPaRPaRQaRfaahaahaahaahaahaahaahaahaahaahaahaahaahaRgaRRaRSaRTahyahyahyahyahyahyahyahyahyaRUaRVaRVaRVaRUahyahyaahaahaahaFhaFhaRWaRXaRXaRYaFhaFhaFhaFhaFhaFhaFhaFhaahaFaaRZaFaaahaahaahatNaSaaSbatNaahaahahyaNJaNJaNJaNJaNJaScaSdawnaFoaFoaFoaFoaFoahyahyahyaCjaPdaCjaCjaahaGDaGDaGEaGFaGFaGFaSeaGFaGFaGFaGFaGHaGDaGIaSfaGKaGLaClaQnaQnaSgaShaSiaSjaSkaSlaSmaSjaRbaSnaGRaGRaGRaGRaGRaGRaGRaGRaGRaGRaGRaDtaFJaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaROaRPaSoaSpaSqaSraSsaStaSoaSuaSvaSwaRfaahaahaahaahaahaahaahaahaahaSxaSxaSxaSxaSxaSyaSzaRTahyahyahyahyahyahyahyahyahyaSAaSBaSCaSDaSAahyahyaahaahaahaahahyahyahyahyahyahyahyahyahyahyahyaahaahaahaFaaFaaFaaahaahaahatNaSEaSFatNaahaahahyahyahyahyahyaSGawnaxmawnaSGahyahyahyahyahyahyahyaCjaSHaSIaCjaahaahahyahyahyahyahyahyahyahyahyahyahyaDoaFqaSJaFsaFtaClaRDaSKaSLaSMaSNaQnaRHaSOaRIaQnaSPaGRaFCaSQaSRaFFaSSaFFaSTaSQaFCaSUaEvaDtaOoaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSVaSWaSXaSXaSXaSXaSXaSXaSXaSYaSvaSwaRfaahaahaahaahaahaahaahaahaahaSxaSZaTaaTbaTcaTdaTeaRTahyahyahyaTfaTgaThaTiaTfahyaTjaTkaTlaTkaTjahyahyaahaahaahaahaahahyahyahyahyahyahyahyahyahyahyahyaahaahaahaahaahaahaahaahatNaHNaTmatNaahaahahyahyahyahyahyaTnawnaxmawnaTnahyaToaTpaTqaTraToahyaCjaPdaDnaCjaahaahahyahyahyahyahyahyahyahyahyahyahyaEpaTsaLIaIcaKwaClaQnaQnaQnaQnaQnaQnaQnaQnaQnaQnaEvaEvaEvaEvaEvaEvaEvaEvaEvaEvaEvaEvaEvaTtaOoaDtaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9701,9 +9702,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahbLkbNebNfbNgbUhbNgbNfbNebLkahyahyaahaahbtHbtHbIibtHbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbUibUjbUkbUlbSEbUmbUnbUnbUobUpbUqbUrbUsbUtbUubUvbUwbUxbSLbUybUzbUAbUBbUBbUybUzbUybUCbUDbUEahyahybKdbecbcnaZzbUFahybUGbUHbUIbUJbUKbULbULbUMbUGbUNbUObUPbNCbNCbUQbNCbNCbNCbNCbNCbNCaahaZdaZHbURbUSbUTbUUbUVbUWbUWbUWbUWbUWbUXbUYbTkbTlbUZbVabVbbVcbTkbTlbVdbVeaUvaUvbVfbVgbdvaUvbVhaToahybMkbVibVjbVkbVlbVmbVnbVobVpbVqbVrbVsbMpbKNbKNbKSbKSbKSbKSbKSbTJbVtbVubVvbVwbVxbVybVzbVAbVBbVCbSpbVDbVEbVFbVGbVGbVHbSqbVIbVJbSubVKbVLbVMbSuaahaahbSxbVNbVObSxaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahbLkbLlbVPbVQbVRbVSbVTbLmbLkahyaahaahaahaahbtHbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbVUbVVbVWbVXbVYbVZbWabWbbWcbWdbWebWfbWgbWhbWibWibWjbWkbSLbWlbWmbWlbWnbUBbWlbWmbWlbUCbUDbUEahyahybKdbWobcnaZzbamahybWpbWqbULbWrbWsbWsbWtbWubUGbWvbWwbUPbWxbWybWzbWAbWBbWCbWDbWEbNCaahaZdbWFbWGbWHbWIbWJbWKbWLbWKbWKbWKbWLbWMbWJbTlbTkbWNbWObVabWPbTlbTkbWQbURbPObPPaTobHCblDbHCaToaToahybMkbWRbWSbMkbWRbWSbMkbMkbMkbWTbWUbWVbWWbKNaahaahaahaahaahaahbTJbWXbWYbWZbTNbXabXbbTQbXcbXdbXebSpbXfbXgbXhbXibXjbXkbSqbXlbXmbXnbXobXpbSubSuaahaahbSxbXqbXrbSxbSxaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybXsbXtbXubXvbXsahyahyahyaahaahaahaahbtHbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbXwbXxbXybXzbXAbXBbXCbXDbXEbXFbXGbXHbXIbXJbXKbXLbXMbXNbSLbXObUBbUBbXPbXQbXRbXRbXRbXSbXTbUEahyahybXUbXVbhqbXWbamahybXXbXYbXZbYabYbbYcbYdbYebYfbYgbYhbYibYjbYjbYkbYlbYmbYnbYnbYobNCaahaZdbYpbURbYqbTkbTlbWJbYrbWJbYrbWJbYrbWJbYsbTkbTlbUZbYtbVbbVcbTkbTlbYubURahyahyaTobYvbetbYwaToahyahyahyahyahyahyahyahyahyahybKNbKNbYxbYybKNbKNaahaahaahaahaahaahbTJbTJbTJbTJbTJbYzbYAbSpbSpbSpbSpbSpbSqbSqbSqbSqbSqbSqbSqbYBbYCbSubSubSubSuaahaahaahbSxbYDbVObYEbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybYFbYGbYHbYIbYFahyahyahyaahaahaahaahbtHbYJbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbYKbYLbYMbYNbYObYPbXMbYQbYRbYSbYTbYUbYRbYQbXMbXMbXMbYVbSLbWlbWmbWlbYWbUBbWlbWmbWlbYXbYYbUEbYZbZabeebecbDMbZbbamahybZcbZdbZebZfbZgbZhbZibZjbUGbWvbZkbZlbZmbZnbZobZpbZqbZrbZsbZtbNCaahaZdbYpbURbURbZubTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbZvbTjbZwbTlbTkbTjbZybZxahybJeaUvbetaUvbJeahyahyahyahyahyahyahyahyahyahyahybZzbZAbZBbZzaahaahaahaahaahaahaahbZCbZDbZEbZFbZGbTObTPbZHbZIbZJbZKbZLaahaahaahaahaahaahbZMbZNbZObZPbZQbZMaahaahaahaahbSxbZRbZSbZTbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybZUbZVbZWbZUbZUahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbZZcaacabcacbSEcadcaecaecaecafcagcahcaicaecaecaecajcakbSLbUybUybUybUBbUBbUybUybUybYXcalcamcanbecbecbecbcnaZzbamahycaocapbZecaqcarcarcasbULbUGbWvcatcaucavcavcawcaxcaybYnbYncazbNCaahaZdbYpcaAbURcaBbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkcaCcaDcaEcaFcaGcaHcaIahyahybrGaUvbetcaJbrGahyahyahyahyahyahyahyahyahyahyahycaKcaLcaMcaNaahaahaahaahaahaahaahbZCcaOcaPcaQcaRcaScaTcaUcaVcaWcaXbZLaahaahaahaahaahaahbZMcaYcaZcbacbbbZMaahaahaahaahcbccbdcbecbfcbcaahahyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahycbgcbhcbicbjcbgahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEcbkcblcbmcbnbSEbNZcbpcbqcbrcbscbtcbucbvcbwcbxcbycbzcbAbSLcbBcbCbUBbUBbUBbUBcbDbUBcbEcbFcamcancbGcbHbecbcnaZzcbIahybUGcbJcbKcbLcbMbULcbNbUGcbOcbPcbQcbObNCcbRcbScbTcbUcbVcbWcbXbNCaahaZdbYpaZGbURccebTkbYsbTmbTnbTkbTlbTkcbZbTmbTlbTkbTlccabTnccbbTlbTkccccaIahyahybrGccdbgJaUvbrGahyahyahyahyahyahyahyahyahyahyahyccBccfccgcaNaahaahaahaahaahaahaahbZCcchcciccjbZGcckcclbZHccmccnccobZLaahaahaahaahaahaahbZMbZNbZMbZMbZMbZMaahaahaahaahcbcccpccqccrccscctccuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybYFbYGbYHbYIbYFahyahyahyaahaahaahaahbtHbYJbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbYKbYLbYMbYNbYObYPbXMbYQbYRbYSbYTbYUbYRbYQbXMbXMbXMbYVbSLbWlbWmbWlbYWbUBbWlbWmbWlbYXbYYbUEbYZbZabeebecbDMbZbbamahybZcbZdbZebZfbZgbZhbZibZjbUGbWvbZkbZlbZmbZnbZobZpbZqbZrbZsbZtbNCaahaZdbYpbURcaAbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbZvbTjbZwbTlbTkbTjbZybZxahybJeaUvbetaUvbJeahyahyahyahyahyahyahyahyahyahyahybZzbZAbZBbZzaahaahaahaahaahaahaahbZCbZDbZEbZFbZGbTObTPbZHbZIbZJbZKbZLaahaahaahaahaahaahbZMbZNbZObZPbZQbZMaahaahaahaahbSxbZRbZSbZTbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybZUbZVbZWbZUbZUahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbZZcaacabcacbSEcadcaecaecaecafcagcahcaicaecaecaecajcakbSLbUybUybUybUBbUBbUybUybUybYXcalcamcanbecbecbecbcnaZzbamahycaocapbZecaqcarcarcasbULbUGbWvcatcaucavcavcawcaxcaybYnbYncazbNCaahaZdcaBaZdccebTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkcaCcaDcaEcaFcaGcaHcaIahyahybrGaUvbetcaJbrGahyahyahyahyahyahyahyahyahyahyahycaKcaLcaMcaNaahaahaahaahaahaahaahbZCcaOcaPcaQcaRcaScaTcaUcaVcaWcaXbZLaahaahaahaahaahaahbZMcaYcaZcbacbbbZMaahaahaahaahcbccbdcbecbfcbcaahahyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahycbgcbhcbicbjcbgahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEcbkcblcbmcbnbSEbNZcbpcbqcbrcbscbtcbucbvcbwcbxcbycbzcbAbSLcbBcbCbUBbUBbUBbUBcbDbUBcbEcbFcamcancbGcbHbecbcnaZzcbIahybUGcbJcbKcbLcbMbULcbNbUGcbOcbPcbQcbObNCcbRcbScbTcbUcbVcbWcbXbNCaahaZdbYpaZdcDsbTlbTkbYsbTmbTnbTkbTlbTkcbZbTmbTlbTkbTlccabTnccbbTlbTkccccaIahyahybrGccdbgJaUvbrGahyahyahyahyahyahyahyahyahyahyahyccBccfccgcaNaahaahaahaahaahaahaahbZCcchcciccjbZGcckcclbZHccmccnccobZLaahaahaahaahaahaahbZMbZNbZMbZMbZMbZMaahaahaahaahcbcccpccqccrccscctccuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybXsccvccwccxbXsahyahyaahaahaahbZXbZXbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbSEccycczbSEbSEbSLbSLbSLbSLbSLccAbSLbSLbSLccEccCccDbSLbSLbUEbUEcdPccFccFccGbUEbUEbUEbUEbUEbYZbZabeeccHblnblmbeeahybUGbUGbUGbUGbUGbUGbUGbUGccIccJccKccLbNCbNCccMbNCbNCbNCccNccObNCccPaZdccQaZdbURccRbTlbUZccSbVbbVcccTccUbVbbVaccVccWbUZbVabWOccXbTkbTlcbYcaIahyahybrGaUvbetaUvbvNahyahyahyahyahyahyahyahyahyahyahyccBccYccZcaNaahaahaahaahaahaahaahbZCbZCbZCbZCbZCcdacdbbZLbZLbZLbZLbZLaahaahaahaahaahaahbZMbZNbZMaahaahaahaahaahaahaahcbccdccddcdecdfcdgcdhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybYFcdiccwcdjbYFahyahyaahaahaahbZXcdkcdlcdmbZXbZXbZXbZXaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbSEbSEbSEaahaahaahaahbZXcdncdobZXahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyaZybecbcnaZzcbOcbOcbOcbOcdpcdqcdrcdscdtcducdvcdwcdxcdycdzcdAcdBcdCcdDcbOcbOcbOcbOcbOcdEcdFcdGbURbURbTkccUbVbbYtccVcdHbUZbYtbWObVccdIccUcdJcdKcdLcdMcdNcdOcdSahyahybrGcdQbetcdRaTocaNahyahyahyahyahyahyahyahyahyahycelcdTcdUcaNaahaahaahaahaahaahaahaahaahaahaahbZMcdVcdWbZMaahaahaahaahaahaahaahaahaahaahbZMbZNbZMaahaahcbccbccbccbccbccbccdXcdXcbccbccbccbcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahbZUbVSbVQbZUcdYccwcdZbZUbVSbVQbZUbZUbZXbZXceacebceccedceecefbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbZXcegcehceiceiceiceiceiahyahyahyahyahyahyahyahyahyahyahyahyahyahyahyahybaicejbjSaZzcekceLcemcbOcenceocepceocencencenccJccKcencencencdBceqcercescbOcetceLceucevcewcexceycezceAceBceCceDceAceEceAceFceCceBceGceBceCceHceIbTkbTlceJbURahyahybvNaUvbetaUvceKcaNcgqceMceMceMceMceMceMceMceMceNcaNceOcePcaNbZMbZMbZMbZMaahaahaahaahaahbZMbZMbZMceQceRbZMaahaahaahaahaahaahaahaahaahbZMbZMbZNbZMaahaahcbcceSceTceTceTceTceUceUceVceTceTceWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9725,7 +9726,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaadaadaadaadaadaadcuScuScvgcuUcuScuVcuWcuScuScuScuXcvocuZcuXcvrcvbcuXcvccvdcvecvfcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpjcvNcvhcrFcvicvjcpjcrIcqfcqfcqfcqfcqfcqfcqfcqgcpjcvkcvlcqdcpjcrIcqfcqgcpjcrIcqfcqgcpjcvmcrucrucrGcvncpjcpjahyahyahyahyahycwjcvpcuocrLcrLcrLcrLcrLcuqcvqcwjahyahyahycqvcwqcrOcrPcqycvscqvahyahyahyahyahyahyahyahyahyahyahyahycrQcvtcsYcsYcsYcvucvucvucvucvucsYcsYctbcsYcsYcsYcvvcrQaahaahcrXcvwcvxcvwcrXcrXcvycrXcrXcvzcvAcrZcrZcvBcrZcrZcvCcvDcvCcrZcvEcvFcvEcsacsacvGcsacsacvHcvIcsccsccvJcsccsccvKcvLcvKcscaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMaadaaacxfcvOcvPcvQcvRcvScvTcvUcvVcvWcvXcvYcvZcwacwbcwccuXcpXcpXcpXcpXcpXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcpjcwdcwecwfcwgcwdcpjahyahyahyahyahyahyahyahyahycpjcwhcwicwhcpjahyahyahyahyahyahyahycxAcqicqicqicwkcqicxAahyahyahyahyahyahycovcuncwlcwmcwncwocuncuncuqcwpcovahyahyahycsKcqycrOcrPcqycqycsKahyahyahyahyahyahyahyahyahyahyahyahycxCcvucvucwrcwscwtcwtcwucwvcwtcwscwwcwxcwycwzcsYcwAcrQaahaahcrXcwBcwCcwDcwDcwDcwEcwFcwGcwHcwIcwJcwKcwLcwMcwNcwMcwOcwPcrZcwQcwRcwScwScwScwTcwUcwVcwWcwXcwYcwZcxacxbcxccxbcxdcxecscaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMaadaaacxNcxgcxgcxgcxgcvScvTcxhcxhcxicuXcxjcxkcxlcxmcxncuXcxocxpcxqcxraahaahaahaahaahcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxscxtcxucxvcxwcwhcwhcwhcwhcwhcwhcwhcwhcwhcwhcwhcxxcxycwhahyahyahyahyahyahyahyahycxzcyBcxBczkcxDcyBcxzahyahyahyahyahyahycovcovcxEcxFcxGcxHcxIcxJcxKcovcovahyahyahycumcsScxLcxMcqyctucsOahyahyahyahyahyahyahyahyahyahyahyahyczAcxOcxPcsYcsYcxQcxQcxQcxQcxQcsYcxRcxScxTcxTcxTcxUcrQaahaahcrXcxVcxWcxXcxYcxZcyacybcrXcyccydcrZcyecyfcygcyhcyicyjcykcrZcylcymcyncyocypcyqcyrcsacyscytcsccyucyvcywcyxcyycyzcyAcscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMczTcyCcyDcyEcyFcxgcxgcvScyGcyHcyIcyJcyKcyLcyMcyNcyOcyPcuXcxqcxqcxqcxrcxrcxrcxrcxrcxrcxrcyQcyRcyScyScyScyScyScyScyScyScyScyScyScyTcyScyUcyVcyWcyXcyYcyVcyZczaczbczaczaczaczaczaczaczaczaczaczccwhahyahyahyahyahycxzcxzcxzcxzczdczeczfczgczhcxzcxzcxzcxzahyahyahyahycovcovcovcziczjczicovcovcovahyahyahyahyahycvacrOcrPcqycvaahyahyahyahyahyahyahyahyahyahyahyahyahyczZczlcxQcsYcsYcsYcsYczmcsYcsYcsYcxRczncvucvucvuczocrQaahaahcrXcrXcrXcrXcrXcrXcrXcrXcrXczpcuAcrZcrZcrZcrZcrZcrZcrZcrZcrZcsacsacsacsacsacsacsacsacuLczqcsccsccsccsccsccsccsccsccscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMczTcyCcyDcyEcyFcxgcxgcvScyGcyHcyIcyJcyKcyLcyMcyNcyOcyPcuXcxqcxqcxqcxrcxrcxrcxrcxrcxrcxrcyQcyRcyScyScyScyScyScyScyScyScyScyScyScyTcyScyUcyVcyWcyXcyYcyVcyZczaczbczaczaczaczaczaczaczaczaczaczccwhahyahyahyahyahycxzcxzcxzcxzczdczecboczgczhcxzcxzcxzcxzahyahyahyahycovcovcovcziczjczicovcovcovahyahyahyahyahycvacrOcrPcqycvaahyahyahyahyahyahyahyahyahyahyahyahyahyczZczlcxQcsYcsYcsYcsYczmcsYcsYcsYcxRczncvucvucvuczocrQaahaahcrXcrXcrXcrXcrXcrXcrXcrXcrXczpcuAcrZcrZcrZcrZcrZcrZcrZcrZcrZcsacsacsacsacsacsacsacsacuLczqcsccsccsccsccsccsccsccsccscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMczrczsczrczscztczuczvczwczxczyczzcxgcArczBczCczDczEcuXcuXczFczGczGczGczGczGczGczGczGczGczGczHcxqcxrcxrcxrcxrcxrczIczIczJcxrcxqczKcxqcxrczLczMczNczOczPcwhcwhcwhcwhcwhczQczQczQcwhcwhcwhcwhczRcwhahyahyahyahyahycxzczSczScABczUczVczWczXczYcAIcAacAacxzaahahyahyahyahyaahaahczicAbcziaahaahaahahyahyahyahyahycqvcAccAdcAecqvahyahyahyahyahyahyahyahyahyahyahyahyaahcrQcAfcsYcsYcsYcvucvucsYcvucvucsYcxRczncxOcxPcAgcAhcrQaahaahaahaahaahaahcAicAjcAkcAlcAicAmcAncAocApcAqcBbcAoaahaahaahaahaahaahaahcAscAtcAucAvcAscAwcAxcAycAzcAAcBAcAyaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcACcADcACcAEcAFcxgcxgcvScvTcAGczzcAHcBTcAJcAKcALcAMcuXcxqcANcxqcxqcxrcxrcxrcxrcxrcxrcxrcxrcAOcxrcxraahaahaahcxrcAPcAPcAPcxrcxrcxrcxrcwdcwdcAQcARcAScwdcwdaahaahaahcwhcwhczQcwhcwhaahaahcwhczRcwhaahahyahyahyahycxzcATczecAUcAVczeczeczgcAWcAXczecAYcxzaahahyahyaahaahaahaahczicAZcziaahaahaahcBacCScBccBacqvcqvcBdcBecBfcqvcBgcBgcBgcBgcBgahyahyahyahyahyahyaahaahcrQcBhcvucsYcsYcBicxPcsYcxPcBjcsYcxRczncxOcBkcxOcBlcrQaahaahcAicAicAicAicAicBmcBncBocAiczpcBpcAocBqcBrcBscAocAocAocAocAocAscAscAscAscBtcBucBvcAscBwczqcAycBxcBycBzcAycAycAycAycAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcEBcyCcBBcBCcxgcxgcxgcBDcvTcAGczzcBEcuXcvrcvbcuXcuXcuXcxrcANcBFcxrcxraahaahaahaahaahaahcxrcBGcBHcxraahaahaahcBIcBIcBJcBIcBIaahaahaahaahcwdcBKcxucxvcwdaahaahaahaahaahcwhczQcwhaahaahaahcwhczRcwhaahaahaahahyahycxzcxzcxzcxzcBLcBMcBNcBOcBPcxzcxzcxzcxzaahaahaahaahaahaahaahczicAbczicziczicBacBacBQcBRcBacBScEIcrOcrPcqycBUcBgcBVcBWcBXcBgcBgahyahyahyahyahyaahaahcrQcBYcxPcsYcsYcxQcxQcsYcxQcxQcsYcxRczncxQcxQcxQcwAcrQaahaahcAicBZcCacCbcAicAicCccAicAicCdcvAcAocAocCecAocAocCfcCgcChcAocCicCjcCkcAscAscClcAscAscvHcCmcAycAycCncAycAycCocCpcCqcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9749,7 +9750,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahbkQcIccIccIccIccIcbkQcZocXIcXJcVDcXKcXLcUMcUNcXMcXMcXNcUOcVEcXOcXPcWFcXQcXRcXScXTcXUcXVcXWcXXcXYcXZcYacYbcYacYccYdcNecYecWacNcdaTcYgcYhcYicYjcYkcVmcRQczQcYlczQczQcYmcYncYocYpcYqcYncYrcYpcYscYtcYucYvcYwcYxcYycYxcYxcYzcYxcYAcYBcYxcYxcYCcYDcYEcYFcYGcYHcYCcYxcYIcYxcYycYJcYKcYxcYxcYxcYLcYxcYMcYNcYycYxcYxcYxcYCcYxcYGcYOcYPcYPcYQcYRcYScYRcYTcYRcYUcYVcYRcYRcYRcYWcYScYRcYXcYScYYcYRcYZcYRcYXcYRcZacYRcYRcZbcYRcYRcZccYUcYRcYRcYRcZdcYRcYRcYScYRcYXcZecZfcXFcZgcXGcZhcZicZjcXGaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahbkQcIccZkcZkcZlcZmdbDdbdcZpcZqcVMcZrcPMcUMcUNcZscZtcZucVGcVHcZvcZqcZwcZxcZycZqcZzcZAcZBcZCcZDcZEcZFcZGcZHcZGcZIcZJcZKcZLcZMcZNcZOcZPcZQcZRcZScZTcVmcRQcwhcwhcZUcwhcZVcZWcZXcWhcZVcZWcZYcWhcZVcZZdaadabdacdaddaddaddaedaddaddafdaddaddaddagdaedahdaidajdakdagdaddajdaddaddaddaedaddaddaddaddaddafdaddaddaddaddaddagdakdajdaldaddaedagdamdamdamdandamdamdaodamdamdamdapdamdamdaqdaodardasdatdaudaqdamdandamdamdaodamdamdamdamdamdamdamdavdamdamdaudamdaqdawdaxdaydazdaAdaBdaCdaDcXGaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahahycIcdaEdaFdaGcNZahycTZdaHdaIdaJdaKcTSdaLcUNdaMdaNdaOcUNcPMdaPcPMdaQcPMcPMdaRdaSdaSdbIdaUdaVdaWdbIdaUdaSdaXdaYdaZdbadbbdbcdbNdbedbfdbgdbNdbedbcdbccRQcwhdbhdbidbjcZVdbkdbldbmcWhdbndbldbocZVcWhdbpcXhdbqdbrdbrdbrdbsdbtdbrdbrdbudbrdbrdbvdbwdbxdbydbzdbAdbBdbCdcedbCdbCdbEdbFdbCdbCdbGdbCdbCdbCdbHdbCdbCdcfdbCdbBdbJdbzdbydbKdbLdbvdbMdbMdcrdbMdbMdbMdbOdbMdbMdbMdbPdbMdbMcWwdbQdbRdbScXEdbTcWwdbMdcrdbMdbMdbUdbMdbVdbMdbMdbMdbVdbMdbMdbMdbMdbWdbMcWwdbWdbXcXFdbYcXGdbZdcadcbcXGaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahbkQcIccZkcZkdccdcddcDdczdcgdchdcidaPcPMcUMdcjdckdcldcmdcndcodcpcTQdcpdcmdcodcqdcJdcsdctdcudcvdcwdcxdcydcxddbdcAdcBdcCddndcEdcFdcGdcHdcIddtdcKdcLdbcdcMcwhdcNdbidcOcZVdcPdcQdcRcWhdcSdcTdcUcZVcWhcWhcWhcWhcXHcXocXocXocXocXocXpdcVcXHcXpdcWdcXdcYdcZddadcXdcWddDdcVcXHcXocXocXocXocXpdcVcXHcXocXocXocXocXpdcVddDddcdddddeddfddgddddddcZncXAddhcZncXzcXAddhcZncXzcXAddhcZncXAddiddjddkddlddmddjddiddPddhcZncXzcXzcXzcXzcXAddhcZncXzcXzcXzcXzcXAddhddPddoddpddqddrddscXGcXGcXGcXGcXGaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahbkQcIccZkcZkdccdcddcDdczdcgdchdcidaPcPMcUMdcjdckdcldcmdcndcodcpcTQdcpdcmdcodcqdcJdcsdctdcudcvdcwdcxdcydcxddbdcAdcBdcCddndcEdcFdcGdcHdcIddtdcKczfdbcdcMcwhdcNdbidcOcZVdcPdcQdcRcWhdcSdcTdcUcZVcWhcWhcWhcWhcXHcXocXocXocXocXocXpdcVcXHcXpdcWdcXdcYdcZddadcXdcWddDdcVcXHcXocXocXocXocXpdcVcXHcXocXocXocXocXpdcVddDddcdddddeddfddgddddddcZncXAddhcZncXzcXAddhcZncXzcXAddhcZncXAddiddjddkddlddmddjddiddPddhcZncXzcXzcXzcXzcXAddhcZncXzcXzcXzcXzcXAddhddPddoddpddqddrddscXGcXGcXGcXGcXGaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahbkQcIccIccIccIccIcbkQddWdducXJddvddwcTSddxcPMcUOcVFcVEcPMcPMddyddzcWLddAddBddCdeedcsdcudcudcvdcwddEddEddFddGddHddIdcCddJddKddKddKddLddMddNddNddOdbccRQcwhdekddQddRcZVddSddTddScWhddUddVddUcZVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadeqddXddYddZdeadebdeqdecdecdecdecdecdeddeddeddeddeddeddeddecdecdecdecdecdeWdefdegdehdeidejdeWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfbdeldemdendeodepdfbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfcderdesdetdeuddsaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahbkQcIcdevdevdewcZmdbDdbddexcZqdeydezcVNcUMcPMdcjdclcVHcSHcPMcWLcWLcVIcVJdeAdeBdeCdeDdcudeEdeFdeGdeHdeIdeJdeKdeLdeMdeNddJddKddKdeOdePdeQdeRddKdeSdbccRQcwhahyahyahycZVddSdeTddScWhddUdeUddUcZVdeVdeVdeVdeVdeVdeVdeVdeVdeVdeVdeVdeVaaaaaadfhdeXdeYdeZdeadfadfmdecdecdecdecdeddeddeddeddeddeddeddeddeddecdecdecdecdfBdfddegdfedffdfgdfBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfIdfidfjdfkdeodfldfIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadfLderdesdfndfoddsaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahahycIcdfpdfqdfrcNZahycTZdfscPMcUMcWLcVIdeydftcZqdfucZqdftcZqdfvcWLcPMcPMdfwdfxdfydfzdcudcudfAdfQdfCdfDdfEddbdfFdfGdfHddndfXdfJdfKdfYdfMdfYdfNdbcdbccRQcwhahyahyahyahyddSdfOddScZVddUdfPddUdeVdeVdeVdeVdeVdeVdeVdeVdeVdeVdeVdeVdeVdgwdfRdfSdfTdfUdfVdfWdhgdcWdecdecdecdeddeddeddeddeddeddeddeddeddeddeddecdecdecddcdhudfZdgadgbdgcddcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddidgddemdgedgfdggddiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddodghdgidgjdgkddsaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/polaris-2.dmm b/maps/polaris-2.dmm index 0d80ccaad5..75d5b84a09 100644 --- a/maps/polaris-2.dmm +++ b/maps/polaris-2.dmm @@ -2148,7 +2148,7 @@ "Pp" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Pq" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Pr" = (/obj/item/clothing/head/xenos,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ps" = (/obj/item/organ/xenos/plasmavessel,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ps" = (/obj/item/organ/internal/xenos/plasmavessel,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Pt" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror/raider{pixel_x = -28; pixel_y = 0},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) "Pu" = (/obj/item/clothing/mask/gas/swat{desc = "A close-fitting mask clearly not made for a human face."; name = "\improper alien mask"},/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) "Pv" = (/obj/item/xenos_claw,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) @@ -2165,8 +2165,8 @@ "PG" = (/obj/structure/table/rack,/obj/item/clothing/suit/space/vox/stealth,/obj/item/clothing/head/helmet/space/vox/stealth,/obj/item/clothing/shoes/magboots/vox,/obj/item/clothing/gloves/yellow/vox,/obj/item/clothing/glasses/thermal/plain/monocle,/obj/item/clothing/under/vox/vox_robes,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) "PH" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) "PI" = (/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"PJ" = (/obj/item/organ/xenos/eggsac,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"PK" = (/obj/item/organ/stack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"PJ" = (/obj/item/organ/internal/xenos/eggsac,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"PK" = (/obj/item/organ/internal/stack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) "PL" = (/obj/structure/bed/chair,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) "PM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) "PN" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) diff --git a/maps/polaris-5.dmm b/maps/polaris-5.dmm index 93f38d8b15..044e7b33f3 100644 --- a/maps/polaris-5.dmm +++ b/maps/polaris-5.dmm @@ -869,7 +869,7 @@ "qK" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/floor_decal/corner/purple{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled/white,/area/outpost/research/hallway/mid) "qL" = (/turf/simulated/floor/tiled,/area/outpost/research/eva) "qM" = (/obj/effect/floor_decal/corner/purple{dir = 6},/turf/simulated/floor/tiled,/area/outpost/research/eva) -"qN" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/anomaly,/obj/item/clothing/head/helmet/space/anomaly,/obj/item/clothing/mask/breath,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/westright,/turf/simulated/floor/tiled/dark,/area/outpost/research/eva) +"qN" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/anomaly,/obj/item/clothing/head/helmet/space/anomaly,/obj/item/clothing/mask/breath,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/westright,/obj/item/device/suit_cooling_unit,/turf/simulated/floor/tiled/dark,/area/outpost/research/eva) "qO" = (/obj/structure/sign/science{desc = "A warning sign which reads 'SCIENCE!'. It has fine print below it reading 'May or may not contain spiders'."},/turf/simulated/wall/r_wall,/area/outpost/research/eva) "qP" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full,/obj/machinery/firealarm{dir = 8; pixel_x = -24; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/outpost/research/analysis) "qQ" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/white,/area/outpost/research/analysis) @@ -1468,7 +1468,7 @@ "Cl" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/outpost/mining_main/eva) "Cm" = (/obj/structure/dispenser/oxygen,/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "Cn" = (/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) -"Co" = (/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"Co" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "Cp" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/machinery/access_button/airlock_interior{frequency = 1377; master_tag = "mcontrol"; pixel_x = 26; pixel_y = -26; req_access = list(48)},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "Cq" = (/obj/machinery/door/airlock/external{frequency = 1377; icon_state = "door_locked"; id_tag = "mint"; locked = 1},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "Cr" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) @@ -1532,14 +1532,14 @@ "Dx" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall/r_wall,/area/outpost/mining_main/south_hall) "Dy" = (/obj/structure/disposaloutlet,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "Dz" = (/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosiavulgaris,/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosiavulgaris,/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) -"DA" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"DA" = (/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "DB" = (/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap,/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "DC" = (/turf/space,/area/skipjack_station/mining) "DD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/airless,/area/outpost/research/test_area) "DE" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/outpost/engineering/mining/power) "DF" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/outpost/engineering/mining/power) "DG" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{tag = "icon-map (NORTH)"; icon_state = "map"; dir = 1},/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/research/anomaly) -"DH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"DH" = (/obj/machinery/light/small{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "DI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/mining_main/north_hall) "DJ" = (/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) "DK" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/tiled,/area/outpost/mining_main/south_hall) @@ -1562,11 +1562,11 @@ "Eb" = (/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/effect/floor_decal/industrial/outline/yellow,/obj/structure/window/reinforced,/turf/simulated/floor/tiled,/area/outpost/research/toxins_misc_lab) "Ec" = (/obj/machinery/atmospherics/pipe/manifold/visible/purple{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/outpost/research/toxins_misc_lab) "Ed" = (/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/effect/floor_decal/industrial/outline/yellow,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/outpost/research/hallway/starboard) -"Ee" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) -"Ef" = (/obj/machinery/atmospherics/binary/pump/on{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) -"Eg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) -"Eh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) -"Ei" = (/obj/machinery/light/small{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) +"Ee" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Ef" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Eg" = (/obj/machinery/atmospherics/binary/pump/on{dir = 4},/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Eh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) +"Ei" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/outpost/mining_main/eva) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1718,11 +1718,11 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlumumvIvJvKvLvMAt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlumwbwbwbwcwdwewfwgwhvbvbvbwiununvSvTwjwkwkwkwldldluedloVoVdldldldldlvVvXwmwnwmvXwowpwowqwrmbdlwsdldlxGacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlvtwtwuugwvwwwxwxwyvbwzwAwBwCwCwDwEwFwGwkwHwIwldldluedloVoVdldldldlvWvWvWwJwKwLwMwMwMwMwMwMwMwMwMwMwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlugwNwOwPwQwRwSwSwTwSwUvtwVwSwWwXwYwZxaxbxcxdxeuououldloVoVdldldlvWvWxfvWvXxgvXwMxhxixjxkxlxmxnxoxowMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlvtxpxqugxrxsxtxtxuvbxvxwxxvbxyxzxAxAxBxCxDxEwlxFktktDLoVoVdlCovWvWxHxIxJxKxLxMwMxNxOxPxQxRxRxRxSxTwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlvtxpxqugxrxsxtxtxuvbxvxwxxvbxyxzxAxAxBxCxDxEwlxFktktDLoVoVdlDAvWvWxHxIxJxKxLxMwMxNxOxPxQxRxRxRxSxTwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlxUxVxVxVxVxVxUxUxUBvxXDIxZyaybybybycycybycycybycqiqiqjoVoVdldlvWydyeyfyfyfygyhyiyjykylymynyoypyqxTwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlxUyrysxVytCgxVyvxUxUywyxyyybybyzyAyByCyDyEyFyGyHyIyIyIoVoVdlyJyJyJyJyKyfyLyMCUwMyOyPDeyRySyTyRyUyUwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlxVyVDixVyXyYxVyZzazbzczdDMybDNzgycycyczhziybybycktktkvoVoVdlyJzjzkyJzlyfyfwnzmwMwMwMwMwMwMwMwMwMwMwMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlxVxVznxVxVzoxVzpzqzrzsztzuzvzwzwzxzyzzzAziybzCzBzCzDmboVoVCoyJzEzFzGzHzIzJzKDOzMzNzOzPzQzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlxVxVznxVxVzoxVzpzqzrzsztzuzvzwzwzxzyzzzAziybzCzBzCzDmboVoVDAyJzEzFzGzHzIzJzKDOzMzNzOzPzQzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadldlacxVzRzSzTzUzVzWzXzYzZAaAbAcAdAdAeAdAfAgAhybzCkZkZkZmboVoVdlyJDPAjyJzMzMAkAlAkzMAmAnAozQzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlacacxVApAqArAsDQAuAvAwAxAsAyAzAAABACADAEAFAGybzCkZwowpAHoVoVdlyJyJyJyJDRAJAKALAMANAOAPAQzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlacxVxVARxVxVASxVATyZzbAUAVAWzvAXAXAYAZBazhBbybBckZkZkZmboVoVdlaczMBdBdAoAoAoBeBfBfBfBgBhzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1730,16 +1730,16 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacxVBiBjxVBiBkxVyZ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacxUytDSxVytDSxVBwxUxUBxzUByybybBzBABBBCBDBEycBFBGqiqiqjoVoVdlacaczMzMBHAoBKDFDEAoBLzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacxUxVxVxVxVxVxUxUxUBMzczdzeBNBOBOBOBPBPBPBPBPBOBPtWdloVoVoVdldlacaczMzMzMBQBRBQzMzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaadmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBSBSBTBTBTBUBVBUBSBSBWBXBYBOBOBZCaBZCbCbCcCdCeCckvoVoVoVdldldlacacacaczMzMzMzMzMacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCfCfCfCfCfCfDTChCiCjCkClCmDHDAEfEeCpCqCrCsCtCuoVoVdldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSCvCfCfCwCfCxCyCzCACBCCCDEgCEDJCnCnCcCFCGCcqjoVoVdldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCvCfCHCICJCJCKCLDKCNCOCPEhCQCnCnCRBOCSCTBPdloVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCfCfCfCfCfCfDTChCiCjCkClCmEeCoEgEfCpCqCrCsCtCuoVoVdldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSCvCfCfCwCfCxCyCzCACBCCCDEhCEDJCnCnCcCFCGCcqjoVoVdldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSCvCfCHCICJCJCKCLDKCNCOCPEiCQCnCnCRBOCSCTBPdloVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSDUCVCWCVCVCXCYCZDaDbDcDcDdDcDVBOBOdldldloVoVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacBSBSDfDgCfCfDhDWDjDkBPCnCnDlDmBOBOdldldloVoVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacBSBSBSDnDoDhDpDpCkBPDqDrBOBOBOdldldloVoVoVacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacBSBSBSDhDsDtDuBPBOBOBOdldldldldloVoVdlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacBSBSDvDwDxBOBOacdldldldldldloVoVdlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacoVoVDyoVacacdldldldldldloVoVdldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacoVoVDzoVacacdldldldldldloVoVdlEijWacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacoVoVDzoVacacdldldldldldloVoVdlDHjWacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacoVDBacacacacdldldldldloVoVoVdldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacoVacacacacacdldldldldloVoVdldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacjWdldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacdldloVoVoVoVdldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacdloidldldldldldldldldldldldldlacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 8602f07d312b6cd58376eb05cba36595bf4ecb02 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Tue, 22 Dec 2015 13:19:50 +1030 Subject: [PATCH 23/26] Allowed grenades to be stuffed into mouths and primed. --- code/game/gamemodes/cult/ritual.dm | 2 +- .../items/weapons/grenades/chem_grenade.dm | 1 + .../objects/items/weapons/grenades/grenade.dm | 3 +- .../items/weapons/grenades/spawnergrenade.dm | 36 +++++++++--------- code/game/objects/items/weapons/tape.dm | 1 + code/modules/mob/emote.dm | 2 +- code/modules/mob/living/carbon/alien/emote.dm | 2 +- code/modules/mob/living/carbon/human/emote.dm | 2 +- .../mob/living/carbon/human/examine.dm | 8 +++- code/modules/mob/living/carbon/human/human.dm | 4 ++ .../living/carbon/human/human_attackhand.dm | 10 +++++ .../mob/living/carbon/human/stripping.dm | 5 ++- .../mob/living/carbon/human/unarmed_attack.dm | 2 +- .../mob/living/carbon/human/update_icons.dm | 2 +- .../mob/living/carbon/human/whisper.dm | 2 +- code/modules/mob/living/say.dm | 5 +-- code/modules/mob/mob.dm | 4 ++ code/modules/spells/spell_code.dm | 2 +- html/changelogs/Zuhayr-grenades.yml | 4 ++ icons/mob/mask.dmi | Bin 23114 -> 25068 bytes 20 files changed, 62 insertions(+), 35 deletions(-) create mode 100644 html/changelogs/Zuhayr-grenades.yml diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm index cba7a96ef4..d8c41eea42 100644 --- a/code/game/gamemodes/cult/ritual.dm +++ b/code/game/gamemodes/cult/ritual.dm @@ -105,7 +105,7 @@ var/global/list/rnwords = list("ire","ego","nahlizet","certum","veri","jatkaa"," if(!iscultist(user)) user << "You can't mouth the arcane scratchings without fumbling over them." return - if(istype(user.wear_mask, /obj/item/clothing/mask/muzzle)) + if(user.is_muzzled()) user << "You are unable to speak the words of the rune." return if(!word1 || !word2 || !word3 || prob(user.getBrainLoss())) diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index c3d97c47be..d022c335e0 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -6,6 +6,7 @@ w_class = 2.0 force = 2.0 det_time = null + var/stage = 0 var/state = 0 var/path = 0 diff --git a/code/game/objects/items/weapons/grenades/grenade.dm b/code/game/objects/items/weapons/grenades/grenade.dm index 16d8a620f9..c5a0607315 100644 --- a/code/game/objects/items/weapons/grenades/grenade.dm +++ b/code/game/objects/items/weapons/grenades/grenade.dm @@ -8,7 +8,8 @@ throw_speed = 4 throw_range = 20 flags = CONDUCT - slot_flags = SLOT_BELT + slot_flags = SLOT_MASK|SLOT_BELT + var/active = 0 var/det_time = 50 diff --git a/code/game/objects/items/weapons/grenades/spawnergrenade.dm b/code/game/objects/items/weapons/grenades/spawnergrenade.dm index 9677a73345..5ca0bd3845 100644 --- a/code/game/objects/items/weapons/grenades/spawnergrenade.dm +++ b/code/game/objects/items/weapons/grenades/spawnergrenade.dm @@ -9,27 +9,25 @@ var/spawner_type = null // must be an object path var/deliveryamt = 1 // amount of type to deliver - prime() // Prime now just handles the two loops that query for people in lockers and people who can see it. +// Prime now just handles the two loops that query for people in lockers and people who can see it. +/obj/item/weapon/grenade/spawnergrenade/prime() - if(spawner_type && deliveryamt) - // Make a quick flash - var/turf/T = get_turf(src) - playsound(T, 'sound/effects/phasein.ogg', 100, 1) - for(var/mob/living/carbon/human/M in viewers(T, null)) - if(M:eyecheck() <= 0) - flick("e_flash", M.flash) + if(spawner_type && deliveryamt) + // Make a quick flash + var/turf/T = get_turf(src) + playsound(T, 'sound/effects/phasein.ogg', 100, 1) + for(var/mob/living/carbon/human/M in viewers(T, null)) + if(M:eyecheck() <= 0) + flick("e_flash", M.flash) - for(var/i=1, i<=deliveryamt, i++) - var/atom/movable/x = new spawner_type - x.loc = T - if(prob(50)) - for(var/j = 1, j <= rand(1, 3), j++) - step(x, pick(NORTH,SOUTH,EAST,WEST)) - - // Spawn some hostile syndicate critters - - qdel(src) - return + // Spawn some hostile syndicate critters + for(var/i=1, i<=deliveryamt, i++) + var/atom/movable/x = new spawner_type(T) + if(prob(50)) + for(var/j = 1, j <= rand(1, 3), j++) + step(x, pick(NORTH,SOUTH,EAST,WEST)) + qdel(src) + return /obj/item/weapon/grenade/spawnergrenade/manhacks name = "manhack delivery grenade" diff --git a/code/game/objects/items/weapons/tape.dm b/code/game/objects/items/weapons/tape.dm index f87000dd87..0eea22ea52 100644 --- a/code/game/objects/items/weapons/tape.dm +++ b/code/game/objects/items/weapons/tape.dm @@ -56,6 +56,7 @@ return user.visible_message("\The [user] has taped up \the [H]'s mouth!") + H.equip_to_slot_or_del(new /obj/item/clothing/mask/muzzle/tape(H), slot_wear_mask) else if(user.zone_sel.selecting == "r_hand" || user.zone_sel.selecting == "l_hand") diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index 54f31d5b5b..9908a6378f 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -7,7 +7,7 @@ usr << "You are unable to emote." return - var/muzzled = istype(src.wear_mask, /obj/item/clothing/mask/muzzle) + var/muzzled = is_muzzled() if(m_type == 2 && muzzled) return var/input diff --git a/code/modules/mob/living/carbon/alien/emote.dm b/code/modules/mob/living/carbon/alien/emote.dm index b3b0ae53c1..62fa2cf108 100644 --- a/code/modules/mob/living/carbon/alien/emote.dm +++ b/code/modules/mob/living/carbon/alien/emote.dm @@ -8,7 +8,7 @@ if(findtext(act,"s",-1) && !findtext(act,"_",-2))//Removes ending s's unless they are prefixed with a '_' act = copytext(act,1,length(act)) - var/muzzled = istype(src.wear_mask, /obj/item/clothing/mask/muzzle) + var/muzzled = is_muzzled() switch(act) if ("me") diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 94c7f4600a..e98022acfd 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -9,7 +9,7 @@ if(findtext(act,"s",-1) && !findtext(act,"_",-2))//Removes ending s's unless they are prefixed with a '_' act = copytext(act,1,length(act)) - var/muzzled = istype(src.wear_mask, /obj/item/clothing/mask/muzzle) + var/muzzled = is_muzzled() //var/m_type = 1 for (var/obj/item/weapon/implant/I in src) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index c6501aae7c..d9a6850c3a 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -150,10 +150,14 @@ //mask if(wear_mask && !skipmask) + var/descriptor = "on [T.his] face" + if(istype(wear_mask, /obj/item/weapon/grenade) && check_has_mouth()) + descriptor = "in [T.his] mouth" + if(wear_mask.blood_DNA) - msg += "[T.He] [T.has] \icon[wear_mask] [wear_mask.gender==PLURAL?"some":"a"] [(wear_mask.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [wear_mask.name] on [T.his] face!\n" + msg += "[T.He] [T.has] \icon[wear_mask] [wear_mask.gender==PLURAL?"some":"a"] [(wear_mask.blood_color != SYNTH_BLOOD_COLOUR) ? "blood" : "oil"]-stained [wear_mask.name] [descriptor]!\n" else - msg += "[T.He] [T.has] \icon[wear_mask] \a [wear_mask] on [T.his] face.\n" + msg += "[T.He] [T.has] \icon[wear_mask] \a [wear_mask] [descriptor].\n" //eyes if(glasses && !skipeyes) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 303e4a565e..4495ed4175 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1407,3 +1407,7 @@ return 0 return check_organ.can_feel_pain() return !(species.flags & NO_PAIN) + +/mob/living/carbon/human/is_muzzled() + return (wear_mask && (istype(wear_mask, /obj/item/clothing/mask/muzzle) || istype(src.wear_mask, /obj/item/weapon/grenade))) + diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm index ae262677c8..cea8035a84 100644 --- a/code/modules/mob/living/carbon/human/human_attackhand.dm +++ b/code/modules/mob/living/carbon/human/human_attackhand.dm @@ -118,6 +118,16 @@ if(I_HURT) + if(M.zone_sel.selecting == "mouth" && wear_mask && istype(wear_mask, /obj/item/weapon/grenade)) + var/obj/item/weapon/grenade/G = wear_mask + if(!G.active) + visible_message("\The [M] pulls the pin from \the [src]'s [G.name]!") + G.activate(M) + update_inv_wear_mask() + else + M << "\The [G] is already primed! Run!" + return + if(!istype(H)) attack_generic(H,rand(1,3),"punched") return diff --git a/code/modules/mob/living/carbon/human/stripping.dm b/code/modules/mob/living/carbon/human/stripping.dm index 3ebef9e127..26efe8ee90 100644 --- a/code/modules/mob/living/carbon/human/stripping.dm +++ b/code/modules/mob/living/carbon/human/stripping.dm @@ -69,7 +69,10 @@ if(stripping) visible_message("\The [user] is trying to remove \the [src]'s [target_slot.name]!") else - visible_message("\The [user] is trying to put \a [held] on \the [src]!") + if(slot_to_strip == slot_wear_mask && istype(held, /obj/item/weapon/grenade)) + visible_message("\The [user] is trying to put \a [held] in \the [src]'s mouth!") + else + visible_message("\The [user] is trying to put \a [held] on \the [src]!") if(!do_after(user,HUMAN_STRIP_DELAY)) return diff --git a/code/modules/mob/living/carbon/human/unarmed_attack.dm b/code/modules/mob/living/carbon/human/unarmed_attack.dm index b5a78b642c..e56158904f 100644 --- a/code/modules/mob/living/carbon/human/unarmed_attack.dm +++ b/code/modules/mob/living/carbon/human/unarmed_attack.dm @@ -112,7 +112,7 @@ var/global/list/sparring_attack_cache = list() /datum/unarmed_attack/bite/is_usable(var/mob/living/carbon/human/user, var/mob/living/carbon/human/target, var/zone) - if (user.wear_mask && istype(user.wear_mask, /obj/item/clothing/mask/muzzle)) + if (user.is_muzzled()) return 0 if (user == target && (zone == BP_HEAD || zone == O_EYES || zone == O_MOUTH)) return 0 diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 8d7b0aeeae..868c7913b3 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -788,7 +788,7 @@ var/global/list/damage_icon_parts = list() /mob/living/carbon/human/update_inv_wear_mask(var/update_icons=1) - if( wear_mask && ( istype(wear_mask, /obj/item/clothing/mask) || istype(wear_mask, /obj/item/clothing/accessory) ) && !(head && head.flags_inv & HIDEMASK)) + if( wear_mask && ( istype(wear_mask, /obj/item/clothing/mask) || istype(wear_mask, /obj/item/clothing/accessory) || istype(wear_mask, /obj/item/weapon/grenade) ) && !(head && head.flags_inv & HIDEMASK)) wear_mask.screen_loc = ui_mask //TODO var/image/standing diff --git a/code/modules/mob/living/carbon/human/whisper.dm b/code/modules/mob/living/carbon/human/whisper.dm index 7336189e11..4d59841cd6 100644 --- a/code/modules/mob/living/carbon/human/whisper.dm +++ b/code/modules/mob/living/carbon/human/whisper.dm @@ -37,7 +37,7 @@ //This is used by both the whisper verb and human/say() to handle whispering /mob/living/carbon/human/proc/whisper_say(var/message, var/datum/language/speaking = null, var/alt_name="", var/verb="whispers") - if (istype(src.wear_mask, /obj/item/clothing/mask/muzzle)) + if (is_muzzled()) src << "You're muzzled and cannot speak!" return diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 460a16d3df..fe33cfdcb9 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -82,9 +82,6 @@ proc/get_radio_key_from_channel(var/channel) /mob/living/proc/get_default_language() return default_language -/mob/living/proc/is_muzzled() - return 0 - /mob/living/proc/handle_speech_problems(var/message, var/verb) var/list/returns[3] var/speech_problem_flag = 0 @@ -167,7 +164,7 @@ proc/get_radio_key_from_channel(var/channel) speaking.broadcast(src,trim(message)) return 1 - verb = say_quote(message, speaking) + verb = say_quote(message, speaking) if(is_muzzled()) src << "You're muzzled and cannot speak!" diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index ff45cb71d0..e6a0b277f6 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1131,3 +1131,7 @@ mob/proc/yank_out_object() /mob/proc/isSynthetic() return 0 + +/mob/proc/is_muzzled() + return 0 + diff --git a/code/modules/spells/spell_code.dm b/code/modules/spells/spell_code.dm index 1e8274757e..6b648fb392 100644 --- a/code/modules/spells/spell_code.dm +++ b/code/modules/spells/spell_code.dm @@ -213,7 +213,7 @@ var/list/spells = typesof(/spell) //needed for the badmin verb for now return 0 if(ishuman(user) && !(invocation_type in list(SpI_EMOTE, SpI_NONE))) - if(istype(user.wear_mask, /obj/item/clothing/mask/muzzle)) + if(user.is_muzzled()) user << "Mmmf mrrfff!" return 0 diff --git a/html/changelogs/Zuhayr-grenades.yml b/html/changelogs/Zuhayr-grenades.yml new file mode 100644 index 0000000000..f68cc2e536 --- /dev/null +++ b/html/changelogs/Zuhayr-grenades.yml @@ -0,0 +1,4 @@ +author: Zuhayr +delete-after: True +changes: + - rscadd: "Added the ability to equip grenades to the mask slot, and to prime them by clicking someone with harm intent targeting the mouth." diff --git a/icons/mob/mask.dmi b/icons/mob/mask.dmi index 7ff6b43cb899511f7549d0a4837c29b38001822e..f8ce40804123c05ceb2c4df966092699d452db30 100644 GIT binary patch literal 25068 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 F@h|yX_xS(- From 5313c6b67bc3bdef163fd0a393713007beecd497 Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Wed, 23 Dec 2015 20:20:29 +1030 Subject: [PATCH 24/26] Added Nerf weapons to Cargo. Codersprites. --- code/datums/supplypacks.dm | 17 ++++++++ .../objects/items/weapons/material/foam.dm | 40 ++++++++++++++++++ .../items/weapons/material/twohanded.dm | 1 + code/modules/materials/materials.dm | 11 +++++ icons/mob/back.dmi | Bin 50492 -> 47660 bytes icons/mob/items/lefthand.dmi | Bin 117877 -> 119332 bytes icons/mob/items/righthand.dmi | Bin 119239 -> 120790 bytes icons/obj/weapons.dmi | Bin 29541 -> 28020 bytes 8 files changed, 69 insertions(+) create mode 100644 code/game/objects/items/weapons/material/foam.dm diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 96e9ffda5f..f1d1b94aac 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -248,6 +248,23 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee containername = "Wizard costume crate" group = "Miscellaneous" +/datum/supply_packs/foam_weapons + name = "Foam Weapon Crate" + contains = list( + /obj/item/weapon/material/sword/foam, + /obj/item/weapon/material/sword/foam, + /obj/item/weapon/material/twohanded/baseballbat/foam, + /obj/item/weapon/material/twohanded/baseballbat/foam, + /obj/item/weapon/material/twohanded/spear/foam, + /obj/item/weapon/material/twohanded/spear/foam, + /obj/item/weapon/material/twohanded/fireaxe/foam, + /obj/item/weapon/material/twohanded/fireaxe/foam + ) + cost = 80 + containertype = /obj/structure/closet/crate + containername = "foam weapon crate" + group = "Miscellaneous" + /datum/supply_packs/mule name = "MULEbot Crate" contains = list(/obj/machinery/bot/mulebot) diff --git a/code/game/objects/items/weapons/material/foam.dm b/code/game/objects/items/weapons/material/foam.dm new file mode 100644 index 0000000000..0421161cd6 --- /dev/null +++ b/code/game/objects/items/weapons/material/foam.dm @@ -0,0 +1,40 @@ +/obj/item/weapon/material/twohanded/baseballbat/foam/New(var/newloc) + ..(newloc,"foam") + +/obj/item/weapon/material/sword/foam + attack_verb = list("bonked","whacked") + force_divisor = 0 + unbreakable = 1 + +/obj/item/weapon/material/twohanded/baseballbat/foam + attack_verb = list("bonked","whacked") + force_wielded = 0 + force_divisor = 0 + unbreakable = 1 + +/obj/item/weapon/material/sword/foam/New(var/newloc) + ..(newloc,"foam") + +/obj/item/weapon/material/twohanded/spear/foam + attack_verb = list("bonked","whacked") + force_wielded = 0 + force_divisor = 0 + applies_material_colour = 1 + base_icon = "spear_mask" + icon_state = "spear_mask0" + unbreakable = 1 + +/obj/item/weapon/material/twohanded/spear/foam/New(var/newloc) + ..(newloc,"foam") + +/obj/item/weapon/material/twohanded/fireaxe/foam + attack_verb = list("bonked","whacked") + force_wielded = 0 + force_divisor = 0 + applies_material_colour = 1 + base_icon = "fireaxe_mask" + icon_state = "fireaxe_mask0" + unbreakable = 1 + +/obj/item/weapon/material/twohanded/fireaxe/foam/New(var/newloc) + ..(newloc,"foam") diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index aac0b98679..2bc8830ad8 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -194,3 +194,4 @@ hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("attacked", "poked", "jabbed", "torn", "gored") default_material = "glass" + applies_material_colour = 0 \ No newline at end of file diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index d4a6b85f5d..8a919c98a5 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -745,3 +745,14 @@ var/list/name_to_material flags = MATERIAL_PADDING ignition_point = T0C+232 melting_point = T0C+300 + +/material/toy_foam + name = "foam" + display_name = "foam" + use_name = "foam" + flags = MATERIAL_PADDING + ignition_point = T0C+232 + melting_point = T0C+300 + icon_colour = "#ff9900" + hardness = 1 + weight = 1 \ No newline at end of file diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index f7a49811cea3568771f891da8dfeb1d58b0e3cd2..a8497c0c01ed0f75c374c1396e49219790078304 100644 GIT binary patch literal 47660 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%0DgZI}|*CTMu#q2NlAL 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 literal 50492 zcmc$`2UL^a*CrZ3ML|TQcSXTM6A^+)lV+i-^bXQ{?*yeu7g0Kdru5!xP?|{ZozPq8 z5PFh1`Tf8D_sy&|bJv}_X5C@QI>}4kobv9o_p_h<97B{9Uy_k9kU$_1ve&Pq-$EdS zY2erI>J@NB>dW5)@aC)Mdktr46DMOw3wvh^J6j0EJvk+|$9C%R^^U&1cUQLrn7=-i zQL4TEFo@9V`05qzfmjC3C-+ub>=06$?QN6M551r44(Z=(E7nFItdAY!Pd16r63b7t zr3qSMj8(cLd%vhMx*#5z(&!qmU&LIyIwCuh_EO=YYnoeFl98#-U(3wVwgSa|BQ?g# zhGyzDU1HCUPkX~qx&RH$uwSiT?Ow5w5^wYP8ZPI>(;xQdM`-oj-}~g3!1Z-#lltY$ zNxhuq)o(#J#DiJHNU#j9iugJT(8Xscpp&sQ(vNNlxotfq5GOIy06)ETvqk<+J^Axq@=m~MEl757cKQq z{k;DW+qW@V-WBj_lCgSdo;63&_{&*g>?_A=^NgW+t96*S6P>0_DRs-&Q)n5LlF`xJ zNdwD7_{BF*w;RHIj7GPJGb%(`=b3L_nqzlSisj`DZ9ggg3meqfS

g7O7F}=kFbN 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

0e|kw#ejH<(BZIS2xQ30m~kOTZEvu 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 H?B)LgV}78N diff --git a/icons/mob/items/lefthand.dmi b/icons/mob/items/lefthand.dmi index 9ce58e8abd23df9beb1a8c9d6533e8aff03a92de..a7cac5981b8630f8d175d2e87687446ea9dc32a3 100644 GIT binary patch delta 18976 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

_7Y`YB) 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 z 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 diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 8f2bf86905c1096f52ba80e81a030ccb060ead5e..f3d2b6916cf044c152172e822c621254749eda74 100644 GIT binary patch literal 28020 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

@3xzFi`qD^*Abw9Z08U<*CT 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 literal 29541 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 From 996eecde3cf1aa5a95139346aa6e3cb9fc93dfdc Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Wed, 23 Dec 2015 20:26:55 +1030 Subject: [PATCH 25/26] Ticks foam weapon file. --- polaris.dme | 1 + 1 file changed, 1 insertion(+) diff --git a/polaris.dme b/polaris.dme index 9638bf2c48..2cac52a923 100644 --- a/polaris.dme +++ b/polaris.dme @@ -758,6 +758,7 @@ #include "code\game\objects\items\weapons\implants\implantuplink.dm" #include "code\game\objects\items\weapons\material\ashtray.dm" #include "code\game\objects\items\weapons\material\bats.dm" +#include "code\game\objects\items\weapons\material\foam.dm" #include "code\game\objects\items\weapons\material\kitchen.dm" #include "code\game\objects\items\weapons\material\knives.dm" #include "code\game\objects\items\weapons\material\material_weapons.dm" From a37034effb5021a187fa8abd1b5f534df45bc38a Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Thu, 24 Dec 2015 22:13:48 +1030 Subject: [PATCH 26/26] Changelog. --- html/changelogs/example - Copy.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/example - Copy.yml diff --git a/html/changelogs/example - Copy.yml b/html/changelogs/example - Copy.yml new file mode 100644 index 0000000000..873518839e --- /dev/null +++ b/html/changelogs/example - Copy.yml @@ -0,0 +1,4 @@ +author: Zuhayr +delete-after: True +changes: + - rscadd: "Added foam weapons to cargo for LARP shenanigans." \ No newline at end of file