diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index eaafdcba81..3d2d9f4791 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -5,8 +5,8 @@ /obj/item/weapon/cell name = "power cell" desc = "A rechargable electrochemical power cell." - icon = 'icons/obj/power_cells.dmi' - icon_state = "standard" + icon = 'modular_chomp/icons/obj/power_cells.dmi' //CHOMP Edit using modular folders now + icon_state = "b_st" //CHOMP Edit item_state = "cell" origin_tech = list(TECH_POWER = 1) force = 5.0 @@ -258,4 +258,4 @@ if (1000 to 50000-1) return min(rand(10,20),rand(10,20)) else - return 0 \ No newline at end of file + return 0 diff --git a/code/modules/power/cells/device_cells.dm b/code/modules/power/cells/device_cells.dm index 614834a503..c4ae8b5637 100644 --- a/code/modules/power/cells/device_cells.dm +++ b/code/modules/power/cells/device_cells.dm @@ -1,3 +1,4 @@ +//CHOMP Disabled in DME in favor of modular_chomp folder /* * Device */ diff --git a/code/modules/power/cells/device_cells_vr.dm b/code/modules/power/cells/device_cells_vr.dm index 54fd8965aa..fd2e46970c 100644 --- a/code/modules/power/cells/device_cells_vr.dm +++ b/code/modules/power/cells/device_cells_vr.dm @@ -1,4 +1,4 @@ - +//CHOMP Disabled in DME in favor of modular_chomp folder //The device cell /obj/item/weapon/cell/device/weapon/recharge/alien name = "void cell (device)" diff --git a/code/modules/power/cells/esoteric_cells.dm b/code/modules/power/cells/esoteric_cells.dm index a94a7223e0..95a1a22048 100644 --- a/code/modules/power/cells/esoteric_cells.dm +++ b/code/modules/power/cells/esoteric_cells.dm @@ -1,4 +1,4 @@ - +//CHOMP Disabled in DME in favor of modular_chomp folder /obj/item/weapon/cell/spike name = "modified power cell" desc = "A modified power cell sitting in a highly conductive chassis." diff --git a/code/modules/power/cells/power_cells.dm b/code/modules/power/cells/power_cells.dm index bae1028a16..2c1091a90a 100644 --- a/code/modules/power/cells/power_cells.dm +++ b/code/modules/power/cells/power_cells.dm @@ -1,3 +1,4 @@ +//CHOMP Disabled in DME in favor of modular_chomp folder /* * Crap */ diff --git a/code/modules/research/designs/power_cells.dm b/code/modules/research/designs/power_cells.dm index 0454817d2c..4a58a06ebc 100644 --- a/code/modules/research/designs/power_cells.dm +++ b/code/modules/research/designs/power_cells.dm @@ -1,3 +1,4 @@ +//CHOMP Disabled in DME in favor of modular_chomp folder /datum/design/item/powercell build_type = PROTOLATHE | MECHFAB diff --git a/modular_chomp/code/modules/power/cells/device_cells.dm b/modular_chomp/code/modules/power/cells/device_cells.dm new file mode 100644 index 0000000000..93bc939176 --- /dev/null +++ b/modular_chomp/code/modules/power/cells/device_cells.dm @@ -0,0 +1,234 @@ +/* + * Device + */ +/obj/item/weapon/cell/device + name = "device power cell" + desc = "A small power cell designed to power handheld devices." + icon = 'modular_chomp/icons/obj/power_cells.dmi' + icon_state = "m_st" + item_state = "egg6" + w_class = ITEMSIZE_SMALL + force = 0 + throw_speed = 5 + throw_range = 7 + maxcharge = 480 + charge_amount = 5 + matter = list(MAT_STEEL = 350, MAT_GLASS = 50) + preserve_item = 1 + +/obj/item/weapon/cell/device/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/* + * EMP Proof Device + */ +/obj/item/weapon/cell/device/empproof + name = "shielded device power cell" + desc = "A small power cell designed to power handheld devices. Shielded from EMPs." + icon_state = "s_st" + matter = list(MAT_STEEL = 400, MAT_GLASS = 60) + emp_proof = TRUE + origin_tech = list(TECH_POWER = 3) + +/obj/item/weapon/cell/device/empproof/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/* + * Weapon + */ +/obj/item/weapon/cell/device/weapon + name = "advanced device power cell" //This was a yawn change. I quite like this, makes more sense. + desc = "A small upgraded power cell designed to power handheld devices." + icon_state = "m_sup" + maxcharge = 2400 + charge_amount = 20 + origin_tech = list(TECH_POWER = 2) + +/obj/item/weapon/cell/device/weapon/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/obj/item/weapon/cell/device/super + name = "super device power cell" + desc = "A small upgraded power cell designed to power handheld devices." + icon_state = "m_hy" //CHOMP Add + maxcharge = 3600 + charge_amount = 20 + origin_tech = list(TECH_POWER = 3) + +/obj/item/weapon/cell/device/super/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/* + * Hyper + */ +/obj/item/weapon/cell/device/hyper + name = "hyper device power cell" + desc = "A small upgraded power cell designed to hold much more power for handheld devices." + icon_state = "meb_m_st" //CHOMP Add + maxcharge = 4800 + charge_amount = 20 + origin_tech = list(TECH_POWER = 4) + +/obj/item/weapon/cell/device/hyper/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/* + * Giga + */ +/obj/item/weapon/cell/device/giga + name = "giga device power cell" + desc = "A small power cell that holds a blistering amount of energy, constructed by clever scientists using secrets gleaned from alien technology." + icon_state = "meb_m_hi" + maxcharge = 6000 + charge_amount = 20 + origin_tech = list(TECH_POWER = 5, TECH_PRECURSOR = 1) + +/obj/item/weapon/cell/device/giga/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/* + * EMP Proof Weapon + */ +/obj/item/weapon/cell/device/weapon/empproof + name = "shielded weapon power cell" + desc = "A small power cell designed to power handheld weaponry. Shielded from EMPs." + icon_state = "s_hi" + maxcharge = 2400 + charge_amount = 20 + matter = list(MAT_STEEL = 400, MAT_GLASS = 60) + emp_proof = TRUE + origin_tech = list(TECH_POWER = 4) + +/obj/item/weapon/cell/device/weapon/empproof/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/* + * Self-charging Weapon + */ +/obj/item/weapon/cell/device/weapon/recharge + name = "self-charging weapon power cell" + desc = "A small power cell designed to power handheld weaponry. This one recharges itself." + icon_state = "meb_m_nu" + matter = list(MAT_STEEL = 400, MAT_GLASS = 80) + self_recharge = TRUE + charge_amount = 120 + charge_delay = 75 + origin_tech = list(TECH_POWER = 5, TECH_PRECURSOR = 1) + +/* + * Captain's Self-charging Weapon + */ +/obj/item/weapon/cell/device/weapon/recharge/captain + icon_state = "infinite_m" + matter = list(MAT_STEEL = 400, MAT_GLASS = 100) + charge_amount = 160 //Recharges a lot more quickly... + charge_delay = 100 //... but it takes a while to get started + +/* + * Alien Void Cell + */ +/datum/category_item/catalogue/anomalous/precursor_a/alien_void_cell + name = "Precursor Alpha Object - Void Cell" + desc = "This is a very enigmatic and small machine. It is able to output a direct electrical current \ + from itself to another device or machine that it is connected to. Its shape has a similar form as \ + a battery cell, which might imply that the species who created these had a desire for some form of \ + a modular power supply.\ +

