diff --git a/code/datums/components/crafting/makeshift.dm b/code/datums/components/crafting/makeshift.dm new file mode 100644 index 0000000000000..b0e0953355eae --- /dev/null +++ b/code/datums/components/crafting/makeshift.dm @@ -0,0 +1,48 @@ +/datum/crafting_recipe/makeshiftcrowbar + name = "Makeshift Crowbar" + reqs = list(/obj/item/stack/rods = 3) //just bang them together + result = /obj/item/crowbar/makeshift + time = 6 SECONDS + category = CAT_TOOLS + +/datum/crafting_recipe/makeshiftwrench + name = "Makeshift Wrench" + reqs = list(/obj/item/stack/sheet/iron = 2) + result = /obj/item/wrench/makeshift + time = 6 SECONDS + category = CAT_TOOLS + +/datum/crafting_recipe/makeshiftwirecutters + name = "Makeshift Wirecutters" + reqs = list(/obj/item/stack/sheet/iron = 2, + /obj/item/stack/rods = 2) + result = /obj/item/wirecutters/makeshift + time = 8 SECONDS + category = CAT_TOOLS + +/datum/crafting_recipe/makeshiftweldingtool + name = "Makeshift Welding Tool" + reqs = list(/obj/item/tank/internals/emergency_oxygen = 1, + /obj/item/assembly/igniter = 1) + tool_behaviors = list(TOOL_SCREWDRIVER) + result = /obj/item/weldingtool/makeshift + time = 8 SECONDS + category = CAT_TOOLS + +/datum/crafting_recipe/makeshiftmultitool + name = "Makeshift Multitool" + reqs = list(/obj/item/assembly/igniter = 1, + /obj/item/assembly/signaler = 1, + /obj/item/stack/sheet/iron = 2, + /obj/item/stack/cable_coil = 10) + tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/multitool/makeshift + time = 8 SECONDS + category = CAT_TOOLS + +/datum/crafting_recipe/makeshiftscrewdriver + name = "Makeshift Screwdriver" + reqs = list(/obj/item/stack/rods = 3) + result = /obj/item/screwdriver/makeshift + time = 6 SECONDS + category = CAT_TOOLS diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm index d127c9d69c5cf..7f81443cd89a3 100644 --- a/code/game/objects/items/devices/multitool.dm +++ b/code/game/objects/items/devices/multitool.dm @@ -318,6 +318,13 @@ icon_state = "toolkit_engiborg_multitool" toolspeed = 0.5 +/obj/item/multitool/makeshift + name = "makeshift multitool" + desc = "As crappy as it is, its still mostly the same as a standard issue Nanotrasen one." + icon = 'icons/obj/improvised.dmi' + icon_state = "multitool_makeshift" + toolspeed = 2 + //Tricorder //The tricorder is a child of a multitool, atmosanalyzer and health scaner diff --git a/code/game/objects/items/tools/crowbar.dm b/code/game/objects/items/tools/crowbar.dm index 0b0975b17cbf1..290976bc0adc3 100644 --- a/code/game/objects/items/tools/crowbar.dm +++ b/code/game/objects/items/tools/crowbar.dm @@ -246,3 +246,12 @@ worn_icon_state = "jawsofdeath" toolspeed = 0.5 force_opens = TRUE + +/obj/item/crowbar/makeshift + name = "makeshift crowbar" + desc = "A crude, self-wrought crowbar. Heavy." + icon = 'icons/obj/improvised.dmi' + icon_state = "crowbar_makeshift" + force = 12 //same as large crowbar, but bulkier and slower + w_class = WEIGHT_CLASS_BULKY + toolspeed = 2 diff --git a/code/game/objects/items/tools/screwdriver.dm b/code/game/objects/items/tools/screwdriver.dm index 7cdd93bf5dac2..de7c825f0595c 100644 --- a/code/game/objects/items/tools/screwdriver.dm +++ b/code/game/objects/items/tools/screwdriver.dm @@ -162,3 +162,11 @@ /obj/item/screwdriver/red/Initialize(mapload) . = ..() set_greyscale(colors=list(screwdriver_colors["red"])) + +/obj/item/screwdriver/makeshift + name = "makeshift screwdriver" + desc = "Crude driver of screws. A primitive way to screw things up." + icon = 'icons/obj/improvised.dmi' + icon_state = "screwdriver_makeshift" + toolspeed = 2 + random_color = FALSE diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm index 12c8ca7cb6a62..0f8fe61cfb71c 100644 --- a/code/game/objects/items/tools/weldingtool.dm +++ b/code/game/objects/items/tools/weldingtool.dm @@ -391,3 +391,13 @@ if(get_fuel() < max_fuel && nextrefueltick < world.time) nextrefueltick = world.time + 10 reagents.add_reagent(/datum/reagent/fuel, 1) + +/obj/item/weldingtool/makeshift + name = "makeshift welding tool" + desc = "A MacGyver-style welder." + icon = 'icons/obj/improvised.dmi' + icon_state = "welder_makeshift" + change_icons = FALSE + toolspeed = 2 + max_fuel = 10 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.5) diff --git a/code/game/objects/items/tools/wirecutters.dm b/code/game/objects/items/tools/wirecutters.dm index 4a2629a416467..50572cbee15dd 100644 --- a/code/game/objects/items/tools/wirecutters.dm +++ b/code/game/objects/items/tools/wirecutters.dm @@ -81,3 +81,11 @@ worn_icon_state = "cutters" toolspeed = 0.5 random_color = FALSE + +/obj/item/wirecutters/makeshift + name = "makeshift wirecutters" + desc = "Mind your fingers." + icon = 'icons/obj/improvised.dmi' + icon_state = "cutters_makeshift" + toolspeed = 2 + random_color = FALSE diff --git a/code/game/objects/items/tools/wrench.dm b/code/game/objects/items/tools/wrench.dm index ca43b3c2fe3bf..a917374ccb223 100644 --- a/code/game/objects/items/tools/wrench.dm +++ b/code/game/objects/items/tools/wrench.dm @@ -145,3 +145,10 @@ icon_state = "bolter_wrench" inhand_icon_state = "bolter_wrench" w_class = WEIGHT_CLASS_NORMAL + +/obj/item/wrench/makeshift + name = "makeshift wrench" + desc = "A crude, self-wrought wrench with common uses. Can be found in your hand." + icon = 'icons/obj/improvised.dmi' + icon_state = "wrench_makeshift" + toolspeed = 2 diff --git a/icons/obj/improvised.dmi b/icons/obj/improvised.dmi new file mode 100644 index 0000000000000..105a202c877ed Binary files /dev/null and b/icons/obj/improvised.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 65785de6f49bc..0ed318e49f7f2 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -1411,6 +1411,7 @@ #include "code\datums\components\crafting\equipment.dm" #include "code\datums\components\crafting\furniture.dm" #include "code\datums\components\crafting\guncrafting.dm" +#include "code\datums\components\crafting\makeshift.dm" #include "code\datums\components\crafting\makeshift_mechs.dm" #include "code\datums\components\crafting\melee_weapon.dm" #include "code\datums\components\crafting\misc.dm"