From b85e9fc4d936d456be9dc8b2e9dd34cec07ee2c6 Mon Sep 17 00:00:00 2001 From: Chompstation Bot Date: Tue, 9 Mar 2021 21:53:03 +0000 Subject: [PATCH] [MIRROR] Industrial Expansion --- code/__defines/misc.dm | 8 + code/datums/autolathe/arms.dm | 9 + code/datums/autolathe/autolathe.dm | 45 +- code/datums/autolathe/general.dm | 38 - code/datums/autolathe/materials.dm | 38 + code/datums/supplypacks/materials.dm | 7 + code/game/machinery/autolathe.dm | 15 +- .../devices/communicator/communicator.dm | 4 +- .../objects/items/devices/laserpointer.dm | 2 +- code/game/objects/items/devices/multitool.dm | 2 +- .../items/devices/radio/electropack.dm | 2 +- .../game/objects/items/devices/radio/radio.dm | 2 +- code/game/objects/items/devices/scanners.dm | 2 +- code/game/objects/items/stacks/rods.dm | 2 + .../weapons/circuitboards/circuitboard.dm | 2 + .../items/weapons/circuitboards/frame.dm | 52 +- .../items/weapons/circuitboards/mecha.dm | 1 + code/modules/assembly/igniter.dm | 2 +- code/modules/assembly/infrared.dm | 2 +- code/modules/assembly/proximity.dm | 2 +- code/modules/assembly/signaler.dm | 2 +- code/modules/assembly/timer.dm | 2 +- code/modules/assembly/voice.dm | 2 +- code/modules/materials/fifty_spawner_mats.dm | 6 +- code/modules/materials/material_sheets.dm | 103 +- code/modules/materials/materials.dm | 83 +- code/modules/mining/alloys.dm | 10 +- code/modules/mining/coins.dm | 12 + code/modules/mining/drilling/drill.dm | 9 +- code/modules/mining/drilling/scanner.dm | 10 +- code/modules/mining/machine_processing.dm | 7 + code/modules/mining/mine_turfs.dm | 48 +- code/modules/mining/ore.dm | 35 + code/modules/mining/ore_datum.dm | 67 + code/modules/projectiles/ammunition/rounds.dm | 3 +- code/modules/random_map/noise/ore.dm | 21 + code/modules/research/designs/HUDs.dm | 4 +- code/modules/research/designs/ai_holders.dm | 10 +- .../research/designs/bag_of_holding.dm | 4 +- code/modules/research/designs/bio_devices.dm | 8 +- .../research/designs/circuits/ai_modules.dm | 2 +- .../research/designs/circuits/circuits.dm | 38 +- .../research/designs/circuits/disks.dm | 2 +- code/modules/research/designs/engineering.dm | 14 +- code/modules/research/designs/implants.dm | 7 +- .../research/designs/locator_devices.dm | 6 +- code/modules/research/designs/medical.dm | 6 +- code/modules/research/designs/mining_toys.dm | 10 +- code/modules/research/designs/misc.dm | 12 +- .../research/designs/modular_computer.dm | 50 +- code/modules/research/designs/pdas.dm | 2 +- code/modules/research/designs/power_cells.dm | 16 +- code/modules/research/designs/stock_parts.dm | 26 +- code/modules/research/designs/weapons.dm | 527 + .../modules/research/designs/xenoarch_toys.dm | 6 +- code/modules/research/designs/xenobio_toys.dm | 6 +- code/modules/research/mechfab_designs.dm | 52 +- code/modules/research/protolathe.dm | 2 +- icons/obj/mining.dmi | Bin 73496 -> 79769 bytes maps/southern_cross/southern_cross-1.dmm | 250139 +++++++++++++++ vorestation.dme | 1 + 61 files changed, 251392 insertions(+), 215 deletions(-) create mode 100644 code/datums/autolathe/materials.dm diff --git a/code/__defines/misc.dm b/code/__defines/misc.dm index 69e949e495..42ada669a6 100644 --- a/code/__defines/misc.dm +++ b/code/__defines/misc.dm @@ -159,6 +159,14 @@ #define MAT_CHITIN "chitin" #define MAT_CLOTH "cloth" #define MAT_SYNCLOTH "syncloth" +#define MAT_COPPER "copper" +#define MAT_QUARTZ "quartz" +#define MAT_TIN "tin" +#define MAT_VOPAL "void opal" +#define MAT_ALUMINIUM "aluminium" +#define MAT_BRONZE "bronze" +#define MAT_PAINITE "painite" +#define MAT_BOROSILICATE "borosilicate glass" #define SHARD_SHARD "shard" #define SHARD_SHRAPNEL "shrapnel" diff --git a/code/datums/autolathe/arms.dm b/code/datums/autolathe/arms.dm index 169232d845..b2bb0c98b7 100644 --- a/code/datums/autolathe/arms.dm +++ b/code/datums/autolathe/arms.dm @@ -326,6 +326,15 @@ category = list("Arms and Ammunition") hidden = 1*/ +/* + * High Caliber + */ + +/datum/category_item/autolathe/arms/rifle_145 + name = "14.5mm round (sabot)" + path = /obj/item/ammo_casing/a145/highvel + hidden = 1 + /////////////////////////////// /*Ammo clips and Speedloaders*/ /////////////////////////////// diff --git a/code/datums/autolathe/autolathe.dm b/code/datums/autolathe/autolathe.dm index 4af1abfccd..03d1ca0fdd 100644 --- a/code/datums/autolathe/autolathe.dm +++ b/code/datums/autolathe/autolathe.dm @@ -1,6 +1,13 @@ /datum/category_item/autolathe/New() ..() - var/obj/item/I = new path() + var/obj/item/I + if(path) + I = new path() + + if(!I) // Something has gone horribly wrong, or right. + log_debug("[name] created an Autolathe design without an assigned path. This is expected for only the Material Sheet generation.") + return + if(I.matter && !resources) resources = list() for(var/material in I.matter) @@ -57,6 +64,42 @@ name = "Tools" category_item_type = /datum/category_item/autolathe/tools +/datum/category_group/autolathe/materials + name = "Materials" + category_item_type = /datum/category_item/autolathe/materials + +/datum/category_group/autolathe/materials/New() + ..() + + for(var/Name in name_to_material) + var/datum/material/M = name_to_material[Name] + + if(!M.stack_type) // Shouldn't happen, but might. Never know. + continue + + if(istype(M, /datum/material/alienalloy)) + continue + + var/obj/item/stack/material/Mat = new M.stack_type() + + if(Mat.name in items_by_name) + qdel(Mat) + continue + + var/datum/category_item/autolathe/materials/WorkDat = new(src) + + WorkDat.name = "[Mat.name]" + WorkDat.resources = Mat.matter.Copy() + WorkDat.is_stack = TRUE + WorkDat.no_scale = TRUE + WorkDat.max_stack = Mat.max_amount + WorkDat.path = M.stack_type + + qdel(Mat) + + items |= WorkDat + items_by_name[WorkDat.name] = WorkDat + /******************* * Category entries * *******************/ diff --git a/code/datums/autolathe/general.dm b/code/datums/autolathe/general.dm index 8ee77ce656..00151d6e75 100644 --- a/code/datums/autolathe/general.dm +++ b/code/datums/autolathe/general.dm @@ -85,44 +85,6 @@ name = "welding mask" path =/obj/item/clothing/head/welding -/datum/category_item/autolathe/general/metal - name = "steel sheets" - path =/obj/item/stack/material/steel - is_stack = TRUE - no_scale = TRUE //prevents material duplication exploits - -/datum/category_item/autolathe/general/glass - name = "glass sheets" - path =/obj/item/stack/material/glass - is_stack = TRUE - no_scale = TRUE //prevents material duplication exploits - -/datum/category_item/autolathe/general/rglass - name = "reinforced glass sheets" - path =/obj/item/stack/material/glass/reinforced - is_stack = TRUE - no_scale = TRUE //prevents material duplication exploits - -/datum/category_item/autolathe/general/rods - name = "metal rods" - path =/obj/item/stack/rods - is_stack = TRUE - no_scale = TRUE //prevents material duplication exploits - -/datum/category_item/autolathe/general/plasteel - name = "plasteel sheets" - path =/obj/item/stack/material/plasteel - is_stack = TRUE - no_scale = TRUE //prevents material duplication exploits - resources = list(MAT_PLASTEEL = 2000) - -/datum/category_item/autolathe/general/plastic - name = "plastic sheets" - path =/obj/item/stack/material/plastic - is_stack = TRUE - no_scale = TRUE //prevents material duplication exploits - resources = list(MAT_PLASTIC = 2000) - //TFF 24/12/19 - Let people print more spray bottles if needed. /datum/category_item/autolathe/general/spraybottle name = "spray bottle" diff --git a/code/datums/autolathe/materials.dm b/code/datums/autolathe/materials.dm new file mode 100644 index 0000000000..653fca8222 --- /dev/null +++ b/code/datums/autolathe/materials.dm @@ -0,0 +1,38 @@ + +/datum/category_item/autolathe/materials/metal + name = "steel sheets" + path =/obj/item/stack/material/steel + is_stack = TRUE + no_scale = TRUE //prevents material duplication exploits + +/datum/category_item/autolathe/materials/glass + name = "glass sheets" + path =/obj/item/stack/material/glass + is_stack = TRUE + no_scale = TRUE //prevents material duplication exploits + +/datum/category_item/autolathe/materials/rglass + name = "reinforced glass sheets" + path =/obj/item/stack/material/glass/reinforced + is_stack = TRUE + no_scale = TRUE //prevents material duplication exploits + +/datum/category_item/autolathe/materials/rods + name = "metal rods" + path =/obj/item/stack/rods + is_stack = TRUE + no_scale = TRUE //prevents material duplication exploits + +/datum/category_item/autolathe/materials/plasteel + name = "plasteel sheets" + path =/obj/item/stack/material/plasteel + is_stack = TRUE + no_scale = TRUE //prevents material duplication exploits + resources = list(MAT_PLASTEEL = 2000) + +/datum/category_item/autolathe/materials/plastic + name = "plastic sheets" + path =/obj/item/stack/material/plastic + is_stack = TRUE + no_scale = TRUE //prevents material duplication exploits + resources = list(MAT_PLASTIC = 2000) diff --git a/code/datums/supplypacks/materials.dm b/code/datums/supplypacks/materials.dm index 95f15caa6d..87780766d9 100644 --- a/code/datums/supplypacks/materials.dm +++ b/code/datums/supplypacks/materials.dm @@ -35,6 +35,13 @@ containertype = /obj/structure/closet/crate/grayson containername = "Plastic sheets crate" +/datum/supply_pack/materials/copper50 + name = "50 copper ingots" + contains = list(/obj/fiftyspawner/copper) + cost = 60 + containertype = /obj/structure/closet/crate/grayson + containername = "Copper ingots crate" + /datum/supply_pack/materials/cardboard_sheets contains = list(/obj/fiftyspawner/cardboard) name = "50 cardboard sheets" diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 4351d29698..03571acf78 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -39,6 +39,14 @@ if(!autolathe_recipes) autolathe_recipes = new() wires = new(src) + + for(var/Name in name_to_material) + if(Name in stored_material) + continue + + stored_material[Name] = 0 + storage_capacity[Name] = 0 + default_apply_parts() RefreshParts() @@ -306,10 +314,9 @@ for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) man_rating += M.rating - storage_capacity[DEFAULT_WALL_MATERIAL] = mb_rating * 25000 - storage_capacity[MAT_PLASTIC] = mb_rating * 20000 - storage_capacity[MAT_PLASTEEL] = mb_rating * 16250 - storage_capacity["glass"] = mb_rating * 12500 + for(var/mat_name in storage_capacity) + storage_capacity[mat_name] = mb_rating * 25000 + build_time = 50 / man_rating mat_efficiency = 1.1 - man_rating * 0.1// Normally, price is 1.25 the amount of material, so this shouldn't go higher than 0.6. Maximum rating of parts is 5 update_tgui_static_data(usr) diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm index 46c89b0683..6adbbf811c 100644 --- a/code/game/objects/items/devices/communicator/communicator.dm +++ b/code/game/objects/items/devices/communicator/communicator.dm @@ -26,7 +26,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() show_messages = 1 origin_tech = list(TECH_ENGINEERING = 2, TECH_MAGNET = 2, TECH_BLUESPACE = 2, TECH_DATA = 2) - matter = list(DEFAULT_WALL_MATERIAL = 30,"glass" = 10) + matter = list(DEFAULT_WALL_MATERIAL = 30,"glass" = 10, MAT_COPPER = 10) var/video_range = 3 var/obj/machinery/camera/communicator/video_source // Their camera @@ -131,7 +131,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() for(var/mob/living/voice/voice in contents) . += "On the screen, you can see a image feed of [voice]." - + if(voice && voice.key) switch(voice.stat) if(CONSCIOUS) diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm index 810147dbc4..7ccad467f6 100644 --- a/code/game/objects/items/devices/laserpointer.dm +++ b/code/game/objects/items/devices/laserpointer.dm @@ -6,7 +6,7 @@ item_state = "pen" var/pointer_icon_state slot_flags = SLOT_BELT - matter = list("glass" = 500,"metal" = 500) + matter = list("glass" = 500,"metal" = 500, MAT_COPPER = 10) w_class = 2 //Increased to 2, because diodes are w_class 2. Conservation of matter. origin_tech = list(TECH_MAGNET = 2, TECH_COMBAT = 1) var/turf/pointer_loc diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm index 837c6616f7..8ac7a07199 100644 --- a/code/game/objects/items/devices/multitool.dm +++ b/code/game/objects/items/devices/multitool.dm @@ -17,7 +17,7 @@ drop_sound = 'sound/items/drop/multitool.ogg' pickup_sound = 'sound/items/pickup/multitool.ogg' - matter = list(DEFAULT_WALL_MATERIAL = 50,"glass" = 20) + matter = list(DEFAULT_WALL_MATERIAL = 50,"glass" = 20, MAT_COPPER = 10) var/mode_index = 1 var/toolmode = MULTITOOL_MODE_STANDARD diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index cc555f8073..55b79eaef3 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -11,7 +11,7 @@ slot_flags = SLOT_BACK w_class = ITEMSIZE_HUGE - matter = list(DEFAULT_WALL_MATERIAL = 10000,"glass" = 2500) + matter = list(DEFAULT_WALL_MATERIAL = 10000,"glass" = 2500, MAT_COPPER = 1550) var/code = 2 diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 366853a7bf..88e957f76e 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -61,7 +61,7 @@ var/global/list/default_medbay_channels = list( var/bs_tx_preload_id var/bs_rx_preload_id - matter = list("glass" = 25,DEFAULT_WALL_MATERIAL = 75) + matter = list("glass" = 25, DEFAULT_WALL_MATERIAL = 75, MAT_COPPER = 15) var/const/FREQ_LISTENING = 1 var/list/internal_channels diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index c949884c6f..291202f41f 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -21,7 +21,7 @@ HALOGEN COUNTER - Radcount on mobs w_class = ITEMSIZE_SMALL throw_speed = 5 throw_range = 10 - matter = list(DEFAULT_WALL_MATERIAL = 200) + matter = list(DEFAULT_WALL_MATERIAL = 200, MAT_COPPER = 25) origin_tech = list(TECH_MAGNET = 1, TECH_BIO = 1) var/mode = 1; var/advscan = 0 diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm index c88527608f..9844ae1cba 100644 --- a/code/game/objects/items/stacks/rods.dm +++ b/code/game/objects/items/stacks/rods.dm @@ -14,6 +14,8 @@ max_amount = 60 attack_verb = list("hit", "bludgeoned", "whacked") + color = "#666666" + /obj/item/stack/rods/cyborg name = "metal rod synthesizer" desc = "A device that makes metal rods." diff --git a/code/game/objects/items/weapons/circuitboards/circuitboard.dm b/code/game/objects/items/weapons/circuitboards/circuitboard.dm index 8b913eaf45..c8a3a672a7 100644 --- a/code/game/objects/items/weapons/circuitboards/circuitboard.dm +++ b/code/game/objects/items/weapons/circuitboards/circuitboard.dm @@ -23,6 +23,8 @@ drop_sound = 'sound/items/drop/device.ogg' pickup_sound = 'sound/items/pickup/device.ogg' + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) + //Called when the circuitboard is used to contruct a new machine. /obj/item/weapon/circuitboard/proc/construct(var/obj/machinery/M) if(istype(M, build_path)) diff --git a/code/game/objects/items/weapons/circuitboards/frame.dm b/code/game/objects/items/weapons/circuitboards/frame.dm index d91a25b631..04fd193cbe 100644 --- a/code/game/objects/items/weapons/circuitboards/frame.dm +++ b/code/game/objects/items/weapons/circuitboards/frame.dm @@ -10,37 +10,37 @@ name = T_BOARD("guestpass console") build_path = /obj/machinery/computer/guestpass board_type = new /datum/frame/frame_types/guest_pass_console - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/status_display name = T_BOARD("status display") build_path = /obj/machinery/status_display board_type = new /datum/frame/frame_types/display - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/ai_status_display name = T_BOARD("ai status display") build_path = /obj/machinery/ai_status_display board_type = new /datum/frame/frame_types/display - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/newscaster name = T_BOARD("newscaster") build_path = /obj/machinery/newscaster board_type = new /datum/frame/frame_types/newscaster - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/atm name = T_BOARD("atm") build_path = /obj/machinery/atm board_type = new /datum/frame/frame_types/atm - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/request name = T_BOARD("request console") build_path = /obj/machinery/requests_console board_type = new /datum/frame/frame_types/supply_request_console - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) //Alarm @@ -48,25 +48,25 @@ name = T_BOARD("fire alarm") build_path = /obj/machinery/firealarm board_type = new /datum/frame/frame_types/fire_alarm - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/airalarm name = T_BOARD("air alarm") build_path = /obj/machinery/alarm board_type = new /datum/frame/frame_types/air_alarm - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/intercom name = T_BOARD("intercom") build_path = /obj/item/device/radio/intercom board_type = new /datum/frame/frame_types/intercom - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/keycard_auth name = T_BOARD("keycard authenticator") build_path = /obj/machinery/keycard_auth board_type = new /datum/frame/frame_types/keycard_authenticator - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) //Computer @@ -74,7 +74,7 @@ name = T_BOARD("holopad") build_path = /obj/machinery/hologram/holopad board_type = new /datum/frame/frame_types/holopad - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/scanner_console name = T_BOARD("body scanner console") @@ -94,7 +94,7 @@ name = T_BOARD("photocopier") build_path = /obj/machinery/photocopier board_type = new /datum/frame/frame_types/photocopier - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/scanning_module = 1, /obj/item/weapon/stock_parts/motor = 1, @@ -105,7 +105,7 @@ name = T_BOARD("fax") build_path = /obj/machinery/photocopier/faxmachine board_type = new /datum/frame/frame_types/fax - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/scanning_module = 1, /obj/item/weapon/stock_parts/motor = 1, @@ -116,6 +116,7 @@ name = T_BOARD("conveyor") build_path = /obj/machinery/conveyor board_type = new /datum/frame/frame_types/conveyor + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/gear = 2, /obj/item/weapon/stock_parts/motor = 2, @@ -125,6 +126,7 @@ name = T_BOARD("recharger") build_path = /obj/machinery/recharger board_type = new /datum/frame/frame_types/recharger + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/capacitor = 1, /obj/item/stack/cable_coil = 5) @@ -138,6 +140,7 @@ name = T_BOARD("heavy-duty cell charger") build_path = /obj/machinery/cell_charger board_type = new /datum/frame/frame_types/cell_charger + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/capacitor = 1, /obj/item/stack/cable_coil = 5) @@ -146,7 +149,7 @@ name = T_BOARD("washing machine") build_path = /obj/machinery/washing_machine board_type = new /datum/frame/frame_types/washing_machine - matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/motor = 1, /obj/item/weapon/stock_parts/gear = 2) @@ -155,6 +158,7 @@ name = T_BOARD("reagent grinder") build_path = /obj/machinery/reagentgrinder board_type = new /datum/frame/frame_types/grinder + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/motor = 1, /obj/item/weapon/stock_parts/gear = 1, @@ -163,6 +167,7 @@ /obj/item/weapon/circuitboard/distiller build_path = /obj/machinery/portable_atmospherics/powered/reagent_distillery board_type = new /datum/frame/frame_types/reagent_distillery + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/capacitor = 1, /obj/item/weapon/stock_parts/micro_laser = 1, @@ -172,7 +177,14 @@ /obj/item/weapon/circuitboard/teleporter_hub name = T_BOARD("teleporter hub") build_path = /obj/machinery/teleport/hub +<<<<<<< HEAD board_type = new /datum/frame/frame_types/machine //YWEdit makes buildable +||||||| parent of 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 + board_type = "teleporter_hub" +======= + board_type = "teleporter_hub" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_GOLD = 100) +>>>>>>> 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 // origin_tech = list(TECH_DATA = 2, TECH_BLUESPACE = 4) //CHOMPedit Balance req_components = list( @@ -186,7 +198,14 @@ /obj/item/weapon/circuitboard/teleporter_station name = T_BOARD("teleporter station") build_path = /obj/machinery/teleport/station +<<<<<<< HEAD board_type = new /datum/frame/frame_types/machine //YWEdit makes buildable +||||||| parent of 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 + board_type = "teleporter_station" +======= + board_type = "teleporter_station" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_GOLD = 100) +>>>>>>> 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 // origin_tech = list(TECH_DATA = 2, TECH_BLUESPACE = 3) req_components = list( /obj/item/weapon/stock_parts/console_screen = 1, @@ -198,6 +217,7 @@ build_path = /obj/machinery/bodyscanner board_type = new /datum/frame/frame_types/medical_pod origin_tech = list(TECH_MAGNET = 2, TECH_BIO = 2) + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) req_components = list( /obj/item/weapon/stock_parts/scanning_module = 3, /obj/item/stack/material/glass/reinforced = 2) @@ -206,6 +226,7 @@ name = T_BOARD("sleeper") build_path = /obj/machinery/sleeper board_type = new /datum/frame/frame_types/medical_pod + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) origin_tech = list(TECH_MAGNET = 2, TECH_BIO = 2) req_components = list( /obj/item/weapon/stock_parts/manipulator = 1, @@ -218,6 +239,7 @@ name = T_BOARD("VR sleeper") build_path = /obj/machinery/vr_sleeper board_type = new /datum/frame/frame_types/medical_pod + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_GOLD = 100) origin_tech = list(TECH_MAGNET = 2, TECH_BIO = 2) req_components = list( /obj/item/weapon/stock_parts/scanning_module = 1, @@ -227,6 +249,7 @@ name = T_BOARD("dna analyzer") build_path = /obj/machinery/dnaforensics board_type = new /datum/frame/frame_types/dna_analyzer + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_GOLD = 100) origin_tech = list(TECH_MAGNET = 4, TECH_BIO = 2, TECH_DATA = 2) req_components = list( /obj/item/weapon/stock_parts/scanning_module = 2, @@ -237,6 +260,7 @@ name = T_BOARD("mass driver") build_path = /obj/machinery/mass_driver board_type = new /datum/frame/frame_types/mass_driver + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_GOLD = 100) req_components = list( /obj/item/weapon/stock_parts/gear = 2, /obj/item/weapon/stock_parts/motor = 2, diff --git a/code/game/objects/items/weapons/circuitboards/mecha.dm b/code/game/objects/items/weapons/circuitboards/mecha.dm index 777146f385..132cf65de6 100644 --- a/code/game/objects/items/weapons/circuitboards/mecha.dm +++ b/code/game/objects/items/weapons/circuitboards/mecha.dm @@ -8,6 +8,7 @@ icon = 'icons/obj/module.dmi' icon_state = "std_mod" board_type = "other" + matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 100) /obj/item/weapon/circuitboard/mecha/ripley origin_tech = list(TECH_DATA = 3) diff --git a/code/modules/assembly/igniter.dm b/code/modules/assembly/igniter.dm index 5344d4b15b..5a673280ce 100644 --- a/code/modules/assembly/igniter.dm +++ b/code/modules/assembly/igniter.dm @@ -3,7 +3,7 @@ desc = "A small electronic device able to ignite combustable substances." icon_state = "igniter" origin_tech = list(TECH_MAGNET = 1) - matter = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 50, "waste" = 10) + matter = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 50, MAT_COPPER = 10, "waste" = 10) secured = 1 wires = WIRE_RECEIVE diff --git a/code/modules/assembly/infrared.dm b/code/modules/assembly/infrared.dm index 853f2f230b..3a7952ecfe 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -5,7 +5,7 @@ desc = "Emits a visible or invisible beam and is triggered when the beam is interrupted." icon_state = "infrared" origin_tech = list(TECH_MAGNET = 2) - matter = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 500, "waste" = 100) + matter = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 500, MAT_COPPER = 10, "waste" = 100) wires = WIRE_PULSE diff --git a/code/modules/assembly/proximity.dm b/code/modules/assembly/proximity.dm index b292d3f753..de764c5011 100644 --- a/code/modules/assembly/proximity.dm +++ b/code/modules/assembly/proximity.dm @@ -3,7 +3,7 @@ desc = "Used for scanning and alerting when someone enters a certain proximity." icon_state = "prox" origin_tech = list(TECH_MAGNET = 1) - matter = list(DEFAULT_WALL_MATERIAL = 800, "glass" = 200, "waste" = 50) + matter = list(DEFAULT_WALL_MATERIAL = 800, "glass" = 200, MAT_COPPER = 10, "waste" = 50) wires = WIRE_PULSE secured = 0 diff --git a/code/modules/assembly/signaler.dm b/code/modules/assembly/signaler.dm index e98ff5372c..392a7efdfe 100644 --- a/code/modules/assembly/signaler.dm +++ b/code/modules/assembly/signaler.dm @@ -4,7 +4,7 @@ icon_state = "signaller" item_state = "signaler" origin_tech = list(TECH_MAGNET = 1) - matter = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 200, "waste" = 100) + matter = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 200, MAT_COPPER = 10, "waste" = 100) wires = WIRE_RECEIVE | WIRE_PULSE | WIRE_RADIO_PULSE | WIRE_RADIO_RECEIVE secured = TRUE diff --git a/code/modules/assembly/timer.dm b/code/modules/assembly/timer.dm index fa8b783815..144a21bcd0 100644 --- a/code/modules/assembly/timer.dm +++ b/code/modules/assembly/timer.dm @@ -3,7 +3,7 @@ desc = "Used to time things. Works well with contraptions which has to count down. Tick tock." icon_state = "timer" origin_tech = list(TECH_MAGNET = 1) - matter = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 50, "waste" = 10) + matter = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 50, MAT_COPPER = 10, "waste" = 10) wires = WIRE_PULSE diff --git a/code/modules/assembly/voice.dm b/code/modules/assembly/voice.dm index 8990e01d63..c608db5ff1 100644 --- a/code/modules/assembly/voice.dm +++ b/code/modules/assembly/voice.dm @@ -3,7 +3,7 @@ desc = "A small electronic device able to record a voice sample, and send a signal when that sample is repeated." icon_state = "voice" origin_tech = list(TECH_MAGNET = 1) - matter = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 50, "waste" = 10) + matter = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 50, MAT_COPPER = 10, "waste" = 10) var/listening = 0 var/recorded //the activation message diff --git a/code/modules/materials/fifty_spawner_mats.dm b/code/modules/materials/fifty_spawner_mats.dm index 50d4184ebf..af2e3703e8 100644 --- a/code/modules/materials/fifty_spawner_mats.dm +++ b/code/modules/materials/fifty_spawner_mats.dm @@ -28,6 +28,10 @@ name = "stack of plastic" type_to_spawn = /obj/item/stack/material/plastic +/obj/fiftyspawner/copper + name = "stack of copper" + type_to_spawn = /obj/item/stack/material/copper + /obj/fiftyspawner/graphite name = "stack of graphite" type_to_spawn = /obj/item/stack/material/graphite @@ -92,7 +96,7 @@ name = "stack of logs" type_to_spawn = /obj/item/stack/material/log -/obj/fiftyspawner/log +/obj/fiftyspawner/log/sif name = "stack of alien logs" type_to_spawn = /obj/item/stack/material/log/sif diff --git a/code/modules/materials/material_sheets.dm b/code/modules/materials/material_sheets.dm index 0c6f665631..3fd995378c 100644 --- a/code/modules/materials/material_sheets.dm +++ b/code/modules/materials/material_sheets.dm @@ -102,14 +102,14 @@ /obj/item/stack/material/iron name = "iron" - icon_state = "sheet-silver" + icon_state = "sheet-ingot" default_type = "iron" apply_colour = 1 no_variants = FALSE /obj/item/stack/material/lead name = "lead" - icon_state = "sheet-adamantine" + icon_state = "sheet-ingot" default_type = "lead" apply_colour = 1 no_variants = FALSE @@ -159,22 +159,24 @@ /obj/item/stack/material/graphite name = "graphite" - icon_state = "sheet-silver" + icon_state = "sheet-puck" default_type = MAT_GRAPHITE apply_colour = 1 no_variants = FALSE /obj/item/stack/material/gold name = "gold" - icon_state = "sheet-gold" + icon_state = "sheet-ingot" default_type = "gold" no_variants = FALSE + apply_colour = TRUE /obj/item/stack/material/silver name = "silver" - icon_state = "sheet-silver" + icon_state = "sheet-ingot" default_type = "silver" no_variants = FALSE + apply_colour = TRUE //Valuable resource, cargo can sell it. /obj/item/stack/material/platinum @@ -182,6 +184,7 @@ icon_state = "sheet-adamantine" default_type = "platinum" no_variants = FALSE + apply_colour = TRUE //Extremely valuable to Research. /obj/item/stack/material/mhydrogen @@ -193,14 +196,14 @@ //Fuel for MRSPACMAN generator. /obj/item/stack/material/tritium name = "tritium" - icon_state = "sheet-silver" + icon_state = "sheet-puck" default_type = "tritium" - apply_colour = 1 + apply_colour = TRUE no_variants = FALSE /obj/item/stack/material/osmium name = "osmium" - icon_state = "sheet-silver" + icon_state = "sheet-ingot" default_type = "osmium" apply_colour = 1 no_variants = FALSE @@ -209,16 +212,17 @@ // Fusion fuel. /obj/item/stack/material/deuterium name = "deuterium" - icon_state = "sheet-silver" + icon_state = "sheet-puck" default_type = "deuterium" apply_colour = 1 no_variants = FALSE /obj/item/stack/material/steel name = DEFAULT_WALL_MATERIAL - icon_state = "sheet-metal" + icon_state = "sheet-refined" default_type = DEFAULT_WALL_MATERIAL no_variants = FALSE + apply_colour = TRUE /obj/item/stack/material/steel/hull name = MAT_STEELHULL @@ -226,9 +230,10 @@ /obj/item/stack/material/plasteel name = "plasteel" - icon_state = "sheet-plasteel" + icon_state = "sheet-reinforced" default_type = "plasteel" no_variants = FALSE + apply_colour = TRUE /obj/item/stack/material/plasteel/hull name = MAT_PLASTEELHULL @@ -236,17 +241,19 @@ /obj/item/stack/material/durasteel name = "durasteel" - icon_state = "sheet-durasteel" + icon_state = "sheet-reinforced" item_state = "sheet-metal" default_type = "durasteel" no_variants = FALSE + apply_colour = TRUE /obj/item/stack/material/durasteel/hull name = MAT_DURASTEELHULL /obj/item/stack/material/titanium name = MAT_TITANIUM - icon_state = "sheet-silver" + icon_state = "sheet-refined" + apply_colour = TRUE item_state = "sheet-silver" default_type = MAT_TITANIUM no_variants = FALSE @@ -345,8 +352,10 @@ icon_state = "sheet-wood" default_type = MAT_WOOD strict_color_stacking = TRUE + apply_colour = 1 drop_sound = 'sound/items/drop/wooden.ogg' pickup_sound = 'sound/items/pickup/wooden.ogg' + no_variants = FALSE /obj/item/stack/material/wood/sif name = "alien wooden plank" @@ -467,30 +476,90 @@ /obj/item/stack/material/glass name = "glass" - icon_state = "sheet-glass" + icon_state = "sheet-transparent" default_type = "glass" no_variants = FALSE drop_sound = 'sound/items/drop/glass.ogg' pickup_sound = 'sound/items/pickup/glass.ogg' + apply_colour = TRUE /obj/item/stack/material/glass/reinforced name = "reinforced glass" - icon_state = "sheet-rglass" + icon_state = "sheet-rtransparent" default_type = "rglass" no_variants = FALSE + apply_colour = TRUE /obj/item/stack/material/glass/phoronglass name = "borosilicate glass" desc = "This sheet is special platinum-glass alloy designed to withstand large temperatures" singular_name = "borosilicate glass sheet" - icon_state = "sheet-phoronglass" + icon_state = "sheet-transparent" default_type = "borosilicate glass" no_variants = FALSE + apply_colour = TRUE /obj/item/stack/material/glass/phoronrglass name = "reinforced borosilicate glass" desc = "This sheet is special platinum-glass alloy designed to withstand large temperatures. It is reinforced with few rods." singular_name = "reinforced borosilicate glass sheet" - icon_state = "sheet-phoronrglass" + icon_state = "sheet-rtransparent" default_type = "reinforced borosilicate glass" no_variants = FALSE + apply_colour = TRUE + +/obj/item/stack/material/bronze + name = "bronze" + icon_state = "sheet-ingot" + singular_name = "bronze ingot" + default_type = "bronze" + apply_colour = 1 + no_variants = FALSE + +/obj/item/stack/material/tin + name = "tin" + icon_state = "sheet-ingot" + singular_name = "tin ingot" + default_type = "tin" + apply_colour = 1 + no_variants = FALSE + +/obj/item/stack/material/copper + name = "copper" + icon_state = "sheet-ingot" + singular_name = "copper ingot" + default_type = "copper" + apply_colour = 1 + no_variants = FALSE + +/obj/item/stack/material/painite + name = "painite" + icon_state = "sheet-gem" + singular_name = "painite gem" + default_type = "painite" + apply_colour = 1 + no_variants = FALSE + +/obj/item/stack/material/void_opal + name = "void opal" + icon_state = "sheet-void_opal" + singular_name = "void opal" + default_type = "void opal" + apply_colour = 1 + no_variants = FALSE + +/obj/item/stack/material/quartz + name = "quartz" + icon_state = "sheet-gem" + singular_name = "quartz gem" + default_type = "quartz" + apply_colour = 1 + no_variants = FALSE + +/obj/item/stack/material/aluminium + name = "aluminium" + icon_state = "sheet-ingot" + singular_name = "aluminium ingot" + default_type = "aluminium" + apply_colour = 1 + no_variants = FALSE diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index 2bac6e23d0..6d27146298 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -486,6 +486,7 @@ var/list/name_to_material door_icon_base = "metal" icon_colour = "#D1E6E3" icon_reinf = "reinf_metal" + composite_material = null /datum/material/plasteel/titanium/hull name = MAT_TITANIUMHULL @@ -637,7 +638,7 @@ var/list/name_to_material hardness = 40 weight = 30 stack_origin_tech = list(TECH_MATERIAL = 2) - composite_material = list() //todo + composite_material = list(DEFAULT_WALL_MATERIAL = SHEET_MATERIAL_AMOUNT / 2, "borosilicate glass" = SHEET_MATERIAL_AMOUNT) rod_product = null /datum/material/plastic @@ -1007,6 +1008,7 @@ var/list/name_to_material protectiveness = 1 // 4% flags = MATERIAL_PADDING conductive = 0 + integrity = 40 pass_stack_colors = TRUE supply_conversion_value = 2 @@ -1073,6 +1075,7 @@ var/list/name_to_material melting_point = T0C+300 protectiveness = 3 // 13% conductive = 0 + integrity = 40 supply_conversion_value = 3 //CHOMPstation Removal Start: Moved to materials_ch and changed to allow for material var @@ -1214,3 +1217,81 @@ var/list/name_to_material weight = 1 protectiveness = 0 // 0% conductive = 0 + +/datum/material/void_opal + name = "void opal" + display_name = "void opal" + use_name = "void opal" + icon_colour = "#0f0f0f" + stack_type = /obj/item/stack/material/void_opal + flags = MATERIAL_UNMELTABLE + cut_delay = 60 + reflectivity = 0 + conductivity = 1 + shard_type = SHARD_SHARD + tableslam_noise = 'sound/effects/Glasshit.ogg' + hardness = 100 + stack_origin_tech = list(TECH_ARCANE = 1, TECH_MATERIAL = 6) + sheet_singular_name = "gem" + sheet_plural_name = "gems" + supply_conversion_value = 30 // These are hilariously rare. + +/datum/material/painite + name = "painite" + display_name = "painite" + use_name = "painite" + icon_colour = "#6b4947" + stack_type = /obj/item/stack/material/painite + flags = MATERIAL_UNMELTABLE + reflectivity = 0.3 + tableslam_noise = 'sound/effects/Glasshit.ogg' + sheet_singular_name = "gem" + sheet_plural_name = "gems" + supply_conversion_value = 4 + +/datum/material/tin + name = "tin" + display_name = "tin" + use_name = "tin" + stack_type = /obj/item/stack/material/tin + icon_colour = "#b2afaf" + sheet_singular_name = "ingot" + sheet_plural_name = "ingots" + supply_conversion_value = 1 + hardness = 50 + weight = 13 + +/datum/material/copper + name = "copper" + display_name = "copper" + use_name = "copper" + stack_type = /obj/item/stack/material/copper + conductivity = 52 + icon_colour = "#af633e" + sheet_singular_name = "ingot" + sheet_plural_name = "ingots" + supply_conversion_value = 1 + weight = 13 + hardness = 50 + +/datum/material/quartz + name = "quartz" + display_name = "quartz" + use_name = "quartz" + icon_colour = "#e6d7df" + stack_type = /obj/item/stack/material/quartz + tableslam_noise = 'sound/effects/Glasshit.ogg' + sheet_singular_name = "crystal" + sheet_plural_name = "crystals" + supply_conversion_value = 4 + +/datum/material/aluminium + name = "aluminium" + display_name = "aluminium" + use_name = "aluminium" + icon_colour = "#e5e2d0" + stack_type = /obj/item/stack/material/aluminium + sheet_singular_name = "ingot" + sheet_plural_name = "ingots" + supply_conversion_value = 2 + weight = 10 diff --git a/code/modules/mining/alloys.dm b/code/modules/mining/alloys.dm index ed1b88636e..5601a586a1 100644 --- a/code/modules/mining/alloys.dm +++ b/code/modules/mining/alloys.dm @@ -43,4 +43,12 @@ "platinum" = 1, "sand" = 2 ) - product = /obj/item/stack/material/glass/phoronglass \ No newline at end of file + product = /obj/item/stack/material/glass/phoronglass + +/datum/alloy/bronze + metaltag = "bronze" + requires = list( + "copper" = 2, + "tin" = 1 + ) + product = /obj/item/stack/material/bronze diff --git a/code/modules/mining/coins.dm b/code/modules/mining/coins.dm index ad16122b3f..dd30cc24b6 100644 --- a/code/modules/mining/coins.dm +++ b/code/modules/mining/coins.dm @@ -46,6 +46,18 @@ name = "platinum coin" icon_state = "coin_adamantine" +/obj/item/weapon/coin/morphium + name = "morphium coin" + icon_state = "coin_morphium" + +/obj/item/weapon/coin/aluminium + name = "aluminium coin" + icon_state = "coin_aluminium" + +/obj/item/weapon/coin/verdantium + name = "verdantium coin" + icon_state = "coin_verdantium" + /obj/item/weapon/coin/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W,/obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/CC = W diff --git a/code/modules/mining/drilling/drill.dm b/code/modules/mining/drilling/drill.dm index 569b9605f2..c1b0f5cd69 100644 --- a/code/modules/mining/drilling/drill.dm +++ b/code/modules/mining/drilling/drill.dm @@ -27,7 +27,11 @@ "osmium" = /obj/item/weapon/ore/osmium, "hydrogen" = /obj/item/weapon/ore/hydrogen, "silicates" = /obj/item/weapon/ore/glass, - "carbon" = /obj/item/weapon/ore/coal + "carbon" = /obj/item/weapon/ore/coal, + "copper" = /obj/item/weapon/ore/copper, + "tin" = /obj/item/weapon/ore/tin, + "bauxite" = /obj/item/weapon/ore/bauxite, + "rutile" = /obj/item/weapon/ore/rutile ) //Upgrades @@ -40,11 +44,14 @@ // Found with an advanced laser. exotic_drilling >= 1 var/list/ore_types_uncommon = list( MAT_MARBLE = /obj/item/weapon/ore/marble, + "painite" = /obj/item/weapon/ore/painite, + "quartz" = /obj/item/weapon/ore/quartz, MAT_LEAD = /obj/item/weapon/ore/lead ) // Found with an ultra laser. exotic_drilling >= 2 var/list/ore_types_rare = list( + "void opal" = /obj/item/weapon/ore/void_opal, MAT_VERDANTIUM = /obj/item/weapon/ore/verdantium ) diff --git a/code/modules/mining/drilling/scanner.dm b/code/modules/mining/drilling/scanner.dm index 50bf8bdd35..ed4151d60e 100644 --- a/code/modules/mining/drilling/scanner.dm +++ b/code/modules/mining/drilling/scanner.dm @@ -20,6 +20,7 @@ /obj/item/weapon/mining_scanner/proc/ScanTurf(var/atom/target, var/mob/user, var/exact = FALSE) var/list/metals = list( "surface minerals" = 0, + "industrial metals" = 0, "precious metals" = 0, "precious gems" = 0, "nuclear fuel" = 0, @@ -38,12 +39,13 @@ var/ore_type switch(metal) - if("silicates", "carbon", "hematite", "marble") ore_type = "surface minerals" - if("gold", "silver", "lead") ore_type = "precious metals" - if("diamond") ore_type = "precious gems" + if("silicates", "carbon", "marble", "quartz") ore_type = "surface minerals" + if("hematite", "tin", "copper", "bauxite", "lead") ore_type = "industrial metals" + if("gold", "silver", "rutile") ore_type = "precious metals" + if("diamond", "painite") ore_type = "precious gems" if("uranium") ore_type = "nuclear fuel" if("phoron", "osmium", "hydrogen") ore_type = "exotic matter" - if("verdantium") ore_type = "anomalous matter" + if("verdantium", "void opal") ore_type = "anomalous matter" if(ore_type) metals[ore_type] += T.resources[metal] diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index c78520121e..dbd9c960e6 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -168,10 +168,17 @@ "sand" = 1, "hematite" = 1, "carbon" = 1, + "raw copper" = 1, + "raw tin" = 1, + "void opal" = 3, + "painite" = 3, + "quartz" = 3, + "raw bauxite" = 5, "phoron" = 15, "silver" = 16, "gold" = 18, "marble" = 20, + "rutile" = 20, "uranium" = 30, "diamond" = 50, "platinum" = 40, diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index ec07f71980..c30d3b4b19 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -49,6 +49,50 @@ var/list/mining_overlay_cache = list() var/datum/artifact_find/artifact_find var/ignore_mapgen +<<<<<<< HEAD +||||||| parent of 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 + var/ore_types = list( + "hematite" = /obj/item/weapon/ore/iron, + "uranium" = /obj/item/weapon/ore/uranium, + "gold" = /obj/item/weapon/ore/gold, + "silver" = /obj/item/weapon/ore/silver, + "diamond" = /obj/item/weapon/ore/diamond, + "phoron" = /obj/item/weapon/ore/phoron, + "osmium" = /obj/item/weapon/ore/osmium, + "hydrogen" = /obj/item/weapon/ore/hydrogen, + "silicates" = /obj/item/weapon/ore/glass, + "carbon" = /obj/item/weapon/ore/coal, + "verdantium" = /obj/item/weapon/ore/verdantium, + "marble" = /obj/item/weapon/ore/marble, + "lead" = /obj/item/weapon/ore/lead, + "rutile" = /obj/item/weapon/ore/rutile //VOREStation Add + ) + +======= + var/ore_types = list( + "hematite" = /obj/item/weapon/ore/iron, + "uranium" = /obj/item/weapon/ore/uranium, + "gold" = /obj/item/weapon/ore/gold, + "silver" = /obj/item/weapon/ore/silver, + "diamond" = /obj/item/weapon/ore/diamond, + "phoron" = /obj/item/weapon/ore/phoron, + "osmium" = /obj/item/weapon/ore/osmium, + "hydrogen" = /obj/item/weapon/ore/hydrogen, + "silicates" = /obj/item/weapon/ore/glass, + "carbon" = /obj/item/weapon/ore/coal, + "verdantium" = /obj/item/weapon/ore/verdantium, + "marble" = /obj/item/weapon/ore/marble, + "lead" = /obj/item/weapon/ore/lead, + "copper" = /obj/item/weapon/ore/copper, + "tin" = /obj/item/weapon/ore/tin, + "bauxite" = /obj/item/weapon/ore/bauxite, +// "void opal" = /obj/item/weapon/ore/void_opal, +// "painite" = /obj/item/weapon/ore/painite, +// "quartz" = /obj/item/weapon/ore/quartz, + "rutile" = /obj/item/weapon/ore/rutile + ) + +>>>>>>> 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 has_resources = 1 // Alternative rock wall sprites. @@ -636,10 +680,10 @@ turf/simulated/mineral/floor/light_corner var/mineral_name if(rare_ore) - mineral_name = pickweight(list("marble" = 5, "uranium" = 10, "platinum" = 10, "hematite" = 20, "carbon" = 20, "diamond" = 2, "gold" = 10, "silver" = 10, "phoron" = 20, "lead" = 5, "verdantium" = 1, "rutile" = 4)) //VOREStation Edit + mineral_name = pickweight(list("marble" = 5,/* "quartz" = 15,*/ "copper" = 10, "tin" = 5, "bauxite" = 5, "uranium" = 15, "platinum" = 20, "hematite" = 15, "rutile" = 20, "carbon" = 15, "diamond" = 3, "gold" = 15, "silver" = 15, "phoron" = 25, "lead" = 5,/* "void opal" = 1,*/ "verdantium" = 2/*, "painite" = 1*/)) else - mineral_name = pickweight(list("marble" = 3, "uranium" = 10, "platinum" = 10, "hematite" = 70, "carbon" = 70, "diamond" = 2, "gold" = 10, "silver" = 10, "phoron" = 20, "lead" = 2, "verdantium" = 1, "rutile" = 4)) //VOREStation Edit + mineral_name = pickweight(list("marble" = 3,/* "quartz" = 10,*/ "copper" = 20, "tin" = 15, "bauxite" = 15, "uranium" = 10, "platinum" = 10, "hematite" = 70, "rutile" = 15, "carbon" = 70, "diamond" = 2, "gold" = 10, "silver" = 10, "phoron" = 20, "lead" = 3,/* "void opal" = 1,*/ "verdantium" = 1/*, "painite" = 1*/)) if(mineral_name && (mineral_name in ore_data)) mineral = ore_data[mineral_name] diff --git a/code/modules/mining/ore.dm b/code/modules/mining/ore.dm index 8aaf648c86..dc95d0e082 100644 --- a/code/modules/mining/ore.dm +++ b/code/modules/mining/ore.dm @@ -107,6 +107,41 @@ material = MAT_LEAD origin_tech = list(TECH_MATERIAL = 3) +/obj/item/weapon/ore/copper + name = "raw copper" + icon_state = "ore_copper" + material = "copper" + +/obj/item/weapon/ore/tin + name = "raw tin" + icon_state = "ore_tin" + material = "tin" + +/obj/item/weapon/ore/bauxite + name = "raw bauxite" + icon_state = "ore_bauxite" + material = "bauxite" + +/obj/item/weapon/ore/rutile + name = "raw rutile" + icon_state = "ore_rutile" + material = "rutile" + +/obj/item/weapon/ore/void_opal + name = "raw void opal" + icon_state = "ore_void_opal" + material = "void opal" + +/obj/item/weapon/ore/painite + name = "raw painite" + icon_state = "ore_painite" + material = "painite" + +/obj/item/weapon/ore/quartz + name = "raw quartz" + icon_state = "ore_quartz" + material = "quartz" + /obj/item/weapon/ore/slag name = "Slag" desc = "Someone screwed up..." diff --git a/code/modules/mining/ore_datum.dm b/code/modules/mining/ore_datum.dm index 0bca24db1f..1ac742f211 100644 --- a/code/modules/mining/ore_datum.dm +++ b/code/modules/mining/ore_datum.dm @@ -177,3 +177,70 @@ var/global/list/ore_data = list() ore = /obj/item/weapon/ore/lead scan_icon = "mineral_rare" reagent = "lead" + +/ore/copper + name = "copper" + display_name = "copper" + smelts_to = "copper" + alloy = 1 + result_amount = 5 + spread_chance = 15 + ore = /obj/item/weapon/ore/copper + scan_icon = "mineral_common" + reagent = "copper" + +/ore/tin + name = "tin" + display_name = "tin" + smelts_to = "tin" + alloy = 1 + result_amount = 5 + spread_chance = 10 + ore = /obj/item/weapon/ore/tin + scan_icon = "mineral_common" + +/ore/quartz + name = "quartz" + display_name = "unrefined quartz" + compresses_to = "quartz" + result_amount = 5 + spread_chance = 5 + ore = /obj/item/weapon/ore/quartz + scan_icon = "mineral_common" + +/ore/bauxite + name = "bauxite" + display_name = "bauxite" + smelts_to = "aluminium" + result_amount = 5 + spread_chance = 25 + ore = /obj/item/weapon/ore/bauxite + scan_icon = "mineral_common" + reagent = "aluminum" + +/ore/rutile + name = "rutile" + display_name = "rutile" + smelts_to = "titanium" + result_amount = 5 + spread_chance = 12 + ore = /obj/item/weapon/ore/rutile + scan_icon = "mineral_uncommon" + +/ore/painite + name = "painite" + display_name = "rough painite" + compresses_to = "painite" + result_amount = 5 + spread_chance = 3 + ore = /obj/item/weapon/ore/painite + scan_icon = "mineral_rare" + +/ore/void_opal + name = "void opal" + display_name = "rough void opal" + compresses_to = "void opal" + result_amount = 5 + spread_chance = 1 + ore = /obj/item/weapon/ore/void_opal + scan_icon = "mineral_rare" diff --git a/code/modules/projectiles/ammunition/rounds.dm b/code/modules/projectiles/ammunition/rounds.dm index 1b461a0c47..fbcc6528cd 100644 --- a/code/modules/projectiles/ammunition/rounds.dm +++ b/code/modules/projectiles/ammunition/rounds.dm @@ -300,11 +300,12 @@ icon_state = "lcasing" caliber = "14.5mm" projectile_type = /obj/item/projectile/bullet/rifle/a145 - matter = list(DEFAULT_WALL_MATERIAL = 1250) + matter = list(MAT_TITANIUM = 2500, MAT_URANIUM = 1000, MAT_PLASTEEL = 1500) /obj/item/ammo_casing/a145/highvel desc = "A 14.5mm sabot shell." projectile_type = /obj/item/projectile/bullet/rifle/a145 + matter = list(MAT_TITANIUM = 2500, MAT_PLASTEEL = 1500) /obj/item/ammo_casing/a145/spent/Initialize() . = ..() diff --git a/code/modules/random_map/noise/ore.dm b/code/modules/random_map/noise/ore.dm index de8173a26a..4881154d60 100644 --- a/code/modules/random_map/noise/ore.dm +++ b/code/modules/random_map/noise/ore.dm @@ -64,6 +64,13 @@ T.resources["hydrogen"] = 0 T.resources["verdantium"] = 0 T.resources["lead"] = 0 + T.resources["copper"] = rand(RESOURCE_MID_MIN, RESOURCE_HIGH_MAX) + T.resources["tin"] = rand(RESOURCE_LOW_MIN, RESOURCE_MID_MAX) + T.resources["bauxite"] = rand(RESOURCE_LOW_MIN, RESOURCE_LOW_MAX) + T.resources["rutile"] = 0 + T.resources["void opal"] = 0 + T.resources["quartz"] = 0 + T.resources["painite"] = 0 else if(current_cell < deep_val) // Rare metals. T.resources["gold"] = rand(RESOURCE_MID_MIN, RESOURCE_MID_MAX) T.resources["silver"] = rand(RESOURCE_MID_MIN, RESOURCE_MID_MAX) @@ -76,6 +83,13 @@ T.resources["diamond"] = 0 T.resources["hematite"] = 0 T.resources["marble"] = 0 + T.resources["copper"] = 0 + T.resources["tin"] = rand(RESOURCE_MID_MIN, RESOURCE_MID_MAX) + T.resources["bauxite"] = 0 + T.resources["rutile"] = rand(RESOURCE_LOW_MIN, RESOURCE_MID_MAX) + T.resources["void opal"] = 0 + T.resources["quartz"] = 0 + T.resources["painite"] = 0 else // Deep metals. T.resources["uranium"] = rand(RESOURCE_LOW_MIN, RESOURCE_LOW_MAX) T.resources["diamond"] = rand(RESOURCE_LOW_MIN, RESOURCE_LOW_MAX) @@ -88,6 +102,13 @@ T.resources["hematite"] = 0 T.resources["gold"] = 0 T.resources["silver"] = 0 + T.resources["copper"] = 0 + T.resources["tin"] = 0 + T.resources["bauxite"] = 0 + T.resources["rutile"] = rand(RESOURCE_MID_MIN, RESOURCE_HIGH_MAX) + T.resources["void opal"] = 0 + T.resources["quartz"] = 0 + T.resources["painite"] = 0 return /datum/random_map/noise/ore/get_map_char(var/value) diff --git a/code/modules/research/designs/HUDs.dm b/code/modules/research/designs/HUDs.dm index 4a6648f26a..e108575653 100644 --- a/code/modules/research/designs/HUDs.dm +++ b/code/modules/research/designs/HUDs.dm @@ -1,7 +1,7 @@ // HUDs /datum/design/item/hud - materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 10) /datum/design/item/hud/AssembleDesignName() ..() @@ -42,6 +42,6 @@ name = "graviton visor" id = "graviton_goggles" req_tech = list(TECH_MAGNET = 5, TECH_ENGINEERING = 3, TECH_BLUESPACE = 3, TECH_PHORON = 3) - materials = list(MAT_PLASTEEL = 2000, "glass" = 3000, MAT_PHORON = 1500) + materials = list(MAT_PLASTEEL = 2000, "glass" = 3000, MAT_PHORON = 1500, MAT_COPPER = 10) build_path = /obj/item/clothing/glasses/graviton sort_string = "EAAAE" \ No newline at end of file diff --git a/code/modules/research/designs/ai_holders.dm b/code/modules/research/designs/ai_holders.dm index 7cf36c5bb6..b4215d91b2 100644 --- a/code/modules/research/designs/ai_holders.dm +++ b/code/modules/research/designs/ai_holders.dm @@ -8,7 +8,7 @@ id = "mmi" req_tech = list(TECH_DATA = 2, TECH_BIO = 3) build_type = PROTOLATHE | PROSFAB - materials = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 500, MAT_COPPER = 200) build_path = /obj/item/device/mmi category = list("Misc") sort_string = "SAAAA" @@ -18,7 +18,7 @@ id = "posibrain" req_tech = list(TECH_ENGINEERING = 4, TECH_MATERIAL = 6, TECH_BLUESPACE = 2, TECH_DATA = 4) build_type = PROTOLATHE | PROSFAB - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500, "phoron" = 500, "diamond" = 100) + materials = list(MAT_TITANIUM = 2000, "glass" = 1000, "silver" = 500, "gold" = 500, "phoron" = 500, MAT_DIAMOND = 100) build_path = /obj/item/device/mmi/digital/posibrain category = list("Misc") sort_string = "SAAAB" @@ -28,7 +28,7 @@ id = "dronebrain" req_tech = list(TECH_ENGINEERING = 4, TECH_MATERIAL = 5, TECH_DATA = 4) build_type = PROTOLATHE | PROSFAB - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500, MAT_COPPER = 100) build_path = /obj/item/device/mmi/digital/robot category = list("Misc") sort_string = "SAAAC" @@ -37,7 +37,7 @@ name = "'pAI', personal artificial intelligence device" id = "paicard" req_tech = list(TECH_DATA = 2) - materials = list("glass" = 500, DEFAULT_WALL_MATERIAL = 500) + materials = list("glass" = 500, DEFAULT_WALL_MATERIAL = 500, MAT_COPPER = 250) build_path = /obj/item/device/paicard sort_string = "SBAAA" @@ -46,6 +46,6 @@ desc = "Allows for the construction of an intelliCore." id = "intellicore" req_tech = list(TECH_DATA = 4, TECH_MATERIAL = 4) - materials = list("glass" = 1000, "gold" = 200) + materials = list(MAT_TITANIUM = 2500, MAT_ALUMINIUM = 500, "glass" = 500, "gold" = 200) build_path = /obj/item/device/aicard sort_string = "SCAAA" \ No newline at end of file diff --git a/code/modules/research/designs/bag_of_holding.dm b/code/modules/research/designs/bag_of_holding.dm index 744bbca5a3..dc4fb6b053 100644 --- a/code/modules/research/designs/bag_of_holding.dm +++ b/code/modules/research/designs/bag_of_holding.dm @@ -9,7 +9,7 @@ desc = "Using localized pockets of bluespace this bag prototype offers incredible storage capacity with the contents weighting nothing. It's a shame the bag itself is pretty heavy." id = "bag_holding" req_tech = list(TECH_BLUESPACE = 4, TECH_MATERIAL = 6) - materials = list("gold" = 3000, "diamond" = 1500, "uranium" = 250) + materials = list(MAT_TITANIUM = 2000, "gold" = 1000, "diamond" = 1500, "uranium" = 250) build_path = /obj/item/weapon/storage/backpack/holding sort_string = "QAAAA" @@ -18,6 +18,6 @@ desc = "A minaturized prototype of the popular Bag of Holding, the Dufflebag of Holding is, functionally, identical to the bag of holding, but comes in a more stylish and compact form." id = "dufflebag_holding" req_tech = list(TECH_BLUESPACE = 4, TECH_MATERIAL = 6) - materials = list("gold" = 3000, "diamond" = 1500, "uranium" = 250) + materials = list(MAT_TITANIUM = 2000, "gold" = 1000, "diamond" = 1500, "uranium" = 250) build_path = /obj/item/weapon/storage/backpack/holding/duffle sort_string = "QAAAB" \ No newline at end of file diff --git a/code/modules/research/designs/bio_devices.dm b/code/modules/research/designs/bio_devices.dm index 8762364105..f0c53b0bb3 100644 --- a/code/modules/research/designs/bio_devices.dm +++ b/code/modules/research/designs/bio_devices.dm @@ -1,5 +1,5 @@ /datum/design/item/biotech - materials = list(DEFAULT_WALL_MATERIAL = 30, "glass" = 20) + materials = list(DEFAULT_WALL_MATERIAL = 30, "glass" = 20, MAT_COPPER = 10) /datum/design/item/biotech/AssembleDesignName() ..() @@ -39,7 +39,7 @@ desc = "A hand-held scanner able to diagnose robotic injuries." id = "robot_scanner" req_tech = list(TECH_MAGNET = 3, TECH_BIO = 2, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 200) + materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 200, MAT_COPPER = 20) build_path = /obj/item/device/robotanalyzer sort_string = "JAACA" @@ -47,7 +47,7 @@ desc = "A tube of paste containing swarms of repair nanites. Very effective in repairing robotic machinery." id = "nanopaste" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 7000) + materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 7000, MAT_COPPER = 15) build_path = /obj/item/stack/nanopaste sort_string = "JAACB" @@ -55,7 +55,7 @@ desc = "A device capable of quickly scanning all relevant data about a plant." id = "plant_analyzer" req_tech = list(TECH_MAGNET = 2, TECH_BIO = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500, MAT_COPPER = 10) build_path = /obj/item/device/analyzer/plant_analyzer sort_string = "JAADA" diff --git a/code/modules/research/designs/circuits/ai_modules.dm b/code/modules/research/designs/circuits/ai_modules.dm index 378a4fde0d..456acb1b92 100644 --- a/code/modules/research/designs/circuits/ai_modules.dm +++ b/code/modules/research/designs/circuits/ai_modules.dm @@ -1,6 +1,6 @@ /datum/design/aimodule build_type = IMPRINTER - materials = list("glass" = 2000, "gold" = 100) + materials = list("glass" = 1800, MAT_COPPER = 200, "gold" = 100) /datum/design/aimodule/AssembleDesignName() name = "AI module design ([name])" diff --git a/code/modules/research/designs/circuits/circuits.dm b/code/modules/research/designs/circuits/circuits.dm index 6f17943484..615d3e5197 100644 --- a/code/modules/research/designs/circuits/circuits.dm +++ b/code/modules/research/designs/circuits/circuits.dm @@ -5,7 +5,7 @@ CIRCUITS BELOW /datum/design/circuit build_type = IMPRINTER req_tech = list(TECH_DATA = 2) - materials = list("glass" = 2000) + materials = list("glass" = 1850, MAT_COPPER = 150) chemicals = list("sacid" = 20) time = 5 @@ -493,7 +493,7 @@ CIRCUITS BELOW name = "'Durand' central control" id = "durand_main" req_tech = list(TECH_DATA = 4) - materials = list("glass" = 2000, MAT_GRAPHITE = 1250) + materials = list("glass" = 2000, MAT_GRAPHITE = 1250, MAT_COPPER = 100) chemicals = list("sacid" = 20) build_path = /obj/item/weapon/circuitboard/mecha/durand/main sort_string = "NAADA" @@ -502,7 +502,7 @@ CIRCUITS BELOW name = "'Durand' peripherals control" id = "durand_peri" req_tech = list(TECH_DATA = 4) - materials = list("glass" = 2000, MAT_GRAPHITE = 1250) + materials = list("glass" = 2000, MAT_GRAPHITE = 1250, MAT_COPPER = 100) chemicals = list("sacid" = 20) build_path = /obj/item/weapon/circuitboard/mecha/durand/peripherals sort_string = "NAADB" @@ -511,7 +511,7 @@ CIRCUITS BELOW name = "'Durand' weapon control and targeting" id = "durand_targ" req_tech = list(TECH_DATA = 4, TECH_COMBAT = 2) - materials = list("glass" = 2000, MAT_GRAPHITE = 1250) + materials = list("glass" = 2000, MAT_GRAPHITE = 1250, MAT_COPPER = 100) chemicals = list("sacid" = 20) build_path = /obj/item/weapon/circuitboard/mecha/durand/targeting sort_string = "NAADC" @@ -576,6 +576,36 @@ CIRCUITS BELOW build_path = /obj/item/weapon/circuitboard/telecomms/exonet_node sort_string = "PAAAH" +/datum/design/circuit/shield + req_tech = list(TECH_BLUESPACE = 4, TECH_PHORON = 3) + materials = list("glass" = 2000, MAT_COPPER = 100, "gold" = 1000) + +/datum/design/circuit/shield/AssembleDesignName() + name = "Shield generator circuit design ([name])" +/datum/design/circuit/shield/AssembleDesignDesc() + if(!desc) + desc = "Allows for the construction of \a [name] shield generator." + +/datum/design/circuit/shield/bubble + name = "bubble (OBSOLETE)" //VOREStation Edit + id = "shield_gen" + build_path = /obj/item/weapon/circuitboard/shield_gen + sort_string = "VAAAZ" // Duplicate string, really need to redo this whole thing + +/datum/design/circuit/shield/hull + name = "hull (OBSOLETE)" //VOREStation Edit + id = "shield_gen_ex" + build_path = /obj/item/weapon/circuitboard/shield_gen_ex + sort_string = "VAAAB" + +/datum/design/circuit/shield/capacitor + name = "capacitor (OBSOLETE)" //VOREStation Edit" + desc = "Allows for the construction of a shield capacitor circuit board." + id = "shield_cap" + req_tech = list(TECH_MAGNET = 3, TECH_POWER = 4) + build_path = /obj/item/weapon/circuitboard/shield_cap + sort_string = "VAAAC" + /datum/design/circuit/ntnet_relay name = "NTNet Quantum Relay" id = "ntnet_relay" diff --git a/code/modules/research/designs/circuits/disks.dm b/code/modules/research/designs/circuits/disks.dm index 2a3c2df83f..fd834fc55f 100644 --- a/code/modules/research/designs/circuits/disks.dm +++ b/code/modules/research/designs/circuits/disks.dm @@ -2,7 +2,7 @@ /datum/design/circuit/disk build_type = IMPRINTER req_tech = list(TECH_DATA = 3) - materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 1000) + materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 1000, MAT_COPPER = 150) chemicals = list("pacid" = 10) time = 5 diff --git a/code/modules/research/designs/engineering.dm b/code/modules/research/designs/engineering.dm index 6a6dbc4e16..b341754f75 100644 --- a/code/modules/research/designs/engineering.dm +++ b/code/modules/research/designs/engineering.dm @@ -9,7 +9,7 @@ desc = "A welding tool that generate fuel for itself." id = "expwelder" req_tech = list(TECH_ENGINEERING = 4, TECH_PHORON = 3, TECH_MATERIAL = 4) - materials = list(DEFAULT_WALL_MATERIAL = 70, "glass" = 120, "phoron" = 100) + materials = list(DEFAULT_WALL_MATERIAL = 70, "glass" = 120, "phoron" = 100, MAT_COPPER = 10) build_path = /obj/item/weapon/weldingtool/experimental sort_string = "NAAAA" @@ -18,7 +18,7 @@ desc = "A simple powered hand drill." id = "handdrill" req_tech = list(TECH_ENGINEERING = 3, TECH_MATERIAL = 2) - materials = list(DEFAULT_WALL_MATERIAL = 300, "silver" = 100) + materials = list(MAT_ALUMINIUM = 300, "silver" = 100, MAT_COPPER = 10) build_path = /obj/item/weapon/tool/screwdriver/power sort_string = "NAAAB" @@ -27,7 +27,7 @@ desc = "A set of jaws of life, compressed through the magic of science." id = "jawslife" req_tech = list(TECH_ENGINEERING = 3, TECH_MATERIAL = 2) - materials = list(DEFAULT_WALL_MATERIAL = 300, "silver" = 100) + materials = list(MAT_ALUMINIUM = 300, MAT_TITANIUM = 100, MAT_COPPER = 10) build_path = /obj/item/weapon/tool/crowbar/power sort_string = "NAAAC" // YW addition begins @@ -70,7 +70,7 @@ desc = "A terahertz-ray emitter and scanner used to detect underfloor objects such as cables and pipes." id = "tscanner" req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2, TECH_MATERIAL = 2) - materials = list(DEFAULT_WALL_MATERIAL = 200) + materials = list(DEFAULT_WALL_MATERIAL = 200, MAT_COPPER = 10) build_path = /obj/item/device/t_scanner sort_string = "NBAAA" @@ -79,7 +79,7 @@ desc = "An upgraded version of the terahertz-ray emitter and scanner used to detect underfloor objects such as cables and pipes." id = "upgradedtscanner" req_tech = list(TECH_MAGNET = 3, TECH_ENGINEERING = 4, TECH_MATERIAL = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500, "phoron" = 150) + materials = list(DEFAULT_WALL_MATERIAL = 500, "phoron" = 150, MAT_COPPER = 10) build_path = /obj/item/device/t_scanner/upgraded sort_string = "NBAAB" @@ -88,7 +88,7 @@ desc = "An advanced version of the terahertz-ray emitter and scanner used to detect underfloor objects such as cables and pipes." id = "advancedtscanner" req_tech = list(TECH_MAGNET = 6, TECH_ENGINEERING = 6, TECH_MATERIAL = 6) - materials = list(DEFAULT_WALL_MATERIAL = 1250, "phoron" = 500, "silver" = 50) + materials = list(MAT_ALUMINIUM = 1250, "phoron" = 500, "silver" = 50) build_path = /obj/item/device/t_scanner/advanced sort_string = "NBAAC" @@ -97,6 +97,6 @@ desc = "A hand-held environmental scanner which reports current gas levels." id = "atmosanalyzer" req_tech = list(TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 200, "glass" = 100) + materials = list(DEFAULT_WALL_MATERIAL = 200, "glass" = 100, MAT_COPPER = 10) build_path = /obj/item/device/analyzer sort_string = "NBABA" diff --git a/code/modules/research/designs/implants.dm b/code/modules/research/designs/implants.dm index 4c4b5ba801..b6279e62e1 100644 --- a/code/modules/research/designs/implants.dm +++ b/code/modules/research/designs/implants.dm @@ -1,7 +1,7 @@ // Implants /datum/design/item/implant - materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 5) /datum/design/item/implant/AssembleDesignName() ..() @@ -17,6 +17,7 @@ /datum/design/item/implant/freedom name = "freedom" id = "implant_free" - req_tech = list(TECH_ILLEGAL = 2, TECH_BIO = 3) + req_tech = list(TECH_MATERIAL = 3, TECH_ILLEGAL = 2, TECH_BIO = 3) build_path = /obj/item/weapon/implantcase/freedom - sort_string = "MFAAB" \ No newline at end of file + sort_string = "MFAAB" + materials = list(MAT_TITANIUM = 50, "glass" = 50, MAT_COPPER = 5) diff --git a/code/modules/research/designs/locator_devices.dm b/code/modules/research/designs/locator_devices.dm index b6f149393c..b59af1ec4b 100644 --- a/code/modules/research/designs/locator_devices.dm +++ b/code/modules/research/designs/locator_devices.dm @@ -2,7 +2,7 @@ /datum/design/item/gps req_tech = list(TECH_MATERIAL = 2, TECH_DATA = 2, TECH_BLUESPACE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500) + materials = list(DEFAULT_WALL_MATERIAL = 500, MAT_COPPER = 5) /datum/design/item/gps/AssembleDesignName() ..() @@ -67,7 +67,7 @@ desc = "Used to scan and locate signals on a particular frequency." id = "beacon_locator" req_tech = list(TECH_MAGNET = 3, TECH_ENGINEERING = 2, TECH_BLUESPACE = 3) - materials = list(DEFAULT_WALL_MATERIAL = 1000,"glass" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 1000,"glass" = 500, MAT_COPPER = 150) build_path = /obj/item/device/beacon_locator sort_string = "DBAAA" @@ -75,6 +75,6 @@ name = "Bluespace tracking beacon" id = "beacon" req_tech = list(TECH_BLUESPACE = 1) - materials = list (DEFAULT_WALL_MATERIAL = 20, "glass" = 10) + materials = list (DEFAULT_WALL_MATERIAL = 20, "glass" = 10, MAT_COPPER = 5) build_path = /obj/item/device/radio/beacon sort_string = "DBABA" \ No newline at end of file diff --git a/code/modules/research/designs/medical.dm b/code/modules/research/designs/medical.dm index 13c7307d70..a3cd5ea51c 100644 --- a/code/modules/research/designs/medical.dm +++ b/code/modules/research/designs/medical.dm @@ -12,7 +12,7 @@ desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks basic and could be improved." id = "scalpel_laser1" req_tech = list(TECH_BIO = 2, TECH_MATERIAL = 2, TECH_MAGNET = 2) - materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500) + materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500, MAT_COPPER = 120) build_path = /obj/item/weapon/surgical/scalpel/laser1 sort_string = "KAAAA" @@ -75,7 +75,7 @@ desc = "A hand-held body scanner able to distinguish vital signs of the subject." id = "medical_analyzer" req_tech = list(TECH_MAGNET = 2, TECH_BIO = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500, MAT_COPPER = 20) build_path = /obj/item/device/healthanalyzer sort_string = "KBAAA" @@ -121,6 +121,6 @@ desc = "A more advanced version of the regular roller bed, with inbuilt surgical stabilisers and an improved folding system." id = "roller_bed" req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 3, TECH_MAGNET = 3) - materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 2000, "phoron" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 2000, "phoron" = 2000, MAT_COPPER = 100) build_path = /obj/item/roller/adv sort_string = "KCAAA" diff --git a/code/modules/research/designs/mining_toys.dm b/code/modules/research/designs/mining_toys.dm index 987ab15b73..9e1ad560e2 100644 --- a/code/modules/research/designs/mining_toys.dm +++ b/code/modules/research/designs/mining_toys.dm @@ -7,14 +7,14 @@ /datum/design/item/weapon/mining/drill id = "drill" req_tech = list(TECH_MATERIAL = 2, TECH_POWER = 3, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 6000, "glass" = 1000) //expensive, but no need for miners. + materials = list(DEFAULT_WALL_MATERIAL = 6000, "glass" = 1000, MAT_COPPER = 10) //expensive, but no need for miners. build_path = /obj/item/weapon/pickaxe/drill sort_string = "FAAAA" /datum/design/item/weapon/mining/jackhammer id = "jackhammer" req_tech = list(TECH_MATERIAL = 3, TECH_POWER = 2, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 500, "silver" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 500, "silver" = 500, MAT_COPPER = 20) build_path = /obj/item/weapon/pickaxe/jackhammer sort_string = "FAAAB" @@ -28,14 +28,14 @@ /datum/design/item/weapon/mining/pick_diamond id = "pick_diamond" req_tech = list(TECH_MATERIAL = 6) - materials = list("diamond" = 3000) + materials = list(MAT_WOOD = 2000, "diamond" = 3000) build_path = /obj/item/weapon/pickaxe/diamond sort_string = "FAAAD" /datum/design/item/weapon/mining/drill_diamond id = "drill_diamond" req_tech = list(TECH_MATERIAL = 6, TECH_POWER = 4, TECH_ENGINEERING = 4) - materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 1000, "diamond" = 2000) + materials = list(MAT_ALUMINIUM = 2000, DEFAULT_WALL_MATERIAL = 1000, "glass" = 500, "diamond" = 2000, MAT_COPPER = 50) build_path = /obj/item/weapon/pickaxe/diamonddrill sort_string = "FAAAE" @@ -45,7 +45,7 @@ desc = "Used to check spatial depth and density of rock outcroppings." id = "depth_scanner" req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2, TECH_BLUESPACE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 1000,"glass" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 1000,"glass" = 1000, MAT_COPPER = 50) build_path = /obj/item/device/depth_scanner sort_string = "FBAAA" // CHOMPstation addition diff --git a/code/modules/research/designs/misc.dm b/code/modules/research/designs/misc.dm index 2ce34f3485..83a433a4e3 100644 --- a/code/modules/research/designs/misc.dm +++ b/code/modules/research/designs/misc.dm @@ -8,7 +8,7 @@ name = "Communicator" id = "communicator" req_tech = list(TECH_DATA = 2, TECH_MAGNET = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500, MAT_COPPER = 50) build_path = /obj/item/device/communicator sort_string = "TAAAA" @@ -17,7 +17,7 @@ datum/design/item/general/laserpointer desc = "Don't shine it in your eyes!" id = "laser_pointer" req_tech = list(TECH_MAGNET = 3) - materials = list(DEFAULT_WALL_MATERIAL = 100, "glass" = 50) + materials = list(DEFAULT_WALL_MATERIAL = 100, "glass" = 50, MAT_COPPER = 10) build_path = /obj/item/device/laser_pointer sort_string = "TAABA" @@ -25,7 +25,7 @@ datum/design/item/general/laserpointer name = "handheld translator" id = "translator" req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 3000, MAT_COPPER = 50) build_path = /obj/item/device/universal_translator sort_string = "TAACA" @@ -33,7 +33,7 @@ datum/design/item/general/laserpointer name = "earpiece translator" id = "ear_translator" req_tech = list(TECH_DATA = 5, TECH_ENGINEERING = 5) //It's been hella miniaturized. - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 2000, "gold" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 2000, "gold" = 1000, MAT_COPPER = 50) build_path = /obj/item/device/universal_translator/ear sort_string = "TAACB" @@ -51,7 +51,7 @@ datum/design/item/general/laserpointer desc = "Allows for deciphering the binary channel on-the-fly." id = "binaryencrypt" req_tech = list(TECH_ILLEGAL = 2) - materials = list(DEFAULT_WALL_MATERIAL = 300, "glass" = 300) + materials = list(DEFAULT_WALL_MATERIAL = 300, "glass" = 300, MAT_COPPER = 30) build_path = /obj/item/device/encryptionkey/binary sort_string = "TBAAA" @@ -60,7 +60,7 @@ datum/design/item/general/laserpointer desc = "A kit of dangerous, high-tech equipment with changeable looks." id = "chameleon" req_tech = list(TECH_ILLEGAL = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500) + materials = list(MAT_PLASTIC = 500, MAT_COPPER = 500, DEFAULT_WALL_MATERIAL = 500) build_path = /obj/item/weapon/storage/box/syndie_kit/chameleon sort_string = "TBAAB" diff --git a/code/modules/research/designs/modular_computer.dm b/code/modules/research/designs/modular_computer.dm index e78a776c1c..0a3f2a1eec 100644 --- a/code/modules/research/designs/modular_computer.dm +++ b/code/modules/research/designs/modular_computer.dm @@ -9,14 +9,14 @@ name = "basic hard drive" id = "hdd_basic" req_tech = list(TECH_DATA = 1, TECH_ENGINEERING = 1) - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 100) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 100, MAT_COPPER = 50) build_path = /obj/item/weapon/computer_hardware/hard_drive/ sort_string = "VAAAA" /datum/design/item/modularcomponent/disk/advanced name = "advanced hard drive" id = "hdd_advanced" - materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 200) + materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 200, MAT_COPPER = 50) build_path = /obj/item/weapon/computer_hardware/hard_drive/advanced sort_string = "VAAAB" @@ -24,7 +24,7 @@ name = "super hard drive" id = "hdd_super" req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 8000, "glass" = 400) + materials = list(DEFAULT_WALL_MATERIAL = 8000, "glass" = 400, MAT_COPPER = 50) build_path = /obj/item/weapon/computer_hardware/hard_drive/super sort_string = "VAAAC" @@ -32,7 +32,7 @@ name = "cluster hard drive" id = "hdd_cluster" req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 4) - materials = list(DEFAULT_WALL_MATERIAL = 16000, "glass" = 800) + materials = list(DEFAULT_WALL_MATERIAL = 16000, "glass" = 800, MAT_COPPER = 40) build_path = /obj/item/weapon/computer_hardware/hard_drive/cluster sort_string = "VAAAD" @@ -40,7 +40,7 @@ name = "small hard drive" id = "hdd_small" req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 200) + materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 200, MAT_COPPER = 30) build_path = /obj/item/weapon/computer_hardware/hard_drive/small sort_string = "VAAAE" @@ -48,7 +48,7 @@ name = "micro hard drive" id = "hdd_micro" req_tech = list(TECH_DATA = 1, TECH_ENGINEERING = 1) - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 100) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 100, MAT_COPPER = 20) build_path = /obj/item/weapon/computer_hardware/hard_drive/micro sort_string = "VAAAF" @@ -58,7 +58,7 @@ name = "basic network card" id = "netcard_basic" req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 1) - materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 100) + materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 100, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/network_card sort_string = "VBAAA" @@ -66,7 +66,7 @@ name = "advanced network card" id = "netcard_advanced" req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 200) + materials = list(DEFAULT_WALL_MATERIAL = 1000, "glass" = 200, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/network_card/advanced sort_string = "VBAAB" @@ -74,7 +74,7 @@ name = "wired network card" id = "netcard_wired" req_tech = list(TECH_DATA = 5, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 400) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 400, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/network_card/wired sort_string = "VBAAC" @@ -84,7 +84,7 @@ name = "standard battery module" id = "bat_normal" req_tech = list(TECH_POWER = 1, TECH_ENGINEERING = 1) - materials = list(DEFAULT_WALL_MATERIAL = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 2000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/battery_module sort_string = "VCAAA" @@ -92,7 +92,7 @@ name = "advanced battery module" id = "bat_advanced" req_tech = list(TECH_POWER = 2, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 4000) + materials = list(DEFAULT_WALL_MATERIAL = 4000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/battery_module/advanced sort_string = "VCAAB" @@ -100,7 +100,7 @@ name = "super battery module" id = "bat_super" req_tech = list(TECH_POWER = 3, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 8000) + materials = list(DEFAULT_WALL_MATERIAL = 8000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/battery_module/super sort_string = "VCAAC" @@ -108,7 +108,7 @@ name = "ultra battery module" id = "bat_ultra" req_tech = list(TECH_POWER = 5, TECH_ENGINEERING = 4) - materials = list(DEFAULT_WALL_MATERIAL = 16000) + materials = list(DEFAULT_WALL_MATERIAL = 16000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/battery_module/ultra sort_string = "VCAAD" @@ -116,7 +116,7 @@ name = "nano battery module" id = "bat_nano" req_tech = list(TECH_POWER = 1, TECH_ENGINEERING = 1) - materials = list(DEFAULT_WALL_MATERIAL = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 2000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/battery_module/nano sort_string = "VCAAE" @@ -124,7 +124,7 @@ name = "micro battery module" id = "bat_micro" req_tech = list(TECH_POWER = 2, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 4000) + materials = list(DEFAULT_WALL_MATERIAL = 4000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/battery_module/micro sort_string = "VCAAF" @@ -134,7 +134,7 @@ name = "computer processor unit" id = "cpu_normal" req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 8000) + materials = list(DEFAULT_WALL_MATERIAL = 8000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/processor_unit sort_string = "VDAAA" @@ -142,7 +142,7 @@ name = "computer microprocessor unit" id = "cpu_small" req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 4000) + materials = list(DEFAULT_WALL_MATERIAL = 4000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/processor_unit/small sort_string = "VDAAB" @@ -150,7 +150,7 @@ name = "computer photonic processor unit" id = "pcpu_normal" req_tech = list(TECH_DATA = 5, TECH_ENGINEERING = 4) - materials = list(DEFAULT_WALL_MATERIAL = 32000, glass = 8000) + materials = list(DEFAULT_WALL_MATERIAL = 32000, glass = 8000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/processor_unit/photonic sort_string = "VDAAC" @@ -158,7 +158,7 @@ name = "computer photonic microprocessor unit" id = "pcpu_small" req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 16000, glass = 4000) + materials = list(DEFAULT_WALL_MATERIAL = 16000, glass = 4000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/processor_unit/photonic/small sort_string = "VDAAD" @@ -168,7 +168,7 @@ name = "RFID card slot" id = "cardslot" req_tech = list(TECH_DATA = 2) - materials = list(DEFAULT_WALL_MATERIAL = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 3000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/card_slot sort_string = "VEAAA" @@ -176,7 +176,7 @@ name = "nano printer" id = "nanoprinter" req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 3000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/nano_printer sort_string = "VEAAB" @@ -184,7 +184,7 @@ name = "tesla link" id = "teslalink" req_tech = list(TECH_DATA = 2, TECH_POWER = 3, TECH_ENGINEERING = 2) - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 10000, MAT_PHORON = 350, MAT_GOLD = 500) build_path = /obj/item/weapon/computer_hardware/tesla_link sort_string = "VEAAC" @@ -198,7 +198,7 @@ name = "basic data crystal" id = "portadrive_basic" req_tech = list(TECH_DATA = 1) - materials = list("glass" = 8000) + materials = list("glass" = 8000, MAT_COPPER = 10) build_path = /obj/item/weapon/computer_hardware/hard_drive/portable sort_string = "VFAAA" @@ -206,7 +206,7 @@ name = "advanced data crystal" id = "portadrive_advanced" req_tech = list(TECH_DATA = 2) - materials = list("glass" = 16000) + materials = list("glass" = 16000, MAT_COPPER = 20) build_path = /obj/item/weapon/computer_hardware/hard_drive/portable/advanced sort_string = "VFAAB" @@ -214,6 +214,6 @@ name = "super data crystal" id = "portadrive_super" req_tech = list(TECH_DATA = 4) - materials = list("glass" = 32000) + materials = list("glass" = 32000, MAT_COPPER = 60) build_path = /obj/item/weapon/computer_hardware/hard_drive/portable/super sort_string = "VFAAC" diff --git a/code/modules/research/designs/pdas.dm b/code/modules/research/designs/pdas.dm index 78fd01ec23..fe5d9b432e 100644 --- a/code/modules/research/designs/pdas.dm +++ b/code/modules/research/designs/pdas.dm @@ -5,7 +5,7 @@ desc = "Cheaper than whiny non-digital assistants." id = "pda" req_tech = list(TECH_ENGINEERING = 2, TECH_POWER = 3) - materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 10) build_path = /obj/item/device/pda sort_string = "WAAAA" diff --git a/code/modules/research/designs/power_cells.dm b/code/modules/research/designs/power_cells.dm index 748541d520..95ba33be80 100644 --- a/code/modules/research/designs/power_cells.dm +++ b/code/modules/research/designs/power_cells.dm @@ -20,7 +20,7 @@ build_type = PROTOLATHE | MECHFAB id = "basic_cell" req_tech = list(TECH_POWER = 1) - materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50) + materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50, MAT_COPPER = 15) build_path = /obj/item/weapon/cell category = list("Misc") sort_string = "BAAAA" @@ -30,7 +30,7 @@ build_type = PROTOLATHE | MECHFAB id = "high_cell" req_tech = list(TECH_POWER = 2) - materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 60) + materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 60, MAT_COPPER = 15) build_path = /obj/item/weapon/cell/high category = list("Misc") sort_string = "BAAAB" @@ -39,7 +39,7 @@ name = "super-capacity" id = "super_cell" req_tech = list(TECH_POWER = 3, TECH_MATERIAL = 2) - materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 70) + materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 70, MAT_COPPER = 15) build_path = /obj/item/weapon/cell/super category = list("Misc") sort_string = "BAAAC" @@ -57,7 +57,7 @@ name = "device" build_type = PROTOLATHE id = "device" - materials = list(DEFAULT_WALL_MATERIAL = 350, "glass" = 25) + materials = list(DEFAULT_WALL_MATERIAL = 350, "glass" = 25, MAT_COPPER = 5) build_path = /obj/item/weapon/cell/device category = list("Misc") sort_string = "BAABA" @@ -66,8 +66,16 @@ /datum/design/item/powercell/advance_device name = "device, advanced" build_type = PROTOLATHE +<<<<<<< HEAD id = "advance_device" materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50) +||||||| parent of 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 + id = "weapon" + materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50) +======= + id = "weapon" + materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50, MAT_COPPER = 15) +>>>>>>> 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 build_path = /obj/item/weapon/cell/device/weapon category = list("Misc") sort_string = "BAABB" diff --git a/code/modules/research/designs/stock_parts.dm b/code/modules/research/designs/stock_parts.dm index 18e3c01616..2fc1e8dbff 100644 --- a/code/modules/research/designs/stock_parts.dm +++ b/code/modules/research/designs/stock_parts.dm @@ -40,14 +40,14 @@ /datum/design/item/stock_part/hyper_matter_bin id = "hyper_matter_bin" req_tech = list(TECH_MATERIAL = 6, TECH_ARCANE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 200, MAT_VERDANTIUM = 60, MAT_DURASTEEL = 75) + materials = list(MAT_ALUMINIUM = 200, MAT_VERDANTIUM = 60, MAT_TITANIUM = 75) build_path = /obj/item/weapon/stock_parts/matter_bin/hyper sort_string = "AAAAD" /datum/design/item/stock_part/omni_matter_bin id = "omni_matter_bin" req_tech = list(TECH_MATERIAL = 7, TECH_PRECURSOR = 2) - materials = list(DEFAULT_WALL_MATERIAL = 2000, MAT_PLASTEEL = 100, MAT_MORPHIUM = 100, MAT_DURASTEEL = 100) + materials = list(MAT_TITANIUM = 2000, MAT_PLASTEEL = 100, MAT_MORPHIUM = 100, MAT_DURASTEEL = 100) build_path = /obj/item/weapon/stock_parts/matter_bin/omni sort_string = "AAAAE" @@ -77,14 +77,14 @@ /datum/design/item/stock_part/hyper_mani id = "hyper_mani" req_tech = list(TECH_MATERIAL = 6, TECH_DATA = 3, TECH_ARCANE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 200, MAT_VERDANTIUM = 50, MAT_DURASTEEL = 50) + materials = list(MAT_ALUMINIUM = 200, MAT_VERDANTIUM = 50, MAT_TITANIUM = 50) build_path = /obj/item/weapon/stock_parts/manipulator/hyper sort_string = "AAABD" /datum/design/item/stock_part/omni_mani id = "omni_mani" req_tech = list(TECH_MATERIAL = 7, TECH_DATA = 4, TECH_PRECURSOR = 2) - materials = list(DEFAULT_WALL_MATERIAL = 2000, MAT_PLASTEEL = 500, MAT_MORPHIUM = 100, MAT_DURASTEEL = 100) + materials = list(MAT_ALUMINIUM = 2000, MAT_PLASTEEL = 500, MAT_MORPHIUM = 100, MAT_DURASTEEL = 100) build_path = /obj/item/weapon/stock_parts/manipulator/omni sort_string = "AAABE" @@ -93,14 +93,14 @@ /datum/design/item/stock_part/basic_capacitor id = "basic_capacitor" req_tech = list(TECH_POWER = 1) - materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 10) build_path = /obj/item/weapon/stock_parts/capacitor sort_string = "AAACA" /datum/design/item/stock_part/adv_capacitor id = "adv_capacitor" req_tech = list(TECH_POWER = 3) - materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50) + materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 50, MAT_COPPER = 10) build_path = /obj/item/weapon/stock_parts/capacitor/adv sort_string = "AAACB" @@ -114,7 +114,7 @@ /datum/design/item/stock_part/hyper_capacitor id = "hyper_capacitor" req_tech = list(TECH_POWER = 6, TECH_MATERIAL = 5, TECH_BLUESPACE = 1, TECH_ARCANE = 1) - materials = list(DEFAULT_WALL_MATERIAL = 200, MAT_GLASS = 100, MAT_VERDANTIUM = 30, MAT_DURASTEEL = 25) + materials = list(MAT_ALUMINIUM = 200, MAT_GLASS = 100, MAT_VERDANTIUM = 30, MAT_TITANIUM = 25) build_path = /obj/item/weapon/stock_parts/capacitor/hyper sort_string = "AAACD" @@ -130,14 +130,14 @@ /datum/design/item/stock_part/basic_sensor id = "basic_sensor" req_tech = list(TECH_MAGNET = 1) - materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20) + materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20, MAT_COPPER = 10) build_path = /obj/item/weapon/stock_parts/scanning_module sort_string = "AAADA" /datum/design/item/stock_part/adv_sensor id = "adv_sensor" req_tech = list(TECH_MAGNET = 3) - materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20) + materials = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20, MAT_COPPER = 10) build_path = /obj/item/weapon/stock_parts/scanning_module/adv sort_string = "AAADB" @@ -151,14 +151,14 @@ /datum/design/item/stock_part/hyper_sensor id = "hyper_sensor" req_tech = list(TECH_MAGNET = 6, TECH_MATERIAL = 4, TECH_ARCANE = 1) - materials = list(DEFAULT_WALL_MATERIAL = 50, MAT_GLASS = 20, MAT_SILVER = 50, MAT_VERDANTIUM = 40, MAT_DURASTEEL = 50) + materials = list(MAT_ALUMINIUM = 50, MAT_GLASS = 20, MAT_SILVER = 50, MAT_VERDANTIUM = 40, MAT_TITANIUM = 50) build_path = /obj/item/weapon/stock_parts/scanning_module/hyper sort_string = "AAADD" /datum/design/item/stock_part/omni_sensor id = "omni_sensor" req_tech = list(TECH_MAGNET = 7, TECH_MATERIAL = 5, TECH_PRECURSOR = 1) - materials = list(DEFAULT_WALL_MATERIAL = 1000, MAT_PLASTEEL = 500, MAT_GLASS = 750, MAT_SILVER = 500, MAT_MORPHIUM = 60, MAT_DURASTEEL = 100) + materials = list(MAT_ALUMINIUM = 1000, MAT_TITANIUM = 500, MAT_GLASS = 750, MAT_SILVER = 500, MAT_MORPHIUM = 60, MAT_DURASTEEL = 100) build_path = /obj/item/weapon/stock_parts/scanning_module/omni sort_string = "AAADE" @@ -188,14 +188,14 @@ /datum/design/item/stock_part/hyper_micro_laser id = "hyper_micro_laser" req_tech = list(TECH_MAGNET = 6, TECH_MATERIAL = 6, TECH_ARCANE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 200, MAT_GLASS = 20, MAT_URANIUM = 30, MAT_VERDANTIUM = 50, MAT_DURASTEEL = 100) + materials = list(MAT_ALUMINIUM = 200, MAT_GLASS = 20, MAT_URANIUM = 30, MAT_VERDANTIUM = 50, MAT_TITANIUM = 100) build_path = /obj/item/weapon/stock_parts/micro_laser/hyper sort_string = "AAAED" /datum/design/item/stock_part/omni_micro_laser id = "omni_micro_laser" req_tech = list(TECH_MAGNET = 7, TECH_MATERIAL = 7, TECH_PRECURSOR = 2) - materials = list(DEFAULT_WALL_MATERIAL = 2000, MAT_GLASS = 500, MAT_URANIUM = 2000, MAT_MORPHIUM = 50, MAT_DURASTEEL = 100) + materials = list(MAT_TITANIUM = 2000, MAT_GLASS = 500, MAT_URANIUM = 2000, MAT_MORPHIUM = 50, MAT_DURASTEEL = 100) build_path = /obj/item/weapon/stock_parts/micro_laser/omni sort_string = "AAAEE" diff --git a/code/modules/research/designs/weapons.dm b/code/modules/research/designs/weapons.dm index 8ccda5b7f0..d9f21429cd 100644 --- a/code/modules/research/designs/weapons.dm +++ b/code/modules/research/designs/weapons.dm @@ -1,3 +1,4 @@ +<<<<<<< HEAD /datum/design/item/weapon/AssembleDesignName() ..() name = "Weapon prototype ([item_name])" @@ -255,3 +256,529 @@ materials = list(DEFAULT_WALL_MATERIAL = 3000) build_path = /obj/item/weapon/grenade/chem_grenade/large sort_string = "MCAAA" +||||||| parent of 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 +/datum/design/item/weapon/AssembleDesignName() + ..() + name = "Weapon prototype ([item_name])" + +/datum/design/item/weapon/ammo/AssembleDesignName() + ..() + name = "Weapon ammo prototype ([item_name])" + +/datum/design/item/weapon/AssembleDesignDesc() + if(!desc) + if(build_path) + var/obj/item/I = build_path + desc = initial(I.desc) + ..() + +// Energy weapons + +/datum/design/item/weapon/energy/AssembleDesignName() + ..() + name = "Energy weapon prototype ([item_name])" + +/datum/design/item/weapon/energy/stunrevolver + id = "stunrevolver" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2) + materials = list(DEFAULT_WALL_MATERIAL = 4000) + build_path = /obj/item/weapon/gun/energy/stunrevolver + sort_string = "MAAAA" + +/datum/design/item/weapon/energy/nuclear_gun + id = "nuclear_gun" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 5, TECH_POWER = 3) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, "uranium" = 500) + build_path = /obj/item/weapon/gun/energy/gun/nuclear + sort_string = "MAAAB" + +/datum/design/item/weapon/energy/phoronpistol + id = "ppistol" + req_tech = list(TECH_COMBAT = 5, TECH_PHORON = 4) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, "phoron" = 3000) + build_path = /obj/item/weapon/gun/energy/toxgun + sort_string = "MAAAC" + +/datum/design/item/weapon/energy/lasercannon + desc = "The lasing medium of this prototype is enclosed in a tube lined with uranium-235 and subjected to high neutron flux in a nuclear reactor core." + id = "lasercannon" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 1000, "diamond" = 2000) + build_path = /obj/item/weapon/gun/energy/lasercannon + sort_string = "MAAAD" + +/datum/design/item/weapon/energy/decloner + id = "decloner" + req_tech = list(TECH_COMBAT = 8, TECH_MATERIAL = 7, TECH_BIO = 5, TECH_POWER = 6) + materials = list("gold" = 5000,"uranium" = 10000) + build_path = /obj/item/weapon/gun/energy/decloner + sort_string = "MAAAE" + +/datum/design/item/weapon/energy/temp_gun + desc = "A gun that shoots high-powered glass-encased energy temperature bullets." + id = "temp_gun" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 4, TECH_POWER = 3, TECH_MAGNET = 2) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 500, "silver" = 3000) + build_path = /obj/item/weapon/gun/energy/temperature + sort_string = "MAAAF" + +/datum/design/item/weapon/energy/flora_gun + id = "flora_gun" + req_tech = list(TECH_MATERIAL = 2, TECH_BIO = 3, TECH_POWER = 3) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 500, "uranium" = 500) + build_path = /obj/item/weapon/gun/energy/floragun + sort_string = "MAAAG" + +// Ballistic weapons + +/datum/design/item/weapon/ballistic/AssembleDesignName() + ..() + name = "Ballistic weapon prototype ([item_name])" + +/datum/design/item/weapon/ballistic/advanced_smg + id = "smg" + desc = "An advanced 9mm SMG with a reflective laser optic." + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 8000, "silver" = 2000, "diamond" = 1000) + build_path = /obj/item/weapon/gun/projectile/automatic/advanced_smg + sort_string = "MABAA" + +// Ballistic ammo + +/datum/design/item/weapon/ballistic/ammo/AssembleDesignName() + ..() + name = "Ballistic weapon ammo prototype ([name])" + +/datum/design/item/weapon/ballistic/ammo/ammo_9mmAdvanced + name = "9mm magazine" + id = "ammo_9mm" + desc = "A 21 round magazine for an advanced 9mm SMG." + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 3750, "silver" = 100) // Requires silver for proprietary magazines! Or something. + build_path = /obj/item/ammo_magazine/m9mmAdvanced + sort_string = "MABBA" + +/datum/design/item/weapon/ballistic/ammo/stunshell + name = "stun shells" + desc = "A stunning shell for a shotgun." + id = "stunshell" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 4000) + build_path = /obj/item/weapon/storage/box/stunshells + sort_string = "MABBB" + +/datum/design/item/weapon/ballistic/ammo/empshell + name = "emp shells" + desc = "An electromagnetic shell for a shotgun." + id = "empshell" + req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 3) + materials = list(DEFAULT_WALL_MATERIAL = 4000, MAT_URANIUM = 1000) + build_path = /obj/item/weapon/storage/box/empshells + sort_string = "MABBC" + +// Phase weapons + +/datum/design/item/weapon/phase/AssembleDesignName() + ..() + name = "Phase weapon prototype ([item_name])" + +/* //VOREStation Removal Start +/datum/design/item/weapon/phase/phase_pistol + id = "phasepistol" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2, TECH_POWER = 2) + materials = list(DEFAULT_WALL_MATERIAL = 4000) + build_path = /obj/item/weapon/gun/energy/phasegun/pistol + sort_string = "MACAA" + +/datum/design/item/weapon/phase/phase_carbine + id = "phasecarbine" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 2, TECH_POWER = 2) + materials = list(DEFAULT_WALL_MATERIAL = 6000, "glass" = 1500) + build_path = /obj/item/weapon/gun/energy/phasegun + sort_string = "MACAB" + +/datum/design/item/weapon/phase/phase_rifle + id = "phaserifle" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3) + materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 2000, "silver" = 500) + build_path = /obj/item/weapon/gun/energy/phasegun/rifle + sort_string = "MACAC" + +/datum/design/item/weapon/phase/phase_cannon + id = "phasecannon" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 4, TECH_POWER = 4) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 2000, "silver" = 1000, "diamond" = 750) + build_path = /obj/item/weapon/gun/energy/phasegun/cannon + sort_string = "MACAD" +*/ //VOREStation Removal End + +// Other weapons + +/datum/design/item/weapon/rapidsyringe + id = "rapidsyringe" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_BIO = 2) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000) + build_path = /obj/item/weapon/gun/launcher/syringe/rapid + sort_string = "MADAA" + +/datum/design/item/weapon/dartgun + desc = "A gun that fires small hollow chemical-payload darts." + id = "dartgun_r" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 4, TECH_BIO = 4, TECH_MAGNET = 3, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "gold" = 5000, "silver" = 2500, "glass" = 750) + build_path = /obj/item/weapon/gun/projectile/dartgun/research + sort_string = "MADAB" + +/datum/design/item/weapon/chemsprayer + desc = "An advanced chem spraying device." + id = "chemsprayer" + req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_BIO = 2) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000) + build_path = /obj/item/weapon/reagent_containers/spray/chemsprayer + sort_string = "MADAC" + +/datum/design/item/weapon/fuelrod + id = "fuelrod_gun" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 4, TECH_PHORON = 4, TECH_ILLEGAL = 5, TECH_MAGNET = 5) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 2000, "gold" = 500, "silver" = 500, "uranium" = 1000, "phoron" = 3000, "diamond" = 1000) + build_path = /obj/item/weapon/gun/magnetic/fuelrod + sort_string = "MADAD" + +// Ammo for those + +/datum/design/item/weapon/ammo/dartgunmag_small + id = "dartgun_mag_s" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 300, "gold" = 100, "silver" = 100, "glass" = 300) + build_path = /obj/item/ammo_magazine/chemdart/small + sort_string = "MADBA" + +/datum/design/item/weapon/ammo/dartgun_ammo_small + id = "dartgun_ammo_s" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 50, "gold" = 30, "silver" = 30, "glass" = 50) + build_path = /obj/item/ammo_casing/chemdart/small + sort_string = "MADBB" + +/datum/design/item/weapon/ammo/dartgunmag_med + id = "dartgun_mag_m" + req_tech = list(TECH_COMBAT = 7, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 500, "gold" = 150, "silver" = 150, "diamond" = 200, "glass" = 400) + build_path = /obj/item/ammo_magazine/chemdart + sort_string = "MADBC" + +/datum/design/item/weapon/ammo/dartgun_ammo_med + id = "dartgun_ammo_m" + req_tech = list(TECH_COMBAT = 7, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 80, "gold" = 40, "silver" = 40, "glass" = 60) + build_path = /obj/item/ammo_casing/chemdart + sort_string = "MADBD" + +/datum/design/item/weapon/ammo/flechette + id = "magnetic_ammo" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 4, TECH_MAGNET = 4) + materials = list(DEFAULT_WALL_MATERIAL = 500, "gold" = 300, "glass" = 150, MAT_PHORON = 100) + build_path = /obj/item/weapon/magnetic_ammo + sort_string = "MADBE" + +// Melee weapons + +/datum/design/item/weapon/melee/AssembleDesignName() + ..() + name = "Melee weapon prototype ([item_name])" + +/datum/design/item/weapon/melee/esword + name = "Portable Energy Blade" + id = "chargesword" + req_tech = list(TECH_COMBAT = 6, TECH_MAGNET = 4, TECH_ENGINEERING = 5, TECH_ILLEGAL = 4, TECH_ARCANE = 1) + materials = list(MAT_PLASTEEL = 3500, "glass" = 1000, MAT_LEAD = 2250, MAT_METALHYDROGEN = 500) + build_path = /obj/item/weapon/melee/energy/sword/charge + sort_string = "MBAAA" + +/datum/design/item/weapon/melee/eaxe + name = "Energy Axe" + id = "chargeaxe" + req_tech = list(TECH_COMBAT = 6, TECH_MAGNET = 5, TECH_ENGINEERING = 4, TECH_ILLEGAL = 4) + materials = list(MAT_PLASTEEL = 3500, MAT_OSMIUM = 2000, MAT_LEAD = 2000, MAT_METALHYDROGEN = 500) + build_path = /obj/item/weapon/melee/energy/axe/charge + sort_string = "MBAAB" + +// Grenade stuff +/datum/design/item/weapon/grenade/AssembleDesignName() + ..() + name = "Grenade casing prototype ([item_name])" + +/datum/design/item/weapon/grenade/large_grenade + id = "large_Grenade" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2) + materials = list(DEFAULT_WALL_MATERIAL = 3000) + build_path = /obj/item/weapon/grenade/chem_grenade/large + sort_string = "MCAAA" +======= +/datum/design/item/weapon/AssembleDesignName() + ..() + name = "Weapon prototype ([item_name])" + +/datum/design/item/weapon/ammo/AssembleDesignName() + ..() + name = "Weapon ammo prototype ([item_name])" + +/datum/design/item/weapon/AssembleDesignDesc() + if(!desc) + if(build_path) + var/obj/item/I = build_path + desc = initial(I.desc) + ..() + +// Energy weapons + +/datum/design/item/weapon/energy/AssembleDesignName() + ..() + name = "Energy weapon prototype ([item_name])" + +/datum/design/item/weapon/energy/stunrevolver + id = "stunrevolver" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2) + materials = list(DEFAULT_WALL_MATERIAL = 4000, MAT_COPPER = 30) + build_path = /obj/item/weapon/gun/energy/stunrevolver + sort_string = "MAAAA" + +/datum/design/item/weapon/energy/nuclear_gun + id = "nuclear_gun" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 5, TECH_POWER = 3) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, "uranium" = 500, MAT_COPPER = 50) + build_path = /obj/item/weapon/gun/energy/gun/nuclear + sort_string = "MAAAB" + +/datum/design/item/weapon/energy/phoronpistol + id = "ppistol" + req_tech = list(TECH_COMBAT = 5, TECH_PHORON = 4) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, "phoron" = 3000, MAT_COPPER = 50) + build_path = /obj/item/weapon/gun/energy/toxgun + sort_string = "MAAAC" + +/datum/design/item/weapon/energy/lasercannon + desc = "The lasing medium of this prototype is enclosed in a tube lined with uranium-235 and subjected to high neutron flux in a nuclear reactor core." + id = "lasercannon" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3) + materials = list(MAT_TITANIUM = 5000, MAT_BOROSILICATE = 1000, "diamond" = 2000, MAT_COPPER = 50) + build_path = /obj/item/weapon/gun/energy/lasercannon + sort_string = "MAAAD" + +/datum/design/item/weapon/energy/decloner + id = "decloner" + req_tech = list(TECH_COMBAT = 8, TECH_MATERIAL = 7, TECH_BIO = 5, TECH_POWER = 6) + materials = list(MAT_TITANIUM = 2750, "gold" = 5000,"uranium" = 10000) + build_path = /obj/item/weapon/gun/energy/decloner + sort_string = "MAAAE" + +/datum/design/item/weapon/energy/temp_gun + desc = "A gun that shoots high-powered glass-encased energy temperature bullets." + id = "temp_gun" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 4, TECH_POWER = 3, TECH_MAGNET = 2) + materials = list(MAT_ALUMINIUM = 5000, "glass" = 500, "silver" = 3000) + build_path = /obj/item/weapon/gun/energy/temperature + sort_string = "MAAAF" + +/datum/design/item/weapon/energy/flora_gun + id = "flora_gun" + req_tech = list(TECH_MATERIAL = 2, TECH_BIO = 3, TECH_POWER = 3) + materials = list(MAT_ALUMINIUM = 2000, "glass" = 500, "uranium" = 500) + build_path = /obj/item/weapon/gun/energy/floragun + sort_string = "MAAAG" + +// Ballistic weapons + +/datum/design/item/weapon/ballistic/AssembleDesignName() + ..() + name = "Ballistic weapon prototype ([item_name])" + +/datum/design/item/weapon/ballistic/advanced_smg + id = "smg" + desc = "An advanced 9mm SMG with a reflective laser optic." + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 8000, "silver" = 2000, "diamond" = 1000) + build_path = /obj/item/weapon/gun/projectile/automatic/advanced_smg + sort_string = "MABAA" + +// Ballistic ammo + +/datum/design/item/weapon/ballistic/ammo/AssembleDesignName() + ..() + name = "Ballistic weapon ammo prototype ([name])" + +/datum/design/item/weapon/ballistic/ammo/ammo_9mmAdvanced + name = "9mm magazine" + id = "ammo_9mm" + desc = "A 21 round magazine for an advanced 9mm SMG." + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 3750, "silver" = 100) // Requires silver for proprietary magazines! Or something. + build_path = /obj/item/ammo_magazine/m9mmAdvanced + sort_string = "MABBA" + +/datum/design/item/weapon/ballistic/ammo/stunshell + name = "stun shells" + desc = "A stunning shell for a shotgun." + id = "stunshell" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 4000) + build_path = /obj/item/weapon/storage/box/stunshells + sort_string = "MABBB" + +/datum/design/item/weapon/ballistic/ammo/empshell + name = "emp shells" + desc = "An electromagnetic shell for a shotgun." + id = "empshell" + req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 3) + materials = list(DEFAULT_WALL_MATERIAL = 4000, MAT_URANIUM = 1000) + build_path = /obj/item/weapon/storage/box/empshells + sort_string = "MABBC" + +/datum/design/item/weapon/ballistic/ammo/ptrshell + name = "14.5mm shell" + desc = "A dense-core projectile fired from a small cannon." + id = "ptrshell" + req_tech = list(TECH_COMBAT = 7, TECH_ILLEGAL = 4) + materials = list(MAT_TITANIUM = 4000, MAT_URANIUM = 500, MAT_PLASTEEL = 500) + build_path = /obj/item/ammo_casing/a145 + sort_string = "MABBD" + +// Phase weapons + +/datum/design/item/weapon/phase/AssembleDesignName() + ..() + name = "Phase weapon prototype ([item_name])" + +/* //VOREStation Removal Start +/datum/design/item/weapon/phase/phase_pistol + id = "phasepistol" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2, TECH_POWER = 2) + materials = list(DEFAULT_WALL_MATERIAL = 4000, MAT_COPPER = 30) + build_path = /obj/item/weapon/gun/energy/phasegun/pistol + sort_string = "MACAA" + +/datum/design/item/weapon/phase/phase_carbine + id = "phasecarbine" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 2, TECH_POWER = 2) + materials = list(DEFAULT_WALL_MATERIAL = 6000, "glass" = 1500, MAT_COPPER = 40) + build_path = /obj/item/weapon/gun/energy/phasegun + sort_string = "MACAB" + +/datum/design/item/weapon/phase/phase_rifle + id = "phaserifle" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3) + materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 2000, "silver" = 500) + build_path = /obj/item/weapon/gun/energy/phasegun/rifle + sort_string = "MACAC" + +/datum/design/item/weapon/phase/phase_cannon + id = "phasecannon" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 4, TECH_POWER = 4) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 2000, "silver" = 1000, "diamond" = 750) + build_path = /obj/item/weapon/gun/energy/phasegun/cannon + sort_string = "MACAD" +*/ //VOREStation Removal End + +// Other weapons + +/datum/design/item/weapon/rapidsyringe + id = "rapidsyringe" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_BIO = 2) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, MAT_COPPER = 20) + build_path = /obj/item/weapon/gun/launcher/syringe/rapid + sort_string = "MADAA" + +/datum/design/item/weapon/dartgun + desc = "A gun that fires small hollow chemical-payload darts." + id = "dartgun_r" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 4, TECH_BIO = 4, TECH_MAGNET = 3, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "gold" = 5000, "silver" = 2500, "glass" = 750) + build_path = /obj/item/weapon/gun/projectile/dartgun/research + sort_string = "MADAB" + +/datum/design/item/weapon/chemsprayer + desc = "An advanced chem spraying device." + id = "chemsprayer" + req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_BIO = 2) + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 1000, MAT_COPPER = 30) + build_path = /obj/item/weapon/reagent_containers/spray/chemsprayer + sort_string = "MADAC" + +/datum/design/item/weapon/fuelrod + id = "fuelrod_gun" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 4, TECH_PHORON = 4, TECH_ILLEGAL = 5, TECH_MAGNET = 5) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 2000, "gold" = 500, "silver" = 500, "uranium" = 1000, "phoron" = 3000, "diamond" = 1000) + build_path = /obj/item/weapon/gun/magnetic/fuelrod + sort_string = "MADAD" + +// Ammo for those + +/datum/design/item/weapon/ammo/dartgunmag_small + id = "dartgun_mag_s" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 300, "gold" = 100, "silver" = 100, "glass" = 300) + build_path = /obj/item/ammo_magazine/chemdart/small + sort_string = "MADBA" + +/datum/design/item/weapon/ammo/dartgun_ammo_small + id = "dartgun_ammo_s" + req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 50, "gold" = 30, "silver" = 30, "glass" = 50) + build_path = /obj/item/ammo_casing/chemdart/small + sort_string = "MADBB" + +/datum/design/item/weapon/ammo/dartgunmag_med + id = "dartgun_mag_m" + req_tech = list(TECH_COMBAT = 7, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 500, "gold" = 150, "silver" = 150, "diamond" = 200, "glass" = 400) + build_path = /obj/item/ammo_magazine/chemdart + sort_string = "MADBC" + +/datum/design/item/weapon/ammo/dartgun_ammo_med + id = "dartgun_ammo_m" + req_tech = list(TECH_COMBAT = 7, TECH_MATERIAL = 2, TECH_BIO = 2, TECH_MAGNET = 1, TECH_ILLEGAL = 1) + materials = list(DEFAULT_WALL_MATERIAL = 80, "gold" = 40, "silver" = 40, "glass" = 60) + build_path = /obj/item/ammo_casing/chemdart + sort_string = "MADBD" + +/datum/design/item/weapon/ammo/flechette + id = "magnetic_ammo" + req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 4, TECH_MAGNET = 4) + materials = list(DEFAULT_WALL_MATERIAL = 500, "gold" = 300, "glass" = 150, MAT_PHORON = 100) + build_path = /obj/item/weapon/magnetic_ammo + sort_string = "MADBE" + +// Melee weapons + +/datum/design/item/weapon/melee/AssembleDesignName() + ..() + name = "Melee weapon prototype ([item_name])" + +/datum/design/item/weapon/melee/esword + name = "Portable Energy Blade" + id = "chargesword" + req_tech = list(TECH_COMBAT = 6, TECH_MAGNET = 4, TECH_ENGINEERING = 5, TECH_ILLEGAL = 4, TECH_ARCANE = 1) + materials = list(MAT_PLASTEEL = 3500, "glass" = 1000, MAT_LEAD = 2250, MAT_METALHYDROGEN = 500) + build_path = /obj/item/weapon/melee/energy/sword/charge + sort_string = "MBAAA" + +/datum/design/item/weapon/melee/eaxe + name = "Energy Axe" + id = "chargeaxe" + req_tech = list(TECH_COMBAT = 6, TECH_MAGNET = 5, TECH_ENGINEERING = 4, TECH_ILLEGAL = 4) + materials = list(MAT_PLASTEEL = 3500, MAT_OSMIUM = 2000, MAT_LEAD = 2000, MAT_METALHYDROGEN = 500) + build_path = /obj/item/weapon/melee/energy/axe/charge + sort_string = "MBAAB" + +// Grenade stuff +/datum/design/item/weapon/grenade/AssembleDesignName() + ..() + name = "Grenade casing prototype ([item_name])" + +/datum/design/item/weapon/grenade/large_grenade + id = "large_Grenade" + req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2) + materials = list(DEFAULT_WALL_MATERIAL = 3000) + build_path = /obj/item/weapon/grenade/chem_grenade/large + sort_string = "MCAAA" +>>>>>>> 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 diff --git a/code/modules/research/designs/xenoarch_toys.dm b/code/modules/research/designs/xenoarch_toys.dm index 7c69090b1b..99292d08f3 100644 --- a/code/modules/research/designs/xenoarch_toys.dm +++ b/code/modules/research/designs/xenoarch_toys.dm @@ -9,7 +9,7 @@ id = "ano_scanner" desc = "Aids in triangulation of exotic particles." req_tech = list(TECH_BLUESPACE = 3, TECH_MAGNET = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000,"glass" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 10000,"glass" = 5000, MAT_COPPER = 20) build_path = /obj/item/device/ano_scanner sort_string = "GAAAA" @@ -18,7 +18,7 @@ id = "xenoarch_multitool" req_tech = list(TECH_MAGNET = 3, TECH_ENGINEERING = 3, TECH_BLUESPACE = 3) build_path = /obj/item/device/xenoarch_multi_tool - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "uranium" = 500, "phoron" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "uranium" = 500, "phoron" = 500, MAT_COPPER = 40) sort_string = "GAAAB" /datum/design/item/weapon/xenoarch/excavationdrill @@ -26,6 +26,6 @@ id = "excavationdrill" req_tech = list(TECH_MATERIAL = 3, TECH_POWER = 2, TECH_ENGINEERING = 2, TECH_BLUESPACE = 3) build_type = PROTOLATHE - materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 4000) + materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 4000, MAT_COPPER = 30) build_path = /obj/item/weapon/pickaxe/excavationdrill sort_string = "GAAAC" \ No newline at end of file diff --git a/code/modules/research/designs/xenobio_toys.dm b/code/modules/research/designs/xenobio_toys.dm index 917f8ba6c3..feb8d04f2c 100644 --- a/code/modules/research/designs/xenobio_toys.dm +++ b/code/modules/research/designs/xenobio_toys.dm @@ -7,14 +7,14 @@ /datum/design/item/weapon/xenobio/slimebaton id = "slimebaton" req_tech = list(TECH_MATERIAL = 2, TECH_BIO = 2, TECH_POWER = 3, TECH_COMBAT = 3) - materials = list(DEFAULT_WALL_MATERIAL = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 5000, MAT_COPPER = 30) build_path = /obj/item/weapon/melee/baton/slime sort_string = "HAAAA" /datum/design/item/weapon/xenobio/slimetaser id = "slimetaser" req_tech = list(TECH_MATERIAL = 3, TECH_BIO = 3, TECH_POWER = 4, TECH_COMBAT = 4) - materials = list(DEFAULT_WALL_MATERIAL = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 5000, MAT_COPPER = 40) build_path = /obj/item/weapon/gun/energy/taser/xeno sort_string = "HAAAB" @@ -25,6 +25,6 @@ desc = "A hand-held body scanner able to learn information about slimes." id = "slime_scanner" req_tech = list(TECH_MAGNET = 2, TECH_BIO = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 500, "glass" = 500, MAT_COPPER = 30) build_path = /obj/item/device/slime_scanner sort_string = "HBAAA" \ No newline at end of file diff --git a/code/modules/research/mechfab_designs.dm b/code/modules/research/mechfab_designs.dm index d27ec97bf2..0771809891 100644 --- a/code/modules/research/mechfab_designs.dm +++ b/code/modules/research/mechfab_designs.dm @@ -357,11 +357,13 @@ name = "PBT \"Pacifier\" Mounted Taser" id = "mech_taser" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser + materials = list(DEFAULT_WALL_MATERIAL = 6500, MAT_COPPER = 1000) /datum/design/item/mecha/rigged_taser name = "Jury-Rigged Taser" id = "mech_taser-r" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser/rigged + materials = list(DEFAULT_WALL_MATERIAL = 6500, MAT_COPPER = 200) /datum/design/item/mecha/shocker name = "Exosuit Electrifier" @@ -573,7 +575,7 @@ desc = "Automated repair droid, exosuits' best companion. BEEP BOOP" id = "mech_repair_droid" req_tech = list(TECH_MAGNET = 3, TECH_DATA = 3, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 750, "silver" = 1500, "glass" = 3750) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 750, "silver" = 1500, MAT_ALUMINIUM = 3750) build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid /datum/design/item/mecha/combat_shield @@ -597,7 +599,7 @@ desc = "Deploys a small medical drone capable of patching small wounds in order to stabilize nearby patients." id = "mech_med_droid" req_tech = list(TECH_PHORON = 3, TECH_MAGNET = 6, TECH_BIO = 5, TECH_DATA = 4, TECH_ARCANE = 1) - materials = list(DEFAULT_WALL_MATERIAL = 8000, MAT_GOLD = 2000, MAT_SILVER = 3000, MAT_VERDANTIUM = 2500, MAT_GLASS = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 8000, MAT_GOLD = 2000, MAT_ALUMINIUM = 3750, MAT_VERDANTIUM = 2500, MAT_GLASS = 3000) build_path = /obj/item/mecha_parts/mecha_equipment/crisis_drone /datum/design/item/mecha/rad_drone @@ -605,7 +607,7 @@ desc = "Deploys a small hazmat drone capable of purging minor radiation damage in order to stabilize nearby patients." id = "mech_rad_droid" req_tech = list(TECH_PHORON = 4, TECH_MAGNET = 5, TECH_BIO = 6, TECH_DATA = 4, TECH_ARCANE = 1) - materials = list(DEFAULT_WALL_MATERIAL = 8000, MAT_GOLD = 2000, MAT_URANIUM = 3000, MAT_VERDANTIUM = 2500, MAT_GLASS = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 8000, MAT_GOLD = 2000, MAT_ALUMINIUM = 2500, MAT_URANIUM = 1000, MAT_VERDANTIUM = 1000, MAT_GLASS = 3000) build_path = /obj/item/mecha_parts/mecha_equipment/crisis_drone/rad /datum/design/item/mecha/medanalyzer @@ -613,7 +615,7 @@ desc = "An advanced mech-mounted device that is not quite as powerful as a stationary body scanner, though still suitably powerful." id = "mech_med_analyzer" req_tech = list(TECH_PHORON = 4, TECH_MAGNET = 5, TECH_BIO = 5, TECH_DATA = 4) - materials = list(MAT_PLASTEEL = 4500, MAT_GOLD = 2000, MAT_URANIUM = 3000, MAT_GLASS = 3000) + materials = list(MAT_ALUMINIUM = 4500, MAT_GOLD = 2000, MAT_URANIUM = 3000, MAT_GLASS = 3000) build_path = /obj/item/mecha_parts/mecha_equipment/tool/powertool/medanalyzer /datum/design/item/mecha/jetpack @@ -622,7 +624,7 @@ id = "mech_jetpack" req_tech = list(TECH_ENGINEERING = 3, TECH_MAGNET = 4) //One less magnet than the actual got-damn teleporter. build_path = /obj/item/mecha_parts/mecha_equipment/tool/jetpack - materials = list(DEFAULT_WALL_MATERIAL = 7500, "silver" = 300, "glass" = 600) + materials = list(MAT_ALUMINIUM = 7500, "silver" = 300, "glass" = 600) /datum/design/item/mecha/phoron_generator desc = "Phoron Reactor" @@ -667,7 +669,7 @@ desc = "A heavy duty bore. Bigger, better, stronger than the core sampler, but not quite as good as a large drill." id = "mech_ground_drill" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 2, TECH_PHORON = 1) - materials = list(DEFAULT_WALL_MATERIAL = 7000, "silver" = 3000, "phoron" = 2000) + materials = list(MAT_ALUMINIUM = 5000, "silver" = 3000, DEFAULT_WALL_MATERIAL = 2000) build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill/bore /datum/design/item/mecha/orescanner @@ -675,7 +677,7 @@ desc = "A hefty device used to scan for subterranean veins of ore." id = "mech_ore_scanner" req_tech = list(TECH_MATERIAL = 2, TECH_MAGNET = 2, TECH_POWER = 2) - materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 1000) + materials = list(MAT_ALUMINIUM = 3000, MAT_COPPER = 1000, "glass" = 1000) build_path = /obj/item/mecha_parts/mecha_equipment/tool/orescanner /datum/design/item/mecha/advorescanner @@ -683,7 +685,7 @@ desc = "A hefty device used to scan for the exact volumes of subterranean veins of ore." id = "mech_ore_scanner_adv" req_tech = list(TECH_MATERIAL = 5, TECH_MAGNET = 4, TECH_POWER = 4, TECH_BLUESPACE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 5000, "osmium" = 3000, "silver" = 1000) + materials = list(MAT_ALUMINIUM = 5000, "osmium" = 3000, "silver" = 1000) build_path = /obj/item/mecha_parts/mecha_equipment/tool/orescanner/advanced /datum/design/item/mecha/runningboard @@ -755,15 +757,23 @@ desc = "Exosuit-held nuclear reactor. Converts uranium and everyone's health to energy." id = "mech_generator_nuclear" req_tech = list(TECH_POWER= 3, TECH_ENGINEERING = 3, TECH_MATERIAL = 3) - materials = list(DEFAULT_WALL_MATERIAL = 7500, "silver" = 375, "glass" = 750) + materials = list(MAT_ALUMINIUM = 7500, "silver" = 375, MAT_LEAD = 1250) build_path = /obj/item/mecha_parts/mecha_equipment/generator/nuclear /datum/design/item/mecha/speedboost_ripley name = "Ripley Leg Actuator Overdrive" desc = "System enhancements and overdrives to make a mech's legs move faster." id = "mech_speedboost_ripley" +<<<<<<< HEAD req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4, TECH_ENGINEERING = 4) materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 1000, "gold" = 1000) +||||||| parent of 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 + req_tech = list( TECH_POWER = 5, TECH_MATERIAL = 4, TECH_ENGINEERING = 4) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 1000, "gold" = 1000) +======= + req_tech = list( TECH_POWER = 5, TECH_MATERIAL = 4, TECH_ENGINEERING = 4) + materials = list(DEFAULT_WALL_MATERIAL = 10000, MAT_ALUMINIUM = 1000, "gold" = 1000) +>>>>>>> 4e5a8041e8... Merge pull request #9620 from VOREStation/upstream-merge-7811 build_path = /obj/item/mecha_parts/mecha_equipment/speedboost /datum/design/item/synthetic_flash @@ -789,7 +799,7 @@ desc = "A space-bike's un-assembled frame." id = "vehicle_chassis_spacebike" req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 6, TECH_BLUESPACE = 3, TECH_PHORON = 3) - materials = list(DEFAULT_WALL_MATERIAL = 12000, "silver" = 3000, "phoron" = 3000, "osmium" = 1000) + materials = list(MAT_ALUMINIUM = 9000, "silver" = 3000, "phoron" = 3000, "osmium" = 1000) build_path = /obj/item/weapon/vehicle_assembly/spacebike /datum/design/item/mechfab/vehicle/quadbike_chassis @@ -931,7 +941,7 @@ desc = "A compact cleaning-foam grenade system for a hardsuit." id = "rig_grenade_cleanfoam" req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_BIO = 2, TECH_POWER = 2) - materials = list(MAT_PLASTEEL = 2000, MAT_GLASS = 1000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 750) + materials = list(MAT_ALUMINIUM = 2000, MAT_GLASS = 1000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 750) build_path = /obj/item/rig_module/cleaner_launcher /datum/design/item/mechfab/rigsuit/taser @@ -939,7 +949,7 @@ desc = "A compact taser system for a hardsuit." id = "rig_gun_taser" req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 3, TECH_MAGNET = 2, TECH_POWER = 3, TECH_COMBAT = 2) - materials = list(MAT_PLASTEEL = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500) + materials = list(MAT_ALUMINIUM = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500) build_path = /obj/item/rig_module/mounted/taser /datum/design/item/mechfab/rigsuit/egun @@ -963,7 +973,7 @@ desc = "A compact overclocking system for a hardsuit." id = "rig_component_sprinter" req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 5, TECH_BIO = 4, TECH_POWER = 4) - materials = list(MAT_PLASTEEL = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500, MAT_VERDANTIUM = 1000) + materials = list(MAT_ALUMINIUM = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500, MAT_VERDANTIUM = 1000) build_path = /obj/item/rig_module/sprinter /datum/design/item/mechfab/rigsuit/meson @@ -971,7 +981,7 @@ desc = "A compact meson visor for a hardsuit." id = "rig_component_meson" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 5, TECH_MAGNET = 3, TECH_POWER = 4) - materials = list(MAT_PLASTEEL = 2000, MAT_GRAPHITE = 1500, MAT_OSMIUM = 500) + materials = list(MAT_ALUMINIUM = 2000, MAT_GRAPHITE = 1500, MAT_OSMIUM = 500) build_path = /obj/item/rig_module/vision/meson /datum/design/item/mechfab/rigsuit/material @@ -979,7 +989,7 @@ desc = "A compact material visor for a hardsuit." id = "rig_component_material" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 5, TECH_MAGNET = 3, TECH_POWER = 4) - materials = list(MAT_PLASTEEL = 2000, MAT_GRAPHITE = 1500, MAT_OSMIUM = 500) + materials = list(MAT_ALUMINIUM = 2000, MAT_GRAPHITE = 1500, MAT_OSMIUM = 500) build_path = /obj/item/rig_module/vision/material /datum/design/item/mechfab/rigsuit/nvg @@ -987,7 +997,7 @@ desc = "A compact night-vision visor for a hardsuit." id = "rig_component_nvg" req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 6, TECH_MAGNET = 4, TECH_POWER = 5) - materials = list(MAT_PLASTEEL = 2000, MAT_GRAPHITE = 1500, MAT_OSMIUM = 500, MAT_URANIUM = 1000) + materials = list(MAT_ALUMINIUM = 2000, MAT_GRAPHITE = 1500, MAT_OSMIUM = 500, MAT_URANIUM = 1000) build_path = /obj/item/rig_module/vision/nvg /datum/design/item/mechfab/rigsuit/sechud @@ -995,7 +1005,7 @@ desc = "A compact security visor for a hardsuit." id = "rig_component_sechud" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3, TECH_MAGNET = 3, TECH_POWER = 2) - materials = list(MAT_PLASTEEL = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500, MAT_SILVER = 500) + materials = list(MAT_ALUMINIUM = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500, MAT_SILVER = 500) build_path = /obj/item/rig_module/vision/sechud /datum/design/item/mechfab/rigsuit/medhud @@ -1003,7 +1013,7 @@ desc = "A compact medical visor for a hardsuit." id = "rig_component_medhud" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3, TECH_MAGNET = 3, TECH_BIO = 2) - materials = list(MAT_PLASTEEL = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500, MAT_SILVER = 500) + materials = list(MAT_ALUMINIUM = 2000, MAT_GRAPHITE = 1500, MAT_PLASTIC = 500, MAT_SILVER = 500) build_path = /obj/item/rig_module/vision/medhud /datum/design/item/mechfab/rigsuit/voice @@ -1035,7 +1045,7 @@ desc = "A compact chemical injector network for a hardsuit." id = "rig_component_chemicals" req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 5, TECH_MAGNET = 5, TECH_BIO = 4) - materials = list(MAT_PLASTEEL = 3000, MAT_GRAPHITE = 2000, MAT_PLASTIC = 3500, MAT_SILVER = 1750, MAT_GOLD = 1250) + materials = list(MAT_ALUMINIUM = 3000, MAT_GRAPHITE = 2000, MAT_PLASTIC = 3500, MAT_SILVER = 1750, MAT_GOLD = 1250) build_path = /obj/item/rig_module/chem_dispenser/injector/advanced/empty /datum/design/item/mechfab/rigsuit/teleporter @@ -1052,7 +1062,7 @@ build_path = /obj/item/device/uav time = 20 req_tech = list(TECH_MATERIAL = 6, TECH_ENGINEERING = 5, TECH_PHORON = 3, TECH_MAGNET = 4, TECH_POWER = 6) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 6000, "silver" = 4000) + materials = list(MAT_ALUMINIUM = 5000, "glass" = 6000, MAT_COPPER = 4000) // Exosuit Internals @@ -1074,7 +1084,7 @@ category = list("Exosuit Internals") id = "exo_int_armor_lightweight" req_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 5000, MAT_PLASTIC = 3000) + materials = list(MAT_ALUMINIUM = 5000, MAT_PLASTIC = 3000) build_path = /obj/item/mecha_parts/component/armor/lightweight /datum/design/item/mechfab/exointernal/reinf_armor diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index d12441c8fe..031fe074b1 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -246,4 +246,4 @@ return materials[material] -= ejected * S.perunit if(recursive && materials[material] >= S.perunit) - eject_materials(material, -1) \ No newline at end of file + eject_materials(material, -1) diff --git a/icons/obj/mining.dmi b/icons/obj/mining.dmi index da6e7700396e526252c6de7377f7d196a6240ea0..9b2b72e2791f01d503056b0a81ee98ef55d0cd54 100644 GIT binary patch literal 79769 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 T8OiYo0-A!1s`OV$laT)dzPT@j literal 73496 zcmY&f7wy2%UDDmc(A`}M0$)N>LPC&k5Ew$bLFq<8K)NJ{25CgPMYS}<$PhdW&Ez31+;_dbUhomXo3IMg^G5C~sGUHLx{2&MbqHx>r)M1<{!CkTZ4 zHbCFVOWD@*t%rk~mxHSd2;`UhHKWI6nIA85@>~z=c$ShxjLPSyt-8+NsW$-&x`noL z)j6;*AxL|Wk|yr%l;;Y$?;&3?9fXI_XN;iEbcEG;jDd)CK}!d<#wV>XpOrN)d0 z`lh*FXmw>}$ry?$Ywyw0xe|S&nqDVDz6lD*DLBydD0s#;owPC&mF6&T(qm(?YKb}h zqU*omMnOy~LFeAgxXD*gi+oY9r^x|}SVc8E!K&Y6+TXo+__GXYHvX%Cm^Evbe&z{e zpLx@8E_ImFtPdjaxY^=VdvlSWl+H7vn zxEPjx-pJ`{MxlX#yEp`X#<^ZN?MAGu#Ic}Z34ctd#QW9hf2jIOvbl!|1B^kV#8N)n zm-RjndbITLTcT{Dyh3Pp{{#;24bpF_>@xpwe|>Z8y78(&Hi5p4;&8sE<-hCG;GwH! zHB}I3JwMZO-tHLo76kl!oCobbj&618sp){FDdEY`{=m-UrJkh%?U|q zYl>OOz~o+72XhQxms|A?0(ean7`EFOeB>0uWxhk{p0fNBf9Fs!?S%-Lqi(!K&p~6c zVU91fR&W%`ZDhAZis=T|L|ro-J+12~#Le~iSIztyRvdyqgU3xs?KZsq?So3%O{Jv%TCZASHKIsV-f)pU#URfAvfPq5vz()(#11fhQAR_<2! zDe?6ERi2!-ueEIEp%k0bpuOY|U|&xjYkvN3U$4e#GL&HT!m`NgyMjM+_!+a0Ez2Uh zPZaTY`cb02k74S;GyAC40&MbdFOI#C64-Kr4^OcCEw1IlI~$Y}FQlHdobD#3`k|gK zdo)>Q#qAA7!GBtnqux@zOShooJfu}gHQKkzuT9Udj`;X}lq4G3z58qp@J@lL7Hwa@ z?ku6_%CdMRLKOF$ACI&if^l#9@}k5(8W-giT_DF);s7BhPsnQ9nfLq7-aX`t-^D9q zEz<&j*|Zuf%ob>B8EFb@MP=n5cAyK#78xi{qc+)j`w6SH)E0r8v?q&QwA`O*K^t<& zRh7Ww=9_SCqP`5@IDr+F|KPXrG)FW922tRW-$ANIF#*P3dJ$i2Ry)3w=& zUKN;3rQ}cWssBvs^{1rA$i*NUFI+z_m`N^XXhOdCmS{odIu`h(zbCW0fwphX|0tf_ zUYT0PGAJ>CGjKMAXIw5Ec!Wfu{jf!FNnftw4x`+j+2dqVk)LmDelO`~twtTG9{;{| z{`X-1ybnpPfYd<$xSH5so4C8x?w>9d=LN>>93 zj>n2D6Z2~FwkG5#LrnVH|TYZQ|0JvuXO%Wb)oZ=M)`V78=l+q8p|z_AU|Mj zKX&XhEKjOh+{b5M9?GCj)uTRd|3v8GC77W{gear`)^1r+H_Bx~h0I_lIG1PF#l0$k>MvL_YD2Z{fi9 z#O=Ehmt$naAH3tp+AIc@7U#f_xe4S8uWamlf`~cS_6Z(i?lA5zMK6Mqn3dU_)krmY8I}1+(_%o z!n|dy*=3OT^5Bq0jRCx%8ETYcVS#s+;4R&CKBHktHwlrobtW)m#jZ}ai+6h`Zei%t z#iHA%EcP~scm8eQ5uHz#A%AZzo%J#?MqEXqWaruERi(Qy!O$2%cD<`=^7M9`Ct@F@ z?-Es;>6cpmX&xE|j!we~WbNip5bW{Z^v5F)sq6PG_d8SeV2a%{3%OT+f(>7U!5)%! zM@E9FTsPOa=S0jT_+qM@N%EpxV;KftA7sr^Djs}5;e!Ov9{ezr zRPuGi`<*H;)kJ*JfP(X33*6}XB(*FTKVDOoIoPS-_xIGix%gur}iJauWC z`y^;ZbHJpOov?VMG`+i^Ax4X`O$#-htLfD% zTklD~sss@=l|0i>6#7x$Am37dIzeWdN|S62thn}Xg@`6X1Gx(6$Xx%Z-K>(eG2D_< zrF&CInqt}JuvxM3EnDNqzF>R z`_oJfg6!qGFV)l8+<(JDA-PD66juF91>R4;3t#hyxo=mUVuCuZd$mFRo$6?c>laL4 z)-#oz=p>>pxlu#|-t1+Z8_3MtsZw6wFUAfKx=pcANqXEOW6D% z+bDayf`yJBF~{?6_7Ssp^>NNNq-Di7>|sl)#l+X_4O%b(XgZcexYg{~B-^Z5zL#cJmGuvEE)`I-=;Zj<|2@dSIJIDPhq5;g&trHxo* zp9&C5qQ~NTp#9d|g(pNZrkIHY$k>08Y7Lzawt=8RPLfCrmi)1#-k)e{Cfx+4DfnT% zty5DmQ$P2}I|um8KCU8NCZ;q=@;Lcsl-^JA&=k~5LJIHX_$V!jB6pRAdGAsmxl$y8 zvPQQ%$B$_;ocwbFoFZWz>DJT(6uOF+H^;ur&Fyx&;V|O`5 zJQrH2Y^LBN^d@n&iW?}nAD(>a!104$Q}qTczm)rm^gTKjk>X7dN*)s}n?APTT3tff z9ChDdy?R=W26AzCZywUT4^;kMv4LvyxnHQO1pJWQ%j5Be9Co54ChWfk6j+(V z)D*u&5pG_g%=WA|g9Ue9O|r}uBacPLU0+YF@S{GCDBmXL;XZ2`l&^XMWixer}l$<0i@5`Gs+g zsB@SVrQh|Uy@06bPUTa%{>ah~ca}fr;)!%phBvL%DWFawRsD|dUsyD@r4o zcqDuaNk7vd#P0L};vOKf5Q{NU$j* zZ`_wUtU}~{l~s&5i;;>73y3Ki!m6Q%HQ(o=Yqj*m#%T6N8+f=IJRR@uEvl=xaW{Ix z!Gu^OmvKTe_i!wGLYLY?r{3;v&_tfp>$V-t5%zBtI5WbFo($~|{;!|At?_re;9|}y z?M^4u5q}WSHBI{YQ{zj6#9jrOl8~hlIbMEWEC{FL<_Lz$!B}+WcbcbR7O;ImkMIv^ zz!Wp$evl{x*$7gxl3;_nV`Z6%P14a5w+as>m32Q>I40X-FMh|+KrKx3sHi{%MHbs> zv5UJ>GU|+@<-OD{%d~K9#idv+L@zW_7a(rOZlHkQ&NDnxn$&@`Fun4l2nZDZ__%FE zb0yCUtjtHuE~usfyg&1 zN2h~uLw@?_?N8x%p}WzFlh#7ODMn}lX?@L|Gy#{pD6&2`a9Z6^)N?;tJ-v_q$fGb5 zb3aj6f6mDNRE@PL~9PO5OT6`*Sp> zAX*%zE2^}(TP_lhKixJIj2Yfgn1#Xnv;xbSwJux7zg<|J^tAu)`FkH9@;ak5Nmt_$kr8tO5et zw`!T?`!ot1CCrU4w?BKd&ixF|ticn<Wk~~9yU6Fze*6COe z7rccS7kUb-cPJ)wq$vOcI$lY@yG)_sTgS*UcrQE%cv4OjTI<;Xr!PN_(G**@Jaw;!4WWYK_pu0&) zncC|f6*a_)GMN=S-Imzff&S|{D4nC~J~+fm0G2}BZTiwwky6&ustjcxjr4ne;363c z?j+sU8HCo5kC?Nc_~=Im$0-P1o2`5l%4nk)a>C7`$r6QjvgacTSW>vJ9(twbr*b-0eiHyct(td0>XAsoxI3RJT1jmE)j$i|MjQ8 z3q<+-Mpc*WFWi5q-SHMBF(mVsgxrYx?*aXnRorSd=%#JGXDEltkSW0NaBS4xUdLWO zaR2gkn~P$=#V$CGjYP97%TnyR)wbx%g(vT=;lO$}pW73~W2R@_FWAl6hbo%uN4sNG zDB`N3>5Gd$hd2T7ux5Jz4cMOuMHJv>g3eC9qj!UFv6AO|sM)L1tGPcKkJRH?qTHeQ zL=a{oe2diSUtz4=k0<)J3ZWdfPcip=YJu8|%CLMpfxB1-f8G!$ke;~~)u zma+wEMLK7JuX4MUsf5ZOaYM3lS}M%G_LHMosf9U+yrZUTxwe|8U4LzNy&mR~aH(Ll zrxNBs*!vsxP6E}P_c4q!42*qcYry+HT?N9RHIso}XaUIIH)DjL;+scfDpE9c3)LV& z7`O$B4RuEv6$UtDM`mShgmxh8l8Hhm%1u^AEVe7NPrS&LSTlVp%ebiAD#fJUY=>P# zU%x}ibvCNY!a5+=TYSn}xa2RNJm*=(Ys)N~ap*u?FHgmB#l-if9j2pareo_8)mqPT z;SumKr6yNBZCRlNy4fGNe1XnXB8z+!+J#`F3FyVp)6N?c7+i%fiZg6szH7gI4Rm(! zzD8i@W`{8R;Db76qZu#7t;CFQ&>dl{6{T?_s?}{s6AMW^LqMLs_IT7eQ7QR97A(1X zYULRE=oF$kqb!)xeRPSp7Jw+L#RH@IxuqLOQa3;{L8*u!qxKV$vGH+Y3s551viHR; z3_K^_J=H3XgGXCgrg5?WpWw+TLlk%SEtY4+K>UTPU}W=fXs+R?Q{FS7E9vV?x#gMEL* zE}l}uw&w8E8R6abzVY#5WgB0 z8>!ZM^~!qYX}wPl@$#79MEknV*COax#P4n(<6tiI&ruKloX&5wF%Plm&j?!P6f9w_ zx35m>AuKsO^18~=#p;=F(#^_vNx1JFg%s+J)PJ2?I$O2Q$Xd*5iexLa8@#Dj>!mx2 z3dly@)jl`jOtI|sP%OjyVJap~u5Ji6)}2~kPilHU7t#XC-zv;v@75hv>*nXV7^1`Nu~@7y>v*7y_3e7-3Z{~z@?Gv26o!Xp#6`UVlj z(foMe>{6B#Mqbi=FY55{aM18hQ7MC^7)GCWpJDAy%iZn9RiRhJUoJpwySxRQWXfjgd?^_CfX2u_}N8fe!ktLF>QAi`F+Vb zx&m@twBY)S+&l^u|_ zIe7wg3a)(qpWbfb1><0x81xqj_T=#l8`kk?GcF&;LvjYB=c}XEo(yOT355R4@Xo78 zM9bw^QF4;UMXQu#=I8W{tiTM{!|rNQ`oChFk$DKx1B}+d_jwy55rsk~^|y z(m%efQx4l_?X~M}lIOO~WY>)QRwJGWw%A-ZH1;n(sjpJhB4vlTNk^G6Eti~zz5vp@ z2GLnM2JS%W7oVrkr$xy1^$p{w7tzJTB!4i1CSJ>Sce@f0n{R^cka_E)YmWnpacDD2 zBI3#DwB&{FC4~(zDR#T>@bc(%UyS!1kmc2T)T7{cFsgLt4h z+p}0rlKXH*6Dnq=pNfkL>k9wJAUE$ru84R8QY^_aAq%SUwT!WXHYymCo*@IXW=yl`KVQEat5?aTFh4)h2`kq9EsDPMGd%XO8(iq%RrdUdy|8* zOfbpgRL)Q>{&33Ni|8g93p?H_uKPd24<)gNP=%;im%sF zGWT3=Bu3CNZg3X%94|~Z^@v~4}R=> zHa8g@tIUj&$TBfS!D}YZoFXqxALWq!gI@%FhQF|aOE3!$udh4yGdKSa8*K5=ngTi3 zlo?lLkwq6BwHsyTp5Vi_iOg(U<7C^c)h%&?iV6|~foL4z6h=o20|VVklpPW9(eL|T zdj8%VNxRC5kp|3&g@)0 z~Wv*e7M|(@v=vkpM%L% zh$;BqTn4(l5$g6SDZ4lb{1}tF+=7tSFR$RCy**CZg9|#BxBP&% zez-pFvpAIeul&>O-c6JYvbPv{1-q}I4VqMw^K(wSL{cGd=3(Nl`!x)A;$G%M=UYSI zX$CsFf!Jrx%qg6>)=Pbls3J=FSy@)#=h0Li5b_4Xg2NmpU+%pdxO9?}s41YI zajd9=$7(x?t{)Gl2{XEEjUjC>iNqV2guxoAMkYm!(W)gpMKuo8=k|D5`MU_V{wnWq zUJw`z#=o<=9UuCwbhG&{JI2a_R0LD(>@|{CioRjzWBTQXSDQu;vFI2)%eG@CVJaPI zs|IuNi-}<>5P?8_?w)TFP|B#9ttcT3i`i_&$8Wzfk>~n{I;5U z0}O>Oz-!b1RU*Zf#dryjQLb*gJ(|cKN`IpJMW=LuYP-G3@$ou*d7^s+0+E@Ob^hhF ztx5cYTX<7Fj4UEIJFR*TY)FV>B+~u%sxV|*1Gf?r9dAhMJ3SdcV-96v+A9jQ(5!C+ zDq2VYh`HT<{J>srb`FP(io5?oyH?AOERIfQB?eMGNlNl01+eut#*B0Cq$e?C@JDb# zu_S?*6ry_z&(K1TSygmxU?N)JNjT&{mg*D(udhFJPe|P7h!Qx|C&Yt0C-SF!<0Sox z<+T6bTxg#=>H8>F;4d+&*B?AkK*``qvbL3r+WZky#Mx?5L3kIrt-(F@c!+Udi5bCl z?{!R-m}8XRSnH$S3ycPQitp4Lb&esvUt#qHIlh;9hn%zWXb#ZCtp$wlDc2VHtOM{n zX?S1B;nPTPwbQCaexuvs1*akY8D(s0z|huteSp{t3tckNp*aE#%2*QmhWdg&+tCsu z8P1K=uO7zBAbHW8s-=+j>5Atl68ezWcP-+XrTfv+g-qlP6j*uD6ODfW zZ{p5B0H=Mpo4tUb-&#O4MuUq)GV+~;B;0BLYX+w!K^y4oT4l8b{k2%PL!=g)6vz)w zo1me7lW@7rLzLz;2)au1nCq*1JG9_B!x}F^olqN%)c>{NPmpa_*BbDrAA88t zhdK*`h&-sxM|_^aV3u)|guCQWl1xQGwjj#E1QH(a64o)T2-UitfFexo9_IFFAmphj6E|DV2YKNmV!WX?S+OE`QyuSv~flMb$M1~ zB>lu5`TG8|`S49=zOxu7;#pAl<{!>xmsK3|`SaVYq~)lE>hcff?(CoIt?MW+`~^kZ zV(#vo?Hwbvlr-=BOOO0N#iRI~ti<$bgW9*Yx`se`&@ECV)$p#seI+!pT$=Fj^Mh>)GU5d;(ZgB)uNPqZ<>_}g-KzR}>r?LJh5VenLx~j%CuofR zSGCf>J^bXmi0eKD4*DP{tP$pr9Um-ojJ&M0h$yO{L`=Qrmx#hy@{y{wX}`8uLZ(Md zCrM9{1=&loDi-+a_sG7rl^*V@A+k!4eVr7ng`La`YG`PH(5Vo~#T!8eedL3))^&b= zERL?0vgIPj4by=?#md&dt?`B)C!-k{yk8@Xll|OArb4j&{pcTPRG{R4JBaNDoII=S z(i$)3Ciz*u)sO#dxcBMNoaC!RAvD9)4eoC-G*SU*05&pqNE@UR5;XFBUZB>+D750*^yFda_**{|!@7K_@fmH%e6|D@%2a)oJWvkTJ2(_~0RD+-g9F|1U9UNK6%a1VxA zQQ~ide+yTAU*CIBsS6C+1zH-+;VS>~N4qbd=8Ts*>Y6%`VA6R^lQr4Thgp(-2l0M> zaW#Q)Son+=?P|jbiFmjXnhj&s@H?s-s!d}U($6PkMSS`1`C&r=0b{F5Ar$5-2U{($geAi>1$_}`~cDq@Q5*%*`w7g%j75S7T;>Z-wnoK=W)8O z0+f*RjMJWtRJL0=!^hyl-L`~a!p)6KQz+hOJy8si_n}%8lw%6M#kUTALsYw8(Y~zT zH`hIb&zv!OC&*Ft5i&X!4x?{&T_>0kE^?suGFO9;hjYdP?m;RmQ`*nkOxJYVy6D|S zC-M|^v~*jA)My(vEY#v@PLEbvU@)uVce4Ek5OI0hPgdSH9npZg03-ny;u*JLcYX9p zetu4QMeIA_*z)r7dh`yuc$@iZbI7;v6&1h)YDx6yprgM-#0eutq*u^j6)`P zNh~|Tcg88HsTF}M4jJXwB8{}Vl`Ns6q1giRY14-rm%tsNg7f1UHQ)9y#<%vtw1je+ z)u(HnG<8OJQobi2D=H`{Ddl-Hz(elptR%y`@L?Ol4S)JbtBt=u(n>Rt2QQ&Jp8EFH2- zKJ(btRtcjlJjT(G)%hH`Gq$6Jx{{N}Q{jJm#h5eB44CD@S{-M-xRl7vJfgP(d#$vL zSji>2qIPiu%%aeZmu~lq3CQJ6`J#}8R5l~nNfHRuvg$(vz>?e1g22&IQyi6NRw=fM zE)Xr2l#xNDl(sJ5B$;c<{NSrfA~d?}(jp^>AiK|umY4vhXF!)Bgq&$q5CA33nU9>Y zw-dfyU_ix~deG6)q09Rz)*1Dmo$>GN>@1i($3g|<@6R_@H0e~4p)6{NmH@p0&Zk$2 zPzEi8e`jSNPM$SvnlL!ap)!$PCN@p(35QI@>V0|kBsj8X$>Xx`X7m2A1`|k>9@G*{Ks0$y9)t0WwG_vJ@}o6}|bq6{YIp##f2j(y}rp4H95#)8Efj ztm336;o{IIX=Pny3k!yvF{|ma;(#I@OFD|UfkI9k!zz=A&Eve;ztV*^2 zFC6p!sR2{lnA;ZI=3+S;((br`e;1f#Zw$kGD0rDYwXsavD z4kv8my%6T7--~Up@^ePulbK!E@|oZm$rO!DEUMf_CxD$zWn^ z3=d7ga;p^B-yM~3#<=D-ob-sXzpS1}VIKikP>a72XB0=(0)QWXF-A56)f9Wc4>R=3QrA&5w3vb}Cnagsf zC?UUwRLx=|&SYOuEi*A?1ZuoBaV`Gn-cIPOm}0#AztiqNJ1FAYoHKPr2Q^n4rK79p zCXd@KiX?9F3kikW2>zV&SDMFG64r9+x~F$qZpI%3RE zNW9SWo-iD&_?2gu!yXFAOF_pT}ic1<%=cSK5Jql!TD(|u*0rXL02x>fOcym?asG~q6 zJ$v`Bp2Ta+^?!|=`DU}l$<37Bgf5u#;|C;m^Z@^TQO#{I2I!5S5c-VpIdGpD_F7#^ z*2Co<`}m&7Ja;Eh!a%Rmt)AgfBECK-RZa@YwG!4tgkl=0;*lG18_dK;6*!a__vt)+ zHPugjF!g%AWY^ne({@v`~F9EkVaNPF{ilKo{ni|0bFYTW<3x- z4k&ow0sul;Tl!pi@kXNH>)Ri1KKgNdqxM?w3R-CQb=4B#bndgRGx9CzcF#R*<)Q-@ zbN->2QQd#A$vXB4&+VBp7Yj;Elrv6Wc;G%{5JdpKes6Xz_thzo5gB8x3zHqaXdSZ$ zCtMI?>$UssO~_{FWuh46v%Qj}xw3+LCEUu;b7%)Rx0ncfICA~EOqI(E@e)X=Kmig2 z(w4omDLmcvr*GYNur!Z(()q0nDb=rX|MUcK;fe}@N-arPgi-uini)X}12j2EPv#y7 z7Zm^!m{#^4yv_M?9z+ZZ^&>v3vu0KRr4G}oGJ%*70+0ONlu3$A28^qu=bfX=ggP@I zjXydUV%(Uz=ySpOyZ$zU#=p-_)r6_bD<|;NWcBC_x)-Ot=pXIq|d93lgH~X=_mj17~9*7kDE^xfC z<98Te+E1laKketObCkclar+B?oxfub|NAuqqkUqB!9XtC&NDk45dYI3bIQ)^%J1>7AHZH!bE8jMRs7-d z<2E6&Z;5pO9+>E-(Lz&?9Too#jJ_roOFoo)Ds*MnO#3UTV3s`+#4LjVl~+>~PD~NV zWpoxyiHFHCq z+X&A~C7gsWw74=5Fkl4B+)0lhydJ}M{gq4p8+R>vYrV?Z?_7^>J)VZ$9s;8nU5S@uZ;bNdi4bB8gFNv?+bW%Q_G(x?0%^>9Fv-zKi(291L z3ptBBiJz}BAZFzV%`8CG6>5Ubp(a~WPWRH<Z$$(;~}0I0+ypzTJAquIF;la)FIV03!l!vQF2QrZrVJNL_Ft8v2o zX7aZ?6dbM0tX?(~y5b3{$7a$^48x@K!T5oZyIaz4y`bGsGb3E-Q$&_sS^|R+X7Xy# zimiH)0#+A&Y3Uc)^K$JV9H3YHZs_VchkvP}`;9t$;)(++_b`c6S5wi3oYshe`o3uY%J@;K%B?_ngko6}NTQZVYn7gq z5Y}dL+cR_$oG(?tCLqZ0d?k9d-S@+*YQxa%bp{C!v=7^9plJ7W3-)ggvlZoxg>ygJ zeU5ue4(vc~GQVpO9Y%0kqg0()%&J`I@7-#j)!whCV}(-$_oe&#U>^nm2l&Y2@Er_% zjut|L9&;(MzF4n6?wYPQUQzGVD;L zmY->C8|%d{=A1Lng^Vi7S|H;q>A}UauU6INa(F(WFIAyCI=`Sj!tcn~;TIJhl)3t? zmuySb?tAK@j)RwdbNJR*Zc?VgWw6@3J(F*0voC6y3vmntK9HCI{@e@1+RdBn@M;Ku=&xhS3@%G_>rQBK3xd5L^pJgpZf`+vj`=h!H~ToL1wsJfa|%WIO&Jw-zXmK* z!@GDIKZI4oU~G;b4@>b*WHK-$OEYp?30~#s$j^{IgFNOdvVZAZzC(jyd$Li(Zz-vZ}r zPnhp$3YmEUCfUvUQhnHUadIxLjYmh_y%)Yt5g32l_Wn8x;g(Z*n7?Pqsfr zK@|xA>C#;<%yDVMPFFby+?!&047j*!R)H2h>Bu+9k;tU!lc57VMq+Mw({HPe0`SA$ z{4X-`v}Tegch6~H=QLw#Q?;NIe1Z`VxcipywEyO3Sne$Gn-mow`%CJ0Ztq9NMB*PKqxlzyyfPILH)PUt*r&P$qm_!Vj?#7ACx}@9A zUcRoxq<(1pFTk6351=1BxWV$i_WjeB`ld4yDkam|aSA`RQ~HI>8k8%zu`#AD+kT;l z$FIs5?nJv%V!T76t+}nT!D|)Mo3&<%oeGR}@&u?o=vjr7d5hD_ttEUSc7$TlyPJeQ zyspG$bs4||!!a;86fCUW2hSdBhsUEuPdosF?4b>97J0t1T2N<|5YiDA3`kBD_- z5Fc5#Hh{b4Y>N^s>it{9k4Iq#RIyITCj?M11QcavjgH0D2^0|FRs!@tsov$=3hn7< zHuyv`zqb`{RaLC>w|b27MJ=UTAaQvdXrF?4J%6e(fb!Su-%L@OP{ocBEj#saoRTeMT&{`FHIOgvf(x= zx<)$~6%SuiPH-bo@9*z{a*>2x567q=AQz3BxB2(M%Hx7kQgLcWf$j_q%Y#|4#NExG zkDOt*Co2H!9ky%OJ3M?l{RePL)4YIs^fJ2K^}<__WZ!M>hJRP}UoG8{cGd4P^N{B^ zdeS9Ms5q>Y-cTr1se(sLAA@tD)w8TKhv&~f`v&BZd5Sl=^>`^#ji*f z0e;H@?yTX7G0V%P8tdJOJnvm-*}mSW=Tfz{%oW+7MHgl&L`lyeUNTJAb+zp?dU`3r zy|9q9ys&;n#h;%X1t0S#g&fi%ZGoB-;EDm=ZE}TmP7^I36*s(*(7npLVyHpJDM(_0T3VtVPZCead+C7W(BEN1_nmy17n|dcXpE1 zSsAfVfum1RX9bLUKn($gh!Gd9E?E&L4#1Tlqd0lN5b{1icH0;a0*-vqVSocu)1=k= z0gkE&#$EF4QYMm^T0DY&b!D6IWI>riczjYXKOXt>b==QC#iEMY-%kR$y8(|*NJt3K z@9!LBxT%Vc_)+01}b89ayufq_9v zP8Ny{)xOv|+FWu%mgf@+V_YLAYC8IvbOZe-TPpYVn$8{Iuuan=LPJqRPeJmv4U=xt zNqRN3Xo>6NOVh$yHVwx8Tke#Rp=P|V(-WhsW~B*d2{hEviQCR*yp+9yN^(*GM+zh_ zkjMV~qfM5&7wr&p{gkVR;G1DV9Zvb!fr?)OC~WfrZIS<}szrPZluarsV#<|+(#ICd z8yJ*U>z9>jTw@a98dRi?Z+if1*CC4#xa#VXZ9bO+EcaKP9z?X-)`qw~%fDRd0Xt5% z;O13yI}{n5-Y=xiub&Ne3=HhZAe!d@l8WKnPeQpzw?1r#eV6H%_)D6-3qB>J*bY)z zZa;{nAC?dRPYxyhB@0h`DBOh`?DE4Co~#F~HPjCyfE9mqprq`)&zGMJI(@VVu}cFk zR4Lbj9%^o0-oVt94&xtCCeASKXMtx1v)`zA@>r>!nU%Oqp=+o5k&ky?JS{P$!oM3f zN7e4>;ZF8lw{>_Q8t%0v%6z!qs2idtblnk)u717zF-A4-!C|2hc+5Y0xs@bG09q)^ z^*Ao^DHNnZH*lDVzM1&I{Sea@uUe_SsD}O9gJ&2+pCe^;(bHx6DR0sXjMx+}+8V=< zXWNTn2o@(o09UEl2=XV(KHuuH#)wLdJ*_+kpI!5Q;(ADOqjjF4`?CF%q})T?=%FvA zYRL7WhK5~XJ8zLw7O}6*k}--tf#JTDAjX`fS+5h}b!3|UjFSd^$X&Tuwe}RoFM+)$ z`L|2fspAjsk7_@h(KObY68Hn4_Rtl&0dD_d{!xBWe@Ab3h_KeiYM1x;(@A?&uJsN4 z1lM%mzvdyYO#9S4N{=!z$L~>D!*!kWg>1~)nPU$BrdXW^&y>voVBQY6xYO=7NVCUn z2HJND>@@Q8pqH$pfdD)LWuWCi-K91;b+VyPgV2RbT~*lU!zB1aTSiw9asvbRHAowF zZ{YDnnJg<@b=0c5T#!$S@l~5`-fo{}5hC#c?;b&m$wY5IR&)8}v11{`u(8C1JxsJt zwgftie1;Vk;w1^zB{NF*%nkthjQ_&XHC z{(4C4l$9Q0kVQ}y6zOz5{T@|Ys=9P|SohmDKMGF1_BF8-{q+PC0jGK<=0P6$yrZab z4w|c7-$G65-lZ@Ss$^610?lP*SLYQd*1whJMGQoa8Uw$McU4r#6We0v0%2040V~zR zL3{(+1_*ipkK=1W3q*XDMR<(D+vW@A`uG22ZhQX;j~rI}=?(vU?`yzK0wx5$G9aJp zfO21~tVfUv1C>oBhM!p*q&NR-5Ksif?U(M2)T6V`W^b@-_cH$26b@g0eeDUb#j&L! z3EjPhy#M^0alFm}Q-}}F_a%;}X^&Kek%Woq=vxofc?l}8$Fn+k11?3{6pbTSYV$ER zB2rROX0O!hzST>6yprSFz26cWbQYT~JBB$giykdDM0Elo%^>au$`NxV&}{poj~j%|Vk%&A7=1VstH()!XC5=Gr@Zd!rP@`Bop$70)mEAT7wO*Tv8 z1^WVZ|MeUJ$1cvj!emqXXCMg5(u?Iij{)+R+RSo)2O+dM)^UcoehcRfDeu7Gv~l)m zHZ8f_Iu}oqFT3biz4pHtw{@0ZMhijRi8@qSpCRN=`^ismaKke3<-c^!*dKo9)`hzP zjBW%V^ZCW=hci2 zir`moqdLn;Zq4~$C%`GeeHdeHLnGtA*&CSNMaoXX0pX9Yxn2(;S8AfVmw(QpMsy#% zJU;WHczViYBBC;CqY&Ipwb7PF%IGw8DyG%2i7h`n1V4Xx-kT4Vx!?RXFI>g+_D4q_ zaTk@ih=zhZ!Yn7kG!jd$aM1P5*(Dh8#5pu)`ln0Oz*$8ufD;{Ce2X(=a4Pf91Q5*` z@SK#PhEWg{`562$gAL-jnZoHZAp5CIC9g zd)c|g%ERN=OhNNStMhWR0-1{Rc|WOE0+N4MZYulQ^^=d-)M-)YnN5oHq*x<3m9^Yf z3Ix-Y&;6I*HGINq_kF=6^PPgOc<-_mq`De(chrg;Oq8$#^Dy+s8ISJPl?abNmN77b ze6Xncf&cu)W0!mw$J|pbFu6hdDhF8X0B0GOx?km#u$?e7(2I3fY6(*6yca)3N4(&b)K}a)yz>LTw6Fn76Ztq=Myc>~-!*z56mY%jzjJRasG zIy&ggvL!e6Z<%>vWyE7Y(>NAgRhS0K!8S#OJ;Ep&^_gwq_m2|coE#+B9T~in1V`xE zjhC&v`ETc=g;g&Mvr2!~^N!ZXzx$-DQP#Tl&SOE9m>psGlDVq*xa`fuLqZ@ps5H%) z=##=-&&MmCd0)MqgDV%wr}{;RUML0?RQSC{1J?Ven<*s@ok38g(llsm9f{iQ{?Bgb ze$)YR$-kn|5~sBWp;IEKGZ=>jT{y$u3L*4{AGDwrQ05iIk}m?KlML6Zo}aMGlr$1bZ-FBQ&>Ex9ksh0R|5VSsw` ziG}^UtAR7tqx2~)bi&I>H`^jbTQvVb!4fp> zpQgHADES~%{)w%Biyt+6rl2moj(QQ2{{exrfdgtbiQ4sFw{i!rF8R2^v&>-W#G={C zMNi?56wX+4ZP=QGE{kRnG5aqpQm0Q=`oT2~6XSwCjFVFPGwY;tE&RO*we?HRD(pkk z|3lPUKvflO-@}*gPU!~eM(OT0=nfGP>5}g5?oMfu?glB5lJ1fQY3{dq@BRMY7!HQx zjtlpkv)5jGt~uvg*CO7qD1GKo#OYxw^xtJVFRt^~|MLRm2xcl2v8qgKTW4Ah_-J4F z)cTdTt4tfsf0tcRoB3mVa)Nkwb=(*(I^k$>vMVbmcgU`Lq$;eK#6^=o>XxP8ZX*OkNP>4IfomAqxDeK`Yl}?!j-WUYJP zP6j{~1dyFfBHn_6G(F4MxS>nnc-3QOSloUi|YH5&hSuv=rAw~L=) zq0R#B4a(Hbm&?om%SJ+Ym=H{I$-5qeXY}mbmryWF2h1NprdG0g!S5xgVQtcLNBFKp zCn;V&>Jvn~i11U-T{0sE)}0;up7Q}xt|!c=#HxgklddHkTdFI2_a|EG5@{Fw2i;6#sK;!Ww@3pwe%nlr)z zT7x{DXBJMd2$V?h`3U)+%svP*n_RTPD@@?J1#K&7!wO7NQmhZFjOr4&rC1(!S<-Jir|oK1 zj|-$Nv%zSS>*Hls6CRbGrMWpIg?OqRK$OtnD66PY1DyGH{8C+yf-KNFLt^@G?l~9}<;Jwg4JBRm!M@ z2L9#MRc+fB2vwiyH+EnsedP*xzLp0@(d>E1;nW1p!j+vG;Ik}Iw!BG73u>0mC0K1vE+WiQ4Mw7z^iXyh2fs(?2?Gp#OSJ2yzgp z8qs^1Dv`=jPlds5pv(9oR4Qa44naXaGBQeHfEh&MbQSB;@7ljqO%u+;KlJ z2kP9aPAAsMuY*39^i&|&H53U|hA(gO4 z@Lr5#*{I+7h@nqJ*yLo=wc6(C?PHWT@w<-sJhb-!lsD_gSxBoDX}-7hAgOErijIpK zRxFv97MLZ=FOgp$M5_ot68f!N`a$+3E%(?i0iB>b@#W!*&fhJDha%nwhwrc&9r+qR ziC?@gPnu1=%o=ySfBm%(k+qUDyUfN&Kr6=O3P$`pXb|ci+2*`ELxOSRscQdvov+Tc zc5}7~PV|~xsHEKXUByQdrR5~WqHk<^Kg986$b?*2)$gYR|1hd%8Xt99`vM$Vf3^z`UVw;(nW#$BhGL*UG$DL9BdoWTS+74&J zA2Cn?p*L!c3m=}}Br50ix;3t2QN&=*D+spm!t`Khy-u2Bw=}y}Hc@3b zjeQr}7zYQ-fQRvm@Xz=W%;q|hItL_Jo*U;A0@C+$vr91FUUtgX&FZy(U+zRc3@-W6ci*Wg%z(vVS-n!thL{i^*nf!gQ^To*0b$a5m)BZ=6J;f&jR(mJ9n(;&z9|w%838n0~+utk7B$bcp+TuubbWVA|zno@91O(g8 zc-DU;o5XiOn@qKQUGT~LAqeDKJn33p$(>hKdB%Id^U-hToS)6l0;Hg8f9us}Dapv- zF{BT9uz#rhoOF~pS8vNzMkBS%5j(al0 zkP2n#1U%^CH(r`l-2ZmInuOjwqg)fe&{`(4*!_@sby{v#acK8gWJdfr1cxD__t9cu z=mvBcb1(pdE^|Xe@kiEDcWlrcTmGc=uHfKtS=tC+rquctv23c%zksp>tAO&sVFu{w zZ{L$<@9L0z4F}o-5(8#z*c%;tQ*P3~BFPr-ROmWO@t4D1a*Rkn*p{f_nEO>)Fm3GW zh?UYmzI*z-?QYICJW;7kY?X504#a%*cYJm>3qZ-|vn74u^Pi<8S)2)T6JCkM@c)?p z&U?HVrL;U)SLd{+#39H1=hFUHTzK2o_r07{$lY~xAu6k3BlVosbx9vAkIb(W9;l2@0Fx}{9BJ$7`v z+)alLw~V`wx!}DZ73-MEyLVHKHZRiP%aB+*cd`AcfNF7mD@>;Vzh;y#=y6$kQm0Dx z+M)0uy^7QiYrVJF2&GzP<%qQ^DZ)XdcxMN7O0k!iF-o-{dtFUvpI`6^y|+}b_2d7p z=KK~I+#C=Shs`JF=7??#YjF% zx}#jWcaByC>b}JvLoqQC%Y98U@&zUGbK!*oDZv@u12hfY+z*hog}LLwn+Vq=gE#oE zYXo_0?o@B=N5F)Jxefhc_)PT1I%N@`7R$Z&zb-auez87qcD|pc^x3zKgw}8|UMeE~ z{(qsQNDyGRLx2IeQ-fty=KI2oz1HOd>QR5w2cynNfJhV<_*AB`!xEM1E%0AQ*E@fw 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