From c07340bcf536601338276af50aacaaa2229a9af2 Mon Sep 17 00:00:00 2001 From: RustingWithYou <63625389+RustingWithYou@users.noreply.github.com> Date: Tue, 26 Dec 2023 15:31:25 +1300 Subject: [PATCH] Energy Weapon Recharging: The Future Is Now (#17969) * charge stuff backpack charging adds to antag uplink & ert suits * modules for breachers & backpacks for lizards * Update code/modules/projectiles/guns/energy.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * requested changes * hghghuh * Update code/game/objects/items/recharger_backpack.dm Co-authored-by: Matt Atlas * variable tweaking * Update code/modules/projectiles/guns/energy.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/game/objects/items/recharger_backpack.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/clothing/spacesuits/rig/modules/utility.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/clothing/spacesuits/rig/modules/utility.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/clothing/spacesuits/rig/modules/utility.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * Update code/modules/clothing/spacesuits/rig/modules/utility.dm Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> * recharger for new suits --------- Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> Co-authored-by: Matt Atlas Co-authored-by: Alberyk --- aurorastation.dme | 1 + code/datums/uplink/devices_and_tools.dm | 7 ++ code/datums/uplink/hardsuit_modules.dm | 6 + code/game/objects/items/recharger_backpack.dm | 107 ++++++++++++++++++ .../spacesuits/rig/modules/utility.dm | 38 +++++++ .../clothing/spacesuits/rig/suits/alien.dm | 9 +- .../clothing/spacesuits/rig/suits/combat.dm | 6 +- .../clothing/spacesuits/rig/suits/ert.dm | 18 ++- .../clothing/spacesuits/rig/suits/skrell.dm | 4 +- code/modules/projectiles/guns/energy.dm | 95 ++++++++++++++++ .../designs/mechfab/hardsuit/modules.dm | 7 ++ .../designs/protolathe/tool_designs.dm | 6 + html/changelogs/RustingWithYou - charge.yml | 41 +++++++ icons/obj/recharger_backpack.dmi | Bin 0 -> 997 bytes .../hegemony_corvette/hegemony_corvette.dmm | 2 + 15 files changed, 335 insertions(+), 12 deletions(-) create mode 100644 code/game/objects/items/recharger_backpack.dm create mode 100644 html/changelogs/RustingWithYou - charge.yml create mode 100644 icons/obj/recharger_backpack.dmi diff --git a/aurorastation.dme b/aurorastation.dme index 27ec3880159..acba013cbf1 100644 --- a/aurorastation.dme +++ b/aurorastation.dme @@ -996,6 +996,7 @@ #include "code\game\objects\items\items_icon.dm" #include "code\game\objects\items\knitting.dm" #include "code\game\objects\items\paintkit.dm" +#include "code\game\objects\items\recharger_backpack.dm" #include "code\game\objects\items\shooting_range.dm" #include "code\game\objects\items\skrell.dm" #include "code\game\objects\items\spirit_board.dm" diff --git a/code/datums/uplink/devices_and_tools.dm b/code/datums/uplink/devices_and_tools.dm index 5eb074a0f58..4092d8854c5 100644 --- a/code/datums/uplink/devices_and_tools.dm +++ b/code/datums/uplink/devices_and_tools.dm @@ -250,3 +250,10 @@ telecrystal_cost = 2 bluecrystal_cost = 2 path = /obj/item/stack/liquidbags/half_full + +/datum/uplink_item/item/tools/recharger_backpack + name = "Weapon Recharger Backpack" + desc = "A backpack which can recharge a connected energy weapon. Runs off normal power cells." + telecrystal_cost = 4 + bluecrystal_cost = 4 + path = /obj/item/recharger_backpack/high diff --git a/code/datums/uplink/hardsuit_modules.dm b/code/datums/uplink/hardsuit_modules.dm index c131a7fdccc..82535352f1b 100644 --- a/code/datums/uplink/hardsuit_modules.dm +++ b/code/datums/uplink/hardsuit_modules.dm @@ -45,6 +45,12 @@ path = /obj/item/rig_module/cooling_unit desc = "A mounted suit cooling unit for use with hardsuits." +/datum/uplink_item/item/hardsuit_modules/recharger + name = "Mounted Weapon Recharge Module" + telecrystal_cost = 6 + path = /obj/item/rig_module/recharger + desc = "A mounted system for recharging energy weapons." + /datum/uplink_item/item/hardsuit_modules/ai_container name = "Integrated Intelligence System" telecrystal_cost = 1 diff --git a/code/game/objects/items/recharger_backpack.dm b/code/game/objects/items/recharger_backpack.dm new file mode 100644 index 00000000000..c1200f4da3a --- /dev/null +++ b/code/game/objects/items/recharger_backpack.dm @@ -0,0 +1,107 @@ +/obj/item/recharger_backpack + name = "weapon recharger backpack" + desc = "Developed by Hephaestus Industries, the HI-92 Recharge Platform is designed for long-term field recharge of energy weapons. Due to legal concerns, the design is rarely seen outside of military hands." + icon = 'icons/obj/recharger_backpack.dmi' + icon_state = "recharger_backpack" + item_state = "recharger_backpack" + contained_sprite = TRUE + w_class = ITEMSIZE_LARGE + slot_flags = SLOT_BACK + ///Power cell used to recharge the gun. Empty by default. + var/obj/item/cell/powersupply + ///The gun we're currently recharging. Connection handled in connect() and /obj/item/gun/energy/connect() + var/obj/item/gun/energy/connected + +/obj/item/recharger_backpack/Initialize() + . = ..() + //To update the icon based on the power cell charge we spawn with + update_icon() + +/obj/item/recharger_backpack/examine(mob/user) + . = ..() + if(powersupply) + to_chat(user, SPAN_NOTICE("The backpack display shows that the installed power cell is at [round(powersupply.percent())]%.")) + +/obj/item/recharger_backpack/attackby(obj/item/I, mob/user) + if(istype(I, /obj/item/cell) && !powersupply) + to_chat(usr, SPAN_NOTICE("You slot \the [I] into \the [src]'s power socket.")) + playsound(get_turf(src), 'sound/machines/click.ogg', 30, 0) + user.drop_from_inventory(I, src) + powersupply = I + update_icon() + + else if(istype(I, /obj/item/screwdriver) && powersupply) + to_chat(user, SPAN_NOTICE("You remove \the [powersupply] from \the [src]'s power socket")) + powersupply.forceMove(get_turf(src)) + user.put_in_hands(powersupply) + powersupply = null + update_icon() + + else if(istype(I, /obj/item/gun/energy)) + connect(I) + + else + . = ..() + +/obj/item/recharger_backpack/proc/connect(obj/item/gun/energy/newgun) + if(connected) + to_chat(usr, SPAN_WARNING("\The [src] already has an energy weapon connected!")) + return + + connected = newgun + +/obj/item/recharger_backpack/verb/disconnect() + set name = "Disconnect Energy Weapon" + set category = "Object" + if(!connected) + to_chat(usr, SPAN_WARNING("\The [src] has no energy weapon connected!")) + return + + + connected.disconnect() + +/obj/item/recharger_backpack/update_icon() + . = ..() + if(!powersupply) + icon_state = "recharger_backpack" + item_state = "recharger_backpack" + set_light(0) + + else + var/current_charge = powersupply.percent() + switch(current_charge) + if(70 to INFINITY) + icon_state = "recharger_backpack_full" + item_state = "recharger_backpack_full" + set_light(2, 0.75, LIGHT_COLOR_GREEN) + if(35 to 70) + icon_state = "recharger_backpack_med" + item_state = "recharger_backpack_med" + set_light(2, 0.75, LIGHT_COLOR_FIRE) + if(1 to 35) + icon_state = "recharger_backpack_low" + item_state = "recharger_backpack_low" + set_light(2, 0.75, LIGHT_COLOR_RED) + if(-INFINITY to 1) + icon_state = "recharger_backpack" + item_state = "recharger_backpack" + set_light(0) + +/obj/item/recharger_backpack/Destroy() + if(connected) + connected.disconnect() + + if(powersupply) + QDEL_NULL(powersupply) + + . = ..() + +/obj/item/recharger_backpack/high/Initialize() + . = ..() + powersupply = new /obj/item/cell/high(src) + update_icon() + +/obj/item/recharger_backpack/get_cell() + if(powersupply) + return powersupply + return ..() diff --git a/code/modules/clothing/spacesuits/rig/modules/utility.dm b/code/modules/clothing/spacesuits/rig/modules/utility.dm index e910edf5897..78be1215649 100644 --- a/code/modules/clothing/spacesuits/rig/modules/utility.dm +++ b/code/modules/clothing/spacesuits/rig/modules/utility.dm @@ -878,3 +878,41 @@ GLOBAL_LIST_EMPTY(lattice_users) previous_turf = T sleep(1) return TRUE + +/obj/item/rig_module/recharger + name = "weapon recharge module" + desc = "A specialised power cable designed to connect an energy weapon to a hardsuit's power supply." + toggleable = TRUE + icon_state = "powersink" + interface_name = "integrated weapon recharger" + interface_desc = "Can connect to an energy weapon, recharging it off the hardsuit's power supply. Drag the weapon onto the hardsuit control module to connect it." + category = MODULE_LIGHT_COMBAT + usable = FALSE + disruptive = FALSE + confined_use = TRUE + ///The gun charging off our hardsuit + var/obj/item/gun/energy/connected + +/obj/item/rig_module/recharger/activate(mob/user) + if (!..()) + return FALSE + + + if(!connected) + to_chat(user, SPAN_NOTICE("\The [src] does not have a connected energy weapon to charge!")) + return FALSE + + + to_chat(user, SPAN_NOTICE("\The [connected] is now connected to your hardsuit power supply. Deactivate this module to disconnect it.")) + return TRUE + +/obj/item/rig_module/recharger/deactivate(mob/user) + if (!..()) + return FALSE + + + if(connected) + connected.disconnect() + + + return TRUE diff --git a/code/modules/clothing/spacesuits/rig/suits/alien.dm b/code/modules/clothing/spacesuits/rig/suits/alien.dm index 24838bdc12f..eb17dae3ba6 100644 --- a/code/modules/clothing/spacesuits/rig/suits/alien.dm +++ b/code/modules/clothing/spacesuits/rig/suits/alien.dm @@ -56,7 +56,8 @@ /obj/item/rig_module/actuators/combat, /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/device/drill, - /obj/item/rig_module/chem_dispenser/combat + /obj/item/rig_module/chem_dispenser/combat, + /obj/item/rig_module/recharger ) /obj/item/rig/unathi/fancy/ninja @@ -105,7 +106,8 @@ /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/grenade_launcher/frag, /obj/item/rig_module/grenade_launcher, - /obj/item/rig_module/vision/nvg + /obj/item/rig_module/vision/nvg, + /obj/item/rig_module/recharger ) /obj/item/rig/vaurca @@ -142,7 +144,8 @@ /obj/item/rig_module/chem_dispenser/vaurca, /obj/item/rig_module/boring, /obj/item/rig_module/lattice, - /obj/item/rig_module/maneuvering_jets + /obj/item/rig_module/maneuvering_jets, + /obj/item/rig_module/recharger ) diff --git a/code/modules/clothing/spacesuits/rig/suits/combat.dm b/code/modules/clothing/spacesuits/rig/suits/combat.dm index 10fe9f5e3fb..e2eac4283be 100644 --- a/code/modules/clothing/spacesuits/rig/suits/combat.dm +++ b/code/modules/clothing/spacesuits/rig/suits/combat.dm @@ -37,7 +37,8 @@ /obj/item/rig_module/ai_container, /obj/item/rig_module/power_sink, /obj/item/rig_module/electrowarfare_suite, - /obj/item/rig_module/chem_dispenser/combat + /obj/item/rig_module/chem_dispenser/combat, + /obj/item/rig_module/recharger ) /obj/item/rig/military @@ -161,7 +162,8 @@ /obj/item/rig_module/actuators, /obj/item/rig_module/device/drill, /obj/item/rig_module/cooling_unit, - /obj/item/rig_module/fabricator/energy_net + /obj/item/rig_module/fabricator/energy_net, + /obj/item/rig_module/recharger ) /obj/item/clothing/head/helmet/space/rig/tcfl diff --git a/code/modules/clothing/spacesuits/rig/suits/ert.dm b/code/modules/clothing/spacesuits/rig/suits/ert.dm index 221f1ed0146..f7c120661ba 100644 --- a/code/modules/clothing/spacesuits/rig/suits/ert.dm +++ b/code/modules/clothing/spacesuits/rig/suits/ert.dm @@ -33,7 +33,8 @@ /obj/item/rig_module/vision/nvg, /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/datajack, - /obj/item/rig_module/actuators/combat + /obj/item/rig_module/actuators/combat, + /obj/item/rig_module/recharger ) allowed_module_types = MODULE_GENERAL | MODULE_LIGHT_COMBAT | MODULE_HEAVY_COMBAT | MODULE_SPECIAL | MODULE_MEDICAL | MODULE_UTILITY | MODULE_VAURCA @@ -61,7 +62,8 @@ /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/mounted/plasmacutter, /obj/item/rig_module/device/rfd_c, - /obj/item/rig_module/actuators + /obj/item/rig_module/actuators, + /obj/item/rig_module/recharger ) allowed_module_types = MODULE_GENERAL | MODULE_LIGHT_COMBAT | MODULE_HEAVY_COMBAT | MODULE_SPECIAL | MODULE_UTILITY @@ -87,7 +89,8 @@ /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/device/healthscanner, /obj/item/rig_module/chem_dispenser/injector, - /obj/item/rig_module/actuators + /obj/item/rig_module/actuators, + /obj/item/rig_module/recharger ) allowed_module_types = MODULE_GENERAL | MODULE_LIGHT_COMBAT | MODULE_HEAVY_COMBAT | MODULE_SPECIAL | MODULE_MEDICAL @@ -114,7 +117,8 @@ /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/grenade_launcher, /obj/item/rig_module/mounted/egun, - /obj/item/rig_module/actuators + /obj/item/rig_module/actuators, + /obj/item/rig_module/recharger ) allowed_module_types = MODULE_GENERAL | MODULE_LIGHT_COMBAT | MODULE_HEAVY_COMBAT | MODULE_SPECIAL @@ -142,7 +146,8 @@ /obj/item/rig_module/vision/nvg, /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/actuators/combat, - /obj/item/rig_module/storage + /obj/item/rig_module/storage, + /obj/item/rig_module/recharger ) /obj/item/rig/ert/scc/engineer @@ -204,7 +209,8 @@ /obj/item/rig_module/device/drill, /obj/item/rig_module/device/rfd_c, /obj/item/rig_module/datajack, - /obj/item/rig_module/actuators/combat + /obj/item/rig_module/actuators/combat, + /obj/item/rig_module/recharger ) allowed_module_types = MODULE_GENERAL | MODULE_LIGHT_COMBAT | MODULE_HEAVY_COMBAT | MODULE_SPECIAL | MODULE_MEDICAL | MODULE_UTILITY | MODULE_VAURCA // all modules diff --git a/code/modules/clothing/spacesuits/rig/suits/skrell.dm b/code/modules/clothing/spacesuits/rig/suits/skrell.dm index bc27bd9f684..f276ecf2169 100644 --- a/code/modules/clothing/spacesuits/rig/suits/skrell.dm +++ b/code/modules/clothing/spacesuits/rig/suits/skrell.dm @@ -40,6 +40,7 @@ /obj/item/rig_module/chem_dispenser/injector, /obj/item/rig_module/datajack, /obj/item/rig_module/actuators/combat, + /obj/item/rig_module/recharger, /obj/item/rig_module/mounted/skrell_gun ) @@ -78,7 +79,8 @@ /obj/item/rig_module/device/rfd_c, /obj/item/rig_module/datajack, /obj/item/rig_module/actuators/combat, - /obj/item/rig_module/teleporter/skrell + /obj/item/rig_module/teleporter/skrell, + /obj/item/rig_module/recharger ) /obj/item/rig/skrell/tup/ninja diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 2b1675cf280..49d2c6989ae 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -33,6 +33,9 @@ var/recharge_multiplier = 1 var/charge_tick = 0 + /// External power source for the gun. Checked by get_external_power_supply() + var/obj/item/recharger + //vars passed to turrets var/can_turret = 0 //1 allows you to attach the gun on a turret var/secondary_projectile_type = null //if null, turret defaults to projectile_type @@ -82,6 +85,8 @@ update_maptext() /obj/item/gun/energy/Destroy() + if(recharger) + disconnect() QDEL_NULL(power_supply) return ..() @@ -119,6 +124,8 @@ if(isrobot(src.loc.loc)) // for things inside a robot's module var/mob/living/silicon/robot/R = src.loc.loc return R.cell + if(recharger) + return recharger.get_cell() if(istype(src.loc, /obj/item/rig_module)) var/obj/item/rig_module/module = src.loc if(module.holder && module.holder.wearer) @@ -132,6 +139,94 @@ return null +/** +* Connects the energy gun to an external power supply +* +* * powersource - the power supply in question. Can either be /obj/item/rig_module/recharger or /obj/item/recharger_backpack. +*/ +/obj/item/gun/energy/proc/connect(obj/item/powersource) + SHOULD_NOT_SLEEP(TRUE) + if(recharger) + to_chat(usr, SPAN_WARNING("\The [src] is already connected to \the [recharger]!")) + return + + if(istype(powersource, /obj/item/rig_module/recharger)) + var/obj/item/rig_module/recharger/rigcharge = powersource + + if(!rigcharge.holder || !rigcharge.holder.wearer) + to_chat(usr, SPAN_WARNING("\The [rigcharge] must be installed in a rig and active!")) + return + + to_chat(usr, SPAN_NOTICE("You neatly plug \the [src] into \the [powersource].")) + playsound(get_turf(src), 'sound/machines/click.ogg', 30, 0) + rigcharge.connected = src + recharger = rigcharge.holder + self_recharge = TRUE + use_external_power = TRUE + + if(istype(powersource, /obj/item/recharger_backpack)) + var/obj/item/recharger_backpack/back_charge = powersource + + if(!ismob(loc)) + to_chat(usr, SPAN_WARNING("\The [back_charge] must be worn on the back before a weapon can be connected!")) + return + + to_chat(usr, SPAN_NOTICE("You neatly plug \the [src] into \the [powersource].")) + playsound(get_turf(src), 'sound/machines/click.ogg', 30, 0) + back_charge.connect(src) + recharger = back_charge + self_recharge = TRUE + use_external_power = TRUE + + +///Disconnects the energy gun from its external power source if one exists. +/obj/item/gun/energy/proc/disconnect() + SHOULD_NOT_SLEEP(TRUE) + if(!recharger) + to_chat(usr, SPAN_WARNING("\The [src] lacks an external power source to disconnect!")) + return + + if(istype(recharger, /obj/item/rig)) + var/obj/item/rig/rig = recharger + var/obj/item/rig_module/recharger/rigcharger = locate() in rig.installed_modules + to_chat(usr, SPAN_NOTICE("With a snap, \the [src] is disconnected from \the [recharger].")) + playsound(get_turf(src), 'sound/machines/click.ogg', 30, 0) + if(rigcharger.active) + rigcharger.deactivate() + + rigcharger.connected = null + + else if(istype(recharger, /obj/item/recharger_backpack)) + var/obj/item/recharger_backpack/backcharger = recharger + to_chat(usr, SPAN_NOTICE("With a snap, \the [src] is disconnected from \the [recharger].")) + playsound(get_turf(src), 'sound/machines/click.ogg', 30, 0) + backcharger.connected = null + + recharger = null + self_recharge = initial(self_recharge) + use_external_power = initial(use_external_power) + +/obj/item/gun/energy/MouseDrop(atom/over) + . = ..() + + + if(istype(over, /obj/item/rig)) + var/obj/item/rig/rig = over + var/obj/item/rig_module/recharger/rigcharge = locate() in rig.installed_modules + if(rigcharge) + connect(rigcharge) + + else if(istype(over, /obj/item/recharger_backpack)) + var/obj/item/recharger_backpack/backcharge = over + connect(backcharge) + + +/obj/item/gun/energy/dropped(mob/living/user) + . = ..() + + if(recharger) + disconnect() + /obj/item/gun/energy/examine(mob/user, distance, is_adjacent) . = ..() if(distance > 1) diff --git a/code/modules/research/designs/mechfab/hardsuit/modules.dm b/code/modules/research/designs/mechfab/hardsuit/modules.dm index 68e3513a66d..049e7daf82a 100644 --- a/code/modules/research/designs/mechfab/hardsuit/modules.dm +++ b/code/modules/research/designs/mechfab/hardsuit/modules.dm @@ -121,3 +121,10 @@ req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_POWER = 2) materials = list(DEFAULT_WALL_MATERIAL = 15000, MATERIAL_GLASS = 6000) build_path = /obj/item/rig_module/foam_sprayer + +/datum/design/hardsuitmodules/recharge_module + name = "Mounted Weapon Recharger" + desc = "A hardsuit-integrated recharging system for energy weapons." + req_tech = list(TECH_MATERIAL = 3, TECH_POWER = 7, TECH_COMBAT = 5) + materials = list(DEFAULT_WALL_MATERIAL = 7000, MATERIAL_GLASS = 2250, MATERIAL_URANIUM = 3250, MATERIAL_GOLD = 2500) + build_path = /obj/item/rig_module/recharger diff --git a/code/modules/research/designs/protolathe/tool_designs.dm b/code/modules/research/designs/protolathe/tool_designs.dm index 0b2a2ea3f07..0d1709c6ef2 100644 --- a/code/modules/research/designs/protolathe/tool_designs.dm +++ b/code/modules/research/designs/protolathe/tool_designs.dm @@ -162,3 +162,9 @@ /datum/design/item/tool/inductive_charger/engineering name = "Inductive Charger (Engineering)" build_path = /obj/item/inductive_charger/handheld/engineering + +/datum/design/item/tool/recharger_backpack + desc = "A man-portable recharger backpack developed by Hephaestus Industries. Often used by military organisations of the Spur for extended field use of energy weapons." + req_tech = list(TECH_POWER = 7, TECH_MATERIAL = 3, TECH_COMBAT = 5) + materials = list(DEFAULT_WALL_MATERIAL = 7000, MATERIAL_GLASS = 2250, MATERIAL_URANIUM = 3250, MATERIAL_GOLD = 2500) + build_path = /obj/item/recharger_backpack diff --git a/html/changelogs/RustingWithYou - charge.yml b/html/changelogs/RustingWithYou - charge.yml new file mode 100644 index 00000000000..c6e518a3cab --- /dev/null +++ b/html/changelogs/RustingWithYou - charge.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: RustingWithYou + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Adds the ability to recharge energy weapons from power backpacks and hardsuit modules." diff --git a/icons/obj/recharger_backpack.dmi b/icons/obj/recharger_backpack.dmi new file mode 100644 index 0000000000000000000000000000000000000000..79b7e8233525a40bc7811247f865653fa8822661 GIT binary patch literal 997 zcmV004jl0{{R3eocQU0000gP)t-s0000> zNl{~AX*4oA0RI30%mAyYv51C_)Y94^A1Cvm9JY8B|1$u^FA1dMrWpVL00DGTPE!Ct z=GbNc005eLR9JLGWpiV4X>fFDZ*Bkpc$`yKaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM z;w;ZhDainGjE%TBGg33tGfE(w;*!LYR3KBSC^b1Fu_!&YC_X7MIlBOe&s0|AyXTf4$a9gC&xmdHZmu}5n~^Z)jd;So|sx+)z?=?ZkE8!9q8?W`Ru;kaV{y5i<`H2Gz( z*q=0pfx%qcm`)E=R(ETUrGB?9JKNJ;|ETl_Z#`Mu{M0XwG%YrHCyTGc&!f!gnL*$m zh!wo2vbxcG%|GS`9`SSgjT$(cWd=3{&M6!y2)QC0FO1V1qCi-K$IPbXc8Lj??&}2`7fWccQVmbx2DF}T)IA3>U2*p52X!6H{0rTOpAcP-a z3qtj8BXpj2WC^=Q%lBl%-5{WlDEp+ur2y~F%xX41E8FrUn~^|WLMHGIqRN(U0oOHT8l2Iah4I!EBa!%RL5Z9A?VrD7kBWxdcL@W-_`R)^g9d&gTY+q zT)iL0EA`}bbbj~?46O3QyA1I4<|Yc%@$Yj?NDyp~+q)Nx2^;mw-^` zhmz3bFXOn}595_O?&$nb5)%3-Ny_~&xvb}hDd9o=Fugix3QQ;%R%=YwC=z{>sdbgW+XhRz2iA-y-7RqU4?@Ju&#KDZ$?+0)^$ zV!u2cD<5p=d~ic(@@KPI#eUggwf4(L!{K4~%PHYO_si)W;(mFbpkHDz|2=;I?1R!V TepV2400000NkvXXu0mjfOas;m literal 0 HcmV?d00001 diff --git a/maps/away/ships/hegemony/hegemony_corvette/hegemony_corvette.dmm b/maps/away/ships/hegemony/hegemony_corvette/hegemony_corvette.dmm index edf448de4af..87cffee8252 100644 --- a/maps/away/ships/hegemony/hegemony_corvette/hegemony_corvette.dmm +++ b/maps/away/ships/hegemony/hegemony_corvette/hegemony_corvette.dmm @@ -5979,6 +5979,8 @@ /obj/item/shield/energy/hegemony, /obj/item/shield/energy/hegemony, /obj/item/shield/energy/hegemony, +/obj/item/recharger_backpack/high, +/obj/item/recharger_backpack/high, /turf/simulated/floor, /area/hegemony_ship/armory) "JO" = (