Merge branch 'master' of https://github.com/tgstation/-tg-station into listmos

Conflicts:
	code/controllers/subsystem/air.dm
	code/datums/gas_mixture.dm
	code/game/objects/items/devices/scanners.dm
	code/modules/mob/living/carbon/human/species.dm
	code/modules/mob/living/carbon/life.dm
	tgui/assets/tgui.css
	tgui/assets/tgui.js
	tgui/scripts/interfaces/atmos_filter.ract
This commit is contained in:
duncathan
2016-01-13 20:07:21 -06:00
398 changed files with 7356 additions and 6636 deletions
+1 -2
View File
@@ -59,8 +59,7 @@
if(!src.lit)
src.lit = 1
//src.damtype = "fire"
for(var/mob/O in viewers(usr, null))
O.show_message(flavor_text, 1)
usr.visible_message(flavor_text)
SetLuminosity(CANDLE_LUMINOSITY)
if(!infinite)
SSobj.processing |= src
+3 -3
View File
@@ -773,7 +773,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
/obj/item/device/pda/proc/show_to_ghosts(mob/living/user, datum/data_pda_msg/msg,multiple = 0)
for(var/mob/M in player_list)
if(isobserver(M) && M.client && (M.client.prefs.chat_toggles & CHAT_GHOSTPDA))
M.show_message("<a href='?src=\ref[M];follow=\ref[user]'>(F)</a><span class='name'> [msg.sender] </span><span class='game say'>PDA Message</span> --> <span class='name'>[multiple ? "Everyone" : msg.recipient]</span>: <span class='message'>[msg.message][msg.get_photo_ref()]</span></span>")
M << "<a href='?src=\ref[M];follow=\ref[user]'>(F)</a><span class='name'> [msg.sender] </span><span class='game say'>PDA Message</span> --> <span class='name'>[multiple ? "Everyone" : msg.recipient]</span>: <span class='message'>[msg.message][msg.get_photo_ref()]</span></span>"
/obj/item/device/pda/proc/can_send(obj/item/device/pda/P)
if(!P || qdeleted(P) || P.toff)
@@ -939,9 +939,9 @@ var/global/list/obj/item/device/pda/PDAs = list()
switch(scanmode)
if(1)
user.visible_message(text("<span class='alert'>[] has analyzed []'s vitals!</span>", user, C))
C.visible_message("<span class='alert'>[user] has analyzed [C]'s vitals!</span>")
healthscan(user, C, 1)
src.add_fingerprint(user)
add_fingerprint(user)
if(2)
// Unused
+20 -15
View File
@@ -241,11 +241,12 @@
/obj/item/weapon/cartridge/proc/print_to_host(text)
if (!istype(loc, /obj/item/device/pda))
return
loc:cart = text
var/obj/item/device/pda/P = loc
P.cart = text
for (var/mob/M in viewers(1, loc.loc))
if (M.client && M.machine == loc)
loc:attack_self(M)
P.attack_self(M)
return
@@ -273,6 +274,7 @@
/obj/item/weapon/cartridge/proc/generate_menu(mob/user)
switch(mode)
if(40) //signaller
var/obj/item/radio/integrated/signal/S = radio
menu = "<h4><img src=pda_signaler.png> Remote Signaling System</h4>"
menu += {"
@@ -280,14 +282,14 @@
Frequency:
<a href='byond://?src=\ref[src];choice=Signal Frequency;sfreq=-10'>-</a>
<a href='byond://?src=\ref[src];choice=Signal Frequency;sfreq=-2'>-</a>
[format_frequency(radio:frequency)]
[format_frequency(S.frequency)]
<a href='byond://?src=\ref[src];choice=Signal Frequency;sfreq=2'>+</a>
<a href='byond://?src=\ref[src];choice=Signal Frequency;sfreq=10'>+</a><br>
<br>
Code:
<a href='byond://?src=\ref[src];choice=Signal Code;scode=-5'>-</a>
<a href='byond://?src=\ref[src];choice=Signal Code;scode=-1'>-</a>
[radio:code]
[S.code]
<a href='byond://?src=\ref[src];choice=Signal Code;scode=1'>+</a>
<a href='byond://?src=\ref[src];choice=Signal Code;scode=5'>+</a><br>"}
if (41) //crew manifest
@@ -611,7 +613,7 @@ Code:
active1 = find_record("id", href_list["target"], data_core.general)
if(active1)
active2 = find_record("id", href_list["target"], data_core.medical)
loc:mode = 441
pda.mode = 441
mode = 441
if(!active2)
active1 = null
@@ -620,25 +622,28 @@ Code:
active1 = find_record("id", href_list["target"], data_core.general)
if(active1)
active3 = find_record("id", href_list["target"], data_core.security)
loc:mode = 451
pda.mode = 451
mode = 451
if(!active3)
active1 = null
if("Send Signal")
spawn( 0 )
radio:send_signal("ACTIVATE")
var/obj/item/radio/integrated/signal/S = radio
S.send_signal("ACTIVATE")
return
if("Signal Frequency")
var/new_frequency = sanitize_frequency(radio:frequency + text2num(href_list["sfreq"]))
radio:set_frequency(new_frequency)
var/obj/item/radio/integrated/signal/S = radio
var/new_frequency = sanitize_frequency(S.frequency + text2num(href_list["sfreq"]))
S.set_frequency(new_frequency)
if("Signal Code")
radio:code += text2num(href_list["scode"])
radio:code = round(radio:code)
radio:code = min(100, radio:code)
radio:code = max(1, radio:code)
var/obj/item/radio/integrated/signal/S = radio
S.code += text2num(href_list["scode"])
S.code = round(S.code)
S.code = min(100, S.code)
S.code = max(1, S.code)
if("Status")
switch(href_list["statdisp"])
@@ -657,7 +662,7 @@ Code:
if("Power Select")
var/pnum = text2num(href_list["target"])
powmonitor = powermonitors[pnum]
loc:mode = 433
pda.mode = 433
mode = 433
if("Supply Orders")
@@ -762,4 +767,4 @@ Code:
menu += "No bots found.<BR>"
return
return menu
return menu
@@ -12,13 +12,11 @@
var/can_use = 1
var/obj/effect/dummy/chameleon/active_dummy = null
var/saved_appearance = null
/*
var/saved_item = /obj/item/weapon/cigbutt
var/saved_icon = 'icons/obj/clothing/masks.dmi'
var/saved_icon_state = "cigbutt"
var/saved_overlays = null
var/saved_underlays = null
*/
/obj/item/device/chameleon/New()
..()
var/obj/item/weapon/cigbutt/butt = /obj/item/weapon/cigbutt
saved_appearance = initial(butt.appearance)
/obj/item/device/chameleon/dropped()
disrupt()
@@ -20,8 +20,7 @@
/obj/item/device/radio/intercom/attack_ai(mob/user)
src.add_fingerprint(user)
spawn (0)
attack_self(user)
attack_self(user)
/obj/item/device/radio/intercom/attack_paw(mob/user)
return src.attack_hand(user)
@@ -29,8 +28,7 @@
/obj/item/device/radio/intercom/attack_hand(mob/user)
src.add_fingerprint(user)
spawn (0)
attack_self(user)
attack_self(user)
/obj/item/device/radio/intercom/receive_range(freq, level)
if (!on)
@@ -543,10 +543,10 @@
return
b_stat = !( b_stat )
if(!istype(src, /obj/item/device/radio/beacon))
if (b_stat)
user.show_message("<span class='notice'>The radio can now be attached and modified!</span>")
if(b_stat)
user << "<span class='notice'>The radio can now be attached and modified!</span>"
else
user.show_message("<span class='notice'>The radio can no longer be modified or attached!</span>")
user << "<span class='notice'>The radio can no longer be modified or attached!</span>"
updateDialog()
//Foreach goto(83)
add_fingerprint(user)
+42 -40
View File
@@ -114,7 +114,8 @@ MASS SPECTROMETER
// Used by the PDA medical scanner too
/proc/healthscan(mob/living/user, mob/living/M, mode = 1)
if(user.stat || user.eye_blind)
return
//Damage specifics
var/oxy_loss = M.getOxyLoss()
var/tox_loss = M.getToxLoss()
@@ -199,8 +200,8 @@ MASS SPECTROMETER
if(CI.status == ORGAN_ROBOTIC)
implant_detect += "[H.name] is modified with a [CI.name].<br>"
if(implant_detect)
user.show_message("<span class='notice'>Detected cybernetic modifications:</span>")
user.show_message("<span class='notice'>[implant_detect]</span>")
user << "<span class='notice'>Detected cybernetic modifications:</span>"
user << "<span class='notice'>[implant_detect]</span>"
/proc/chemscan(mob/living/user, mob/living/M)
if(ishuman(M))
@@ -250,11 +251,13 @@ MASS SPECTROMETER
/obj/item/device/analyzer/attack_self(mob/user)
if (user.stat)
add_fingerprint(user)
if (user.stat || user.eye_blind)
return
var/turf/location = user.loc
if (!( istype(location, /turf) ))
if(!istype(location))
return
var/datum/gas_mixture/environment = location.return_air()
@@ -262,11 +265,11 @@ MASS SPECTROMETER
var/pressure = environment.return_pressure()
var/total_moles = environment.total_moles()
user.show_message("<span class='info'><B>Results:</B></span>", 1)
user << "<span class='info'><B>Results:</B></span>"
if(abs(pressure - ONE_ATMOSPHERE) < 10)
user.show_message("<span class='info'>Pressure: [round(pressure,0.1)] kPa</span>", 1)
user << "<span class='info'>Pressure: [round(pressure,0.1)] kPa</span>"
else
user.show_message("<span class='alert'>Pressure: [round(pressure,0.1)] kPa</span>", 1)
user << "<span class='alert'>Pressure: [round(pressure,0.1)] kPa</span>"
if(total_moles)
var/list/env_gases = environment.gases
@@ -278,33 +281,30 @@ MASS SPECTROMETER
environment.garbage_collect()
if(abs(n2_concentration - N2STANDARD) < 20)
user.show_message("<span class='info'>Nitrogen: [round(n2_concentration*100)] %</span>", 1)
user << "<span class='info'>Nitrogen: [round(n2_concentration*100)] %</span>"
else
user.show_message("<span class='alert'>Nitrogen: [round(n2_concentration*100)] %</span>", 1)
user << "<span class='alert'>Nitrogen: [round(n2_concentration*100)] %</span>"
if(abs(o2_concentration - O2STANDARD) < 2)
user.show_message("<span class='info'>Oxygen: [round(o2_concentration*100)] %</span>", 1)
user << "<span class='info'>Oxygen: [round(o2_concentration*100)] %</span>"
else
user.show_message("<span class='alert'>Oxygen: [round(o2_concentration*100)] %</span>", 1)
user << "<span class='alert'>Oxygen: [round(o2_concentration*100)] %</span>"
if(co2_concentration > 0.01)
user.show_message("<span class='alert'>CO2: [round(co2_concentration*100)] %</span>", 1)
user << "<span class='alert'>CO2: [round(co2_concentration*100)] %</span>"
else
user.show_message("<span class='info'>CO2: [round(co2_concentration*100)] %</span>", 1)
user << "<span class='info'>CO2: [round(co2_concentration*100)] %</span>"
if(plasma_concentration > 0.01)
user.show_message("<span class='info'>Plasma: [round(plasma_concentration*100)] %</span>", 1)
user << "<span class='info'>Plasma: [round(plasma_concentration*100)] %</span>"
for(var/id in env_gases)
if(id in hardcoded_gases)
continue
var/gas_concentration = env_gases[id][MOLES]/total_moles
user.show_message("<span class='alert'>[env_gases[id][GAS_NAME]]: [round(gas_concentration*100)] %</span>", 1)
user << "<span class='alert'>[env_gases[id][GAS_NAME]]: [round(gas_concentration*100)] %</span>"
user << "<span class='info'>Temperature: [round(environment.temperature-T0C)] &deg;C</span>"
user.show_message("<span class='info'>Temperature: [round(environment.temperature-T0C)] &deg;C</span>", 1)
src.add_fingerprint(user)
return
/obj/item/device/mass_spectrometer
desc = "A hand-held mass spectrometer which identifies trace chemicals in a blood sample."
@@ -333,7 +333,7 @@ MASS SPECTROMETER
icon_state = initial(icon_state)
/obj/item/device/mass_spectrometer/attack_self(mob/user)
if (user.stat)
if (user.stat || user.eye_blind)
return
if (crit_fail)
user << "<span class='warning'>This device has critically failed and is no longer functional!</span>"
@@ -346,7 +346,7 @@ MASS SPECTROMETER
for(var/datum/reagent/R in reagents.reagent_list)
if(R.id != "blood")
reagents.clear_reagents()
user.show_message("<span class='warning'>The sample was contaminated! Please insert another sample.</span>", 1)
user << "<span class='warning'>The sample was contaminated! Please insert another sample.</span>"
return
else
blood_traces = params2list(R.data["trace_chem"])
@@ -373,7 +373,7 @@ MASS SPECTROMETER
dat += "</i>"
user << dat
reagents.clear_reagents()
return
/obj/item/device/mass_spectrometer/adv
name = "advanced mass-spectrometer"
@@ -395,32 +395,34 @@ MASS SPECTROMETER
materials = list(MAT_METAL=30, MAT_GLASS=20)
/obj/item/device/slime_scanner/attack(mob/living/M, mob/living/user)
if(user.stat || user.eye_blind)
return
if (!isslime(M))
user.show_message("<span class='warning'>This device can only scan slimes!</span>", 1)
user << "<span class='warning'>This device can only scan slimes!</span>"
return
var/mob/living/simple_animal/slime/T = M
user.show_message("Slime scan results:", 1)
user.show_message(text("[T.colour] [] slime", T.is_adult ? "adult" : "baby"), 1)
user.show_message(text("Nutrition: [T.nutrition]/[]", T.get_max_nutrition()), 1)
user << "Slime scan results:"
user << "[T.colour] [T.is_adult ? "adult" : "baby"] slime"
user << "Nutrition: [T.nutrition]/[T.get_max_nutrition()]"
if (T.nutrition < T.get_starve_nutrition())
user.show_message("<span class='warning'>Warning: slime is starving!</span>", 1)
user << "<span class='warning'>Warning: slime is starving!</span>"
else if (T.nutrition < T.get_hunger_nutrition())
user.show_message("<span class='warning'>Warning: slime is hungry</span>", 1)
user.show_message("Electric change strength: [T.powerlevel]", 1)
user.show_message("Health: [T.health]", 1)
user << "<span class='warning'>Warning: slime is hungry</span>"
user << "Electric change strength: [T.powerlevel]"
user << "Health: [T.health]"
if (T.slime_mutation[4] == T.colour)
user.show_message("This slime does not evolve any further.", 1)
user << "This slime does not evolve any further."
else
if (T.slime_mutation[3] == T.slime_mutation[4])
if (T.slime_mutation[2] == T.slime_mutation[1])
user.show_message("Possible mutation: [T.slime_mutation[3]]", 1)
user.show_message("Genetic destability: [T.mutation_chance/2] % chance of mutation on splitting", 1)
user << "Possible mutation: [T.slime_mutation[3]]"
user << "Genetic destability: [T.mutation_chance/2] % chance of mutation on splitting"
else
user.show_message("Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]] (x2)", 1)
user.show_message("Genetic destability: [T.mutation_chance] % chance of mutation on splitting", 1)
user << "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]] (x2)"
user << "Genetic destability: [T.mutation_chance] % chance of mutation on splitting"
else
user.show_message("Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]], [T.slime_mutation[4]]", 1)
user.show_message("Genetic destability: [T.mutation_chance] % chance of mutation on splitting", 1)
user << "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]], [T.slime_mutation[4]]"
user << "Genetic destability: [T.mutation_chance] % chance of mutation on splitting"
if (T.cores > 1)
user.show_message("Anomalious slime core amount detected", 1)
user.show_message("Growth progress: [T.amount_grown]/[SLIME_EVOLUTION_THRESHOLD]", 1)
user << "Anomalious slime core amount detected"
user << "Growth progress: [T.amount_grown]/[SLIME_EVOLUTION_THRESHOLD]"
@@ -40,16 +40,15 @@ effective or pretty fucking useless.
add_logs(user, null, "knocked down people in the area", src)
for(var/mob/living/carbon/human/M in ultra_range(10, user, 1))
spawn()
if(prob(50))
if(prob(50))
M.Weaken(rand(10,20))
if(prob(25))
M.Stun(rand(5,10))
M << "<span class='userdanger'>You feel a tremendous, paralyzing wave flood your mind.</span>"
M.Weaken(rand(10,20))
if(prob(25))
M.Stun(rand(5,10))
M << "<span class='userdanger'>You feel a tremendous, paralyzing wave flood your mind.</span>"
else
M << "<span class='userdanger'>You feel a sudden, electric jolt travel through your head.</span>"
else
M << "<span class='userdanger'>You feel a sudden, electric jolt travel through your head.</span>"
playsound(src.loc, 'sound/misc/interference.ogg', 50, 1)
user << "<span class='notice'>You trigger [src].</span>"
+9 -8
View File
@@ -175,14 +175,15 @@ var/list/world_uplinks = list()
return 0
//Refund proc for the borg teleporter (later I'll make a general refund proc if there is demand for it)
/obj/item/device/radio/uplink/attackby(obj/item/weapon/W, mob/user, params)
if(istype(W, /obj/item/weapon/antag_spawner/nuke_ops))
var/obj/item/weapon/antag_spawner/nuke_ops/S = W
if(!S.used)
hidden_uplink.uses += S.TC_cost
qdel(S)
user << "<span class='notice'>Teleporter refunded.</span>"
else
user << "<span class='warning'>This teleporter is already used!</span>"
if(istype(W))
for(var/path in subtypesof(/datum/uplink_item))
var/datum/uplink_item/D = path
if(initial(D.item) == W.type && initial(D.refundable))
hidden_uplink.uses += (D.cost)
hidden_uplink.used_TC -= initial(D.cost)
user << "<span class='notice'>[W] refunded.</span>"
qdel(W)
return
// PRESET UPLINKS
// A collection of preset uplinks.
+8 -5
View File
@@ -17,11 +17,14 @@
var/is_cyborg = 0 // It's 1 if module is used by a cyborg, and uses its storage
var/datum/robot_energy_storage/source
var/cost = 1 // How much energy from storage it costs
var/merge_type = null // This path and its children should merge with this stack, defaults to src.type
/obj/item/stack/New(var/loc, var/amount=null)
..()
if (amount)
src.amount = amount
if(!merge_type)
merge_type = src.type
return
/obj/item/stack/Destroy()
@@ -208,19 +211,19 @@
S.add(transfer)
/obj/item/stack/Crossed(obj/o)
if(istype(o, src.type) && !o.throwing)
if(istype(o, merge_type) && !o.throwing)
merge(o)
return ..()
/obj/item/stack/hitby(atom/movable/AM, skip, hitpush)
if(istype(AM, src.type))
if(istype(AM, merge_type))
merge(AM)
return ..()
/obj/item/stack/attack_hand(mob/user)
if (user.get_inactive_hand() == src)
if(zero_amount()) return
var/obj/item/stack/F = new src.type( user, 1)
var/obj/item/stack/F = new src.type(user, 1)
. = F
F.copy_evidences(src)
user.put_in_hands(F)
@@ -234,7 +237,7 @@
return
/obj/item/stack/attackby(obj/item/W, mob/user, params)
if(istype(W, src.type))
if(istype(W, merge_type))
var/obj/item/stack/S = W
merge(S)
user << "<span class='notice'>Your [S.name] stack now contains [S.get_amount()] [S.singular_name]\s.</span>"
@@ -268,4 +271,4 @@
src.max_res_amount = max_res_amount
src.time = time
src.one_per_turf = one_per_turf
src.on_floor = on_floor
src.on_floor = on_floor
+8 -8
View File
@@ -422,7 +422,7 @@
if(istype(target, /obj/effect/decal/cleanable))
target = target.loc
if(is_type_in_list(target,validSurfaces))
var/temp = "rune"
if(letters.Find(drawtype))
temp = "letter"
@@ -1106,13 +1106,13 @@
if (cooldown < world.time)
cooldown = world.time + 1800 //3 minutes
user.visible_message("<span class='warning'>[user] presses a button on [src].</span>", "<span class='notice'>You activate [src], it plays a loud noise!</span>", "<span class='italics'>You hear the click of a button.</span>")
spawn(5) //gia said so
icon_state = "nuketoy"
playsound(src, 'sound/machines/Alarm.ogg', 100, 0, surround = 0)
sleep(135)
icon_state = "nuketoycool"
sleep(cooldown - world.time)
icon_state = "nuketoyidle"
sleep(5)
icon_state = "nuketoy"
playsound(src, 'sound/machines/Alarm.ogg', 100, 0, surround = 0)
sleep(135)
icon_state = "nuketoycool"
sleep(cooldown - world.time)
icon_state = "nuketoyidle"
else
var/timeleft = (cooldown - world.time)
user << "<span class='alert'>Nothing happens, and '</span>[round(timeleft/10)]<span class='alert'>' appears on a small display.</span>"
@@ -60,13 +60,6 @@ AI MODULES
user << "Upload complete. [reciever]'s laws have been modified."
reciever.show_laws()
reciever.law_change_counter++
if(isAI(reciever))
var/mob/living/silicon/ai/A = reciever
for(var/mob/living/silicon/robot/R in A.connected_robots)
if(R.lawupdate)
R << "From now on, these are your laws:"
R.show_laws()
R.law_change_counter++
var/time = time2text(world.realtime,"hh:mm:ss")
lawchanges.Add("[time] <B>:</B> [user.name]([user.key]) used [src.name] on [reciever.name]([reciever.key]).[law2log ? " The law specified [law2log]" : ""]")
+2 -1
View File
@@ -450,7 +450,8 @@
busy = 0
update_icon()
return
H.notify_ghost_cloning("Your heart is being defibrillated. Re-enter your corpse if you want to be revived!", source = src)
if(!H.suiciding && !(H.disabilities & NOCLONE))
H.notify_ghost_cloning("Your heart is being defibrillated. Re-enter your corpse if you want to be revived!", source = src)
user.visible_message("<span class='warning'>[user] begins to place [src] on [M.name]'s chest.</span>", "<span class='warning'>You begin to place [src] on [M.name]'s chest...</span>")
busy = 1
+62 -144
View File
@@ -12,13 +12,24 @@
var/list/fields
var/list/add_mutations = list()
var/list/remove_mutations = list()
var/list/add_mutations_static = list()
var/list/remove_mutations_static = list()
var/used = 0
/obj/item/weapon/dnainjector/attack_paw(mob/user)
return attack_hand(user)
/obj/item/weapon/dnainjector/proc/prepare()
for(var/mut_key in add_mutations_static)
add_mutations.Add(mutations_list[mut_key])
for(var/mut_key in remove_mutations_static)
remove_mutations.Add(mutations_list[mut_key])
/obj/item/weapon/dnainjector/proc/inject(mob/living/carbon/M, mob/user)
prepare()
if(M.has_dna() && !(M.disabilities & NOCLONE))
M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2))
var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]"
@@ -76,170 +87,123 @@
/obj/item/weapon/dnainjector/antihulk
name = "\improper DNA injector (Anti-Hulk)"
desc = "Cures green skin."
New()
..()
remove_mutations.Add(mutations_list[HULK])
remove_mutations_static = list(HULK)
/obj/item/weapon/dnainjector/hulkmut
name = "\improper DNA injector (Hulk)"
desc = "This will make you big and strong, but give you a bad skin condition."
New()
..()
add_mutations.Add(mutations_list[HULK])
add_mutations_static = list(HULK)
/obj/item/weapon/dnainjector/xraymut
name = "\improper DNA injector (Xray)"
desc = "Finally you can see what the Captain does."
New()
..()
add_mutations.Add(mutations_list[XRAY])
add_mutations_static = list(XRAY)
/obj/item/weapon/dnainjector/antixray
name = "\improper DNA injector (Anti-Xray)"
desc = "It will make you see harder."
New()
..()
remove_mutations.Add(mutations_list[XRAY])
remove_mutations_static = list(XRAY)
/////////////////////////////////////
/obj/item/weapon/dnainjector/antiglasses
name = "\improper DNA injector (Anti-Glasses)"
desc = "Toss away those glasses!"
New()
..()
remove_mutations.Add(mutations_list[BADSIGHT])
remove_mutations_static = list(BADSIGHT)
/obj/item/weapon/dnainjector/glassesmut
name = "\improper DNA injector (Glasses)"
desc = "Will make you need dorkish glasses."
New()
..()
add_mutations.Add(mutations_list[BADSIGHT])
add_mutations_static = list(BADSIGHT)
/obj/item/weapon/dnainjector/epimut
name = "\improper DNA injector (Epi.)"
desc = "Shake shake shake the room!"
New()
..()
add_mutations.Add(mutations_list[EPILEPSY])
add_mutations_static = list(EPILEPSY)
/obj/item/weapon/dnainjector/antiepi
name = "\improper DNA injector (Anti-Epi.)"
desc = "Will fix you up from shaking the room."
New()
..()
remove_mutations.Add(mutations_list[EPILEPSY])
remove_mutations_static = list(EPILEPSY)
////////////////////////////////////
/obj/item/weapon/dnainjector/anticough
name = "\improper DNA injector (Anti-Cough)"
desc = "Will stop that aweful noise."
New()
..()
remove_mutations.Add(mutations_list[COUGH])
remove_mutations_static = list(COUGH)
/obj/item/weapon/dnainjector/coughmut
name = "\improper DNA injector (Cough)"
desc = "Will bring forth a sound of horror from your throat."
New()
..()
add_mutations.Add(mutations_list[COUGH])
add_mutations_static = list(COUGH)
/obj/item/weapon/dnainjector/antidwarf
name = "\improper DNA injector (Anti-Dwarfism)"
desc = "Helps you grow big and strong."
New()
..()
remove_mutations.Add(mutations_list[DWARFISM])
remove_mutations_static = list(DWARFISM)
/obj/item/weapon/dnainjector/dwarf
name = "\improper DNA injector (Dwarfism)"
desc = "Its a small world after all."
New()
..()
add_mutations.Add(mutations_list[DWARFISM])
add_mutations_static = list(DWARFISM)
/obj/item/weapon/dnainjector/clumsymut
name = "\improper DNA injector (Clumsy)"
desc = "Makes clown minions."
New()
..()
add_mutations.Add(mutations_list[CLOWNMUT])
add_mutations_static = list(CLOWNMUT)
/obj/item/weapon/dnainjector/anticlumsy
name = "\improper DNA injector (Anti-Clumy)"
desc = "Apply this for Security Clown."
New()
..()
remove_mutations.Add(mutations_list[CLOWNMUT])
remove_mutations_static = list(CLOWNMUT)
/obj/item/weapon/dnainjector/antitour
name = "\improper DNA injector (Anti-Tour.)"
desc = "Will cure tourrets."
New()
..()
remove_mutations.Add(mutations_list[TOURETTES])
remove_mutations_static = list(TOURETTES)
/obj/item/weapon/dnainjector/tourmut
name = "\improper DNA injector (Tour.)"
desc = "Gives you a nasty case off tourrets."
New()
..()
add_mutations.Add(mutations_list[TOURETTES])
add_mutations_static = list(TOURETTES)
/obj/item/weapon/dnainjector/stuttmut
name = "\improper DNA injector (Stutt.)"
desc = "Makes you s-s-stuttterrr"
New()
..()
add_mutations.Add(mutations_list[NERVOUS])
add_mutations_static = list(NERVOUS)
/obj/item/weapon/dnainjector/antistutt
name = "\improper DNA injector (Anti-Stutt.)"
desc = "Fixes that speaking impairment."
New()
..()
remove_mutations.Add(mutations_list[NERVOUS])
remove_mutations_static = list(NERVOUS)
/obj/item/weapon/dnainjector/antifire
name = "\improper DNA injector (Anti-Fire)"
desc = "Cures fire."
New()
..()
remove_mutations.Add(mutations_list[COLDRES])
remove_mutations_static = list(COLDRES)
/obj/item/weapon/dnainjector/firemut
name = "\improper DNA injector (Fire)"
desc = "Gives you fire."
New()
..()
add_mutations.Add(mutations_list[COLDRES])
add_mutations_static = list(COLDRES)
/obj/item/weapon/dnainjector/blindmut
name = "\improper DNA injector (Blind)"
desc = "Makes you not see anything."
New()
..()
add_mutations.Add(mutations_list[BLINDMUT])
add_mutations_static = list(BLINDMUT)
/obj/item/weapon/dnainjector/antiblind
name = "\improper DNA injector (Anti-Blind)"
desc = "ITS A MIRACLE!!!"
New()
..()
remove_mutations.Add(mutations_list[BLINDMUT])
remove_mutations_static = list(BLINDMUT)
/obj/item/weapon/dnainjector/antitele
name = "\improper DNA injector (Anti-Tele.)"
desc = "Will make you not able to control your mind."
New()
..()
remove_mutations.Add(mutations_list[TK])
remove_mutations_static = list(TK)
/obj/item/weapon/dnainjector/telemut
name = "\improper DNA injector (Tele.)"
desc = "Super brain man!"
New()
..()
add_mutations.Add(mutations_list[TK])
add_mutations_static = list(TK)
/obj/item/weapon/dnainjector/telemut/darkbundle
name = "\improper DNA injector"
@@ -248,143 +212,101 @@
/obj/item/weapon/dnainjector/deafmut
name = "\improper DNA injector (Deaf)"
desc = "Sorry, what did you say?"
New()
..()
add_mutations.Add(mutations_list[DEAFMUT])
add_mutations_static = list(DEAFMUT)
/obj/item/weapon/dnainjector/antideaf
name = "\improper DNA injector (Anti-Deaf)"
desc = "Will make you hear once more."
New()
..()
remove_mutations.Add(mutations_list[DEAFMUT])
remove_mutations_static = list(DEAFMUT)
/obj/item/weapon/dnainjector/h2m
name = "\improper DNA injector (Human > Monkey)"
desc = "Will make you a flea bag."
New()
..()
add_mutations.Add(mutations_list[RACEMUT])
add_mutations_static = list(RACEMUT)
/obj/item/weapon/dnainjector/m2h
name = "\improper DNA injector (Monkey > Human)"
desc = "Will make you...less hairy."
New()
..()
remove_mutations.Add(mutations_list[RACEMUT])
remove_mutations_static = list(RACEMUT)
/obj/item/weapon/dnainjector/antichameleon
name = "\improper DNA injector (Anti-Chameleon)"
New()
..()
remove_mutations.Add(mutations_list[CHAMELEON])
remove_mutations_static = list(CHAMELEON)
/obj/item/weapon/dnainjector/chameleonmut
name = "\improper DNA injector (Chameleon)"
New()
..()
add_mutations.Add(mutations_list[CHAMELEON])
add_mutations_static = list(CHAMELEON)
/obj/item/weapon/dnainjector/antiwacky
name = "\improper DNA injector (Anti-Wacky)"
New()
..()
remove_mutations.Add(mutations_list[WACKY])
remove_mutations_static = list(WACKY)
/obj/item/weapon/dnainjector/wackymut
name = "\improper DNA injector (Wacky)"
New()
..()
add_mutations.Add(mutations_list[WACKY])
add_mutations_static = list(WACKY)
/obj/item/weapon/dnainjector/antimute
name = "\improper DNA injector (Anti-Mute)"
New()
..()
remove_mutations.Add(mutations_list[MUT_MUTE])
remove_mutations_static = list(MUT_MUTE)
/obj/item/weapon/dnainjector/mutemut
name = "\improper DNA injector (Mute)"
New()
..()
add_mutations.Add(mutations_list[MUT_MUTE])
add_mutations_static = list(MUT_MUTE)
/obj/item/weapon/dnainjector/antismile
name = "\improper DNA injector (Anti-Smile)"
New()
..()
remove_mutations.Add(mutations_list[SMILE])
remove_mutations_static = list(SMILE)
/obj/item/weapon/dnainjector/smilemut
name = "\improper DNA injector (Smile)"
New()
..()
add_mutations.Add(mutations_list[SMILE])
add_mutations_static = list(SMILE)
/obj/item/weapon/dnainjector/unintelligablemut
name = "\improper DNA injector (Unintelligable)"
New()
..()
add_mutations.Add(mutations_list[UNINTELLIGABLE])
add_mutations_static = list(UNINTELLIGABLE)
/obj/item/weapon/dnainjector/antiunintelligable
name = "\improper DNA injector (Anti-Unintelligable)"
New()
..()
remove_mutations.Add(mutations_list[UNINTELLIGABLE])
remove_mutations_static = list(UNINTELLIGABLE)
/obj/item/weapon/dnainjector/swedishmut
name = "\improper DNA injector (Swedish)"
New()
..()
add_mutations.Add(mutations_list[SWEDISH])
add_mutations_static = list(SWEDISH)
/obj/item/weapon/dnainjector/antiswedish
name = "\improper DNA injector (Anti-Swedish)"
New()
..()
remove_mutations.Add(mutations_list[SWEDISH])
remove_mutations_static = list(SWEDISH)
/obj/item/weapon/dnainjector/chavmut
name = "\improper DNA injector (Chav)"
New()
..()
add_mutations.Add(mutations_list[CHAV])
add_mutations_static = list(CHAV)
/obj/item/weapon/dnainjector/antichav
name = "\improper DNA injector (Anti-Chav)"
New()
..()
remove_mutations.Add(mutations_list[CHAV])
remove_mutations_static = list(CHAV)
/obj/item/weapon/dnainjector/elvismut
name = "\improper DNA injector (Elvis)"
New()
..()
add_mutations.Add(mutations_list[ELVIS])
add_mutations_static = list(ELVIS)
/obj/item/weapon/dnainjector/antielvis
name = "\improper DNA injector (Anti-Elvis)"
New()
..()
remove_mutations.Add(mutations_list[ELVIS])
remove_mutations_static = list(ELVIS)
/obj/item/weapon/dnainjector/lasereyesmut
name = "\improper DNA injector (Laser Eyes)"
New()
..()
add_mutations.Add(mutations_list[LASEREYES])
add_mutations_static = list(LASEREYES)
/obj/item/weapon/dnainjector/antilasereyes
name = "\improper DNA injector (Anti-Laser Eyes)"
New()
..()
remove_mutations.Add(mutations_list[LASEREYES])
remove_mutations_static = list(LASEREYES)
/obj/item/weapon/dnainjector/timed
var/duration = 600
/obj/item/weapon/dnainjector/timed/inject(mob/living/carbon/M, mob/user)
prepare()
if(M.has_dna() && !(M.disabilities & NOCLONE))
if(M.stat == DEAD) //prevents dead people from having their DNA changed
user << "<span class='notice'>You can't modify [M]'s DNA while \he's dead.</span>"
@@ -436,13 +358,9 @@
/obj/item/weapon/dnainjector/timed/hulk
name = "\improper DNA injector (Hulk)"
desc = "This will make you big and strong, but give you a bad skin condition."
New()
..()
add_mutations.Add(mutations_list[HULK])
add_mutations_static = list(HULK)
/obj/item/weapon/dnainjector/timed/h2m
name = "\improper DNA injector (Human > Monkey)"
desc = "Will make you a flea bag."
New()
..()
add_mutations.Add(mutations_list[RACEMUT])
add_mutations_static = list(RACEMUT)
@@ -59,7 +59,7 @@
/obj/item/weapon/grenade/iedcasing/prime() //Blowing that can up
update_mob()
explosion(src.loc,-1,-1,-1, flame_range = range) // no explosive damage, only a large fireball.
explosion(src.loc,-1,-1,2, flame_range = 4) // small explosion, plus a very large fireball.
qdel(src)
/obj/item/weapon/grenade/iedcasing/examine(mob/user)
@@ -23,8 +23,7 @@
user << "<span class='notice'>You'll need to get closer to see any more.</span>"
return
for(var/obj/item/I in loadedItems)
spawn(0)
user << "<span class='info'>\icon [I] It has \the [I] loaded.</span>"
user << "<span class='info'>\icon [I] It has \the [I] loaded.</span>"
if(tank)
user << "<span class='notice'>\icon [tank] It has \the [tank] mounted onto it.</span>"
@@ -93,13 +93,12 @@
"<span class='userdanger'>You feel a powerful shock course through your body sending you flying!</span>", \
"<span class='italics'>You hear a heavy electrical crack!</span>")
var/atom/throw_target = get_edge_target_turf(target, get_dir(src, get_step_away(target, src)))
target.throw_at(throw_target, 200, 4)
target.throw_at_fast(throw_target, 200, 4)
return
/obj/item/weapon/twohanded/mjollnir/attack(mob/M, mob/user)
..()
spawn(0)
if(wielded)
//if(charged == 5)
//charged = 0
@@ -328,12 +328,8 @@
/obj/item/weapon/storage/backpack/dufflebag/syndie/ammo/loaded/New()
..()
contents = list()
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g(src)
for(var/i in 1 to 6)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g/buckshot(src)
new /obj/item/ammo_box/magazine/m12g/stun(src)
new /obj/item/ammo_box/magazine/m12g/dragon(src)
@@ -398,15 +394,8 @@
/obj/item/weapon/storage/backpack/dufflebag/syndie/ammo/smg/New()
..()
contents = list()
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
for(var/i in 1 to 9)
new /obj/item/ammo_box/magazine/smgm45(src)
return
@@ -416,10 +405,8 @@
/obj/item/weapon/storage/backpack/dufflebag/syndie/ammo/fireteam/New()
..()
contents = list()
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
for(var/i in 1 to 4)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/m556(src)
new /obj/item/ammo_box/magazine/m556(src)
new /obj/item/ammo_box/a40mm(src)
@@ -121,13 +121,8 @@
/obj/item/weapon/storage/belt/soulstone/full/New()
..()
new /obj/item/device/soulstone(src)
new /obj/item/device/soulstone(src)
new /obj/item/device/soulstone(src)
new /obj/item/device/soulstone(src)
new /obj/item/device/soulstone(src)
new /obj/item/device/soulstone(src)
for(var/i in 1 to 6)
new /obj/item/device/soulstone(src)
/obj/item/weapon/storage/belt/champion
name = "championship belt"
+99 -227
View File
@@ -93,14 +93,9 @@
/obj/item/weapon/storage/box/gloves/New()
..()
new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/clothing/gloves/color/latex(src)
for(var/i in 1 to 7)
new /obj/item/clothing/gloves/color/latex(src)
/obj/item/weapon/storage/box/masks
name = "box of sterile masks"
desc = "This box contains sterile medical masks."
@@ -108,14 +103,9 @@
/obj/item/weapon/storage/box/masks/New()
..()
new /obj/item/clothing/mask/surgical(src)
new /obj/item/clothing/mask/surgical(src)
new /obj/item/clothing/mask/surgical(src)
new /obj/item/clothing/mask/surgical(src)
new /obj/item/clothing/mask/surgical(src)
new /obj/item/clothing/mask/surgical(src)
new /obj/item/clothing/mask/surgical(src)
for(var/i in 1 to 7)
new /obj/item/clothing/mask/surgical(src)
/obj/item/weapon/storage/box/syringes
name = "box of syringes"
desc = "A box full of syringes."
@@ -124,14 +114,9 @@
/obj/item/weapon/storage/box/syringes/New()
..()
new /obj/item/weapon/reagent_containers/syringe( src )
new /obj/item/weapon/reagent_containers/syringe( src )
new /obj/item/weapon/reagent_containers/syringe( src )
new /obj/item/weapon/reagent_containers/syringe( src )
new /obj/item/weapon/reagent_containers/syringe( src )
new /obj/item/weapon/reagent_containers/syringe( src )
new /obj/item/weapon/reagent_containers/syringe( src )
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/syringe( src )
/obj/item/weapon/storage/box/medipens
name = "box of medipens"
desc = "A box full of epinephrine MediPens."
@@ -139,14 +124,9 @@
/obj/item/weapon/storage/box/medipens/New()
..()
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
/obj/item/weapon/storage/box/medipens/utility
name = "stimpack value kit"
desc = "A box with several stimpack medipens for the economical miner."
@@ -154,39 +134,29 @@
/obj/item/weapon/storage/box/medipens/utility/New()
..()
new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
for(var/i in 1 to 5)
new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
/obj/item/weapon/storage/box/beakers
name = "box of beakers"
icon_state = "beaker"
/obj/item/weapon/storage/box/beakers/New()
..()
new /obj/item/weapon/reagent_containers/glass/beaker( src )
new /obj/item/weapon/reagent_containers/glass/beaker( src )
new /obj/item/weapon/reagent_containers/glass/beaker( src )
new /obj/item/weapon/reagent_containers/glass/beaker( src )
new /obj/item/weapon/reagent_containers/glass/beaker( src )
new /obj/item/weapon/reagent_containers/glass/beaker( src )
new /obj/item/weapon/reagent_containers/glass/beaker( src )
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/glass/beaker( src )
/obj/item/weapon/storage/box/injectors
name = "box of DNA injectors"
desc = "This box contains injectors it seems."
/obj/item/weapon/storage/box/injectors/New()
..()
new /obj/item/weapon/dnainjector/h2m(src)
new /obj/item/weapon/dnainjector/h2m(src)
new /obj/item/weapon/dnainjector/h2m(src)
new /obj/item/weapon/dnainjector/m2h(src)
new /obj/item/weapon/dnainjector/m2h(src)
new /obj/item/weapon/dnainjector/m2h(src)
for(var/i in 1 to 3)
new /obj/item/weapon/dnainjector/h2m(src)
for(var/i in 1 to 3)
new /obj/item/weapon/dnainjector/m2h(src)
/obj/item/weapon/storage/box/flashbangs
name = "box of flashbangs (WARNING)"
desc = "<B>WARNING: These devices are extremely dangerous and can cause blindness or deafness in repeated use.</B>"
@@ -194,14 +164,9 @@
/obj/item/weapon/storage/box/flashbangs/New()
..()
new /obj/item/weapon/grenade/flashbang(src)
new /obj/item/weapon/grenade/flashbang(src)
new /obj/item/weapon/grenade/flashbang(src)
new /obj/item/weapon/grenade/flashbang(src)
new /obj/item/weapon/grenade/flashbang(src)
new /obj/item/weapon/grenade/flashbang(src)
new /obj/item/weapon/grenade/flashbang(src)
for(var/i in 1 to 7)
new /obj/item/weapon/grenade/flashbang(src)
/obj/item/weapon/storage/box/flashes
name = "box of flashbulbs"
desc = "<B>WARNING: Flashes can cause serious eye damage, protective eyewear is required.</B>"
@@ -209,13 +174,9 @@
/obj/item/weapon/storage/box/flashes/New()
..()
new /obj/item/device/assembly/flash/handheld(src)
new /obj/item/device/assembly/flash/handheld(src)
new /obj/item/device/assembly/flash/handheld(src)
new /obj/item/device/assembly/flash/handheld(src)
new /obj/item/device/assembly/flash/handheld(src)
new /obj/item/device/assembly/flash/handheld(src)
for(var/i in 1 to 6)
new /obj/item/device/assembly/flash/handheld(src)
/obj/item/weapon/storage/box/teargas
name = "box of tear gas grenades (WARNING)"
desc = "<B>WARNING: These devices are extremely dangerous and can cause blindness and skin irritation.</B>"
@@ -223,14 +184,9 @@
/obj/item/weapon/storage/box/teargas/New()
..()
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
for(var/i in 1 to 7)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
/obj/item/weapon/storage/box/emps
name = "box of emp grenades"
desc = "A box with 5 emp grenades."
@@ -238,12 +194,9 @@
/obj/item/weapon/storage/box/emps/New()
..()
new /obj/item/weapon/grenade/empgrenade(src)
new /obj/item/weapon/grenade/empgrenade(src)
new /obj/item/weapon/grenade/empgrenade(src)
new /obj/item/weapon/grenade/empgrenade(src)
new /obj/item/weapon/grenade/empgrenade(src)
for(var/i in 1 to 5)
new /obj/item/weapon/grenade/empgrenade(src)
/obj/item/weapon/storage/box/trackimp
name = "boxed tracking implant kit"
desc = "Box full of scum-bag tracking utensils."
@@ -251,10 +204,8 @@
/obj/item/weapon/storage/box/trackimp/New()
..()
new /obj/item/weapon/implantcase/tracking(src)
new /obj/item/weapon/implantcase/tracking(src)
new /obj/item/weapon/implantcase/tracking(src)
new /obj/item/weapon/implantcase/tracking(src)
for(var/i in 1 to 4)
new /obj/item/weapon/implantcase/tracking(src)
new /obj/item/weapon/implanter(src)
new /obj/item/weapon/implantpad(src)
new /obj/item/weapon/locator(src)
@@ -266,11 +217,8 @@
/obj/item/weapon/storage/box/chemimp/New()
..()
new /obj/item/weapon/implantcase/chem(src)
new /obj/item/weapon/implantcase/chem(src)
new /obj/item/weapon/implantcase/chem(src)
new /obj/item/weapon/implantcase/chem(src)
new /obj/item/weapon/implantcase/chem(src)
for(var/i in 1 to 5)
new /obj/item/weapon/implantcase/chem(src)
new /obj/item/weapon/implanter(src)
new /obj/item/weapon/implantpad(src)
@@ -281,11 +229,8 @@
/obj/item/weapon/storage/box/exileimp/New()
..()
new /obj/item/weapon/implantcase/exile(src)
new /obj/item/weapon/implantcase/exile(src)
new /obj/item/weapon/implantcase/exile(src)
new /obj/item/weapon/implantcase/exile(src)
new /obj/item/weapon/implantcase/exile(src)
for(var/i in 1 to 5)
new /obj/item/weapon/implantcase/exile(src)
new /obj/item/weapon/implanter(src)
/obj/item/weapon/storage/box/rxglasses
@@ -295,39 +240,26 @@
/obj/item/weapon/storage/box/rxglasses/New()
..()
new /obj/item/clothing/glasses/regular(src)
new /obj/item/clothing/glasses/regular(src)
new /obj/item/clothing/glasses/regular(src)
new /obj/item/clothing/glasses/regular(src)
new /obj/item/clothing/glasses/regular(src)
new /obj/item/clothing/glasses/regular(src)
new /obj/item/clothing/glasses/regular(src)
for(var/i in 1 to 7)
new /obj/item/clothing/glasses/regular(src)
/obj/item/weapon/storage/box/drinkingglasses
name = "box of drinking glasses"
desc = "It has a picture of drinking glasses on it."
/obj/item/weapon/storage/box/drinkingglasses/New()
..()
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
for(var/i in 1 to 6)
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
/obj/item/weapon/storage/box/condimentbottles
name = "box of condiment bottles"
desc = "It has a large ketchup smear on it."
/obj/item/weapon/storage/box/condimentbottles/New()
..()
new /obj/item/weapon/reagent_containers/food/condiment(src)
new /obj/item/weapon/reagent_containers/food/condiment(src)
new /obj/item/weapon/reagent_containers/food/condiment(src)
new /obj/item/weapon/reagent_containers/food/condiment(src)
new /obj/item/weapon/reagent_containers/food/condiment(src)
new /obj/item/weapon/reagent_containers/food/condiment(src)
for(var/i in 1 to 6)
new /obj/item/weapon/reagent_containers/food/condiment(src)
/obj/item/weapon/storage/box/cups
name = "box of paper cups"
@@ -335,14 +267,9 @@
/obj/item/weapon/storage/box/cups/New()
..()
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
/obj/item/weapon/storage/box/donkpockets
name = "box of donk-pockets"
desc = "<B>Instructions:</B> <I>Heat in microwave. Product will cool if not eaten within seven minutes.</I>"
@@ -350,12 +277,8 @@
/obj/item/weapon/storage/box/donkpockets/New()
..()
new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
for(var/i in 1 to 6)
new /obj/item/weapon/reagent_containers/food/snacks/donkpocket(src)
/obj/item/weapon/storage/box/monkeycubes
name = "monkey cube box"
@@ -378,9 +301,8 @@
/obj/item/weapon/storage/box/permits/New() //There's only a few, so blueprints are still useful beyond setting every room's name to PRIMARY FART STORAGE
..()
new /obj/item/areaeditor/permit(src)
new /obj/item/areaeditor/permit(src)
new /obj/item/areaeditor/permit(src)
for(var/i in 1 to 3)
new /obj/item/areaeditor/permit(src)
/obj/item/weapon/storage/box/ids
@@ -390,14 +312,9 @@
/obj/item/weapon/storage/box/ids/New()
..()
new /obj/item/weapon/card/id(src)
new /obj/item/weapon/card/id(src)
new /obj/item/weapon/card/id(src)
new /obj/item/weapon/card/id(src)
new /obj/item/weapon/card/id(src)
new /obj/item/weapon/card/id(src)
new /obj/item/weapon/card/id(src)
for(var/i in 1 to 7)
new /obj/item/weapon/card/id(src)
/obj/item/weapon/storage/box/silver_ids
name = "box of spare silver IDs"
desc = "Shiny IDs for important people."
@@ -405,13 +322,8 @@
/obj/item/weapon/storage/box/silver_ids/New()
..()
new /obj/item/weapon/card/id/silver(src)
new /obj/item/weapon/card/id/silver(src)
new /obj/item/weapon/card/id/silver(src)
new /obj/item/weapon/card/id/silver(src)
new /obj/item/weapon/card/id/silver(src)
new /obj/item/weapon/card/id/silver(src)
new /obj/item/weapon/card/id/silver(src)
for(var/i in 1 to 7)
new /obj/item/weapon/card/id/silver(src)
/obj/item/weapon/storage/box/prisoner
name = "box of prisoner IDs"
@@ -436,12 +348,8 @@
/obj/item/weapon/storage/box/seccarts/New()
..()
new /obj/item/weapon/cartridge/detective(src)
new /obj/item/weapon/cartridge/security(src)
new /obj/item/weapon/cartridge/security(src)
new /obj/item/weapon/cartridge/security(src)
new /obj/item/weapon/cartridge/security(src)
new /obj/item/weapon/cartridge/security(src)
new /obj/item/weapon/cartridge/security(src)
for(var/i in 1 to 6)
new /obj/item/weapon/cartridge/security(src)
/obj/item/weapon/storage/box/firingpins
name = "box of standard firing pins"
@@ -450,14 +358,9 @@
/obj/item/weapon/storage/box/firingpins/New()
..()
new /obj/item/device/firing_pin(src)
new /obj/item/device/firing_pin(src)
new /obj/item/device/firing_pin(src)
new /obj/item/device/firing_pin(src)
new /obj/item/device/firing_pin(src)
new /obj/item/device/firing_pin(src)
new /obj/item/device/firing_pin(src)
for(var/i in 1 to 7)
new /obj/item/device/firing_pin(src)
/obj/item/weapon/storage/box/handcuffs
name = "box of spare handcuffs"
desc = "A box full of handcuffs."
@@ -465,14 +368,9 @@
/obj/item/weapon/storage/box/handcuffs/New()
..()
new /obj/item/weapon/restraints/handcuffs(src)
new /obj/item/weapon/restraints/handcuffs(src)
new /obj/item/weapon/restraints/handcuffs(src)
new /obj/item/weapon/restraints/handcuffs(src)
new /obj/item/weapon/restraints/handcuffs(src)
new /obj/item/weapon/restraints/handcuffs(src)
new /obj/item/weapon/restraints/handcuffs(src)
for(var/i in 1 to 7)
new /obj/item/weapon/restraints/handcuffs(src)
/obj/item/weapon/storage/box/zipties
name = "box of spare zipties"
desc = "A box full of zipties."
@@ -480,14 +378,9 @@
/obj/item/weapon/storage/box/zipties/New()
..()
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
for(var/i in 1 to 7)
new /obj/item/weapon/restraints/handcuffs/cable/zipties(src)
/obj/item/weapon/storage/box/alienhandcuffs
name = "box of spare handcuffs"
desc = "A box full of handcuffs."
@@ -495,14 +388,9 @@
/obj/item/weapon/storage/box/alienhandcuffs/New()
..()
new /obj/item/weapon/restraints/handcuffs/alien(src)
new /obj/item/weapon/restraints/handcuffs/alien(src)
new /obj/item/weapon/restraints/handcuffs/alien(src)
new /obj/item/weapon/restraints/handcuffs/alien(src)
new /obj/item/weapon/restraints/handcuffs/alien(src)
new /obj/item/weapon/restraints/handcuffs/alien(src)
new /obj/item/weapon/restraints/handcuffs/alien(src)
for(var/i in 1 to 7)
new /obj/item/weapon/restraints/handcuffs/alien(src)
/obj/item/weapon/storage/box/fakesyndiesuit
name = "boxed space suit and helmet"
desc = "A sleek, sturdy box used to hold replica spacesuits."
@@ -520,13 +408,9 @@
/obj/item/weapon/storage/box/mousetraps/New()
..()
new /obj/item/device/assembly/mousetrap( src )
new /obj/item/device/assembly/mousetrap( src )
new /obj/item/device/assembly/mousetrap( src )
new /obj/item/device/assembly/mousetrap( src )
new /obj/item/device/assembly/mousetrap( src )
new /obj/item/device/assembly/mousetrap( src )
for(var/i in 1 to 6)
new /obj/item/device/assembly/mousetrap( src )
/obj/item/weapon/storage/box/pillbottles
name = "box of pill bottles"
desc = "It has pictures of pill bottles on its front."
@@ -534,14 +418,9 @@
/obj/item/weapon/storage/box/pillbottles/New()
..()
new /obj/item/weapon/storage/pill_bottle( src )
new /obj/item/weapon/storage/pill_bottle( src )
new /obj/item/weapon/storage/pill_bottle( src )
new /obj/item/weapon/storage/pill_bottle( src )
new /obj/item/weapon/storage/pill_bottle( src )
new /obj/item/weapon/storage/pill_bottle( src )
new /obj/item/weapon/storage/pill_bottle( src )
for(var/i in 1 to 7)
new /obj/item/weapon/storage/pill_bottle( src )
/obj/item/weapon/storage/box/snappops
name = "snap pop box"
desc = "Eight wrappers of fun! Ages 8 and up. Not suitable for children."
@@ -620,14 +499,9 @@
/obj/item/weapon/storage/box/deputy/New()
..()
new /obj/item/clothing/tie/armband/deputy(src)
new /obj/item/clothing/tie/armband/deputy(src)
new /obj/item/clothing/tie/armband/deputy(src)
new /obj/item/clothing/tie/armband/deputy(src)
new /obj/item/clothing/tie/armband/deputy(src)
new /obj/item/clothing/tie/armband/deputy(src)
new /obj/item/clothing/tie/armband/deputy(src)
for(var/i in 1 to 7)
new /obj/item/clothing/tie/armband/deputy(src)
/obj/item/weapon/storage/box/metalfoam
name = "box of metal foam grenades"
desc = "To be used to rapidly seal hull breaches"
@@ -635,15 +509,9 @@
/obj/item/weapon/storage/box/metalfoam/New()
..()
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
for(var/i in 1 to 7)
new /obj/item/weapon/grenade/chem_grenade/metalfoam(src)
/obj/item/weapon/storage/box/hug
name = "box of hugs"
desc = "A special box for sensitive people."
@@ -676,14 +544,9 @@
/obj/item/weapon/storage/box/rubbershot/New()
..()
new /obj/item/ammo_casing/shotgun/rubbershot(src)
new /obj/item/ammo_casing/shotgun/rubbershot(src)
new /obj/item/ammo_casing/shotgun/rubbershot(src)
new /obj/item/ammo_casing/shotgun/rubbershot(src)
new /obj/item/ammo_casing/shotgun/rubbershot(src)
new /obj/item/ammo_casing/shotgun/rubbershot(src)
new /obj/item/ammo_casing/shotgun/rubbershot(src)
for(var/i in 1 to 7)
new /obj/item/ammo_casing/shotgun/rubbershot(src)
/obj/item/weapon/storage/box/lethalshot
name = "box of lethal shotgun shots"
desc = "A box full of lethal shots, designed for riot shotguns."
@@ -698,3 +561,12 @@
new /obj/item/ammo_casing/shotgun/buckshot(src)
new /obj/item/ammo_casing/shotgun/buckshot(src)
new /obj/item/ammo_casing/shotgun/buckshot(src)
/obj/item/weapon/storage/box/beanbag/New()
..()
new /obj/item/ammo_casing/shotgun/beanbag(src)
new /obj/item/ammo_casing/shotgun/beanbag(src)
new /obj/item/ammo_casing/shotgun/beanbag(src)
new /obj/item/ammo_casing/shotgun/beanbag(src)
new /obj/item/ammo_casing/shotgun/beanbag(src)
new /obj/item/ammo_casing/shotgun/beanbag(src)
@@ -42,9 +42,8 @@
..()
if(empty) return
icon_state = pick("ointment","firefirstaid")
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
for(var/i in 1 to 3)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/oxandrolone(src)
new /obj/item/weapon/reagent_containers/pill/oxandrolone(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen(src)
@@ -61,12 +60,10 @@
..()
if(empty) return
icon_state = pick("antitoxin","antitoxfirstaid","antitoxfirstaid2","antitoxfirstaid3")
new /obj/item/weapon/reagent_containers/syringe/charcoal(src)
new /obj/item/weapon/reagent_containers/syringe/charcoal(src)
new /obj/item/weapon/reagent_containers/syringe/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
for(var/i in 1 to 3)
new /obj/item/weapon/reagent_containers/syringe/charcoal(src)
for(var/i in 1 to 3)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/device/healthanalyzer(src)
return
@@ -79,10 +76,8 @@
/obj/item/weapon/storage/firstaid/o2/New()
..()
if(empty) return
new /obj/item/weapon/reagent_containers/pill/salbutamol(src)
new /obj/item/weapon/reagent_containers/pill/salbutamol(src)
new /obj/item/weapon/reagent_containers/pill/salbutamol(src)
new /obj/item/weapon/reagent_containers/pill/salbutamol(src)
for(var/i in 1 to 4)
new /obj/item/weapon/reagent_containers/pill/salbutamol(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen(src)
new /obj/item/device/healthanalyzer(src)
@@ -97,10 +92,8 @@
/obj/item/weapon/storage/firstaid/brute/New()
..()
if(empty) return
new /obj/item/weapon/reagent_containers/pill/patch/styptic(src)
new /obj/item/weapon/reagent_containers/pill/patch/styptic(src)
new /obj/item/weapon/reagent_containers/pill/patch/styptic(src)
new /obj/item/weapon/reagent_containers/pill/patch/styptic(src)
for(var/i in 1 to 4)
new /obj/item/weapon/reagent_containers/pill/patch/styptic(src)
new /obj/item/stack/medical/gauze(src)
new /obj/item/stack/medical/gauze(src)
new /obj/item/device/healthanalyzer(src)
@@ -168,79 +161,50 @@
/obj/item/weapon/storage/box/silver_sulf/New()
..()
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/pill/patch/silver_sulf(src)
/obj/item/weapon/storage/pill_bottle/charcoal
name = "bottle of charcoal pills"
desc = "Contains pills used to counter toxins."
/obj/item/weapon/storage/pill_bottle/charcoal/New()
..()
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/pill/charcoal(src)
/obj/item/weapon/storage/pill_bottle/epinephrine
name = "bottle of epinephrine pills"
desc = "Contains pills used to stabilize patients."
/obj/item/weapon/storage/pill_bottle/epinephrine/New()
..()
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/pill/epinephrine(src)
/obj/item/weapon/storage/pill_bottle/mutadone
name = "bottle of mutadone pills"
desc = "Contains pills used to treat genetic abnormalities."
/obj/item/weapon/storage/pill_bottle/mutadone/New()
..()
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/pill/mutadone(src)
/obj/item/weapon/storage/pill_bottle/mannitol
name = "bottle of mannitol pills"
desc = "Contains pills used to treat brain damage."
/obj/item/weapon/storage/pill_bottle/mannitol/New()
..()
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/pill/mannitol(src)
/obj/item/weapon/storage/pill_bottle/stimulant
name = "bottle of stimulant pills"
desc = "Guaranteed to give you that extra burst of energy during a long shift!"
/obj/item/weapon/storage/pill_bottle/stimulant/New()
..()
new /obj/item/weapon/reagent_containers/pill/stimulant(src)
new /obj/item/weapon/reagent_containers/pill/stimulant(src)
new /obj/item/weapon/reagent_containers/pill/stimulant(src)
new /obj/item/weapon/reagent_containers/pill/stimulant(src)
new /obj/item/weapon/reagent_containers/pill/stimulant(src)
for(var/i in 1 to 5)
new /obj/item/weapon/reagent_containers/pill/stimulant(src)
@@ -82,9 +82,8 @@
/obj/item/weapon/storage/lockbox/loyalty/New()
..()
new /obj/item/weapon/implantcase/loyalty(src)
new /obj/item/weapon/implantcase/loyalty(src)
new /obj/item/weapon/implantcase/loyalty(src)
for(var/i in 1 to 3)
new /obj/item/weapon/implantcase/loyalty(src)
new /obj/item/weapon/implanter/loyalty(src)
@@ -114,7 +113,6 @@
..()
new /obj/item/clothing/tie/medal/silver/valor(src)
new /obj/item/clothing/tie/medal/bronze_heart(src)
new /obj/item/clothing/tie/medal/conduct(src)
new /obj/item/clothing/tie/medal/conduct(src)
new /obj/item/clothing/tie/medal/conduct(src)
new /obj/item/clothing/tie/medal/gold/captain(src)
for(var/i in 1 to 3)
new /obj/item/clothing/tie/medal/conduct(src)
new /obj/item/clothing/tie/medal/gold/captain(src)
@@ -36,21 +36,21 @@
if (istype(W, /obj/item/weapon/screwdriver))
if (do_after(user, 20/W.toolspeed, target = src))
src.open =! src.open
user.show_message(text("<span class='notice'>You [] the service panel.</span>", (src.open ? "open" : "close")))
user.show_message("<span class='notice'>You [open ? "open" : "close"] the service panel.</span>", 1)
return
if ((istype(W, /obj/item/device/multitool)) && (src.open == 1)&& (!src.l_hacking))
user.show_message(text("<span class='danger'>Now attempting to reset internal memory, please hold.</span>"), 1)
user.show_message("<span class='danger'>Now attempting to reset internal memory, please hold.</span>", 1)
src.l_hacking = 1
if (do_after(usr, 100/W.toolspeed, target = src))
if (prob(40))
src.l_setshort = 1
src.l_set = 0
user.show_message(text("<span class='danger'>Internal memory reset. Please give it a few seconds to reinitialize.</span>"), 1)
user.show_message("<span class='danger'>Internal memory reset. Please give it a few seconds to reinitialize.</span>", 1)
sleep(80)
src.l_setshort = 0
src.l_hacking = 0
else
user.show_message(text("<span class='danger'>Unable to reset internal memory.</span>"), 1)
user.show_message("<span class='danger'>Unable to reset internal memory.</span>", 1)
src.l_hacking = 0
else src.l_hacking = 0
return
@@ -158,16 +158,10 @@
/obj/item/weapon/storage/box/syndie_kit/bioterror/New()
..()
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
for(var/i in 1 to 7)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
return
/obj/item/weapon/storage/box/syndie_kit/imp_adrenal
name = "boxed adrenal implant (with injector)"
@@ -178,7 +172,6 @@
O.update_icon()
return
/obj/item/weapon/storage/box/syndie_kit/imp_storage
name = "boxed storage implant (with injector)"
@@ -187,7 +180,6 @@
new /obj/item/weapon/implanter/storage(src)
return
/obj/item/weapon/storage/box/syndie_kit/space
name = "boxed space suit and helmet"
can_hold = list(/obj/item/clothing/suit/space/syndicate, /obj/item/clothing/head/helmet/space/syndicate)
@@ -199,7 +191,6 @@
new /obj/item/clothing/head/helmet/space/syndicate/black/red(src)
return
/obj/item/weapon/storage/box/syndie_kit/emp
name = "boxed EMP kit"
@@ -241,30 +232,25 @@
new /obj/item/nuke_core_container(src)
new /obj/item/weapon/paper/nuke_instructions(src)
/obj/item/weapon/storage/box/syndie_kit/tuberculosisgrenade
name = "boxed virus grenade kit"
name = "boxed virus grenade kit"
/obj/item/weapon/storage/box/virus_kit/tuberculosisgrenade/New()
..()
new /obj/item/weapon/grenade/chem_grenade/tuberculosis(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/syringe(src)
new /obj/item/weapon/reagent_containers/glass/bottle/tuberculosiscure(src)
return
/obj/item/weapon/storage/box/syndie_kit/tuberculosisgrenade/New()
..()
new /obj/item/weapon/grenade/chem_grenade/tuberculosis(src)
for(var/i in 1 to 5)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/syringe(src)
new /obj/item/weapon/reagent_containers/glass/bottle/tuberculosiscure(src)
return
/obj/item/weapon/storage/box/syndie_kit/tuberculosiskit
name = "boxed virus kit"
/obj/item/weapon/storage/box/virus_kit/tuberculosiskit/New()
..()
new /obj/item/weapon/reagent_containers/glass/bottle/tuberculosis(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/syringe(src)
new /obj/item/weapon/reagent_containers/glass/bottle/tuberculosiscure(src)
return
name = "boxed virus kit"
/obj/item/weapon/storage/box/syndie_kit/tuberculosiskit/New()
..()
new /obj/item/weapon/reagent_containers/glass/bottle/tuberculosis(src)
new /obj/item/weapon/reagent_containers/hypospray/medipen/tuberculosiscure(src)
new /obj/item/weapon/reagent_containers/syringe(src)
new /obj/item/weapon/reagent_containers/glass/bottle/tuberculosiscure(src)
return
@@ -14,7 +14,7 @@
name = "oxygen tank"
desc = "A tank of oxygen."
icon_state = "oxygen"
distribute_pressure = 16
distribute_pressure = TANK_DEFAULT_RELEASE_PRESSURE
force = 10
@@ -154,7 +154,7 @@
slot_flags = SLOT_BELT
w_class = 2
force = 4
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
distribute_pressure = TANK_DEFAULT_RELEASE_PRESSURE
volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011)
@@ -1,7 +1,3 @@
#define TANK_MAX_RELEASE_PRESSURE (ONE_ATMOSPHERE*3)
#define TANK_MIN_RELEASE_PRESSURE 0
#define TANK_DEFAULT_RELEASE_PRESSURE (ONE_ATMOSPHERE*O2STANDARD)
/obj/item/weapon/tank
name = "tank"
icon = 'icons/obj/tank.dmi'
@@ -119,10 +115,11 @@
add_fingerprint(user)
ui_interact(user)
/obj/item/weapon/tank/ui_interact(mob/user, ui_key = "main", var/datum/tgui/ui = null, force_open = 0)
ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open = force_open)
/obj/item/weapon/tank/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \
datum/tgui/master_ui = null, datum/ui_state/state = hands_state)
ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open)
if (!ui)
ui = new(user, src, ui_key, "tanks", name, 400, 200, state = inventory_state)
ui = new(user, src, ui_key, "tanks", name, 400, 200, master_ui, state)
ui.open()
/obj/item/weapon/tank/get_ui_data()
@@ -156,7 +156,7 @@ Frequency:
if(turfs.len)
L["None (Dangerous)"] = pick(turfs)
var/t1 = input(user, "Please select a teleporter to lock in on.", "Hand Teleporter") in L
if ((user.get_active_hand() != src || user.stat || user.restrained()))
if (user.get_active_hand() != src || user.incapacitated())
return
if(active_portals >= 3)
user.show_message("<span class='notice'>\The [src] is recharging!</span>")
@@ -166,7 +166,6 @@ Frequency:
var/obj/effect/portal/P = new /obj/effect/portal(get_turf(src), T, src)
try_move_adjacent(P)
active_portals++
src.add_fingerprint(user)
return
add_fingerprint(user)