Merge pull request #2355 from Fox-McCloud/eye-fixes

Eyes Fixes and Chem Tweaks
This commit is contained in:
TheDZD
2015-10-14 18:29:57 -04:00
16 changed files with 111 additions and 104 deletions
+5 -5
View File
@@ -2,12 +2,12 @@
if(!ticker)
alert("The game hasn't started yet!")
return
var/list/incompatible_species = list("Plasmaman")
for(var/mob/living/carbon/human/H in player_list)
if(H.stat == DEAD || !(H.client))
if(H.stat == DEAD || !(H.client))
continue
if(is_special_character(H))
if(is_special_character(H))
continue
if(H.species.name in incompatible_species)
H.set_species("Human")
@@ -55,7 +55,7 @@
H.species.equip(H)
H.regenerate_icons()
message_admins("[key_name_admin(usr)] used DODGEBAWWWWWWWL! -NO ATTACK LOGS WILL BE SENT TO ADMINS FROM THIS POINT FORTH-", 1)
log_admin("[key_name(usr)] used dodgeball.")
nologevent = 1
@@ -85,6 +85,6 @@
return
else
playsound(src, 'sound/items/dodgeball.ogg', 50, 1)
visible_message("<span class='danger'>[H] HAS BEEN ELIMINATED!</span>", 3)
visible_message("<span class='danger'>[H] HAS BEEN ELIMINATED!</span>")
H.melt()
return
@@ -18,6 +18,12 @@
/obj/item/organ/brain/attack_self(mob/user as mob)
return //let's not have players taken out of the round as easily as a click, once you have their brain.
/obj/item/organ/brain/surgeryize()
if(!owner)
return
owner.ear_damage = 0 //Yeah, didn't you...hear? The ears are totally inside the brain.
owner.ear_deaf = 0
/obj/item/organ/brain/xeno
name = "thinkpan"
desc = "It looks kind of like an enormous wad of purple bubblegum."
+4 -1
View File
@@ -323,4 +323,7 @@ var/list/organ_cache = list()
if(fingerprintslast) O.fingerprintslast = fingerprintslast
user.put_in_active_hand(O)
qdel(src)
qdel(src)
/obj/item/organ/proc/surgeryize()
return
+8
View File
@@ -81,6 +81,14 @@
owner.b_eyes ? owner.b_eyes : 0
)
/obj/item/organ/eyes/surgeryize()
if(!owner)
return
owner.disabilities &= ~NEARSIGHTED
owner.sdisabilities &= ~BLIND
owner.eye_blurry = 0
owner.eye_blind = 0
/obj/item/organ/liver
name = "liver"
icon_state = "liver"
+17 -8
View File
@@ -513,16 +513,25 @@ datum/reagent/morphine/addiction_act_stage4(var/mob/living/M as mob)
datum/reagent/oculine/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.eye_blurry = max(M.eye_blurry-5 , 0)
M.eye_blind = max(M.eye_blind-5 , 0)
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"]
if(istype(E))
if(E.damage > 0)
E.damage -= 1
if(prob(80))
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/obj/item/organ/eyes/E = H.internal_organs_by_name["eyes"]
if(istype(E))
E.damage = max(E.damage-1, 0)
M.eye_blurry = max(M.eye_blurry-1 , 0)
M.ear_damage = max(M.ear_damage-1, 0)
if(prob(50))
M.disabilities &= ~NEARSIGHTED
if(prob(30))
M.sdisabilities &= ~BLIND
M.eye_blind = 0
if(M.ear_damage <= 25)
if(prob(30))
M.ear_deaf = 0
..()
return
/datum/chemical_reaction/oculine
name = "Oculine"
id = "oculine"
@@ -30,13 +30,6 @@
result_amount = 2
mix_message = "The solvent extracts an antibiotic compound from the fungus."
audioline
name = "Audioline"
id = "audioline"
result = "audioline"
required_reagents = list("spaceacillin" = 1, "salglu_solution" = 1, "epinephrine" = 1)
result_amount = 3
rezadone
name = "Rezadone"
id = "rezadone"
@@ -61,20 +61,6 @@
..()
return
/datum/reagent/audioline
name = "Audioline"
id = "audioline"
description = "Heals ear damage."
reagent_state = LIQUID
color = "#6600FF" // rgb: 100, 165, 255
/datum/reagent/audioline/on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.ear_damage = 0
M.ear_deaf = 0
..()
return
/datum/reagent/mitocholide
name = "Mitocholide"
id = "mitocholide"
@@ -91,7 +77,7 @@
for(var/name in H.internal_organs_by_name)
var/obj/item/organ/I = H.internal_organs_by_name[name]
if(I.damage > 0)
I.damage -= 0.20
I.damage = max(I.damage-0.4, 0)
..()
return
+4 -2
View File
@@ -150,6 +150,8 @@
var/obj/item/organ/external/affected = target.get_organ(target_zone)
for(var/obj/item/organ/I in affected.internal_organs)
if(I)
I.surgeryize()
if(I && I.damage > 0)
if(I.robotic < 2)
user.visible_message("\blue [user] treats damage to [target]'s [I.name] with [tool_name].", \
@@ -193,7 +195,7 @@
if (!..())
return 0
var/obj/item/organ/external/affected = target.get_organ(target_zone)
if(!(affected && !(affected.status & ORGAN_ROBOT)))
@@ -310,7 +312,7 @@
if(!istype(O))
return 0
if((affected.status & ORGAN_ROBOT) && !(O.status & ORGAN_ROBOT))
user << "<span class='danger'>You cannot install a naked organ into a robotic body.</span>"
return 2