\ + These appear to be limited in throughput, only able to put out so much energy at a time. It is unknown \ + if this was intentional, or was a design constraint that the creators of this object had to work around. \ + Regardless, it will likely function inside of various devices which run off of conventional power cells.\ +

\ + Scanning similar objects may yield more information." + value = CATALOGUER_REWARD_EASY + +/obj/item/weapon/cell/device/weapon/recharge/alien + name = "void cell" + desc = "An alien technology that produces energy seemingly out of nowhere. Its small, cylinderal shape means it might be able to be used with human technology, perhaps?" + catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_void_cell) + icon = 'icons/obj/abductor.dmi' + icon_state = "cell" + charge_amount = 120 // 5%. + charge_delay = 50 // Every five seconds, bit faster than the default. + origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6) + +/obj/item/weapon/cell/device/weapon/recharge/alien/update_icon() + return // No overlays please. + +//CHOMP Add Putting virgo code into our code to make sure this does not change. +//The device cell +/obj/item/weapon/cell/device/weapon/recharge/alien + name = "void cell (device)" + var/swaps_to = /obj/item/weapon/cell/void + standard_overlays = FALSE + +/obj/item/weapon/cell/device/weapon/recharge/alien/attack_self(var/mob/user) + user.remove_from_mob(src) + to_chat(user, "You swap [src] to 'machinery cell' mode.") + var/obj/item/weapon/cell/newcell = new swaps_to(null) + user.put_in_active_hand(newcell) + var/percentage = charge/maxcharge + newcell.charge = newcell.maxcharge * percentage + qdel(src) + +//The machine cell +/obj/item/weapon/cell/void + name = "void cell (machinery)" + desc = "An alien technology that produces energy seemingly out of nowhere. Its small, cylinderal shape means it might be able to be used with human technology, perhaps?" + origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6) + icon = 'icons/obj/abductor.dmi' + icon_state = "cell" + maxcharge = 4800 //10x the device version + charge_amount = 1200 //10x the device version + self_recharge = TRUE + charge_delay = 50 + matter = null + standard_overlays = FALSE + var/swaps_to = /obj/item/weapon/cell/device/weapon/recharge/alien + +/obj/item/weapon/cell/void/attack_self(var/mob/user) + user.remove_from_mob(src) + to_chat(user, "You swap [src] to 'device cell' mode.") + var/obj/item/weapon/cell/newcell = new swaps_to(null) + user.put_in_active_hand(newcell) + var/percentage = charge/maxcharge + newcell.charge = newcell.maxcharge * percentage + qdel(src) + +// Bloo friendlier hybrid tech +/obj/item/weapon/cell/device/weapon/recharge/alien/hybrid + icon = 'icons/obj/power_vr.dmi' + icon_state = "cellb" + swaps_to = /obj/item/weapon/cell/void/hybrid + +/obj/item/weapon/cell/void/hybrid + icon = 'icons/obj/power_vr.dmi' + icon_state = "cellb" + swaps_to = /obj/item/weapon/cell/device/weapon/recharge/alien/hybrid + + +//YAWN Addtion +/obj/item/weapon/cell/device/weapon/recharge/alien/omni + name = "omni weapon power cell" + desc = "A mix between alien technology and phoron tech. Seems to fit in almost any cell slot..." + charge_amount = 90 // 5%. + maxcharge = 1800 + charge_delay = 50 SECONDS + origin_tech = list(TECH_POWER = 6, TECH_ENGINEERING = 4, TECH_PHORON = 3) + +/obj/item/weapon/cell/device/weapon/recharge/alien/omni/empty/Initialize() + . = ..() + charge = 0 diff --git a/modular_chomp/code/modules/power/cells/esoteric_cells.dm b/modular_chomp/code/modules/power/cells/esoteric_cells.dm new file mode 100644 index 0000000000..53a7e738e0 --- /dev/null +++ b/modular_chomp/code/modules/power/cells/esoteric_cells.dm @@ -0,0 +1,74 @@ +//I don't know what this is, but whatever it is, I am taking it from virgo code so they stop messing with cells. +/obj/item/weapon/cell/spike + name = "modified power cell" + desc = "A modified power cell sitting in a highly conductive chassis." + origin_tech = list(TECH_POWER = 2) + icon_state = "modded" + maxcharge = 10000 + matter = list(MAT_STEEL = 1000, MAT_GLASS = 80, MAT_SILVER = 100) + self_recharge = TRUE + charge_amount = 150 + +/obj/item/weapon/cell/spike/process() + ..() + + var/turf/Center = get_turf(src) + + var/shock_count = 0 + for(var/turf/T in range(Center, 1)) + + if(prob(round(charge / 250)) && charge >= (maxcharge / 4)) + + if(locate(/obj/effect/temporary_effect/pulse/staticshock) in T) + continue + + var/conductive = FALSE + + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/WT = T + + if(WT.material.conductive) + conductive = TRUE + else if(WT.girder_material.conductive) + conductive = TRUE + else if(WT.reinf_material && WT.reinf_material.conductive) + conductive = TRUE + + if(istype(T, /turf/simulated/floor)) + var/turf/simulated/floor/F = T + if(istype(F.flooring, /decl/flooring/reinforced)) + conductive = TRUE + + if(conductive) + shock_count += 1 + new /obj/effect/temporary_effect/pulse/staticshock(T) + + if(shock_count) + while(shock_count) + use(200) + shock_count-- + +/obj/effect/temporary_effect/pulse/staticshock + name = "electric field" + desc = "Caution: Do not touch." + pulses_remaining = 10 + pulse_delay = 2 SECONDS + icon_state = "blue_static" + +/obj/effect/temporary_effect/pulse/staticshock/on_pulse() + ..() + + for(var/mob/living/L in view(1, src)) + if(!issilicon(L) && prob(L.mob_size)) + var/obj/item/projectile/beam/shock/weak/P = new (get_turf(src)) + P.launch_projectile_from_turf(L, BP_TORSO) + + var/obj/item/weapon/plastique/C4 = locate() in get_turf(src) + + if(C4) + C4.visible_message("The current fries \the [C4]!") + + if(prob(10)) + C4.explode(get_turf(src)) + else + qdel(C4) diff --git a/modular_chomp/code/modules/power/cells/power_cells.dm b/modular_chomp/code/modules/power/cells/power_cells.dm new file mode 100644 index 0000000000..d07ec94263 --- /dev/null +++ b/modular_chomp/code/modules/power/cells/power_cells.dm @@ -0,0 +1,226 @@ +/* + * Crap + */ +/obj/item/weapon/cell/crap + name = "\improper rechargable AA battery" + desc = "You can't top the plasma top." //TOTALLY TRADEMARK INFRINGEMENT + origin_tech = list(TECH_POWER = 0) + icon_state = "crap" + maxcharge = 500 + matter = list(MAT_STEEL = 700, MAT_GLASS = 40) + +/obj/item/weapon/cell/crap/empty/New() + ..() + charge = 0 + +/* + * Security Borg + */ +/obj/item/weapon/cell/secborg + name = "security borg rechargable D battery" + origin_tech = list(TECH_POWER = 0) + icon_state = "secborg" + maxcharge = 600 //600 max charge / 100 charge per shot = six shots + matter = list(MAT_STEEL = 700, MAT_GLASS = 40) + +/obj/item/weapon/cell/secborg/empty/New() + ..() + charge = 0 + update_icon() + +/* + * APC + */ +/obj/item/weapon/cell/apc + name = "heavy-duty power cell" + origin_tech = list(TECH_POWER = 1) + icon_state = "apc" + maxcharge = 5000 + matter = list(MAT_STEEL = 700, MAT_GLASS = 50) + +/* + * High + */ +/obj/item/weapon/cell/high + name = "high-capacity power cell" + origin_tech = list(TECH_POWER = 2) + icon_state = "b_hi" + maxcharge = 10000 + matter = list(MAT_STEEL = 700, MAT_GLASS = 60) + +/obj/item/weapon/cell/high/empty/New() + ..() + charge = 0 + update_icon() + +/* + * Super + */ +/obj/item/weapon/cell/super + name = "super-capacity power cell" + origin_tech = list(TECH_POWER = 5) + icon_state = "b_sup" + maxcharge = 20000 + matter = list(MAT_STEEL = 700, MAT_GLASS = 70) + +/obj/item/weapon/cell/super/empty/New() + ..() + charge = 0 + update_icon() + +/* + * Hyper + */ +/obj/item/weapon/cell/hyper + name = "hyper-capacity power cell" + origin_tech = list(TECH_POWER = 6) + icon_state = "b_hy" + maxcharge = 30000 + matter = list(MAT_STEEL = 700, MAT_GLASS = 80) + +/obj/item/weapon/cell/hyper/empty/New() + ..() + charge = 0 + update_icon() + +/* + * Giga + */ +/obj/item/weapon/cell/giga + name = "giga-capacity power cell made with a dash of precursor technology" + origin_tech = list(TECH_POWER = 6, TECH_PRECURSOR = 1) + icon_state = "meb_b_hi" + maxcharge = 40000 + matter = list(MAT_STEEL = 1000, MAT_GLASS = 100) + +/obj/item/weapon/cell/giga/empty/New() + ..() + charge = 0 + update_icon() +/* + * Mecha + */ +/obj/item/weapon/cell/mech + name = "mecha power cell" + icon_state = "exs_s" + charge = 15000 + maxcharge = 15000 + matter = list(MAT_STEEL = 800, MAT_GLASS = 60) + +/obj/item/weapon/cell/mech/high + name = "high-capacity mecha power cell" + origin_tech = list(TECH_POWER = 3) + icon_state = "exs_m" + charge = 20000 + maxcharge = 20000 + matter = list(MAT_STEEL = 800, MAT_GLASS = 80) + +/obj/item/weapon/cell/mech/super + name = "super-capacity mecha power cell" + origin_tech = list(TECH_POWER = 6) + icon_state = "exs_l" + charge = 25000 + maxcharge = 25000 + matter = list(MAT_STEEL = 800, MAT_GLASS = 100) + +/* + * Infinite + */ +/obj/item/weapon/cell/infinite + name = "infinite-capacity power cell!" + icon_state = "infinite_b" + origin_tech = null + maxcharge = 30000 //determines how badly mobs get shocked + matter = list(MAT_STEEL = 700, MAT_GLASS = 80) + +/obj/item/weapon/cell/infinite/check_charge() + return 1 + +/obj/item/weapon/cell/infinite/use() + return 1 + +/* + * Potato + */ +/obj/item/weapon/cell/potato + name = "potato battery" + desc = "A rechargable starch based power cell." + origin_tech = list(TECH_POWER = 0) + icon_state = "potato" + charge = 100 + maxcharge = 300 + minor_fault = 1 + +/* + * Slime + */ +/obj/item/weapon/cell/slime + name = "charged slime core" + desc = "A yellow slime core infused with phoron, it crackles with power." + origin_tech = list(TECH_POWER = 4, TECH_BIO = 5) + icon = 'icons/mob/slimes.dmi' //'icons/obj/harvest.dmi' + icon_state = "yellow slime extract" //"potato_battery" + description_info = "This 'cell' holds a max charge of 10k and self recharges over time." + maxcharge = 10000 + matter = null + self_recharge = TRUE + standard_overlays = FALSE + +/* + * Emergency Light + */ +/obj/item/weapon/cell/emergency_light + name = "miniature power cell" + desc = "A tiny power cell with a very low power capacity. Used in light fixtures to power them in the event of an outage." + maxcharge = 120 //Emergency lights use 0.2 W per tick, meaning ~10 minutes of emergency power from a cell + matter = list(MAT_GLASS = 20) + icon_state = "em_light" + w_class = ITEMSIZE_TINY + +/obj/item/weapon/cell/emergency_light/Initialize() + . = ..() + var/area/A = get_area(src) + if(!A.lightswitch || !A.light_power) + charge = 0 //For naturally depowered areas, we start with no power + +/* + * Backup Battery + * + * Not actually a cell, but if people look for it, they'll probably look near other cells + */ +/obj/item/device/fbp_backup_cell + name = "backup battery" + desc = "A small one-time-use chemical battery for synthetic crew when they are low on power in emergency situations." + icon = 'icons/obj/power_cells.dmi' + icon_state = "backup" + w_class = ITEMSIZE_SMALL + var/amount = 100 + var/used = FALSE + +/obj/item/device/fbp_backup_cell/Initialize() + . = ..() + add_overlay("[icon_state]_100") + +/obj/item/device/fbp_backup_cell/attack(mob/living/M as mob, mob/user as mob) + if(!used && ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.isSynthetic()) + if(H.nutrition <= amount) + use(user,H) + else + to_chat(user,"The difference in potential is too great. [user == M ? "You have" : "[H] has"] too much charge to use such a small battery.") + else if(M == user) + to_chat(user,"You lick the cell, and your tongue tingles slightly.") + else + to_chat(user,"This cell is meant for use on humanoid synthetics only.") + + . = ..() + +/obj/item/device/fbp_backup_cell/proc/use(var/mob/living/user, var/mob/living/target) + if(used) + return + used = TRUE + desc += " This one has already been used." + cut_overlays() + target.adjust_nutrition(amount) + user.custom_emote(message = "connects \the [src] to [user == target ? "their" : "[target]'s"] charging port, expending it.") \ No newline at end of file diff --git a/modular_chomp/code/modules/research/designs/power_cells.dm b/modular_chomp/code/modules/research/designs/power_cells.dm new file mode 100644 index 0000000000..174c3aa6df --- /dev/null +++ b/modular_chomp/code/modules/research/designs/power_cells.dm @@ -0,0 +1,178 @@ +/datum/design/item/powercell + build_type = PROTOLATHE | MECHFAB + +/datum/design/item/powercell/AssembleDesignName() + name = "Power Cell Model ([item_name])" + +/datum/design/item/powercell/AssembleDesignDesc() + if(build_path) + var/obj/item/weapon/cell/C = build_path + desc = "Allows the construction of power cells that can hold [initial(C.maxcharge)] units of energy." + +/datum/design/item/powercell/Fabricate() + var/obj/item/weapon/cell/C = ..() + C.charge = 0 //shouldn't produce power out of thin air. + C.update_icon() + return C + +/* +//Big Cells +*/ +/datum/design/item/powercell/basic + name = "basic" + id = "basic_cell" + req_tech = list(TECH_POWER = 1) + materials = list(MAT_STEEL = 700, MAT_GLASS = 50) + build_path = /obj/item/weapon/cell + category = list("Misc") + sort_string = "BAAAA" + +/datum/design/item/powercell/high + name = "high-capacity" + id = "high_cell" + req_tech = list(TECH_POWER = 2) + materials = list(MAT_STEEL = 700, MAT_GLASS = 60) + build_path = /obj/item/weapon/cell/high + category = list("Misc") + sort_string = "BAAAB" + +/datum/design/item/powercell/super + name = "super-capacity" + id = "super_cell" + req_tech = list(TECH_POWER = 3, TECH_MATERIAL = 2) + materials = list(MAT_STEEL = 700, MAT_GLASS = 70) + build_path = /obj/item/weapon/cell/super + category = list("Misc") + sort_string = "BAAAC" + +/datum/design/item/powercell/hyper + name = "hyper-capacity" + id = "hyper_cell" + req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4) + materials = list(MAT_STEEL = 400, MAT_GOLD = 150, MAT_SILVER = 150, MAT_GLASS = 70) + build_path = /obj/item/weapon/cell/hyper + category = list("Misc") + sort_string = "BAAAD" + +/datum/design/item/powercell/giga + name = "giga-capacity" + id = "giga_cell" + req_tech = list(TECH_POWER = 6, TECH_MATERIAL = 5, TECH_PRECURSOR = 1, TECH_PHORON = 4) + materials = list(MAT_STEEL = 1000, MAT_GOLD = 300, MAT_SILVER = 300, MAT_GLASS = 100, MAT_PHORON = 1000, MAT_METALHYDROGEN = 250, MAT_DURASTEEL = 100, MAT_URANIUM = 100) + build_path = /obj/item/weapon/cell/giga + category = list("Misc") + sort_string = "BAAAE" + +/datum/design/item/powercell/potato + name = "potato cell" + id = "potato_cell" + materials = list(MAT_STEEL = 100, MAT_GLASS = 10) + build_path = /obj/item/weapon/cell/potato + category = list("Misc") + sort_string = "BAAAF" + +/* +//Device Cells +*/ +/datum/design/item/powercell/device + name = "device" + build_type = PROTOLATHE + id = "device" + materials = list(MAT_STEEL = 350, MAT_GLASS = 25) + build_path = /obj/item/weapon/cell/device + category = list("Misc") + sort_string = "BAABA" + +/datum/design/item/powercell/device_empproof + name = "device, empproof" + id = "empproof_device" + req_tech = list(TECH_POWER = 3, TECH_MATERIAL = 2, TECH_PHORON = 1) + materials = list(MAT_STEEL = 350, MAT_GLASS = 25, MAT_MORPHIUM = 25, MAT_PHORON = 25) + build_path = /obj/item/weapon/cell/device/empproof + category = list("Misc") + sort_string = "BAABB" + +/datum/design/item/powercell/advance_device + name = "device, advanced" + id = "advance_device" + req_tech = list(TECH_POWER = 2, TECH_MATERIAL = 1) + materials = list(MAT_STEEL = 700, MAT_GLASS = 50) + build_path = /obj/item/weapon/cell/device/weapon + category = list("Misc") + sort_string = "BAABC" + +/datum/design/item/powercell/advance_device_empproof + name = "device, advanced empproof" + id = "empproof_advanced_device" + req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4, TECH_PHORON = 4) + materials = list(MAT_STEEL = 700, MAT_GLASS = 50, MAT_MORPHIUM = 50, MAT_PHORON = 50) + build_path = /obj/item/weapon/cell/device/weapon/empproof + category = list("Misc") + sort_string = "BAABD" + +/datum/design/item/powercell/advance_device_recharge + name = "device, advanced recharging" + id = "recharging_advanced_device" + req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4, TECH_PHORON = 4, TECH_PRECURSOR = 2) + materials = list(MAT_STEEL = 1500, MAT_GLASS = 100, MAT_MORPHIUM = 100, MAT_PHORON = 500, MAT_DURASTEEL = 500, MAT_URANIUM = 200, MAT_VERDANTIUM = 150) + build_path = /obj/item/weapon/cell/device/weapon/recharge + category = list("Misc") + sort_string = "BAABE" + +/datum/design/item/powercell/super_device + name = "device, super" + id = "super_device" + req_tech = list(TECH_POWER = 3, TECH_MATERIAL = 2) + materials = list(MAT_STEEL = 700, MAT_GLASS = 70, MAT_GOLD = 50, MAT_SILVER = 20) + build_path = /obj/item/weapon/cell/device/super + category = list("Misc") + sort_string = "BAABF" + +/datum/design/item/powercell/hype_device + name = "device, hyper" + id = "hyper_device" + req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4) + materials = list(MAT_STEEL = 1400, MAT_GLASS = 1400, MAT_GOLD = 150, MAT_SILVER = 150) + build_path = /obj/item/weapon/cell/device/hyper + category = list("Misc") + sort_string = "BAABG" + +/datum/design/item/powercell/giga_device + name = "device, giga" + id = "giga_device" + req_tech = list(TECH_POWER = 6, TECH_MATERIAL = 6, TECH_PRECURSOR = 1, TECH_PHORON = 4) + materials = list(MAT_STEEL = 2000, MAT_GOLD = 500, MAT_SILVER = 500, MAT_GLASS = 100, MAT_PHORON = 2000, MAT_METALHYDROGEN = 500, MAT_DURASTEEL = 200, MAT_URANIUM = 200) + build_path = /obj/item/weapon/cell/device/giga + category = list("Misc") + sort_string = "BAAAH" + +/datum/design/item/powercell/omni_device + name = "device, omni" + req_tech = list(TECH_POWER = 8, TECH_MATERIAL = 7, TECH_ARCANE = 2, TECH_PHORON = 4, TECH_PRECURSOR = 2) + build_type = PROTOLATHE + id = "omni-device" + materials = list(MAT_STEEL = 1700, MAT_GLASS = 550, MAT_DURASTEEL = 230, MAT_MORPHIUM = 320, MAT_METALHYDROGEN = 600, MAT_URANIUM = 60, MAT_VERDANTIUM = 150, MAT_PHORON = 900) + build_path = /obj/item/weapon/cell/device/weapon/recharge/alien/omni + category = list("Misc") + sort_string = "BAABI" + +/* +//Mecha Cells +*/ +/datum/design/item/powercell/mecha/high + name = "high-capacity mecha" + id = "high_mech_cell" + req_tech = list(TECH_POWER = 3, TECH_MATERIAL = 3) + materials = list(MAT_STEEL = 600, MAT_SILVER = 150, MAT_GLASS = 70) + build_path = /obj/item/weapon/cell/mech/high + category = list("Misc") + sort_string = "BAACA" + +/datum/design/item/powercell/mecha/super + name = "super-capacity mecha" + id = "super_mech_cell" + req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4) + materials = list(MAT_STEEL = 500, MAT_GOLD = 200, MAT_SILVER = 200, MAT_GLASS = 80) + build_path = /obj/item/weapon/cell/mech/super + category = list("Misc") + sort_string = "BAACB" diff --git a/modular_chomp/icons/obj/power_cells.dmi b/modular_chomp/icons/obj/power_cells.dmi new file mode 100644 index 0000000000..fd5f9d1d7c Binary files /dev/null and b/modular_chomp/icons/obj/power_cells.dmi differ diff --git a/vorestation.dme b/vorestation.dme index ce23de4a35..d2d96c23f1 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -3721,10 +3721,6 @@ #include "code\modules\power\antimatter\containment_jar.dm" #include "code\modules\power\antimatter\control.dm" #include "code\modules\power\antimatter\shielding.dm" -#include "code\modules\power\cells\device_cells.dm" -#include "code\modules\power\cells\device_cells_vr.dm" -#include "code\modules\power\cells\esoteric_cells.dm" -#include "code\modules\power\cells\power_cells.dm" #include "code\modules\power\fusion\_setup.dm" #include "code\modules\power\fusion\fusion_circuits.dm" #include "code\modules\power\fusion\fusion_particle_catcher.dm" @@ -4025,7 +4021,6 @@ #include "code\modules\research\designs\misc_vr.dm" #include "code\modules\research\designs\modular_computer.dm" #include "code\modules\research\designs\pdas.dm" -#include "code\modules\research\designs\power_cells.dm" #include "code\modules\research\designs\precursor.dm" #include "code\modules\research\designs\stock_parts.dm" #include "code\modules\research\designs\subspace_parts.dm" @@ -4495,4 +4490,8 @@ #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\xenomorph.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\xenomorph_abilities.dm" #include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\bigdragon.dm" +#include "modular_chomp\code\modules\power\cells\device_cells.dm" +#include "modular_chomp\code\modules\power\cells\esoteric_cells.dm" +#include "modular_chomp\code\modules\power\cells\power_cells.dm" +#include "modular_chomp\code\modules\research\designs\power_cells.dm" // END_INCLUDE