From 0d0f14d3f842e40526e4da0a40f3349208a309b7 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Mon, 13 Apr 2020 03:34:58 +0200 Subject: [PATCH] Item color removal port fixes. --- code/modules/clothing/spacesuits/hardsuit.dm | 8 ++-- .../mob/living/carbon/human/update_icons.dm | 40 ++++++------------ .../modules/mob/living/carbon/update_icons.dm | 14 +++--- icons/mob/clothing/uniform_digi.dmi | Bin 344182 -> 344180 bytes 4 files changed, 24 insertions(+), 38 deletions(-) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index da979cd516..a1deb8ad30 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -30,16 +30,14 @@ /obj/item/clothing/head/helmet/space/hardsuit/attack_self(mob/user) on = !on - icon_state = "[basestate][on]-[hardsuit_type]" user.update_inv_head() //so our mob-overlays update - if(on) set_light(brightness_on) else set_light(0) - for(var/X in actions) - var/datum/action/A = X - A.UpdateButtonIcon() + +/obj/item/clothing/head/helmet/space/hardsuit/update_icon_state() + icon_state = "[basestate][on]-[hardsuit_type]" /obj/item/clothing/head/helmet/space/hardsuit/dropped(mob/user) ..() diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index ae7009f5f6..8b4f282f76 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -321,12 +321,16 @@ There are several things that need to be remembered: if(!get_bodypart(BODY_ZONE_HEAD)) //Decapitated return - if(client && hud_used && hud_used.inv_slots[SLOT_BACK]) + if(client && hud_used) var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HEAD] inv.update_icon() - update_mutant_bodyparts() if(head) + head.screen_loc = ui_head + if(client && hud_used && hud_used.hud_shown) + if(hud_used.inventory_shown) + client.screen += head + update_observer_view(head,1) remove_overlay(HEAD_LAYER) var/obj/item/clothing/head/H = head var/alt_icon = H.mob_overlay_icon || 'icons/mob/clothing/head.dmi' @@ -348,6 +352,7 @@ There are several things that need to be remembered: head_overlay.pixel_y += dna.species.offset_features[OFFSET_HEAD][2] overlays_standing[HEAD_LAYER] = head_overlay apply_overlay(HEAD_LAYER) + update_mutant_bodyparts() /mob/living/carbon/human/update_inv_belt() remove_overlay(BELT_LAYER) @@ -457,11 +462,16 @@ There are several things that need to be remembered: if(!get_bodypart(BODY_ZONE_HEAD)) //Decapitated return - if(client && hud_used && hud_used.inv_slots[SLOT_WEAR_MASK]) + if(client && hud_used) var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_WEAR_MASK] inv.update_icon() if(wear_mask) + wear_mask.screen_loc = ui_mask + if(client && hud_used && hud_used.hud_shown) + if(hud_used.inventory_shown) + client.screen += wear_mask + update_observer_view(wear_mask,1) var/obj/item/clothing/mask/M = wear_mask remove_overlay(FACEMASK_LAYER) var/alt_icon = M.mob_overlay_icon || 'icons/mob/clothing/mask.dmi' @@ -515,22 +525,6 @@ There are several things that need to be remembered: //human HUD updates for items in our inventory -//update whether our head item appears on our hud. -/mob/living/carbon/human/update_hud_head(obj/item/I) - I.screen_loc = ui_head - if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) - client.screen += I - update_observer_view(I,1) - -//update whether our mask item appears on our hud. -/mob/living/carbon/human/update_hud_wear_mask(obj/item/I) - I.screen_loc = ui_mask - if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) - client.screen += I - update_observer_view(I,1) - //update whether our neck item appears on our hud. /mob/living/carbon/human/update_hud_neck(obj/item/I) I.screen_loc = ui_neck @@ -579,13 +573,7 @@ use_mob_overlay_icon: if FALSE, it will always use the default_icon_file even if /obj/item/proc/build_worn_icon(default_layer = 0, default_icon_file = null, isinhands = FALSE, femaleuniform = NO_FEMALE_UNIFORM, override_state, style_flags = NONE, use_mob_overlay_icon = TRUE) var/t_state - if(override_state) - t_state = override_state - else - if(isinhands && item_state) - t_state = item_state - else - t_state = icon_state + t_state = override_state || item_state || icon_state //Find a valid icon file from variables+arguments var/file2use diff --git a/code/modules/mob/living/carbon/update_icons.dm b/code/modules/mob/living/carbon/update_icons.dm index 0cfca9f212..35350ccb45 100644 --- a/code/modules/mob/living/carbon/update_icons.dm +++ b/code/modules/mob/living/carbon/update_icons.dm @@ -90,9 +90,9 @@ if(!get_bodypart(BODY_ZONE_HEAD)) //Decapitated return - if(client && hud_used && hud_used.inv_slots[SLOT_WEAR_MASK]) + if(client && hud_used) var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_WEAR_MASK] - inv.update_icon() + inv?.update_icon() if(wear_mask) if(!(head && (head.flags_inv & HIDEMASK))) @@ -110,7 +110,7 @@ if(wear_neck) if(!(head && (head.flags_inv & HIDENECK))) - overlays_standing[NECK_LAYER] = wear_neck.build_worn_icon(default_layer = NECK_LAYER, default_icon_file = 'icons/mob/clothing/neck.dmi', override_state = wear_mask.icon_state) + overlays_standing[NECK_LAYER] = wear_neck.build_worn_icon(default_layer = NECK_LAYER, default_icon_file = 'icons/mob/clothing/neck.dmi', override_state = wear_neck.icon_state) update_hud_neck(wear_neck) apply_overlay(NECK_LAYER) @@ -118,9 +118,9 @@ /mob/living/carbon/update_inv_back() remove_overlay(BACK_LAYER) - if(client && hud_used && hud_used.inv_slots[SLOT_BACK]) + if(client && hud_used) var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_BACK] - inv.update_icon() + inv?.update_icon() if(back) overlays_standing[BACK_LAYER] = back.build_worn_icon(default_layer = BACK_LAYER, default_icon_file = 'icons/mob/clothing/back.dmi', override_state = back.icon_state) @@ -134,9 +134,9 @@ if(!get_bodypart(BODY_ZONE_HEAD)) //Decapitated return - if(client && hud_used && hud_used.inv_slots[SLOT_BACK]) + if(client && hud_used) var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_HEAD] - inv.update_icon() + inv?.update_icon() if(head) overlays_standing[HEAD_LAYER] = head.build_worn_icon(default_layer = HEAD_LAYER, default_icon_file = 'icons/mob/clothing/head.dmi', override_state = head.icon_state) diff --git a/icons/mob/clothing/uniform_digi.dmi b/icons/mob/clothing/uniform_digi.dmi index 80e8f80b94835907eaaf20102421a629f2e879bd..9deb214335569dc3f88987f0f768b6be48fff785 100644 GIT binary patch delta 1889 zcmV-n2cG!$fEDzB6_6x63*TW_C*r0#YC4}Ss)yfW~y#7kANF6{5SUw-}X zm*2b3zkPW;vt~)Ld+L7r;XjWL7qP{4Pu<5KA0Hgc=*sp_E>yUGd+NRmY{iiO?(xBj z=I*Kc>G9#D6gYQJ-G>`zLaH*eN=}irE{x_v6001?Q6g6{Dk0@6Rnm*ZI%XWr9+}+8 zk&75aA_vJu*D84yO+Jlva3Bp-pJMiXUZhkx%Y{vmbA79gPnY_4pD9X7bv^KOSy}tR zlbKLh+2V4S`ika%yc+ig_VeR|WlwAO)O~pO>hIO*p6ci2$xPWLEp>Gn{K6nQDsu!` zWs6H)L3Cbp_ULTChPon(vOzS*I03fZtya^VB4VYZGDpl@lr07pCeQ*0PiDf;* z0f$GX$SI||bDu@2)J-Kws6#oOh3l&@9E(YHjYy}H7~o2O$!oM?kX3B9IEmIL83eh_ zGz|&52reWAkaq(r76WJ$zpRkzU7QrgjL49V z^?=5Zj;V+5n|aZ>t}P^SNEg7#koRlf;21_vRtWK)+2}H4=z84HQJH~o!{{>P?M`U$ zc>Rg%eqiu_3-|N-Oo5=g4rX1-gJ0PAR2)Nip@`DE_iFjTK4kj{GT=gLIktRa8_}=~ zO;EJCM5~;Et2X)j6Mxgok(oeao(oCrXHv32x{$NvLb3Fxqyfl%T*|xbJ`kYVcRZrn z#*vzYMhcP6D;QHOIxf+Iv~g@E#zPwdgC&>hK5SL4Pyqwp$3GuK^Rlj>@YAg1VgpBz_G5wAUs8(gft1{{R0zqc{5DQtISZqX0lE zAtA@;5^{W7H3K=jy-a~D`Y2QY>`|%!(7hS}O+fgBY|$;RL)1tjBVRw_ctqqD-$EY` zh;kTz2QB=_{Qz{UYrF*_m5pouh9ulFCZ!!_JWs2E& z%2^Bqhb0$^BPJNDc|9}5yrw0Nr{pIfvU5^+rij&pFmUi>CJZeUK~Q0t&rCqoc5*by zThxO~CC{mJPu+))?|%IF?ymlAD5Qpc=nF-EAaPW-J)b#B9QzSWm@!8Rfi7hNGXD)j ztR}NrR0?3T2Z=~^K-FFybZP1qFrggc(L9NTs?AptmWmaouP7`ROug@6BvLdkB|nPR zGo>4fY}}1T>k9{;l;T)lXu8y=JgS^dNH41Ht@oNHo)aLOUsPtcJ(gJyeqpS%scbQS z@R>7Gw9F(vDLBp9Qx1gG6byxgDaWSN%`BGjVHB9v!Rg;WClB`D4eonbRDj|Mzsx=< zpg~*TOHM%TL3!#;3V|Y!C@D`p$1!s~iYv-fAJ}H|W-RfVjr>xYghzfUZBvi@Qkv$( zvAl2GoVGP^Y@5(ItxfXJX>Hr0b6T5!CS>!cwh!3+sc8i^e`=c0AN2|q>Ex0Jnjm{i z7V_;QOLhd@yGq5ly0cysYCoLCLoY1WEI>LnK-6|WVF?sQfps$oLQ9`uk^)pbNhc@@ zJwUMF3PDJDi-D`9FjO4GVgfW8u%r_v@k#>Byx_6}y1rXq8sqm~Bq)4;YYF1F_mSv; zqw$F0dodcG40w?`Tne@ond8f>7!9$!D}MK^tW6OHcBqEwtRA&;L(dq*0fq+zfN^y3p< za=%0iq_cDK@K0&3==)hE5b$%cyCIoPinei3VJ(7;S<^^8{#>I6m;B5WdzE;Te#qX)eG+R+BUX?<9|x(mhsg4iqPe^%)P>4CzFy@w*5@seB}Rq_v`PUyU)LUdHfS<{G2HykU{2y bR|khz2LXpy2Lgvz2Lp#!2L!iQ2L&HF+{22* delta 1891 zcmV-p2b}oyfED(D6_6x^d;+0FR*N+vS=u7iJ^J=JNd1a2=3jt~ISue*iH~AE**_ls`OCk) z{dV~J>$m3Pb+E(5^&J3c1 zF=vo9_PEpqM5o!Nh|czVYAd1`J4AC_5MbNG;!P*b;=sMcu8Xn9z{&*Pz&?^2F;q`% z6eC~-$yGV3wk`f7Mu62xlG;$wlW=<#j&pU|)(AZw#Q}bQrYzZuLsqfg#Zjz1$s~x2 zGwrn^Dt0ERfV>;<=?^RfqAH`rHk4;8n7G1k3+4b4NkkmfNgSY2{I)=P>f5r!!QhyybxkNi?g{ekb7Lw!I*(?!`a-I)hFz* zc-@iPcA$@cGk4SSN{Jv}2eUy-A7^$^YhVbklu>%KUVA>U4Ou^e3^ce06?lq zkz)*s9N%4u13AF^(gm{ohvEe=;Guj0@LPodnu_od*|uA*hp3ihM!tTD?Gce{%nN-y zfro&9Ec}uW0_a-ncn?IX9oL)^`Px<^M7G(VgQT(mV4bZ3KKLRL`uHjnQCp^5T%=OO zL2#N&r95DQu{zi*Q!b0nc{pkufoLyC<%u#@Bf`Kwk{dC!QU*bTWxg`yHZ=wst zXf2c0!^`2*=MO)9{%}_)ca(I;K6I5bkW3nX`;JeXB@f*ICefH7g}|VNfNH>sA-ATm zn@uWkXD=ioH2~#(3y>qVHHbnv#G*wK4^^PABrFvxR$ozAE|`wr!$|b#f@&PZ+S$_$ zMKNeaUKe{qqu53c8Ps)@5U03Z05JROL*qDx^L>4-|DV8ajqYC zZqB|naNakelPg%@a4;{3H`TSwIUmXMxZgWwP_*S zKCqNPfZsK$F0_sHY*0($BrziIM3y2zI@Lqe>YuO#3ZuYU8U&%`P%udWs-R>e6op;3<)s70NE%H$ax^)JeC1}B{Eec zAvRSgPm|of7L#P;Rzw*>1(T>d7P%XSQ~`R^GqUC=L#UX@8;aaIBe4H`>nJ!)J^g8E zM4D3qqEtu5&VUP3MvhzoePgTLoaLy793)*4T`dt_q;IAM;yKHilKu9|3E@ldFxnX{MMxeg>SDgLHzb|5*_f+ zjl{-mb!m7;%MR2tDmdr_l1UQ0w7bqFSby8Prx<6?JkIaJ1MD@m{_dFs zHsbLm1M2+ntF^}6xKl-M(=Db4jr=te-DTymyC)g8G z6`M;pXAk7KlScSAH&^uIWRl3*Nypug!cMc_IjFK#LB=dPP=~+a=)fhvGUd)>nt)u@ za~4#cT%f7_^)iapuAF%SB$`eYc=77g3h}95ynl-q?2&{o$_xemwm0+t