mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 13:10:02 +01:00
[MIRROR] Yellow slime core nerfs and adjustments. (#1193)
* Yellow slime core nerfs and adjustments. (#54198) Yellow slime extract can no longer turn into a self-charging yellow slime core. This functionality has been completely removed. Hypercharged yellow slime cores no longer self-charge. They now have a capacity of 50,000 (up from their previous 20,000). This is 10,000 more than a bluespace power cell. Their recharge rate is 2500. This is relatively slow for the power capacity, as hyper and bluespace cells charge at 10% of their capacity respectively and this is 5%. Motorised wheelchairs have had their power usage reduced to 5% of their previous value since they were basically only usable with rechargable cells before * Yellow slime core nerfs and adjustments. * Update special.dm * Update special.dm Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk> Co-authored-by: Azarak <azarak10@gmail.com>
This commit is contained in:
co-authored by
Timberpoes
Azarak
parent
371d62d7e2
commit
aeffa9165e
@@ -20,15 +20,10 @@
|
||||
unit_name = "rare slime core"
|
||||
export_types = list(/obj/item/slime_extract/silver,/obj/item/slime_extract/darkblue,/obj/item/slime_extract/darkpurple,/obj/item/slime_extract/yellow)
|
||||
|
||||
/datum/export/slime/charged
|
||||
cost = 200
|
||||
unit_name = "charged slime core"
|
||||
export_types = list(/obj/item/stock_parts/cell/high/slime)
|
||||
|
||||
/datum/export/slime/hypercharged
|
||||
cost = 600
|
||||
unit_name = "hypercharged slime core"
|
||||
export_types = list(/obj/item/stock_parts/cell/high/slime/hypercharged)
|
||||
export_types = list(/obj/item/stock_parts/cell/high/slime_hypercharged)
|
||||
|
||||
/datum/export/slime/epic //EPIIIIIIC
|
||||
cost = 220
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
var/rigged = FALSE /// If the cell has been booby-trapped by injecting it with plasma. Chance on use() to explode.
|
||||
var/corrupted = FALSE /// If the power cell was damaged by an explosion, chance for it to become corrupted and function the same as rigged.
|
||||
var/chargerate = 100 //how much power is given every tick in a recharger
|
||||
var/self_recharge = 0 //does it self recharge, over time, or not?
|
||||
var/ratingdesc = TRUE
|
||||
var/grown_battery = FALSE // If it's a grown that acts as a battery, add a wire overlay to it.
|
||||
|
||||
@@ -31,7 +30,6 @@
|
||||
|
||||
/obj/item/stock_parts/cell/Initialize(mapload, override_maxcharge)
|
||||
. = ..()
|
||||
START_PROCESSING(SSobj, src)
|
||||
create_reagents(5, INJECTABLE | DRAINABLE)
|
||||
if (override_maxcharge)
|
||||
maxcharge = override_maxcharge
|
||||
@@ -40,25 +38,6 @@
|
||||
desc += " This one has a rating of [DisplayEnergy(maxcharge)], and you should not swallow it."
|
||||
update_icon()
|
||||
|
||||
/obj/item/stock_parts/cell/Destroy()
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/stock_parts/cell/vv_edit_var(var_name, var_value)
|
||||
switch(var_name)
|
||||
if(NAMEOF(src, self_recharge))
|
||||
if(var_value)
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
. = ..()
|
||||
|
||||
/obj/item/stock_parts/cell/process(delta_time)
|
||||
if(self_recharge)
|
||||
give(chargerate * 0.125 * delta_time)
|
||||
else
|
||||
return PROCESS_KILL
|
||||
|
||||
/obj/item/stock_parts/cell/update_overlays()
|
||||
. = ..()
|
||||
if(grown_battery)
|
||||
@@ -346,18 +325,6 @@
|
||||
custom_materials = null
|
||||
grown_battery = TRUE //it has the overlays for wires
|
||||
|
||||
/obj/item/stock_parts/cell/high/slime
|
||||
name = "charged slime core"
|
||||
desc = "A yellow slime core infused with plasma, it crackles with power."
|
||||
icon = 'icons/mob/slimes.dmi'
|
||||
icon_state = "yellow slime extract"
|
||||
custom_materials = null
|
||||
rating = 5 //self-recharge makes these desirable
|
||||
self_recharge = 1 // Infused slime cores self-recharge, over time
|
||||
|
||||
/*Hypercharged slime cell - located in /code/modules/research/xenobiology/crossbreeding/_misc.dm
|
||||
/obj/item/stock_parts/cell/high/slime/hypercharged */
|
||||
|
||||
/obj/item/stock_parts/cell/emproof
|
||||
name = "\improper EMP-proof cell"
|
||||
desc = "An EMP-proof cell."
|
||||
|
||||
@@ -238,11 +238,6 @@
|
||||
var/last_chrg = inputting
|
||||
var/last_onln = outputting
|
||||
|
||||
//check for self-recharging cells in stock parts and use them to self-charge
|
||||
for(var/obj/item/stock_parts/cell/C in component_parts)
|
||||
if(C.self_recharge)
|
||||
charge += min(capacity-charge, C.chargerate) // If capacity-charge is smaller than the attempted charge rate, this avoids overcharging
|
||||
|
||||
//inputting
|
||||
if(terminal && input_attempt)
|
||||
input_available = terminal.surplus()
|
||||
|
||||
@@ -266,10 +266,6 @@
|
||||
required_container = /obj/item/slime_extract/yellow
|
||||
required_other = TRUE
|
||||
|
||||
/datum/chemical_reaction/slime/slimecell/on_reaction(datum/reagents/holder, created_volume)
|
||||
new /obj/item/stock_parts/cell/high/slime(get_turf(holder.my_atom))
|
||||
..()
|
||||
|
||||
/datum/chemical_reaction/slime/slimeglow
|
||||
required_reagents = list(/datum/reagent/water = 1)
|
||||
required_container = /obj/item/slime_extract/yellow
|
||||
|
||||
@@ -89,14 +89,16 @@ Slimecrossing Items
|
||||
desc = "This camera has seen better days."
|
||||
. = ..()
|
||||
|
||||
|
||||
//Hypercharged slime cell - Charged Yellow
|
||||
/obj/item/stock_parts/cell/high/slime/hypercharged
|
||||
/obj/item/stock_parts/cell/high/slime_hypercharged
|
||||
name = "hypercharged slime core"
|
||||
desc = "A charged yellow slime extract, infused with even more plasma. It almost hurts to touch."
|
||||
rating = 7 //Roughly 1.5 times the original.
|
||||
maxcharge = 20000 //2 times the normal one.
|
||||
chargerate = 2250 //1.5 times the normal rate.
|
||||
desc = "A charged yellow slime extract, infused with plasma. It almost hurts to touch."
|
||||
icon = 'icons/mob/slimes.dmi'
|
||||
icon_state = "yellow slime extract"
|
||||
rating = 7
|
||||
custom_materials = null
|
||||
maxcharge = 50000
|
||||
chargerate = 2500
|
||||
|
||||
//Barrier cube - Chilling Grey
|
||||
/obj/item/barriercube
|
||||
|
||||
@@ -77,10 +77,10 @@ Charged extracts:
|
||||
|
||||
/obj/item/slimecross/charged/yellow
|
||||
colour = "yellow"
|
||||
effect_desc = "Creates a hypercharged slime cell battery, which has high capacity and recharges constantly at a very fast rate."
|
||||
effect_desc = "Creates a hypercharged slime cell battery, which has high capacity but takes longer to recharge."
|
||||
|
||||
/obj/item/slimecross/charged/yellow/do_effect(mob/user)
|
||||
new /obj/item/stock_parts/cell/high/slime/hypercharged(get_turf(user))
|
||||
new /obj/item/stock_parts/cell/high/slime_hypercharged(get_turf(user))
|
||||
user.visible_message("<span class='notice'>[src] sparks violently, and swells with electric power!</span>")
|
||||
..()
|
||||
|
||||
|
||||
@@ -67,12 +67,11 @@
|
||||
break
|
||||
else if(istype(item, /obj/item/stock_parts/cell))
|
||||
var/obj/item/stock_parts/cell/C = item
|
||||
if(!C.self_recharge)
|
||||
if(prob(80))
|
||||
C.maxcharge -= 200
|
||||
if(C.maxcharge <= 1) //Div by 0 protection
|
||||
C.maxcharge = 1
|
||||
burnt_out = TRUE
|
||||
if(prob(80))
|
||||
C.maxcharge -= 200
|
||||
if(C.maxcharge <= 1) //Div by 0 protection
|
||||
C.maxcharge = 1
|
||||
burnt_out = TRUE
|
||||
C.charge = C.maxcharge
|
||||
charged_item = C
|
||||
break
|
||||
@@ -81,12 +80,11 @@
|
||||
for(I in item.contents)
|
||||
if(istype(I, /obj/item/stock_parts/cell/))
|
||||
var/obj/item/stock_parts/cell/C = I
|
||||
if(!C.self_recharge)
|
||||
if(prob(80))
|
||||
C.maxcharge -= 200
|
||||
if(C.maxcharge <= 1) //Div by 0 protection
|
||||
C.maxcharge = 1
|
||||
burnt_out = TRUE
|
||||
if(prob(80))
|
||||
C.maxcharge -= 200
|
||||
if(C.maxcharge <= 1) //Div by 0 protection
|
||||
C.maxcharge = 1
|
||||
burnt_out = TRUE
|
||||
C.charge = C.maxcharge
|
||||
if(istype(C.loc, /obj/item/gun))
|
||||
var/obj/item/gun/G = C.loc
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
canmove = FALSE
|
||||
addtimer(VARSET_CALLBACK(src, canmove, TRUE), 20)
|
||||
return FALSE
|
||||
power_cell.use(power_usage / max(power_efficiency, 1))
|
||||
power_cell.use(power_usage / max(power_efficiency, 1) * 0.05)
|
||||
return ..()
|
||||
|
||||
/obj/vehicle/ridden/wheelchair/motorized/set_move_delay(mob/living/user)
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
obj_flags = UNIQUE_RENAME
|
||||
cell_type = /obj/item/stock_parts/cell/blueshield
|
||||
pin = /obj/item/firing_pin/implant/mindshield
|
||||
selfcharge = TRUE
|
||||
|
||||
/obj/item/stock_parts/cell/blueshield
|
||||
name = "internal revolver power cell"
|
||||
@@ -32,7 +33,6 @@
|
||||
name = "internal pistol power cell"
|
||||
maxcharge = 1000
|
||||
chargerate = 300
|
||||
self_recharge = TRUE
|
||||
var/obj/item/gun/energy/e_gun/revolver/pdw9/parent
|
||||
|
||||
/obj/item/stock_parts/cell/pdw9/Initialize()
|
||||
|
||||
Reference in New Issue
Block a user