From cb1cd5b1e78d8e670b2a9897e8716ca61144b97f Mon Sep 17 00:00:00 2001 From: phil235 Date: Mon, 24 Aug 2015 17:07:09 +0200 Subject: [PATCH] Monkey and aliens now all use carbon/examine(). Fixes monkeys being able to strip and uncuff people while handcuffed themselves. Add an inhand sprite for facehuggers (taken from Xhuis) (but they don't appear for large queens, it'd look ugly). Xenos now regenerate plasma on alien weed even when injured but at half the normal rate. Moved queen/large/update_icons() to humanoid/update_icons.dm --- code/game/machinery/machinery.dm | 2 + code/modules/mining/equipment_locker.dm | 1 + .../mob/living/carbon/alien/humanoid/queen.dm | 14 --- .../carbon/alien/humanoid/update_icons.dm | 27 ++++- .../modules/mob/living/carbon/alien/organs.dm | 1 + .../living/carbon/alien/special/facehugger.dm | 16 +-- .../mob/living/carbon/{monkey => }/examine.dm | 101 ++++++++++-------- icons/mob/inhands/clothing_lefthand.dmi | Bin 60712 -> 62164 bytes icons/mob/inhands/clothing_righthand.dmi | Bin 59935 -> 61380 bytes tgstation.dme | 2 +- 10 files changed, 89 insertions(+), 75 deletions(-) rename code/modules/mob/living/carbon/{monkey => }/examine.dm (65%) diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 4952544aeb7..a4cdf6f6470 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -230,6 +230,8 @@ Class Procs: return /mob/living/canUseTopic(atom/movable/M, be_close = 0, no_dextery = 0) + if(incapacitated()) + return if(no_dextery) if(be_close && in_range(M, src)) return 1 diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index f0e699253be..36b7e7e4eb4 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -573,6 +573,7 @@ /**********************Facehugger toy**********************/ /obj/item/clothing/mask/facehugger/toy + item_state = "facehugger_inactive" desc = "A toy often used to play pranks on other miners by putting it in their beds. It takes a bit to recharge after latching onto something." throwforce = 0 real = 0 diff --git a/code/modules/mob/living/carbon/alien/humanoid/queen.dm b/code/modules/mob/living/carbon/alien/humanoid/queen.dm index 03745eb7306..c077bd38b5b 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/queen.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/queen.dm @@ -77,17 +77,3 @@ icon_state = "queen_s" pixel_x = -16 mob_size = MOB_SIZE_LARGE - -/mob/living/carbon/alien/humanoid/queen/large/update_icons() - update_hud() //TODO: remove the need for this to be here - overlays.Cut() - if(stat == DEAD) - icon_state = "queen_dead" - else if((stat == UNCONSCIOUS && !sleeping) || weakened) - icon_state = "queen_l" - else if(sleeping || lying || resting) - icon_state = "queen_sleep" - else - icon_state = "queen_s" - for(var/image/I in overlays_standing) - overlays += I diff --git a/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm b/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm index 1495d4f99d3..de272e0c0d7 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm @@ -50,4 +50,29 @@ if(lying > 0) lying = 90 //Anything else looks retarded ..() - update_icons() \ No newline at end of file + update_icons() + + +/mob/living/carbon/alien/humanoid/queen/large/update_icons() + update_hud() //TODO: remove the need for this to be here + overlays.Cut() + if(stat == DEAD) + icon_state = "queen_dead" + else if((stat == UNCONSCIOUS && !sleeping) || weakened) + icon_state = "queen_l" + else if(sleeping || lying || resting) + icon_state = "queen_sleep" + else + icon_state = "queen_s" + for(var/image/I in overlays_standing) + overlays += I + +/mob/living/carbon/alien/humanoid/queen/large/update_inv_l_hand() + remove_overlay(L_HAND_LAYER) + if(handcuffed) + drop_l_hand() + +/mob/living/carbon/alien/humanoid/queen/large/update_inv_r_hand() + remove_overlay(R_HAND_LAYER) + if(handcuffed) + drop_r_hand() diff --git a/code/modules/mob/living/carbon/alien/organs.dm b/code/modules/mob/living/carbon/alien/organs.dm index b7db238a99a..b7e09988277 100644 --- a/code/modules/mob/living/carbon/alien/organs.dm +++ b/code/modules/mob/living/carbon/alien/organs.dm @@ -79,6 +79,7 @@ var/mod = 1 if(!isalien(owner)) mod = 0.2 + owner.adjustPlasma(plasma_rate/2) owner.adjustBruteLoss(-heal_rate*mod) owner.adjustFireLoss(-heal_rate*mod) owner.adjustOxyLoss(-heal_rate*mod) diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index 1a9ba9601a2..d4f997ddf7b 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -187,7 +187,6 @@ var/const/MAX_ACTIVE_TIME = 400 else target.visible_message("[src] violates [target]'s face!", \ "[src] violates [target]'s face!") - return /obj/item/clothing/mask/facehugger/proc/GoActive() if(stat == DEAD || stat == CONSCIOUS) @@ -196,20 +195,10 @@ var/const/MAX_ACTIVE_TIME = 400 stat = CONSCIOUS icon_state = "[initial(icon_state)]" -/* for(var/mob/living/carbon/alien/alien in world) - var/image/activeIndicator = image('icons/mob/alien.dmi', loc = src, icon_state = "facehugger_active") - activeIndicator.override = 1 - if(alien && alien.client) - alien.client.images += activeIndicator */ - - return - /obj/item/clothing/mask/facehugger/proc/GoIdle() if(stat == DEAD || stat == UNCONSCIOUS) return -/* RemoveActiveIndicators() */ - stat = UNCONSCIOUS icon_state = "[initial(icon_state)]_inactive" @@ -221,15 +210,12 @@ var/const/MAX_ACTIVE_TIME = 400 if(stat == DEAD) return -/* RemoveActiveIndicators() */ - icon_state = "[initial(icon_state)]_dead" + item_state = "facehugger_inactive" stat = DEAD visible_message("[src] curls up into a ball!") - return - /proc/CanHug(mob/living/M) if(!istype(M)) return 0 diff --git a/code/modules/mob/living/carbon/monkey/examine.dm b/code/modules/mob/living/carbon/examine.dm similarity index 65% rename from code/modules/mob/living/carbon/monkey/examine.dm rename to code/modules/mob/living/carbon/examine.dm index 48963b00eed..e46f62193d8 100644 --- a/code/modules/mob/living/carbon/monkey/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -1,45 +1,58 @@ -/mob/living/carbon/monkey/examine(mob/user) - var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" - - if (src.handcuffed) - msg += "It is \icon[src.handcuffed] handcuffed!\n" - if (src.head) - msg += "It has \icon[src.head] \a [src.head] on its head. \n" - if (src.wear_mask) - msg += "It has \icon[src.wear_mask] \a [src.wear_mask] on its face.\n" - if (src.l_hand) - msg += "It has \icon[src.l_hand] \a [src.l_hand] in its left hand.\n" - if (src.r_hand) - msg += "It has \icon[src.r_hand] \a [src.r_hand] in its right hand.\n" - if (src.back) - msg += "It has \icon[src.back] \a [src.back] on its back.\n" - if (src.stat == DEAD) - msg += "It is limp and unresponsive, with no signs of life.\n" - else - msg += "" - if (src.getBruteLoss()) - if (src.getBruteLoss() < 30) - msg += "It has minor bruising.\n" - else - msg += "It has severe bruising!\n" - if (src.getFireLoss()) - if (src.getFireLoss() < 30) - msg += "It has minor burns.\n" - else - msg += "It has severe burns!\n" - - if (src.fire_stacks > 0) - msg += "It's covered in something flammable.\n" - if (src.fire_stacks < 0) - msg += "It's soaked in water.\n" - - if (src.stat == UNCONSCIOUS) - msg += "It isn't responding to anything around it; it seems to be asleep.\n" - msg += "" - - if (src.digitalcamo) - msg += "It is moving its body in an unnatural and blatantly unsimian manner.\n" - - msg += "*---------*" - +/mob/living/carbon/examine(mob/user) + var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" + + if (handcuffed) + msg += "It is \icon[src.handcuffed] handcuffed!\n" + if (head) + msg += "It has \icon[src.head] \a [src.head] on its head. \n" + if (wear_mask) + msg += "It has \icon[src.wear_mask] \a [src.wear_mask] on its face.\n" + if (l_hand) + msg += "It has \icon[src.l_hand] \a [src.l_hand] in its left hand.\n" + if (r_hand) + msg += "It has \icon[src.r_hand] \a [src.r_hand] in its right hand.\n" + if (back) + msg += "It has \icon[src.back] \a [src.back] on its back.\n" + if (stat == DEAD) + msg += "It is limp and unresponsive, with no signs of life.\n" + else + msg += "" + var/temp = getBruteLoss() + if(temp) + if (temp < 30) + msg += "It has minor bruising.\n" + else + msg += "It has severe bruising!\n" + + temp = getFireLoss() + if(temp) + if (temp < 30) + msg += "It has minor burns.\n" + else + msg += "It has severe burns!\n" + + temp = getCloneLoss() + if(temp) + if(getCloneLoss() < 30) + msg += "It is slightly deformed.\n" + else + msg += "It is severely deformed.\n" + + if(getBrainLoss() > 60) + msg += "It seems to be clumsy and unable to think.\n" + + if(fire_stacks > 0) + msg += "It's covered in something flammable.\n" + if(fire_stacks < 0) + msg += "It's soaked in water.\n" + + if(stat == UNCONSCIOUS) + msg += "It isn't responding to anything around it; it seems to be asleep.\n" + msg += "" + + if (digitalcamo) + msg += "It is moving its body in an unnatural and blatantly unsimian manner.\n" + + msg += "*---------*" + user << msg \ No newline at end of file diff --git a/icons/mob/inhands/clothing_lefthand.dmi b/icons/mob/inhands/clothing_lefthand.dmi index d36bbaeda97b83114f3f5c0e0e2bc3ae3adb82ec..84cb19f814b1697e4b92513b49e89ef9b3a87535 100644 GIT binary patch delta 4680 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

