Merge branch 'master' into upstream-merge-37597
This commit is contained in:
@@ -51,8 +51,9 @@ other types of metals and chemistry for reagents).
|
||||
return ..()
|
||||
|
||||
/datum/design/proc/icon_html(client/user)
|
||||
send_asset(user, "design_[id].png", FALSE)
|
||||
return "<img class='icon' src=\"design_[id].png\">"
|
||||
var/datum/asset/spritesheet/sheet = get_asset_datum(/datum/asset/spritesheet/research_designs)
|
||||
sheet.send(user)
|
||||
return sheet.icon_tag(id)
|
||||
|
||||
////////////////////////////////////////
|
||||
//Disks for transporting design datums//
|
||||
|
||||
@@ -126,42 +126,47 @@
|
||||
/datum/design/apc_board
|
||||
name = "APC Module"
|
||||
id = "power control"
|
||||
build_type = AUTOLATHE
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 100, MAT_GLASS = 100)
|
||||
build_path = /obj/item/electronics/apc
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/airlock_board
|
||||
name = "Airlock Electronics"
|
||||
id = "airlock_board"
|
||||
build_type = AUTOLATHE
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/airlock
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/firelock_board
|
||||
name = "Firelock Circuitry"
|
||||
id = "firelock_board"
|
||||
build_type = AUTOLATHE
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/firelock
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/airalarm_electronics
|
||||
name = "Air Alarm Electronics"
|
||||
id = "airalarm_electronics"
|
||||
build_type = AUTOLATHE
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/airalarm
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/firealarm_electronics
|
||||
name = "Fire Alarm Electronics"
|
||||
id = "firealarm_electronics"
|
||||
build_type = AUTOLATHE
|
||||
build_type = AUTOLATHE | PROTOLATHE
|
||||
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
|
||||
build_path = /obj/item/electronics/firealarm
|
||||
category = list("initial", "Electronics")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/camera
|
||||
name = "Camera"
|
||||
@@ -451,7 +456,7 @@
|
||||
name = "Speed Loader (.38)"
|
||||
id = "c38"
|
||||
build_type = AUTOLATHE
|
||||
materials = list(MAT_METAL = 30000)
|
||||
materials = list(MAT_METAL = 20000)
|
||||
build_path = /obj/item/ammo_box/c38
|
||||
category = list("initial", "Security")
|
||||
|
||||
|
||||
@@ -222,14 +222,6 @@
|
||||
category = list("Computer Boards")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_CARGO
|
||||
|
||||
/datum/design/board/stockexchange
|
||||
name = "Computer Design (Stock Exchange Console)"
|
||||
desc = "Allows for the construction of circuit boards used to build a Stock Exchange Console."
|
||||
id = "stockexchange"
|
||||
build_path = /obj/item/circuitboard/computer/stockexchange
|
||||
category = list("Computer Boards")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_CARGO
|
||||
|
||||
/datum/design/board/mining
|
||||
name = "Computer Design (Outpost Status Display)"
|
||||
desc = "Allows for the construction of circuit boards used to build an outpost status display console."
|
||||
|
||||
@@ -323,12 +323,12 @@
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SERVICE
|
||||
|
||||
/datum/design/board/processor
|
||||
name = "Machine Design (Food Processor Board)"
|
||||
desc = "The circuit board for a food processor."
|
||||
name = "Machine Design (Food/Slime Processor Board)"
|
||||
desc = "The circuit board for a processing unit. Screwdrive the circuit to switch between food (default) or slime processing."
|
||||
id = "processor"
|
||||
build_path = /obj/item/circuitboard/machine/processor
|
||||
category = list ("Misc. Machinery")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SERVICE
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_SERVICE
|
||||
|
||||
/datum/design/board/soda_dispenser
|
||||
name = "Machine Design (Portable Soda Dispenser Board)"
|
||||
@@ -346,14 +346,6 @@
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SERVICE
|
||||
category = list ("Misc. Machinery")
|
||||
|
||||
/datum/design/board/slimeprocessor
|
||||
name = "Machine Design (Slime Processor Board)"
|
||||
desc = "The circuit board for a slime processor."
|
||||
id = "slimeprocessor"
|
||||
build_path = /obj/item/circuitboard/machine/processor/slime
|
||||
category = list ("Misc. Machinery")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE
|
||||
|
||||
/datum/design/board/recycler
|
||||
name = "Machine Design (Recycler Board)"
|
||||
desc = "The circuit board for a recycler."
|
||||
@@ -490,3 +482,19 @@
|
||||
build_path = /obj/item/circuitboard/machine/dish_drive
|
||||
category = list ("Misc. Machinery")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SERVICE
|
||||
|
||||
/datum/design/board/stacking_unit_console
|
||||
name = "Machine Design (Stacking Machine Console)"
|
||||
desc = "The circuit board for a Stacking Machine Console."
|
||||
id = "stack_console"
|
||||
build_path = /obj/item/circuitboard/machine/stacking_unit_console
|
||||
category = list ("Misc. Machinery")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/datum/design/board/stacking_machine
|
||||
name = "Machine Design (Stacking Machine)"
|
||||
desc = "The circuit board for a Stacking Machine."
|
||||
id = "stack_machine"
|
||||
build_path = /obj/item/circuitboard/machine/stacking_machine
|
||||
category = list ("Misc. Machinery")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_ENGINEERING
|
||||
@@ -354,3 +354,17 @@
|
||||
build_path = /obj/item/weldingtool/experimental
|
||||
category = list("Equipment")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING
|
||||
|
||||
/////////////////////////////////////////
|
||||
////////////Armour//////////////
|
||||
/////////////////////////////////////////
|
||||
|
||||
/datum/design/reactive_armour
|
||||
name = "Reactive Armour Shell"
|
||||
desc = "An experimental suit of armour capable of utilizing an implanted anomaly core to protect the user."
|
||||
id = "reactive_armour"
|
||||
build_type = PROTOLATHE
|
||||
materials = list(MAT_METAL = 10000, MAT_DIAMOND = 5000, MAT_URANIUM = 8000, MAT_SILVER = 4500, MAT_GOLD = 5000)
|
||||
build_path = /obj/item/reactive_armour_shell
|
||||
category = list("Equipment")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING
|
||||
@@ -21,15 +21,23 @@
|
||||
name = "Plasma + Glass alloy"
|
||||
id = "plasmaglass"
|
||||
build_type = SMELTER
|
||||
materials = list(MAT_PLASMA = MINERAL_MATERIAL_AMOUNT, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
materials = list(MAT_PLASMA = MINERAL_MATERIAL_AMOUNT * 0.5, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
build_path = /obj/item/stack/sheet/plasmaglass
|
||||
category = list("initial")
|
||||
|
||||
/datum/design/plasmarglass_alloy
|
||||
name = "Plasma + Metal + Glass alloy"
|
||||
id = "plasmareinforcedglass"
|
||||
build_type = SMELTER
|
||||
materials = list(MAT_PLASMA = MINERAL_MATERIAL_AMOUNT * 0.5, MAT_METAL = MINERAL_MATERIAL_AMOUNT * 0.5, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
build_path = /obj/item/stack/sheet/plasmarglass
|
||||
category = list("initial")
|
||||
|
||||
/datum/design/titaniumglass_alloy
|
||||
name = "Titanium + Glass alloy"
|
||||
id = "titaniumglass"
|
||||
build_type = SMELTER
|
||||
materials = list(MAT_TITANIUM = MINERAL_MATERIAL_AMOUNT, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
materials = list(MAT_TITANIUM = MINERAL_MATERIAL_AMOUNT * 0.5, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
build_path = /obj/item/stack/sheet/titaniumglass
|
||||
category = list("initial")
|
||||
|
||||
@@ -37,7 +45,7 @@
|
||||
name = "Plasma + Titanium + Glass alloy"
|
||||
id = "plastitaniumglass"
|
||||
build_type = SMELTER
|
||||
materials = list(MAT_PLASMA = MINERAL_MATERIAL_AMOUNT, MAT_TITANIUM = MINERAL_MATERIAL_AMOUNT, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
materials = list(MAT_PLASMA = MINERAL_MATERIAL_AMOUNT * 0.5, MAT_TITANIUM = MINERAL_MATERIAL_AMOUNT * 0.5, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
|
||||
build_path = /obj/item/stack/sheet/plastitaniumglass
|
||||
category = list("initial")
|
||||
|
||||
|
||||
@@ -44,24 +44,21 @@
|
||||
|
||||
|
||||
/obj/machinery/rnd/experimentor/proc/SetTypeReactions()
|
||||
var/probWeight = 0
|
||||
for(var/I in typesof(/obj/item))
|
||||
if(istype(I, /obj/item/relic))
|
||||
item_reactions["[I]"] = SCANTYPE_DISCOVER
|
||||
else
|
||||
item_reactions["[I]"] = pick(SCANTYPE_POKE,SCANTYPE_IRRADIATE,SCANTYPE_GAS,SCANTYPE_HEAT,SCANTYPE_COLD,SCANTYPE_OBLITERATE)
|
||||
|
||||
if(ispath(I, /obj/item/stock_parts) || ispath(I, /obj/item/grenade/chem_grenade) || ispath(I, /obj/item/kitchen))
|
||||
var/obj/item/tempCheck = I
|
||||
if(initial(tempCheck.icon_state) != null) //check it's an actual usable item, in a hacky way
|
||||
valid_items += 15
|
||||
valid_items += I
|
||||
probWeight++
|
||||
valid_items["[I]"] += 15
|
||||
|
||||
if(ispath(I, /obj/item/reagent_containers/food))
|
||||
var/obj/item/tempCheck = I
|
||||
if(initial(tempCheck.icon_state) != null) //check it's an actual usable item, in a hacky way
|
||||
valid_items += rand(1,max(2,35-probWeight))
|
||||
valid_items += I
|
||||
valid_items["[I]"] += rand(1,4)
|
||||
|
||||
if(ispath(I, /obj/item/construction/rcd) || ispath(I, /obj/item/grenade) || ispath(I, /obj/item/aicard) || ispath(I, /obj/item/storage/backpack/holding) || ispath(I, /obj/item/slime_extract) || ispath(I, /obj/item/onetankbomb) || ispath(I, /obj/item/transfer_valve))
|
||||
var/obj/item/tempCheck = I
|
||||
@@ -225,18 +222,6 @@
|
||||
smoke.set_up(0, where)
|
||||
smoke.start()
|
||||
|
||||
/obj/machinery/rnd/experimentor/proc/pickWeighted(list/from)
|
||||
var/result = FALSE
|
||||
var/counter = 1
|
||||
while(!result)
|
||||
var/probtocheck = from[counter]
|
||||
if(prob(probtocheck))
|
||||
result = TRUE
|
||||
return from[counter+1]
|
||||
if(counter + 2 < from.len)
|
||||
counter = counter + 2
|
||||
else
|
||||
counter = 1
|
||||
|
||||
/obj/machinery/rnd/experimentor/proc/experiment(exp,obj/item/exp_on)
|
||||
recentlyExperimented = 1
|
||||
@@ -283,13 +268,13 @@
|
||||
visible_message("<span class='warning'>[src] malfunctions, spewing toxic waste!</span>")
|
||||
for(var/turf/T in oview(1, src))
|
||||
if(!T.density)
|
||||
if(prob(EFFECT_PROB_VERYHIGH))
|
||||
if(prob(EFFECT_PROB_VERYHIGH) && !(locate(/obj/effect/decal/cleanable/greenglow) in T))
|
||||
var/obj/effect/decal/cleanable/reagentdecal = new/obj/effect/decal/cleanable/greenglow(T)
|
||||
reagentdecal.reagents.add_reagent("radium", 7)
|
||||
else if(prob(EFFECT_PROB_MEDIUM-badThingCoeff))
|
||||
var/savedName = "[exp_on]"
|
||||
ejectItem(TRUE)
|
||||
var/newPath = pickWeighted(valid_items)
|
||||
var/newPath = text2path(pickweight(valid_items))
|
||||
loaded_item = new newPath(src)
|
||||
visible_message("<span class='warning'>[src] malfunctions, transforming [savedName] into [loaded_item]!</span>")
|
||||
investigate_log("Experimentor has transformed [savedName] into [loaded_item]", INVESTIGATE_EXPERIMENTOR)
|
||||
|
||||
@@ -9,5 +9,6 @@
|
||||
|
||||
/obj/machinery/rnd/production/circuit_imprinter/department/science
|
||||
name = "department circuit imprinter (Science)"
|
||||
circuit = /obj/item/circuitboard/machine/circuit_imprinter/department/science
|
||||
allowed_department_flags = DEPARTMENTAL_FLAG_ALL|DEPARTMENTAL_FLAG_SCIENCE
|
||||
department_tag = "Science"
|
||||
@@ -50,6 +50,7 @@ doesn't have toxins access.
|
||||
var/research_control = TRUE
|
||||
|
||||
/obj/machinery/computer/rdconsole/production
|
||||
circuit = /obj/item/circuitboard/computer/rdconsole/production
|
||||
research_control = FALSE
|
||||
|
||||
/proc/CallMaterialName(ID)
|
||||
@@ -192,9 +193,10 @@ doesn't have toxins access.
|
||||
|
||||
/obj/machinery/computer/rdconsole/emag_act(mob/user)
|
||||
if(!(obj_flags & EMAGGED))
|
||||
to_chat(user, "<span class='notice'>You disable the security protocols</span>")
|
||||
to_chat(user, "<span class='notice'>You disable the security protocols[locked? " and unlock the console":""].</span>")
|
||||
playsound(src, "sparks", 75, 1)
|
||||
obj_flags |= EMAGGED
|
||||
locked = FALSE
|
||||
return ..()
|
||||
|
||||
/obj/machinery/computer/rdconsole/proc/list_categories(list/categories, menu_num as num)
|
||||
@@ -217,6 +219,8 @@ doesn't have toxins access.
|
||||
|
||||
/obj/machinery/computer/rdconsole/proc/ui_header()
|
||||
var/list/l = list()
|
||||
var/datum/asset/spritesheet/sheet = get_asset_datum(/datum/asset/spritesheet/research_designs)
|
||||
l += "[sheet.css_tag()][RDSCREEN_NOBREAK]"
|
||||
l += "<div class='statusDisplay'><b>[stored_research.organization] Research and Development Network</b>"
|
||||
l += "Available points: [round(stored_research.research_points)] (+[round(stored_research.last_bitcoins * 60)] / minute)"
|
||||
l += "Security protocols: [obj_flags & EMAGGED ? "<font color='red'>Disabled</font>" : "<font color='green'>Enabled</font>"]"
|
||||
@@ -815,6 +819,9 @@ doesn't have toxins access.
|
||||
if(ls["ui_mode"])
|
||||
ui_mode = text2num(ls["ui_mode"])
|
||||
if(ls["lock_console"])
|
||||
if(obj_flags & EMAGGED)
|
||||
to_chat(usr, "<span class='boldwarning'>Security protocol error: Unable to lock.</span>")
|
||||
return
|
||||
if(allowed(usr))
|
||||
lock_console(usr)
|
||||
else
|
||||
|
||||
@@ -93,7 +93,8 @@
|
||||
description = "A refresher course on modern engineering technology."
|
||||
prereq_ids = list("base")
|
||||
design_ids = list("solarcontrol", "recharger", "powermonitor", "rped", "pacman", "adv_capacitor", "adv_scanning", "emitter", "high_cell", "adv_matter_bin",
|
||||
"atmosalerts", "atmos_control", "recycler", "autolathe", "high_micro_laser", "nano_mani", "mesons", "thermomachine", "rad_collector", "tesla_coil", "grounding_rod", "apc_control", "cell_charger")
|
||||
"atmosalerts", "atmos_control", "recycler", "autolathe", "high_micro_laser", "nano_mani", "mesons", "thermomachine", "rad_collector", "tesla_coil", "grounding_rod",
|
||||
"apc_control", "cell_charger", "power control", "airlock_board", "firelock_board", "airalarm_electronics", "firealarm_electronics", "cell_charger", "stack_console", "stack_machine")
|
||||
research_cost = 7500
|
||||
export_price = 5000
|
||||
|
||||
@@ -106,6 +107,15 @@
|
||||
research_cost = 2500
|
||||
export_price = 5000
|
||||
|
||||
/datum/techweb_node/anomaly
|
||||
id = "anomaly_research"
|
||||
display_name = "Anomaly Research"
|
||||
description = "Unlock the potential of the mysterious anomalies that appear on station."
|
||||
prereq_ids = list("adv_engi", "practical_bluespace")
|
||||
design_ids = list("reactive_armour")
|
||||
research_cost = 2500
|
||||
export_price = 5000
|
||||
|
||||
/datum/techweb_node/high_efficiency
|
||||
id = "high_efficiency"
|
||||
display_name = "High Efficiency Parts"
|
||||
@@ -153,7 +163,6 @@
|
||||
research_cost = 5000
|
||||
export_price = 5000
|
||||
|
||||
|
||||
/datum/techweb_node/bluespace_power
|
||||
id = "bluespace_power"
|
||||
display_name = "Bluespace Power Technology"
|
||||
@@ -321,7 +330,7 @@
|
||||
display_name = "Computer Consoles"
|
||||
description = "Computers and how they work."
|
||||
prereq_ids = list("datatheory")
|
||||
design_ids = list("cargo", "cargorequest", "stockexchange", "libraryconsole", "mining", "crewconsole", "rdcamera", "comconsole", "idcardconsole", "seccamera")
|
||||
design_ids = list("cargo", "cargorequest", "libraryconsole", "mining", "crewconsole", "rdcamera", "comconsole", "idcardconsole", "seccamera")
|
||||
research_cost = 2000
|
||||
export_price = 5000
|
||||
|
||||
@@ -867,7 +876,7 @@
|
||||
display_name = "Illegal Technology"
|
||||
description = "Dangerous research used to create dangerous objects."
|
||||
prereq_ids = list("adv_engi", "adv_weaponry", "explosive_weapons")
|
||||
design_ids = list("decloner", "borg_syndicate_module", "suppressor", "largecrossbow")
|
||||
design_ids = list("decloner", "borg_syndicate_module", "suppressor", "largecrossbow", "donksofttoyvendor")
|
||||
research_cost = 10000
|
||||
export_price = 5000
|
||||
hidden = TRUE
|
||||
|
||||
@@ -448,8 +448,7 @@ datum/status_effect/stabilized/blue/on_remove()
|
||||
else if(istype(O, /obj/item/stack/sheet/hairlesshide))
|
||||
to_chat(owner, "<span class='warning'>[linked_extract] kept your hands wet! It wets [O]!</span>")
|
||||
var/obj/item/stack/sheet/hairlesshide/HH = O
|
||||
var/obj/item/stack/sheet/wetleather/WL = new(get_turf(HH))
|
||||
WL.amount = HH.amount
|
||||
new /obj/item/stack/sheet/wetleather(get_turf(HH), HH.amount)
|
||||
qdel(HH)
|
||||
..()
|
||||
|
||||
|
||||
@@ -386,7 +386,7 @@ Burning extracts:
|
||||
item_state = "adamshield"
|
||||
w_class = WEIGHT_CLASS_HUGE
|
||||
armor = list("melee" = 50, "bullet" = 50, "laser" = 50, "energy" = 0, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 70)
|
||||
slot_flags = SLOT_BACK
|
||||
slot_flags = ITEM_SLOT_BACK
|
||||
block_chance = 75
|
||||
throw_range = 1 //How far do you think you're gonna throw a solid crystalline shield...?
|
||||
throw_speed = 2
|
||||
|
||||
@@ -66,10 +66,8 @@ Charged extracts:
|
||||
colour = "metal"
|
||||
|
||||
/obj/item/slimecross/charged/metal/do_effect(mob/user)
|
||||
var/obj/item/stack/sheet/metal/M = new(get_turf(user))
|
||||
M.amount = 25
|
||||
var/obj/item/stack/sheet/plasteel/P = new(get_turf(user))
|
||||
P.amount = 10
|
||||
new /obj/item/stack/sheet/metal(get_turf(user), 25)
|
||||
new /obj/item/stack/sheet/plasteel(get_turf(user), 10)
|
||||
user.visible_message("<span class='notice'>[src] grows into a plethora of metals!</span>")
|
||||
..()
|
||||
|
||||
@@ -85,8 +83,7 @@ Charged extracts:
|
||||
colour = "dark purple"
|
||||
|
||||
/obj/item/slimecross/charged/darkpurple/do_effect(mob/user)
|
||||
var/obj/item/stack/sheet/mineral/plasma/M = new(get_turf(user))
|
||||
M.amount = 10
|
||||
new /obj/item/stack/sheet/mineral/plasma(get_turf(user), 10)
|
||||
user.visible_message("<span class='notice'>[src] produces a large amount of plasma!</span>")
|
||||
..()
|
||||
|
||||
@@ -113,8 +110,7 @@ Charged extracts:
|
||||
colour = "bluespace"
|
||||
|
||||
/obj/item/slimecross/charged/bluespace/do_effect(mob/user)
|
||||
var/obj/item/stack/sheet/bluespace_crystal/M = new(get_turf(user))
|
||||
M.amount = 10
|
||||
new /obj/item/stack/sheet/bluespace_crystal(get_turf(user), 10)
|
||||
user.visible_message("<span class='notice'>[src] produces several sheets of polycrystal!</span>")
|
||||
..()
|
||||
|
||||
@@ -138,8 +134,7 @@ Charged extracts:
|
||||
colour = "pyrite"
|
||||
|
||||
/obj/item/slimecross/charged/pyrite/do_effect(mob/user)
|
||||
var/obj/item/stack/sheet/mineral/bananium/M = new(get_turf(user))
|
||||
M.amount = 10
|
||||
new /obj/item/stack/sheet/mineral/bananium(get_turf(user), 10)
|
||||
user.visible_message("<span class='warning'>[src] solidifies with a horrifying banana stench!</span>")
|
||||
..()
|
||||
|
||||
@@ -329,7 +324,7 @@ Charged extracts:
|
||||
if(!istype(C))
|
||||
to_chat(user, "<span class='warning'>The potion can only be used on clothing!</span>")
|
||||
return
|
||||
if(C.min_cold_protection_temperature == SPACE_SUIT_MIN_TEMP_PROTECT && C.flags_1 & STOPSPRESSUREDMAGE_1)
|
||||
if(C.min_cold_protection_temperature == SPACE_SUIT_MIN_TEMP_PROTECT && C.clothing_flags & STOPSPRESSUREDAMAGE)
|
||||
to_chat(user, "<span class='warning'>The [C] is already pressure-resistant!</span>")
|
||||
return ..()
|
||||
to_chat(user, "<span class='notice'>You slather the blue gunk over the [C], making it airtight.</span>")
|
||||
@@ -338,7 +333,7 @@ Charged extracts:
|
||||
C.add_atom_colour("#000080", FIXED_COLOUR_PRIORITY)
|
||||
C.min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT
|
||||
C.cold_protection = C.body_parts_covered
|
||||
C.flags_1 |= STOPSPRESSUREDMAGE_1
|
||||
C.clothing_flags |= STOPSPRESSUREDAMAGE
|
||||
uses--
|
||||
if(!uses)
|
||||
qdel(src)
|
||||
@@ -371,7 +366,9 @@ Charged extracts:
|
||||
C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY)
|
||||
C.add_atom_colour("#800000", FIXED_COLOUR_PRIORITY)
|
||||
C.resistance_flags |= LAVA_PROOF
|
||||
C.flags_2 |= LAVA_PROTECT_2
|
||||
if (istype(C, /obj/item/clothing))
|
||||
var/obj/item/clothing/CL = C
|
||||
CL.clothing_flags |= LAVAPROTECT
|
||||
uses--
|
||||
if(!uses)
|
||||
qdel(src)
|
||||
|
||||
@@ -75,12 +75,7 @@ Industrial extracts:
|
||||
/obj/item/slimecross/industrial/metal
|
||||
colour = "metal"
|
||||
plasmarequired = 3
|
||||
itempath = /obj/item/stack/sheet/metal
|
||||
|
||||
/obj/item/slimecross/industrial/metal/do_after_spawn(obj/item/spawned)
|
||||
var/obj/item/stack/sheet/metal/M = spawned
|
||||
if(istype(M))
|
||||
M.amount = 10
|
||||
itempath = /obj/item/stack/sheet/metal/ten
|
||||
|
||||
/obj/item/slimecross/industrial/yellow
|
||||
colour = "yellow"
|
||||
|
||||
@@ -89,10 +89,10 @@ Regenerative extracts:
|
||||
|
||||
/obj/item/slimecross/regenerative/darkpurple/core_effect(mob/living/target, mob/user)
|
||||
var/equipped = 0
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/purple(null), slot_shoes)
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(null), slot_w_uniform)
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/purple(null), slot_gloves)
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/head/soft/purple(null), slot_head)
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/purple(null), SLOT_SHOES)
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(null), SLOT_W_UNIFORM)
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/purple(null), SLOT_GLOVES)
|
||||
equipped += target.equip_to_slot_or_del(new /obj/item/clothing/head/soft/purple(null), SLOT_HEAD)
|
||||
if(equipped > 0)
|
||||
target.visible_message("<span class='notice'>The milky goo congeals into clothing!</span>")
|
||||
|
||||
@@ -104,13 +104,13 @@ Regenerative extracts:
|
||||
return
|
||||
var/mob/living/carbon/human/H = target
|
||||
var/fireproofed = FALSE
|
||||
if(H.get_item_by_slot(slot_wear_suit))
|
||||
if(H.get_item_by_slot(SLOT_WEAR_SUIT))
|
||||
fireproofed = TRUE
|
||||
var/obj/item/clothing/C = H.get_item_by_slot(slot_wear_suit)
|
||||
var/obj/item/clothing/C = H.get_item_by_slot(SLOT_WEAR_SUIT)
|
||||
fireproof(C)
|
||||
if(H.get_item_by_slot(slot_head))
|
||||
if(H.get_item_by_slot(SLOT_HEAD))
|
||||
fireproofed = TRUE
|
||||
var/obj/item/clothing/C = H.get_item_by_slot(slot_head)
|
||||
var/obj/item/clothing/C = H.get_item_by_slot(SLOT_HEAD)
|
||||
fireproof(C)
|
||||
if(fireproofed)
|
||||
target.visible_message("<span class='notice'>Some of [target]'s clothing gets coated in the goo, and turns blue!</span>")
|
||||
|
||||
Reference in New Issue
Block a user