From 0ef4e2465dad0ace3ebcf3bb9ccb0d9f5db53882 Mon Sep 17 00:00:00 2001 From: Dahlular Date: Sat, 16 Jan 2021 08:57:25 -0700 Subject: [PATCH] Basic Crafting Recipes and Items --- hyperstation/code/modules/cargo/sweatshop.dm | 153 +++++++++++++++++++ hyperstation/icons/obj/sweatshop.dmi | Bin 0 -> 1481 bytes tgstation.dme | 1 + 3 files changed, 154 insertions(+) create mode 100644 hyperstation/code/modules/cargo/sweatshop.dm create mode 100644 hyperstation/icons/obj/sweatshop.dmi diff --git a/hyperstation/code/modules/cargo/sweatshop.dm b/hyperstation/code/modules/cargo/sweatshop.dm new file mode 100644 index 00000000..cc399d10 --- /dev/null +++ b/hyperstation/code/modules/cargo/sweatshop.dm @@ -0,0 +1,153 @@ +//THE TOOLS + +/obj/item/handsaw + name = "handsaw" + desc = "A shoddy tool used to process wood into smaller segments." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "handsaw" + slot_flags = ITEM_SLOT_BACK + force = 8 + sharpness = TRUE + w_class = WEIGHT_CLASS_HUGE + materials = list(MAT_METAL=50) + attack_verb = list("slashed", "sawed") + +/obj/item/hammer + name = "hammer" + desc = "A tool used to manually bash nails into place." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "hammer" + slot_flags = ITEM_SLOT_BELT + force = 7 + sharpness = FALSE + w_class = WEIGHT_CLASS_NORMAL + materials = list(MAT_METAL=100) + attack_verb = list("bonked", "nailed") + +/obj/item/glue + name = "glue" + desc = "Used to haphazardly stick things together; secured by the toughest Monkey Glue(TM)." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "glue" + force = 0 + sharpness = FALSE + w_class = WEIGHT_CLASS_SMALL + materials = list(MAT_PLASTIC=25) + attack_verb = list("glued", "coughed") + +/obj/item/borer + name = "manual borer" + desc = "An incredibly awful tool used to manually drill holes into something... Surely there's a better option." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "borer" + force = 3 + sharpness = TRUE + w_class = WEIGHT_CLASS_SMALL + materials = list(MAT_METAL=25) + attack_verb = list("bored", "drilled") + +/obj/item/sandpaper + name = "sandpaper strip" + desc = "A strip of sandpaper, commonly used for sanding down rough surfaces into a more smooth shape." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "sandpaper" + force = 1 + sharpness = FALSE + w_class = WEIGHT_CLASS_TINY + materials = list(MAT_GLASS=1) //lmao + attack_verb = list("sanded", "licked") + +/obj/item/nails + name = "metal nails" + desc = "A bunch of nails, used for hammering into things." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "nails" + force = 0 + sharpness = TRUE + w_class = WEIGHT_CLASS_TINY + materials = list(MAT_METAL=10) + attack_verb = list("nailed", "screwed") + +/obj/item/woodenplatform + name = "wood platform" + desc = "A somewhat sturdy cropping of a plank. This one is an alright foundation for chairs and stools." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "wood-platform" + force = 3 + sharpness = FALSE + w_class = WEIGHT_CLASS_NORMAL + attack_verb = list("slapped", "thunked") + +/obj/item/woodenblock + name = "wood block" + desc = "A chopped platform into a wooden block. This one can be used for sanded into pegs, or used as a base on it's own." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "wood-block" + force = 2 + sharpness = FALSE + w_class = WEIGHT_CLASS_SMALL + attack_verb = list("slapped", "thunked") + +/obj/item/woodenpeg + name = "wood peg" + desc = "A wooden peg. Useful for fitting into holes." + icon = 'hyperstation/icons/obj/sweatshop.dmi' + icon_state = "wood-peg" + force = 1 + sharpness = FALSE + w_class = WEIGHT_CLASS_TINY + attack_verb = list("donked", "thunked") + +//BASIC RECIPES - To do, add sound + +/obj/item/stack/sheet/mineral/wood/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/handsaw)) + to_chat(user," You begin to saw [src] in half...") + if(isturf(loc) && do_after(user, 40)) + new /obj/item/woodenplatform(loc) + new /obj/item/woodenplatform(loc) //send help i dont know how to make two in the same line lmfao + to_chat(user, " You saw [src] in half.") + qdel(src) + else + to_chat(user, "You need to put [src] on a surface and hold still to saw it!") + else + ..() + +/obj/item/woodenplatform/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/handsaw)) + to_chat(user," You begin cut [src] into smaller pieces...") + if(isturf(loc) && do_after(user, 20)) + new /obj/item/woodenblock(loc) + new /obj/item/woodenblock(loc) + new /obj/item/woodenblock(loc) + new /obj/item/woodenblock(loc) + to_chat(user, " You cut [src] into four pieces.") + qdel(src) + else + to_chat(user, "You need to put [src] on a surface and hold still to saw it!") + else + ..() + +/obj/item/woodenblock/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/sandpaper)) + to_chat(user," You carefully begin to sand down [src]...") + if(isturf(loc) && do_after(user, 50)) + new /obj/item/woodenpeg(loc) + to_chat(user, " You smooth [src] into a peg.") + qdel(src) + else + to_chat(user, "You need to put [src] on a surface and hold still to sand it!") + else + ..() + +/obj/item/stack/rods/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/wirecutters)) + to_chat(user," You tediously begin to cut [src] into several nails.") + if(isturf(loc) && do_after(user, 80)) + new /obj/item/nails(loc) + to_chat(user, " You make some crude metal nails.") + qdel(src) + else + to_chat(user, "You need to put [src] on a surface and hold still to cut it!") + else + ..() diff --git a/hyperstation/icons/obj/sweatshop.dmi b/hyperstation/icons/obj/sweatshop.dmi new file mode 100644 index 0000000000000000000000000000000000000000..5064ebfea86f220f48984c5c0fdab6c5efaccfdc GIT binary patch literal 1481 zcmV;)1vdJLP)nU|KIpPzz&f5XDS)YH+Fl94zoA(Vr6pp!knwQr`CiC|!0I{*Mz3=d{o2%>97 zmX?;Iqoa>OMNdLF*`7%>V!Z0d!JMQvg8b*k%9#0H%6WSad{Xb7OL8 zaCB*JZU6vyoQ=`D3d1lA1<=|43X{w&eXU(eLdekkgHkK8sbAP`{rfe|(xup&t~gu- zYT2zH#))I)%2mWIga{Gy*a$E@Kx!!A(uce`QnGl^ zxXnLKYxG67suvc~Y<)#l$d@^A71DrIp{SCzeCHIz#d=+*XJsGH%3@sq!It$?_kGR> z3=4Qw{zLel000B1Nkl zX#M^lW0$mG2e~A4^dHCh6dq~%zPY=k1x5K^Vur>fiL-z6=K_IXC^SLC?7Z6$4g}@` zAw^l3m|=E45^)*AK`<;#3hwZq1vBAb5Dc$;;|Jz~p@rb$>xmgC-&LV7Ex$T3gUx^A z`h-@0Nqs9}SYGzPw_{0_Fs!Vuu88?-Oo5DHg$Vct!e3+ZiD6OHhvjILUn6J!Y=Ldy z3)VNd0?Nk{kT67}>l^Q)-ua{ryduRmH{)CHH)GiOZMuFUk$F@=4T%rf*gSsP($XY zkZ&89DHMuD5adUjoJya;D-|3{2#Dbq%TOqupXZMlf{TmN87PRLEWwAB#5TlsX|R^* zMX7WKg3@mpe&3KCHPB#QLJXOVB;PS)M-7|+gY5hrLv~!j<>eT|sbCyF7{(i(7?(eG z_|2cjG+t^{XjH3JzxZ0MR=cXzGz~XgU*p&7sz6ZHw3>EB47i})z!kcx8UjPLY8Q#a zziHf{3e(VazCmf;wpyI0X1#q!3=OtH)lC6jX*P{kr-}0$-FCN44Ge{Zezvb^q}5*fDF3yAcoOK z=(>FnkIK$~(}Q~Nks9v%b+U#Az^u)I0RCfA@E*YYdyh{K;2?B3hWWZ_680boWYb|i zAbet=S6=-}f@W}ph8N_^c=tJ+*n8q}w;XNvT^EH1B75L)rr-A