From 19bfb761f91b5f3718accafd36bdbb4f9714a5b2 Mon Sep 17 00:00:00 2001 From: MistakeNot4892 Date: Mon, 31 Oct 2022 00:57:23 +1100 Subject: [PATCH] Chitin and wood armour plates can be made with a sharp object. --- .../items/weapons/material/material_armor.dm | 25 +++++++++++------- .../weapons/material/material_weapons.dm | 2 +- .../under/accessories/crafted/poncho.dm | 10 +++++-- icons/mob/species/teshari/crafted_cloak.dmi | Bin 762 -> 761 bytes icons/mob/species/teshari/crafted_poncho.dmi | Bin 752 -> 755 bytes 5 files changed, 25 insertions(+), 12 deletions(-) diff --git a/code/game/objects/items/weapons/material/material_armor.dm b/code/game/objects/items/weapons/material/material_armor.dm index a68908932f..3e42dec29c 100644 --- a/code/game/objects/items/weapons/material/material_armor.dm +++ b/code/game/objects/items/weapons/material/material_armor.dm @@ -353,21 +353,28 @@ Protectiveness | Armor % else ..() +/obj/item/material/armor_plating/insert/proc/trim(var/mob/user) + to_chat(user, SPAN_NOTICE("You trim down the edges to size.")) + user.drop_from_inventory(src) + user.put_in_hands(new /obj/item/clothing/accessory/material/makeshift/light(user, material.name)) + qdel(src) + //Make plating inserts for modular armour. /obj/item/material/armor_plating/insert/attackby(var/obj/O, mob/user) . = ..() if(istype(O, /obj/item/weldingtool)) - var /obj/item/weldingtool/S = O + var/obj/item/weldingtool/S = O + if(!S.isOn()) + return TRUE if(S.remove_fuel(0,user)) - if(!src || !S.isOn()) return - to_chat(user, "You trim down the edges to size.") - user.drop_from_inventory(src) - var/obj/item/clothing/accessory/material/makeshift/light/new_armor = new(null, src.material.name) - user.put_in_hands(new_armor) - qdel(src) - return + trim(user) + return TRUE + + if(O.sharp && material?.integrity <= 75) // wood and chitin + trim(user) + return TRUE if(istype(O, /obj/item/material/armor_plating/insert)) var/obj/item/material/armor_plating/insert/second_plate = O @@ -441,4 +448,4 @@ Protectiveness | Armor % icon_state = "material_armor_makeshift" /obj/item/clothing/head/helmet/material/makeshift/durasteel - default_material = "durasteel" \ No newline at end of file + default_material = "durasteel" diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index d8c1ee8875..de99c6f6da 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -76,7 +76,7 @@ /obj/item/material/Destroy() STOP_PROCESSING(SSobj, src) - . = ..() + return ..() /obj/item/material/apply_hit_effect() ..() diff --git a/code/modules/clothing/under/accessories/crafted/poncho.dm b/code/modules/clothing/under/accessories/crafted/poncho.dm index fb69e4403c..65df9d9b91 100644 --- a/code/modules/clothing/under/accessories/crafted/poncho.dm +++ b/code/modules/clothing/under/accessories/crafted/poncho.dm @@ -57,6 +57,12 @@ QDEL_NULL_LIST(plates) return ..() +/obj/item/clothing/accessory/storage/poncho/crafted/update_clothing_icon() + if(ismob(loc)) + var/mob/M = src.loc + M.update_inv_wear_suit() + . = ..() + /obj/item/clothing/accessory/storage/poncho/crafted/proc/recalculate_armor() LAZYINITLIST(armor) if(!initial_armor) @@ -115,10 +121,10 @@ to_chat(user, SPAN_WARNING("\The [src] has no plating to remove.")) else var/obj/item/plate = plates[1] - user.visible_message(SPAN_NOTICE("\The [src] removes \the [plate] from \the [src].")) - recalculate_armor() + user.visible_message(SPAN_NOTICE("\The [user] removes \the [plate] from \the [src].")) plate.dropInto(user.loc) LAZYREMOVE(plates, plate) + recalculate_armor() return TRUE if(istype(O, /obj/item/reagent_containers/glass)) diff --git a/icons/mob/species/teshari/crafted_cloak.dmi b/icons/mob/species/teshari/crafted_cloak.dmi index b330184226b688d13affdfda83a53fda482c6245..839ff53cddb971d1660b8c8b873a458653a4e039 100644 GIT binary patch delta 551 zcmV+?0@(ff1^ES#-G2v3L_t(&f$f;Vj@mE~hHWXz8Lvt2wW0U5>z)If7l4uPbXVH< ze}p=v;2Aq4AhDNfJ_(7jXa4ye5E&u_!!TcpQjg_JAyy=|Zgnen60OuLj@L@li zA}Z)0#&944fX~o`Km=rfz6sg0gz*Tt9v0}% z0*5RxIzR$46{MW&32X}SMb@wpVxO;~w!wRFxyOr#2v{J*;IY0-_TKD8QyS+J)?9i> zyG>WkW&xM3>3=bQQ5tJU2kz3MG1gk=oViqt3*KP|V`y?bm{GtC{WUhunrke?kUVXM zeCA=F{GnJ3!}*mHjMek48t(bW8ydYp(ha1oyw&) z%-<;JuKrOawDv$3=)IsNyYg5W5aPYC(2|fEl)olCwzfC}ZSrxrz4wp#iQ)Zqc6*t2 zvMIwb48uGPbu+jRaxax|Dz@+VqlfR7T{UoYbYW`vXt(I$d^vCwmSm~_myaw^8=wWZrd;nhDE^eIjZ8`C#Abjs(N-(zd%Cho_0Xr z{}Co5NJL6ronb4m13w@@X#M<2JAp+fN(qASrD*+UdQfV^V&^x%(=KAP{z2od)_Y!| z>PT;@WsLL?xDa>?21gopk=0WWwMJ?XBO)`TZ^fEYkd$eP<3xE#`pY;dR4pdv#Y&us&p* zz19Htl&_jA27f+Z(^L7Pbk5Bk_-l#II_JFi_L?yt2%dH@hqlC%oek_X-eT*Wy~RpR zxu@M!&UrfI{z$B*>GCQ9Yj;dwcOwZ^cVPJ~-Bik79L8GkX}%x`g7DSQ`Ji3>_*l#D z-^%;PbG-^$uT5oi%xc9Dan*oKEJJIsJ{JO=q5i$WJ%6L^=bwTg2!il8@Edb`PX_*b zLbKi<*}6a1f}c$A*c#9$V`aWKf_Elp{CNd9wSwLqn`68J*{R@VMX*Fqi?$6^0znW2 zLHNJ8<0*^J1NFQxoSTID$&c-&fIOj&XWpu~cf@k2299B2`|j%l?`0kUtOkyS0c63E q{5?=lJR$dO^+dG#V}c+EHNOBGhEezltFbr$0000 zBVfuleg=+6XzVVHjjVFC2!&w3GE0~{>YR$={WNBo2!QLxU) zPGcPhtU=sZffF|R5gW?ES>66Lv+hGcdTQVlX+!aZwLYEe!+$srX@B#o~e)QBp&{s(QO{aty zutD@=ObloTiGP8-_TkA8Jz%}q0USg4L3E^gVv7xKlOP-)uBgGoxXwU6T^Xu7lT4|w zK@BNYGE}7vfWQX%S|QD4O_M|xWf+F}zragc9^LPk@+Celm@KMPHkKgN{H(H7S-5uT zR44A{=Ur|vG>ZmkH`;!_0VtIXrCk0iFbu;mf5FOiHGiLeAS-)uO~->ei&ki(0@0W} zUpiDHkCX5=yWhOd814$AC_Ed8?}Y}Yo1441+oAJ-$nRijjRlGgkQxlbFbwm#tof~= zg!q=|(j--Ud}EhvpZR%#?4_bLNx^g=k#8J-Url%Efunc=$y<2dyw}SP93R`Lt9OGB j)ho5It{NW0d?{W4BF03WQsPBP00000NkvXXu0mjfKm-Rf delta 542 zcmV+(0^$Ah1@Hxs-G2f7NkluflyI#ds0QVkiZ?OJlNBoo`z2Ix7 zJBxK1um<(u6%N?g7i_49+S~Tk&AN{f=_!Fjq6wt~*7k6!?tjO*$%a$tM?9q1*L02A zeT5A|Q$G!HHb_m~j}b2l*oYF+!2{0V!JG~;m=~l&n`S-D8Hx@Y^cCPW(I$i#jhl4} zF&PxGfo;GB@sSvSKehE>iT;W8?-()#M>@ebT~7>}?&&sz6hgoTA&h|0hBTRAUaV!vBd_DtP{%TJ8JMe-e#cBcaG}Lu^|OE zsDM+jrh+E`3LE5mg?8694N_UJAPBxGLWPA&5jw=c$;rrZcrSl z)>rzs+5Kjstgp|qoKGtCeIWtR!*QV%_0K^nzk{(?tg)29(!EO%1VIo!i4Whhb}nnm zua2mN*9)r64Lona$2A|nTR47sy)Yf;mlSrq;8-jmGRi;ofNJ^p_Z`%iZ@r5Z&wIFp g?f)%a5Es5OZ#c9>o?Fo!zW@LL07*qoM6N<$g2V#^HUIzs