diff --git a/code/_globalvars/station.dm b/code/_globalvars/station.dm
index f08afe5efb9..6d2578e5b88 100644
--- a/code/_globalvars/station.dm
+++ b/code/_globalvars/station.dm
@@ -1,7 +1,7 @@
var/global/datum/datacore/data_core = null
var/CELLRATE = 0.002 // multiplier for watts per tick <> cell storage (eg: .002 means if there is a load of 1000 watts, 20 units will be taken from a cell per second)
-var/CHARGELEVEL = 0.0005 // Cap for how fast cells charge, as a percentage-per-tick (.001 means cellcharge is capped to 1% per second)
+var/CHARGELEVEL = 0.001 // Cap for how fast cells charge, as a percentage-per-tick (.001 means cellcharge is capped to 1% per second)
var/list/powernets = list()
var/list/deferred_powernet_rebuilds = list()
diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm
index a2307f7bea4..71c2211b6be 100644
--- a/code/game/machinery/cell_charger.dm
+++ b/code/game/machinery/cell_charger.dm
@@ -16,7 +16,7 @@
if(charging && !(stat & (BROKEN|NOPOWER)) )
- var/newlevel = round(charging.percent() * 4.0 / 99)
+ var/newlevel = round(charging.percent() * 4 / 100)
// to_chat(world, "nl: [newlevel]")
if(chargelevel != newlevel)
@@ -91,7 +91,7 @@
if(!charging || (stat & (BROKEN|NOPOWER)) || !anchored)
return
- use_power(2000) //this used to use CELLRATE, but CELLRATE is fucking awful. feel free to fix this properly!
- charging.give(1750) //inefficiency.
+ use_power(200) //this used to use CELLRATE, but CELLRATE is fucking awful. feel free to fix this properly!
+ charging.give(175) //inefficiency.
updateicon()
diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm
index cbf20e838f3..94513623cfb 100644
--- a/code/game/machinery/recharger.dm
+++ b/code/game/machinery/recharger.dm
@@ -1,70 +1,78 @@
-//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
-
/obj/machinery/recharger
name = "recharger"
icon = 'icons/obj/stationobjs.dmi'
icon_state = "recharger0"
+ desc = "A charging dock for energy based weaponry."
anchored = 1
use_power = 1
- idle_power_usage = 40
- active_power_usage = 2500
+ idle_power_usage = 4
+ active_power_usage = 250
var/obj/item/charging = null
+ var/list/allowed_devices = list(/obj/item/weapon/gun/energy, /obj/item/weapon/melee/baton, /obj/item/device/modular_computer, /obj/item/weapon/rcs)
+ var/icon_state_off = "rechargeroff"
var/icon_state_charged = "recharger2"
var/icon_state_charging = "recharger1"
var/icon_state_idle = "recharger0"
-/obj/machinery/recharger/attackby(obj/item/weapon/G as obj, mob/user as mob, params)
- if(istype(user,/mob/living/silicon))
- return
-
- if(!user.canUnEquip(G, 0))
- to_chat(user, "[G] is stuck to your hand, you can't put it in [src]!")
- return
-
- if(istype(G, /obj/item/weapon/gun/energy) || istype(G, /obj/item/weapon/melee/baton) || istype(G,/obj/item/device/laptop) || istype(G, /obj/item/weapon/rcs))
+/obj/machinery/recharger/attackby(obj/item/weapon/G, mob/user, params)
+ if(iswrench(G))
if(charging)
- return
-
- // Checks to make sure he's not in space doing it, and that the area got proper power.
- var/area/a = get_area(src)
- if(!isarea(a))
- to_chat(user, "\red The [name] blinks red as you try to insert the item!")
- return
- if(a.power_equip == 0 && a.requires_power)
- to_chat(user, "\red The [name] blinks red as you try to insert the item!")
- return
-
- if(istype(G, /obj/item/weapon/gun/energy))
- var/obj/item/weapon/gun/energy/E = G
- if(!E.can_charge)
- to_chat(user, "Your gun has no external power connector.")
- return
-
- if(istype(G, /obj/item/device/laptop))
- var/obj/item/device/laptop/L = G
- if(!L.stored_computer.battery)
- to_chat(user, "There's no battery in it!")
- return
-
- user.drop_item()
- G.loc = src
- charging = G
- use_power = 2
- update_icon()
- else if(istype(G, /obj/item/weapon/wrench))
- if(charging)
- to_chat(user, "\red Remove the weapon first!")
+ to_chat(user, "Remove the charging item first!")
return
anchored = !anchored
- to_chat(user, "You [anchored ? "attached" : "detached"] the recharger.")
+ power_change()
+ to_chat(user, "You [anchored ? "attached" : "detached"] [src].")
playsound(loc, G.usesound, 75, 1)
+ return
+
+ var/allowed = is_type_in_list(G, allowed_devices)
+
+ if(allowed)
+ if(anchored)
+ if(charging)
+ return 1
+
+ //Checks to make sure he's not in space doing it, and that the area got proper power.
+ var/area/a = get_area(src)
+ if(!isarea(a) || a.power_equip == 0)
+ to_chat(user, "[src] blinks red as you try to insert [G].")
+ return 1
+
+ if(istype(G, /obj/item/weapon/gun/energy))
+ var/obj/item/weapon/gun/energy/E = G
+ if(!E.can_charge)
+ to_chat(user, "Your gun has no external power connector.")
+ return 1
+
+ if(!user.drop_item())
+ return 1
+ G.forceMove(src)
+ charging = G
+ use_power = 2
+ update_icon()
+ else
+ to_chat(user, "[src] isn't connected to anything!")
+ return 1
+ else
+ ..()
+
+/obj/machinery/recharger/attack_hand(mob/user)
+ if(issilicon(user))
+ return
-/obj/machinery/recharger/attack_hand(mob/user as mob)
add_fingerprint(user)
-
if(charging)
charging.update_icon()
- charging.loc = loc
+ charging.forceMove(loc)
+ user.put_in_hands(charging)
+ charging = null
+ use_power = 1
+ update_icon()
+
+/obj/machinery/recharger/attack_tk(mob/user)
+ if(charging)
+ charging.update_icon()
+ charging.forceMove(loc)
charging = null
use_power = 1
update_icon()
@@ -73,43 +81,42 @@
if(stat & (NOPOWER|BROKEN) || !anchored)
return
+ var/using_power = 0
if(charging)
if(istype(charging, /obj/item/weapon/gun/energy))
var/obj/item/weapon/gun/energy/E = charging
if(E.power_supply.charge < E.power_supply.maxcharge)
- E.power_supply.give(1000)
- icon_state = icon_state_charging
- use_power(2500)
- else
- icon_state = icon_state_charged
- return
+ E.power_supply.give(E.power_supply.chargerate)
+ use_power(250)
+ using_power = 1
+
+
if(istype(charging, /obj/item/weapon/melee/baton))
var/obj/item/weapon/melee/baton/B = charging
- if(B.bcell && B.bcell.charge < B.bcell.maxcharge)
- B.bcell.charge += 1750
- icon_state = icon_state_charging
- use_power(2000)
- else
- icon_state = icon_state_charged
- return
- if(istype(charging, /obj/item/device/laptop))
- var/obj/item/device/laptop/L = charging
- if(L.stored_computer.battery.charge < L.stored_computer.battery.maxcharge)
- L.stored_computer.battery.give(1000)
- icon_state = icon_state_charging
- use_power(2500)
- else
- icon_state = icon_state_charged
+ if(B.bcell)
+ if(B.bcell.give(B.bcell.chargerate))
+ use_power(200)
+ using_power = 1
+
+ if(istype(charging, /obj/item/device/modular_computer))
+ var/obj/item/device/modular_computer/C = charging
+ var/obj/item/weapon/computer_hardware/battery/battery_module = C.all_components[MC_CELL]
+ if(battery_module)
+ var/obj/item/weapon/computer_hardware/battery/B = battery_module
+ if(B.battery)
+ if(B.battery.charge < B.battery.maxcharge)
+ B.battery.give(B.battery.chargerate)
+ use_power(200)
+ using_power = 1
+
if(istype(charging, /obj/item/weapon/rcs))
var/obj/item/weapon/rcs/R = charging
- if(R.rcell && R.rcell.charge < R.rcell.maxcharge)
- R.rcell.charge += 1750
- icon_state = icon_state_charging
- use_power(2000)
- else
- icon_state = icon_state_charged
- return
+ if(R.rcell)
+ if(R.rcell.give(R.rcell.chargerate))
+ use_power(200)
+ using_power = 1
+ update_icon(using_power)
/obj/machinery/recharger/emp_act(severity)
if(stat & (NOPOWER|BROKEN) || !anchored)
@@ -127,17 +134,23 @@
B.bcell.charge = 0
..(severity)
-/obj/machinery/recharger/update_icon() //we have an update_icon() in addition to the stuff in process to make it feel a tiny bit snappier.
+/obj/machinery/recharger/update_icon(using_power = 0) //we have an update_icon() in addition to the stuff in process to make it feel a tiny bit snappier.
+ if(stat & (NOPOWER|BROKEN) || !anchored)
+ icon_state = icon_state_off
+ return
if(charging)
- icon_state = icon_state_charging
- else
- icon_state = icon_state_idle
+ if(using_power)
+ icon_state = icon_state_charging
+ else
+ icon_state = icon_state_charged
+ return
+ icon_state = icon_state_idle
// Atlantis: No need for that copy-pasta code, just use var to store icon_states instead.
obj/machinery/recharger/wallcharger
name = "wall recharger"
- icon = 'icons/obj/stationobjs.dmi'
icon_state = "wrecharger0"
+ icon_state_off = "wrechargeroff"
icon_state_idle = "wrecharger0"
icon_state_charging = "wrecharger1"
icon_state_charged = "wrecharger2"
diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm
index 085fc9a9aa1..f0a635c73a8 100644
--- a/code/game/machinery/rechargestation.dm
+++ b/code/game/machinery/rechargestation.dm
@@ -159,10 +159,7 @@
R.adjustFireLoss(-(repairs))
R.updatehealth()
if(R.cell)
- if(R.cell.charge >= R.cell.maxcharge)
- R.cell.charge = R.cell.maxcharge
- else
- R.cell.charge = min(R.cell.charge + recharge_speed, R.cell.maxcharge)
+ R.cell.charge = min(R.cell.charge + recharge_speed, R.cell.maxcharge)
else if(istype(occupant, /mob/living/carbon/human))
var/mob/living/carbon/human/H = occupant
if(H.get_int_organ(/obj/item/organ/internal/cell) && H.nutrition < 450)
diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm
index 25e975fa920..ec233e0576b 100644
--- a/code/game/objects/items/devices/powersink.dm
+++ b/code/game/objects/items/devices/powersink.dm
@@ -13,7 +13,7 @@
materials = list(MAT_METAL=750)
origin_tech = "powerstorage=3;syndicate=5"
var/drain_rate = 1600000 // amount of power to drain per tick
- var/apc_drain_rate = 5000 // Max. amount drained from single APC. In Watts.
+ var/apc_drain_rate = 50 // Max. amount drained from single APC. In Watts.
var/dissipation_rate = 20000 // Passive dissipation of drained power. In Watts.
var/power_drained = 0 // Amount of power drained.
var/max_power = 1e10 // Detonation point.
@@ -110,10 +110,8 @@
if(istype(T.master, /obj/machinery/power/apc))
var/obj/machinery/power/apc/A = T.master
if(A.operating && A.cell)
- var/cur_charge = A.cell.charge / CELLRATE
- var/drain_val = min(apc_drain_rate, cur_charge)
- A.cell.use(drain_val * CELLRATE)
- drained += drain_val
+ A.cell.use(apc_drain_rate)
+ drained += apc_drain_rate
power_drained += drained
return 1
diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm
index b40f81bef60..afc5dbd93ad 100644
--- a/code/game/objects/items/weapons/melee/energy.dm
+++ b/code/game/objects/items/weapons/melee/energy.dm
@@ -109,7 +109,7 @@
if(R.cell)
var/obj/item/weapon/stock_parts/cell/C = R.cell
if(active && !(C.use(hitcost)))
- attack_self()
+ attack_self(R)
to_chat(R, "It's out of charge!")
return
..()
diff --git a/code/game/objects/items/weapons/power_cells.dm b/code/game/objects/items/weapons/power_cells.dm
index 005ef313a4f..de5d788a9f3 100644
--- a/code/game/objects/items/weapons/power_cells.dm
+++ b/code/game/objects/items/weapons/power_cells.dm
@@ -5,18 +5,17 @@
icon_state = "cell"
item_state = "cell"
origin_tech = "powerstorage=1"
- force = 5.0
- throwforce = 5.0
- throw_speed = 3
+ force = 5
+ throwforce = 5
+ throw_speed = 2
throw_range = 5
- w_class = 2
+ w_class = WEIGHT_CLASS_SMALL
var/charge = 0 // note %age conveted to actual charge in New
- var/maxcharge = 10000
- rating = 1
+ var/maxcharge = 1000
materials = list(MAT_METAL=700, MAT_GLASS=50)
var/rigged = 0 // true if rigged to explode
+ var/chargerate = 100 //how much power is given every tick in a recharger
var/minor_fault = 0 //If not 100% reliable, it will build up faults.
- var/chargerate = 1000 //how much power is given every tick in a recharger
var/self_recharge = 0 //does it self recharge, over time, or not?
var/grown_battery = FALSE // If it's a grown that acts as a battery, add a wire overlay to it.
@@ -62,10 +61,9 @@
/obj/item/weapon/stock_parts/cell/crap
name = "\improper Nanotrasen brand rechargable AA battery"
desc = "You can't top the plasma top." //TOTALLY TRADEMARK INFRINGEMENT
- origin_tech = null
- maxcharge = 5000
- rating = 2
+ maxcharge = 500
materials = list(MAT_GLASS=40)
+ rating = 2
/obj/item/weapon/stock_parts/cell/crap/empty/New()
..()
@@ -74,9 +72,9 @@
/obj/item/weapon/stock_parts/cell/secborg
name = "\improper Security borg rechargable D battery"
origin_tech = null
- maxcharge = 6000 //6000 max charge / 1000 charge per shot = six shots
- rating = 2.5
+ maxcharge = 600 //600 max charge / 100 charge per shot = six shots
materials = list(MAT_GLASS=40)
+ rating = 2.5
/obj/item/weapon/stock_parts/cell/secborg/empty/New()
..()
@@ -86,11 +84,18 @@
name = "high-capacity power cell"
origin_tech = "powerstorage=2"
icon_state = "hcell"
- maxcharge = 15000
- rating = 3
+ maxcharge = 10000
materials = list(MAT_GLASS=60)
+ rating = 3
chargerate = 1500
+/obj/item/weapon/stock_parts/cell/high/plus
+ name = "high-capacity power cell+"
+ desc = "Where did these come from?"
+ icon_state = "h+cell"
+ maxcharge = 15000
+ chargerate = 2250
+
/obj/item/weapon/stock_parts/cell/high/empty/New()
..()
charge = 0
@@ -100,7 +105,7 @@
origin_tech = "powerstorage=5"
icon_state = "scell"
maxcharge = 20000
- materials = list(MAT_GLASS=70)
+ materials = list(MAT_GLASS=300)
rating = 4
chargerate = 2000
@@ -113,8 +118,8 @@
origin_tech = "powerstorage=6"
icon_state = "hpcell"
maxcharge = 30000
+ materials = list(MAT_GLASS=400)
rating = 5
- materials = list(MAT_GLASS=80)
chargerate = 3000
/obj/item/weapon/stock_parts/cell/hyper/empty/New()
@@ -126,7 +131,7 @@
origin_tech = "powerstorage=7"
icon_state = "bscell"
maxcharge = 40000
- materials = list(MAT_GLASS=80)
+ materials = list(MAT_GLASS=600)
rating = 6
chargerate = 4000
@@ -139,8 +144,8 @@
icon_state = "icell"
origin_tech = null
maxcharge = 30000
+ materials = list(MAT_GLASS=1000)
rating = 6
- materials = list(MAT_GLASS=80)
chargerate = 30000
/obj/item/weapon/stock_parts/cell/infinite/use()
@@ -153,7 +158,7 @@
icon_state = "potato"
origin_tech = "powerstorage=1;biotech=1"
charge = 100
- maxcharge = 3000
+ maxcharge = 300
materials = list()
rating = 1
minor_fault = 1
@@ -170,17 +175,17 @@
/obj/item/weapon/stock_parts/cell/pulse //200 pulse shots
name = "pulse rifle power cell"
- maxcharge = 400000
+ maxcharge = 40000
rating = 3
chargerate = 1500
-/obj/item/weapon/stock_parts/cell/pulse/carbine
+/obj/item/weapon/stock_parts/cell/pulse/carbine //25 pulse shots
name = "pulse carbine power cell"
- maxcharge = 40000
+ maxcharge = 5000
-/obj/item/weapon/stock_parts/cell/pulse/pistol
+/obj/item/weapon/stock_parts/cell/pulse/pistol //10 pulse shots
name = "pulse pistol power cell"
- maxcharge = 16000
+ maxcharge = 2000
/obj/item/weapon/stock_parts/cell/ninja
name = "spider-clan power cell"
@@ -192,7 +197,7 @@
/obj/item/weapon/stock_parts/cell/emproof
name = "\improper EMP-proof cell"
desc = "An EMP-proof cell."
- maxcharge = 5000
+ maxcharge = 500
rating = 2
/obj/item/weapon/stock_parts/cell/emproof/empty/New()
diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm
index f2bd9cafedf..ec7e7550a5c 100644
--- a/code/game/objects/items/weapons/stunbaton.dm
+++ b/code/game/objects/items/weapons/stunbaton.dm
@@ -12,7 +12,7 @@
var/stunforce = 7
var/status = 0
var/obj/item/weapon/stock_parts/cell/high/bcell = null
- var/hitcost = 1500
+ var/hitcost = 1000
/obj/item/weapon/melee/baton/suicide_act(mob/user)
user.visible_message("[user] is putting the live [name] in \his mouth! It looks like \he's trying to commit suicide.")
@@ -184,11 +184,6 @@
return 1
..()
-
-//secborg stun baton module
-/obj/item/weapon/melee/baton/loaded/robot
- hitcost = 1000
-
//Makeshift stun baton. Replacement for stun gloves.
/obj/item/weapon/melee/baton/cattleprod
name = "stunprod"
@@ -199,7 +194,7 @@
force = 3
throwforce = 5
stunforce = 5
- hitcost = 3750
+ hitcost = 2000
slot_flags = SLOT_BACK
var/obj/item/device/assembly/igniter/sparkler = 0
diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm
index aefb7188f5c..effcc3da495 100644
--- a/code/modules/clothing/gloves/miscellaneous.dm
+++ b/code/modules/clothing/gloves/miscellaneous.dm
@@ -63,7 +63,7 @@
desc = "Horrendous and awful. It smells like cancer. The fact it has wires attached to it is incidental."
var/obj/item/weapon/stock_parts/cell/cell = null
var/stun_strength = 5
- var/stun_cost = 3750
+ var/stun_cost = 2000
/obj/item/clothing/gloves/color/yellow/stun/New()
..()
diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm
index 55c3a8fba0f..5028bd19768 100644
--- a/code/modules/mob/living/silicon/robot/robot_modules.dm
+++ b/code/modules/mob/living/silicon/robot/robot_modules.dm
@@ -222,7 +222,7 @@
/obj/item/weapon/robot_module/security/New()
..()
modules += new /obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg(src)
- modules += new /obj/item/weapon/melee/baton/loaded/robot(src)
+ modules += new /obj/item/weapon/melee/baton/loaded(src)
modules += new /obj/item/weapon/gun/energy/disabler/cyborg(src)
modules += new /obj/item/taperoll/police(src)
modules += new /obj/item/clothing/mask/gas/sechailer/cyborg(src)
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index 0c22b76cd2e..0f789d5ca7e 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -90,7 +90,6 @@
var/update_overlay = -1
var/global/status_overlays = 0
var/updating_icon = 0
- var/standard_max_charge
var/datum/wires/apc/wires = null
//var/debug = 0
var/global/list/status_overlays_lock
@@ -142,9 +141,6 @@
apcs += src
apcs = sortAtom(apcs)
wires = new(src)
- var/tmp/obj/item/weapon/stock_parts/cell/tmp_cell = new
- standard_max_charge = tmp_cell.maxcharge
- qdel(tmp_cell)
// offset 24 pixels in direction of dir
// this allows the APC to be embedded in a wall, yet still inside an area
@@ -201,7 +197,7 @@
if(cell_type)
src.cell = new/obj/item/weapon/stock_parts/cell(src)
cell.maxcharge = cell_type // cell_type is maximum charge (old default was 1000 or 2500 (values one and two respectively)
- cell.charge = start_charge * cell.maxcharge / 100.0 // (convert percentage to actual value)
+ cell.charge = start_charge * cell.maxcharge / 100 // (convert percentage to actual value)
var/area/A = get_area(src)
diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm
index f88dce25b51..562fd425274 100644
--- a/code/modules/power/cell.dm
+++ b/code/modules/power/cell.dm
@@ -5,24 +5,25 @@
return 100.0*charge/maxcharge
// use power from a cell
-/obj/item/weapon/stock_parts/cell/proc/use(var/amount)
+/obj/item/weapon/stock_parts/cell/proc/use(amount)
if(rigged && amount > 0)
explode()
return 0
-
- if(charge < amount) return 0
+ if(charge < amount)
+ return 0
charge = (charge - amount)
return 1
// recharge the cell
-/obj/item/weapon/stock_parts/cell/proc/give(var/amount)
+/obj/item/weapon/stock_parts/cell/proc/give(amount)
if(rigged && amount > 0)
explode()
return 0
-
- if(maxcharge < amount) return 0
+ if(maxcharge < amount)
+ return 0
var/power_used = min(maxcharge-charge,amount)
- if(crit_fail) return 0
+ if(crit_fail)
+ return 0
if(!prob(reliability))
minor_fault++
if(prob(minor_fault))
@@ -31,7 +32,6 @@
charge += power_used
return power_used
-
/obj/item/weapon/stock_parts/cell/examine(mob/user)
if(..(user, 1))
if(maxcharge <= 2500)
diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm
index 4e5bbce386c..7b848dca5c7 100644
--- a/code/modules/projectiles/guns/energy.dm
+++ b/code/modules/projectiles/guns/energy.dm
@@ -34,7 +34,7 @@
if(selfcharge)
processing_objects.Add(src)
update_icon()
-
+
/obj/item/weapon/gun/energy/proc/update_ammo_types()
var/obj/item/ammo_casing/energy/shot
for(var/i = 1, i <= ammo_type.len, i++)
@@ -61,9 +61,9 @@
var/obj/item/ammo_casing/energy/E = ammo_type[select]
if(use_external_power)
var/obj/item/weapon/stock_parts/cell/external = get_external_power_supply()
- if(!external || !external.use((E.e_cost)/10)) //Take power from the borg...
+ if(!external || !external.use(E.e_cost)) //Take power from the borg...
return //Note, uses /10 because of shitty mods to the cell system
- power_supply.give(1000) //... to recharge the shot
+ power_supply.give(100) //... to recharge the shot
update_icon()
/obj/item/weapon/gun/energy/attack_self(mob/living/user as mob)
@@ -176,7 +176,7 @@
var/mob/living/silicon/robot/R = loc
if(R && R.cell)
var/obj/item/ammo_casing/energy/shot = ammo_type[select] //Necessary to find cost of shot
- if(R.cell.use(shot.e_cost/10)) //Take power from the borg... //Divided by 10 because cells and charge costs are fucked.
+ if(R.cell.use(shot.e_cost)) //Take power from the borg...
power_supply.give(shot.e_cost) //... to recharge the shot
/obj/item/weapon/gun/energy/proc/get_external_power_supply()
diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm
index fb811c19d78..9782c9ca9b3 100644
--- a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm
+++ b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm
@@ -94,7 +94,7 @@
empty()
/obj/item/weapon/gun/energy/kinetic_accelerator/proc/empty()
- power_supply.use(5000)
+ power_supply.use(500)
update_icon()
/obj/item/weapon/gun/energy/kinetic_accelerator/proc/attempt_reload()
@@ -120,7 +120,7 @@
return
/obj/item/weapon/gun/energy/kinetic_accelerator/proc/reload()
- power_supply.give(5000)
+ power_supply.give(500)
if(!suppressed)
playsound(loc, 'sound/weapons/kenetic_reload.ogg', 60, 1)
else if(isliving(loc))
@@ -181,7 +181,7 @@
/obj/item/projectile/kinetic/pod
range = 4
-
+
/obj/item/projectile/kinetic/pod/regular
damage = 50
pressure_decrease = 0.5
diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm
index 3131e49c4f2..96c13f27dc6 100644
--- a/code/modules/projectiles/guns/energy/special.dm
+++ b/code/modules/projectiles/guns/energy/special.dm
@@ -157,11 +157,11 @@
if(istype(A, /obj/item/stack/sheet/mineral/plasma))
var/obj/item/stack/sheet/S = A
S.use(1)
- power_supply.give(10000)
+ power_supply.give(1000)
to_chat(user, "You insert [A] in [src], recharging it.")
else if(istype(A, /obj/item/weapon/ore/plasma))
qdel(A)
- power_supply.give(5000)
+ power_supply.give(500)
to_chat(user, "You insert [A] in [src], recharging it.")
else
..()
diff --git a/code/modules/telesci/telepad.dm b/code/modules/telesci/telepad.dm
index ed330821f06..907aac48996 100644
--- a/code/modules/telesci/telepad.dm
+++ b/code/modules/telesci/telepad.dm
@@ -128,7 +128,7 @@
var/rand_y = 0
var/emagged = 0
var/teleporting = 0
- var/chargecost = 1500
+ var/chargecost = 1000
/obj/item/weapon/rcs/New()
..()
diff --git a/icons/obj/stationobjs.dmi b/icons/obj/stationobjs.dmi
index 72084b5675b..fd89b23d19d 100755
Binary files a/icons/obj/stationobjs.dmi and b/icons/obj/stationobjs.dmi differ