Q9RjBA;|XB=gU-8fD}?zxNbNV) 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 U11&3=GlO(61JgSd`p!}R0_W@?rT_o{ diff --git a/icons/mob/inhands/clothing_righthand.dmi b/icons/mob/inhands/clothing_righthand.dmi index 65366e873a4947ce85918fd570006157054eb7a4..248431514e1ef179378b09b8a4049a428ef155b3 100644 GIT binary patch delta 3862 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 delta 2406 zcmb_bc|6qn8XnoQ+&Gref+%IrI&*~4cFPjdSSIVBq3qd4jPXlHmSl{frjeaUj4%dc z860G3vhQQ5Xr!^9Oc~PQ-23%M<{pFh5z&+|O*`#x{S9B=LjFJ6gfFzt*I(CMi~ z*MMt;+(mk{rWr^CnCmM|Qu>D16s@!QNM9~!M(eJhh7|oc6SKOv%~@+tUESMh=XTH% zivyY1pY!jcAW3986AjFg5jmaP+;1gzucreVZJ~xytFi ziOYO3GC(XGIs43fD9<)sBoCms@xy|BLJOJ^)Bx=Vf`aDgk%6(ha>Z$?UGoOD0X-<4 zln-q^x^hvRmcoDhi9~B`mAH=IJDq$1qP#wTSQzP*=Q%zYR>0Nv z2lySku#PV`skE z&#;90i|&N3PgJZ>y0N#MLLV=&vQSA{WjDdx8`Etxwu~ElA2V;%RG8O!`f7s3jr;)O z=c&^iXN7FdKYV;UmJBXWST6r;c5^%uwpu&0^1f`&-lYTt-elNS*@+sy_ipzS-ux=* z*mMeJ#Lht9`W@VP4mi|VJa8oX-Y1?$Amm}1T_Jegf563Nra!)NL-rG^-C`Rz0N;!1 zehU|9V6oGm2}d3YE+h>_W1~!cs~#+h|9-{bT$*Dd5~o1v*nPRXh3}NvF@m=&Kc2(y z=C$?5C@WnlmAIxzr9QYpEKz(T>(!Hp@I4z$=NRc?@*oZiK(cbBq~&vuXQkZPyH7I8 zJ;?+2USGSjSS6E+Ut-X@suvEO)>*gJ63()g}S&eFNlEkscy=H+nWUc8Cqjb*~NIaV0RED@ z5FERiyq2fl2YlkD%6q)QCOjaT>MiTVWiR~3n=6-Gc}0Puh3N?(;s}vai|TbJV~ItV zW(_2T3UuU{l-Lg5JLlh;`1;Oqag05yQ+*CnIv8u44=eolL&4CirtXqN((uI|xNko{ z>!|M-&#OAtQMH=gtR_1FWKEcgpzbZ9==e5G(l}fXP@d=MoIH}r9OWKcW*VNSvE$-~ z^8%tiSt^3``fV)&TKTcLk)r-n(uw4w!Xmx96cF5PZ$6H0m1|SpTIC2Th`*WAka5lA z6tm~L#v(e_tBjVtcuudRAhioUou6C&*8%%erme^!c`z18r&5u`wL}VRpHg{>10JN1CHJUa2}) zSx&&ezP+_E*t!}E{_Ris<)r1(xRlJ*HdanIN=yLEj#pTY&Bv27;L^EvBzr$<3e}s8 z)>UnR)t?!hD&49WciD+)3*L6Em~)|HLr%s-$bdl4$|*_mNJH4h2zF=*5XyOYSVP#j z<^%}jZtfu<3feE1%OKtZB#O5lKy-gz$dov5CDr|hd;F7{Cf*am z*)w%p71}4qe+=c;gf~DCRqV_R*;KW$6BL+{&crEOHwKU3Mmr2So%8 zB@HW&V9F3lCxrU@AIg?zB#qu`E^|DMg^7>SHFciKSd6ck|BNW=7Et9TpdzmMm?*tK z8734?28SvXr?tGyH(zQWNBTRAuwjvEL2{b=`u-ui5*>r8rKqRWbDDTxL|2ACp%k{n zDD@7Fyv$B6AO9ZiVtdXt%ZnbZdkGqqtIlH$+fSlNm=}F>CMC~w*+z4jgeY5JXrTSozP;+5#dLan zJv~t%bUxGwVgfBT>qM{~7c~sgMlrKFvSz*GlPc+{|6QDzd+PCQf>ZqEUnx=kqhA}& z%0-Iz;v#@1)AqTul=+XC*<2oxrc-i_N>|lTHDgmyZIis5k@+20`Q)X|iRtzyCuXOs{^3xX~+&4Dz2Wl4wD0 zeZ-R+-{XuAtJ=9fCCi8k*f+j$AV|{#t!Kj)e#pSTCrZPWe4-Z>w;&zio6Sh6&FhLS z`f@8{Kl-i^+%y>ViVL||7lfKCDWgGP5giG9@ciY?23$QJ73a*xWLte} zTF0K>*AucwsAlI3L|oWiNVe;4YH(3=^LdXq8(PPTnLO|SrwNl9;6AkehUsed)akVV zyx})3qW5z*-S_zw4kZ8!>6){`c1JfY$tJeRnxa|J$ZxaxM A&j0`b diff --git a/tgstation.dme b/tgstation.dme index 383abb503be..4b0e32905e0 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -1116,6 +1116,7 @@ #include "code\modules\mob\living\carbon\carbon_defines.dm" #include "code\modules\mob\living\carbon\death.dm" #include "code\modules\mob\living\carbon\emote.dm" +#include "code\modules\mob\living\carbon\examine.dm" #include "code\modules\mob\living\carbon\inventory.dm" #include "code\modules\mob\living\carbon\life.dm" #include "code\modules\mob\living\carbon\say.dm" @@ -1181,7 +1182,6 @@ #include "code\modules\mob\living\carbon\human\whisper.dm" #include "code\modules\mob\living\carbon\monkey\death.dm" #include "code\modules\mob\living\carbon\monkey\emote.dm" -#include "code\modules\mob\living\carbon\monkey\examine.dm" #include "code\modules\mob\living\carbon\monkey\inventory.dm" #include "code\modules\mob\living\carbon\monkey\life.dm" #include "code\modules\mob\living\carbon\monkey\login.dm"