TG sync Sunday (#201)

* stage one

* datums and shit

* game stuff

* modules

* tgstation.dme

* tools

* these things for icons

* compiling fixes

* merge spree on TG

* other updates

* updated maps with deepfryers

* My helpers were not helping
This commit is contained in:
Poojawa
2017-02-06 00:36:56 -06:00
committed by GitHub
parent aeeca195c7
commit 73b6b33f79
279 changed files with 3548 additions and 2585 deletions
@@ -145,6 +145,9 @@
LB.brainmob.container = LB
LB.brainmob.stat = DEAD
/obj/item/organ/eyes/transfer_to_limb(obj/item/bodypart/head/LB, mob/living/carbon/human/C)
LB.eyes = src
..()
/obj/item/bodypart/chest/drop_limb(special)
return
@@ -289,7 +292,6 @@
H.hair_style = hair_style
H.facial_hair_color = facial_hair_color
H.facial_hair_style = facial_hair_style
H.eye_color = eye_color
H.lip_style = lip_style
H.lip_color = lip_color
if(real_name)
+9 -15
View File
@@ -25,8 +25,9 @@
var/facial_hair_color = "000"
var/facial_hair_style = "Shaved"
//Eye Colouring
var/eyes = "eyes"
var/eye_color = ""
var/obj/item/organ/eyes/eyes = null
var/lip_style = null
var/lip_color = "white"
@@ -61,8 +62,6 @@
real_name = "Unknown"
hair_style = "Bald"
facial_hair_style = "Shaved"
eyes = "eyes"
eye_color = ""
lip_style = null
else if(!animal_origin)
@@ -106,14 +105,6 @@
else
lip_style = null
lip_color = "white"
// eyes
if(EYECOLOR in S.species_traits)
eyes = S.eyes
eye_color = H.eye_color
else
eyes = "eyes"
eye_color = ""
..()
/obj/item/bodypart/head/update_icon_dropped()
@@ -167,9 +158,12 @@
standing += lips
// eyes
if(eye_color)
var/image/img_eyes = image("icon" = 'icons/mob/human_face.dmi', "icon_state" = "[eyes]", "layer" = -BODY_LAYER, "dir"=SOUTH)
img_eyes.color = "#" + eye_color
if(!eyes)
standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "eyes_missing", "layer" = -BODY_LAYER, "dir"=SOUTH)
else if(eyes.eye_color)
var/image/img_eyes = image("icon" = 'icons/mob/human_face.dmi', "icon_state" = "eyes", "layer" = -BODY_LAYER, "dir"=SOUTH)
img_eyes.color = "#" + eyes.eye_color
standing += img_eyes
return standing
+8 -2
View File
@@ -11,6 +11,12 @@
implements = list(/obj/item/weapon/hemostat = 100, /obj/item/weapon/screwdriver = 45, /obj/item/weapon/pen = 25)
time = 64
/datum/surgery/eye_surgery/can_start(mob/user, mob/living/carbon/target)
var/obj/item/organ/eyes/E = target.getorganslot("eye_sight")
if(!E)
user << "It's hard to do surgery on someones eyes when they don't have any."
return FALSE
/datum/surgery_step/fix_eyes/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("[user] begins to fix [target]'s eyes.", "<span class='notice'>You begin to fix [target]'s eyes...</span>")
@@ -21,7 +27,7 @@
target.cure_nearsighted()
target.blur_eyes(35) //this will fix itself slowly.
target.set_eye_damage(0)
return 1
return TRUE
/datum/surgery_step/fix_eyes/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
if(target.getorgan(/obj/item/organ/brain))
@@ -29,4 +35,4 @@
target.adjustBrainLoss(100)
else
user.visible_message("<span class='warning'>[user] accidentally stabs [target] right in the brain! Or would have, if [target] had a brain.</span>", "<span class='warning'>You accidentally stab [target] right in the brain! Or would have, if [target] had a brain.</span>")
return 0
return FALSE
+2 -83
View File
@@ -1,5 +1,5 @@
/obj/item/organ/cyberimp/eyes
name = "cybernetic eyes"
/obj/item/organ/cyberimp/eyes/hud
name = "cybernetic hud"
desc = "artificial photoreceptors with specialized functionality"
icon_state = "eye_implant"
implant_overlay = "eye_implant_overlay"
@@ -7,66 +7,6 @@
zone = "eyes"
w_class = WEIGHT_CLASS_TINY
var/sight_flags = 0
var/dark_view = 0
var/eye_color = "fff"
var/old_eye_color = "fff"
var/flash_protect = 0
var/see_invisible = 0
var/aug_message = "Your vision is augmented!"
/obj/item/organ/cyberimp/eyes/Insert(var/mob/living/carbon/M, var/special = 0)
..()
if(ishuman(owner) && eye_color)
var/mob/living/carbon/human/HMN = owner
old_eye_color = HMN.eye_color
HMN.eye_color = eye_color
HMN.regenerate_icons()
if(aug_message && !special)
owner << "<span class='notice'>[aug_message]</span>"
owner.update_sight()
/obj/item/organ/cyberimp/eyes/Remove(var/mob/living/carbon/M, var/special = 0)
M.sight ^= sight_flags
if(ishuman(M) && eye_color)
var/mob/living/carbon/human/HMN = owner
HMN.eye_color = old_eye_color
HMN.regenerate_icons()
..()
/obj/item/organ/cyberimp/eyes/emp_act(severity)
if(!owner)
return
if(severity > 1)
if(prob(10 * severity))
return
owner << "<span class='warning'>Static obfuscates your vision!</span>"
owner.flash_act(visual = 1)
/obj/item/organ/cyberimp/eyes/xray
name = "X-ray implant"
desc = "These cybernetic eye implants will give you X-ray vision. Blinking is futile."
eye_color = "000"
implant_color = "#000000"
origin_tech = "materials=4;programming=4;biotech=6;magnets=4"
dark_view = 8
sight_flags = SEE_MOBS | SEE_OBJS | SEE_TURFS
/obj/item/organ/cyberimp/eyes/thermals
name = "Thermals implant"
desc = "These cybernetic eye implants will give you Thermal vision. Vertical slit pupil included."
eye_color = "FC0"
implant_color = "#FFCC00"
origin_tech = "materials=5;programming=4;biotech=4;magnets=4;syndicate=1"
sight_flags = SEE_MOBS
see_invisible = SEE_INVISIBLE_MINIMUM
flash_protect = -1
dark_view = 8
aug_message = "You see prey everywhere you look..."
// HUD implants
/obj/item/organ/cyberimp/eyes/hud
name = "HUD implant"
@@ -91,32 +31,11 @@
/obj/item/organ/cyberimp/eyes/hud/medical
name = "Medical HUD implant"
desc = "These cybernetic eye implants will display a medical HUD over everything you see."
eye_color = "0ff"
implant_color = "#00FFFF"
origin_tech = "materials=4;programming=4;biotech=4"
aug_message = "You suddenly see health bars floating above people's heads..."
HUD_type = DATA_HUD_MEDICAL_ADVANCED
/obj/item/organ/cyberimp/eyes/hud/security
name = "Security HUD implant"
desc = "These cybernetic eye implants will display a security HUD over everything you see."
eye_color = "d00"
implant_color = "#CC0000"
origin_tech = "materials=4;programming=4;biotech=3;combat=3"
aug_message = "Job indicator icons pop up in your vision. That is not a certified surgeon..."
HUD_type = DATA_HUD_SECURITY_ADVANCED
// Welding shield implant
/obj/item/organ/cyberimp/eyes/shield
name = "welding shield implant"
desc = "These reactive micro-shields will protect you from welders and flashes without obscuring your vision."
slot = "eye_shield"
origin_tech = "materials=4;biotech=3;engineering=4;plasmatech=3"
implant_color = "#101010"
flash_protect = 2
aug_message = null
eye_color = null
/obj/item/organ/cyberimp/eyes/shield/emp_act(severity)
return
@@ -63,7 +63,7 @@
for(var/obj/item/I in stored_items)
owner << "<span class='notice'>Your [owner.get_held_index_name(owner.get_held_index_of_item(I))]'s grip tightens.</span>"
I.flags |= NODROP
else
release_items()
owner << "<span class='notice'>Your hands relax...</span>"
@@ -157,8 +157,8 @@
/obj/item/weapon/storage/box/cyber_implants/bundle
name = "boxed cybernetic implants"
var/list/boxed = list(
/obj/item/organ/cyberimp/eyes/xray,
/obj/item/organ/cyberimp/eyes/thermals,
/obj/item/organ/eyes/robotic/xray,
/obj/item/organ/eyes/robotic/thermals,
/obj/item/organ/cyberimp/brain/anti_stun,
/obj/item/organ/cyberimp/chest/reviver)
var/amount = 5
@@ -728,3 +728,139 @@
if(!T)
T = new()
T.Insert(src)
if(!getorganslot("eye_sight"))
var/obj/item/organ/eyes/E
if(dna && dna.species && dna.species.mutanteyes)
E = new dna.species.mutanteyes()
else
E = new()
E.Insert(src)
//Eyes
/obj/item/organ/eyes
name = "eyes"
icon_state = "eyeballs"
desc = "I see you!"
zone = "eyes"
slot = "eye_sight"
var/sight_flags = 0
var/see_in_dark = 2
var/tint = 0
var/eye_color = "fff"
var/old_eye_color = "fff"
var/flash_protect = 0
var/see_invisible = SEE_INVISIBLE_LIVING
/obj/item/organ/eyes/Insert(mob/living/carbon/M, special = 0)
..()
if(ishuman(owner) && eye_color)
var/mob/living/carbon/human/HMN = owner
old_eye_color = HMN.eye_color
HMN.eye_color = eye_color
HMN.regenerate_icons()
M.update_tint()
owner.update_sight()
/obj/item/organ/eyes/Remove(mob/living/carbon/M, special = 0)
..()
if(ishuman(M) && eye_color)
var/mob/living/carbon/human/HMN = M
HMN.eye_color = old_eye_color
HMN.regenerate_icons()
M.update_tint()
M.update_sight()
/obj/item/organ/eyes/night_vision
name = "shadow eyes"
desc = "A spooky set of eyes that can see in the dark."
see_in_dark = 8
see_invisible = SEE_INVISIBLE_MINIMUM
actions_types = list(/datum/action/item_action/organ_action/use)
var/night_vision = TRUE
/obj/item/organ/eyes/night_vision/ui_action_click()
if(night_vision)
see_in_dark = 4
see_invisible = SEE_INVISIBLE_LIVING
night_vision = FALSE
else
see_in_dark = 8
see_invisible = SEE_INVISIBLE_MINIMUM
night_vision = TRUE
/obj/item/organ/eyes/night_vision/alien
name = "alien eyes"
desc = "It turned out they had them after all!"
see_in_dark = 8
see_invisible = SEE_INVISIBLE_MINIMUM
sight_flags = SEE_MOBS
///Robotic
/obj/item/organ/eyes/robotic
name = "robotic eyes"
icon_state = "cybernetic_eyeballs"
desc = "Your vision is augmented."
/obj/item/organ/eyes/robotic/emp_act(severity)
if(!owner)
return
if(severity > 1)
if(prob(10 * severity))
return
owner << "<span class='warning'>Static obfuscates your vision!</span>"
owner.flash_act(visual = 1)
/obj/item/organ/eyes/robotic/xray
name = "X-ray eyes"
desc = "These cybernetic eyes will give you X-ray vision. Blinking is futile."
eye_color = "000"
see_in_dark = 8
sight_flags = SEE_MOBS | SEE_OBJS | SEE_TURFS
/obj/item/organ/eyes/robotic/thermals
name = "Thermals eyes"
desc = "These cybernetic eye implants will give you Thermal vision. Vertical slit pupil included."
eye_color = "FC0"
origin_tech = "materials=5;programming=4;biotech=4;magnets=4;syndicate=1"
sight_flags = SEE_MOBS
see_invisible = SEE_INVISIBLE_MINIMUM
flash_protect = -1
see_in_dark = 8
/obj/item/organ/eyes/robotic/flashlight
name = "flashlight eyes"
desc = "It's two flashlights rigged together with some wire. Why would you put these in someones head?"
eye_color ="fee5a3"
icon = 'icons/obj/lighting.dmi'
icon_state = "flashlight_eyes"
flash_protect = 2
tint = INFINITY
/obj/item/organ/eyes/robotic/flashlight/emp_act(severity)
return
/obj/item/organ/eyes/robotic/flashlight/Insert(var/mob/living/carbon/M, var/special = 0)
..()
M.AddLuminosity(15)
/obj/item/organ/eyes/robotic/flashlight/Remove(var/mob/living/carbon/M, var/special = 0)
M.AddLuminosity(-15)
..()
// Welding shield implant
/obj/item/organ/eyes/robotic/shield
name = "shielded robotic eyes"
desc = "These reactive micro-shields will protect you from welders and flashes without obscuring your vision."
origin_tech = "materials=4;biotech=3;engineering=4;plasmatech=3"
flash_protect = 2
/obj/item/organ/eyes/robotic/shield/emp_act(severity)
return