Merge branch 'master' into upstream-merge-37530

This commit is contained in:
LetterJay
2018-05-22 07:19:06 -05:00
committed by GitHub
1107 changed files with 20642 additions and 18695 deletions
@@ -15,8 +15,9 @@
if(B.mod_type == mod_type)
qdel(src)
return
owner.bioware += src
on_gain()
/datum/bioware/Destroy()
owner = null
if(active)
@@ -31,7 +31,7 @@
/datum/bioware/grounded_nerves
name = "Grounded Nerves"
desc = "Nerves form a safe path for electricity to traverse, protecting the body from electric shocks."
mod_type = "nerves"
mod_type = BIOWARE_NERVES
var/prev_coeff
/datum/bioware/grounded_nerves/on_gain()
@@ -31,7 +31,7 @@
/datum/bioware/spliced_nerves
name = "Spliced Nerves"
desc = "Nerves are connected to each other multiple times, greatly reducing the impact of stunning effects."
mod_type = "nerves"
mod_type = BIOWARE_NERVES
/datum/bioware/spliced_nerves/on_gain()
..()
@@ -31,7 +31,7 @@
/datum/bioware/threaded_veins
name = "Threaded Veins"
desc = "The circulatory system is woven into a mesh, severely reducing the amount of blood lost from wounds."
mod_type = "circulation"
mod_type = BIOWARE_CIRCULATION
/datum/bioware/threaded_veins/on_gain()
..()
@@ -158,14 +158,14 @@
medium_burn_msg = ROBOTIC_MEDIUM_BURN_MSG
heavy_burn_msg = ROBOTIC_HEAVY_BURN_MSG
var/obj/item/device/assembly/flash/handheld/flash1 = null
var/obj/item/device/assembly/flash/handheld/flash2 = null
var/obj/item/assembly/flash/handheld/flash1 = null
var/obj/item/assembly/flash/handheld/flash2 = null
/obj/item/bodypart/head/robot/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/device/assembly/flash/handheld))
var/obj/item/device/assembly/flash/handheld/F = W
if(istype(W, /obj/item/assembly/flash/handheld))
var/obj/item/assembly/flash/handheld/F = W
if(src.flash1 && src.flash2)
to_chat(user, "<span class='warning'>You have already inserted the eyes!</span>")
return
+11 -11
View File
@@ -70,8 +70,8 @@
"<span class='notice'>[holder] snaps back into your [zone == BODY_ZONE_R_ARM ? "right" : "left"] arm.</span>",
"<span class='italics'>You hear a short mechanical noise.</span>")
if(istype(holder, /obj/item/device/assembly/flash/armimplant))
var/obj/item/device/assembly/flash/F = holder
if(istype(holder, /obj/item/assembly/flash/armimplant))
var/obj/item/assembly/flash/F = holder
F.set_light(0)
owner.transferItemToLoc(holder, src, TRUE)
@@ -89,8 +89,8 @@
holder.slot_flags = null
holder.materials = null
if(istype(holder, /obj/item/device/assembly/flash/armimplant))
var/obj/item/device/assembly/flash/F = holder
if(istype(holder, /obj/item/assembly/flash/armimplant))
var/obj/item/assembly/flash/F = holder
F.set_light(7)
var/obj/item/arm_item = owner.get_active_held_item()
@@ -170,7 +170,7 @@
name = "integrated toolset implant"
desc = "A stripped-down version of the engineering cyborg toolset, designed to be installed on subject's arm. Contains all necessary tools."
contents = newlist(/obj/item/screwdriver/cyborg, /obj/item/wrench/cyborg, /obj/item/weldingtool/largetank/cyborg,
/obj/item/crowbar/cyborg, /obj/item/wirecutters/cyborg, /obj/item/device/multitool/cyborg)
/obj/item/crowbar/cyborg, /obj/item/wirecutters/cyborg, /obj/item/multitool/cyborg)
/obj/item/organ/cyberimp/arm/toolset/l
zone = BODY_ZONE_L_ARM
@@ -196,12 +196,12 @@
/obj/item/organ/cyberimp/arm/flash
name = "integrated high-intensity photon projector" //Why not
desc = "An integrated projector mounted onto a user's arm that is able to be used as a powerful flash."
contents = newlist(/obj/item/device/assembly/flash/armimplant)
contents = newlist(/obj/item/assembly/flash/armimplant)
/obj/item/organ/cyberimp/arm/flash/Initialize()
. = ..()
if(locate(/obj/item/device/assembly/flash/armimplant) in items_list)
var/obj/item/device/assembly/flash/armimplant/F = locate(/obj/item/device/assembly/flash/armimplant) in items_list
if(locate(/obj/item/assembly/flash/armimplant) in items_list)
var/obj/item/assembly/flash/armimplant/F = locate(/obj/item/assembly/flash/armimplant) in items_list
F.I = src
/obj/item/organ/cyberimp/arm/baton
@@ -212,12 +212,12 @@
/obj/item/organ/cyberimp/arm/combat
name = "combat cybernetics implant"
desc = "A powerful cybernetic implant that contains combat modules built into the user's arm."
contents = newlist(/obj/item/melee/transforming/energy/blade/hardlight, /obj/item/gun/medbeam, /obj/item/borg/stun, /obj/item/device/assembly/flash/armimplant)
contents = newlist(/obj/item/melee/transforming/energy/blade/hardlight, /obj/item/gun/medbeam, /obj/item/borg/stun, /obj/item/assembly/flash/armimplant)
/obj/item/organ/cyberimp/arm/combat/Initialize()
. = ..()
if(locate(/obj/item/device/assembly/flash/armimplant) in items_list)
var/obj/item/device/assembly/flash/armimplant/F = locate(/obj/item/device/assembly/flash/armimplant) in items_list
if(locate(/obj/item/assembly/flash/armimplant) in items_list)
var/obj/item/assembly/flash/armimplant/F = locate(/obj/item/assembly/flash/armimplant) in items_list
F.I = src
/obj/item/organ/cyberimp/arm/surgery
@@ -148,10 +148,10 @@
desc = "A sleek, sturdy box."
icon_state = "cyber_implants"
var/list/boxed = list(
/obj/item/device/autosurgeon/thermal_eyes,
/obj/item/device/autosurgeon/xray_eyes,
/obj/item/device/autosurgeon/anti_stun,
/obj/item/device/autosurgeon/reviver)
/obj/item/autosurgeon/thermal_eyes,
/obj/item/autosurgeon/xray_eyes,
/obj/item/autosurgeon/anti_stun,
/obj/item/autosurgeon/reviver)
var/amount = 5
/obj/item/storage/box/cyber_implants/PopulateContents()
+12 -12
View File
@@ -1,6 +1,6 @@
#define INFINITE -1
/obj/item/device/autosurgeon
/obj/item/autosurgeon
name = "autosurgeon"
desc = "A device that automatically inserts an implant or organ into the user without the hassle of extensive surgery. It has a slot to insert implants/organs and a screwdriver slot for removing accidentally added items."
icon = 'icons/obj/device.dmi'
@@ -12,17 +12,17 @@
var/uses = INFINITE
var/starting_organ
/obj/item/device/autosurgeon/Initialize(mapload)
/obj/item/autosurgeon/Initialize(mapload)
. = ..()
if(starting_organ)
insert_organ(new starting_organ(src))
/obj/item/device/autosurgeon/proc/insert_organ(var/obj/item/I)
/obj/item/autosurgeon/proc/insert_organ(var/obj/item/I)
storedorgan = I
I.forceMove(src)
name = "[initial(name)] ([storedorgan.name])"
/obj/item/device/autosurgeon/attack_self(mob/user)//when the object it used...
/obj/item/autosurgeon/attack_self(mob/user)//when the object it used...
if(!uses)
to_chat(user, "<span class='warning'>[src] has already been used. The tools are dull and won't reactivate.</span>")
return
@@ -39,10 +39,10 @@
if(!uses)
desc = "[initial(desc)] Looks like it's been used up."
/obj/item/device/autosurgeon/attack_self_tk(mob/user)
/obj/item/autosurgeon/attack_self_tk(mob/user)
return //stops TK fuckery
/obj/item/device/autosurgeon/attackby(obj/item/I, mob/user, params)
/obj/item/autosurgeon/attackby(obj/item/I, mob/user, params)
if(istype(I, organ_type))
if(storedorgan)
to_chat(user, "<span class='notice'>[src] already has an implant stored.</span>")
@@ -57,7 +57,7 @@
else
return ..()
/obj/item/device/autosurgeon/screwdriver_act(mob/living/user, obj/item/I)
/obj/item/autosurgeon/screwdriver_act(mob/living/user, obj/item/I)
if(!storedorgan)
to_chat(user, "<span class='notice'>There's no implant in [src] for you to remove.</span>")
else
@@ -75,20 +75,20 @@
desc = "[initial(desc)] Looks like it's been used up."
return TRUE
/obj/item/device/autosurgeon/cmo
/obj/item/autosurgeon/cmo
desc = "A single use autosurgeon that contains a medical heads-up display augment. A screwdriver can be used to remove it, but implants can't be placed back in."
uses = 1
starting_organ = /obj/item/organ/cyberimp/eyes/hud/medical
/obj/item/device/autosurgeon/thermal_eyes
/obj/item/autosurgeon/thermal_eyes
starting_organ = /obj/item/organ/eyes/robotic/thermals
/obj/item/device/autosurgeon/xray_eyes
/obj/item/autosurgeon/xray_eyes
starting_organ = /obj/item/organ/eyes/robotic/xray
/obj/item/device/autosurgeon/anti_stun
/obj/item/autosurgeon/anti_stun
starting_organ = /obj/item/organ/cyberimp/brain/anti_stun
/obj/item/device/autosurgeon/reviver
/obj/item/autosurgeon/reviver
starting_organ = /obj/item/organ/cyberimp/chest/reviver
+2 -2
View File
@@ -121,7 +121,7 @@
icon_state = "flashlight_eyes"
flash_protect = 2
tint = INFINITY
var/obj/item/device/flashlight/eyelight/eye
var/obj/item/flashlight/eyelight/eye
/obj/item/organ/eyes/robotic/flashlight/emp_act(severity)
return
@@ -129,7 +129,7 @@
/obj/item/organ/eyes/robotic/flashlight/Insert(mob/living/carbon/M, special = FALSE, drop_if_replaced = FALSE)
..()
if(!eye)
eye = new /obj/item/device/flashlight/eyelight()
eye = new /obj/item/flashlight/eyelight()
eye.on = TRUE
eye.forceMove(M)
eye.update_brightness(M)
+2 -2
View File
@@ -41,7 +41,7 @@
C.reagents.metabolize(C, can_overdose=TRUE)
if(damage > 10 && prob(damage/3))//the higher the damage the higher the probability
to_chat(C, "<span class='notice'>You feel [pick("nauseous", "dull pain in your lower body", "confused")].</span>")
to_chat(C, "<span class='notice'>You feel [pick("nauseated", "a dull pain in your lower body", "confused")].</span>")
if(damage > maxHealth)//cap liver damage
damage = maxHealth
@@ -59,7 +59,7 @@
/obj/item/organ/liver/plasmaman
name = "reagent processing crystal"
icon_state = "pliver"
icon_state = "liver-p"
desc = "A large crystal that is somehow capable of metabolizing chemicals, these are found in plasmamen."
/obj/item/organ/liver/cybernetic
+2 -2
View File
@@ -236,13 +236,13 @@
var/bz_pp = breath.get_breath_partial_pressure(breath_gases[/datum/gas/bz][MOLES])
if(bz_pp > BZ_trip_balls_min)
H.hallucination += 20
H.hallucination += 10
H.reagents.add_reagent("bz_metabolites",5)
if(prob(33))
H.adjustBrainLoss(3, 150)
else if(bz_pp > 0.01)
H.hallucination += 5//Removed at 2 per tick so this will slowly build up
H.hallucination += 5
H.reagents.add_reagent("bz_metabolites",1)
+1 -1
View File
@@ -64,5 +64,5 @@
/obj/item/organ/stomach/plasmaman
name = "digestive crystal"
icon_state = "pstomach"
icon_state = "stomach-p"
desc = "A strange crystal that is responsible for metabolizing the unseen energy force that feeds plasmamen."