look ma no brain

This commit is contained in:
Aurorablade
2016-02-17 22:03:02 -05:00
parent 01ab4048cd
commit 29293dde10
9 changed files with 40 additions and 14 deletions
@@ -70,9 +70,13 @@
B.transfer_identity(user)
if(istype(user,/mob/living/carbon/human))
var/mob/living/carbon/human/H = user
H.update_hair(0)
..()
/obj/item/organ/internal/brain/insert(var/mob/living/target)
/obj/item/organ/internal/brain/insert(var/mob/living/target,special = 0)
var/brain_already_exists = 0
if(istype(target,/mob/living/carbon/human)) // No more IPC multibrain shenanigans
@@ -80,6 +84,9 @@
if(target.get_int_organ(/obj/item/organ/internal/brain))
brain_already_exists = 1
var/mob/living/carbon/human/H = target
H.update_hair(0)
if(!brain_already_exists)
if(target.key)
target.ghostize()
@@ -471,7 +471,10 @@ var/global/list/damage_icon_parts = list()
else
//warning("Invalid h_style for [species.name]: [h_style]")
overlays_standing[HAIR_LAYER] = image(hair_standing)
if(!src.get_int_organ(/obj/item/organ/internal/brain) && !src.get_species() == "Machine" )//make it obvious we have NO BRAIN
overlays_standing[HAIR_LAYER] = image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s")
else
overlays_standing[HAIR_LAYER] = image(hair_standing)
if(update_icons) update_icons()
+2 -2
View File
@@ -4,7 +4,7 @@
icon_state = "armcannonstun"
item_state = "armcannonstun"
modifystate = "armcannonstun"
force = "5"
force = 5
self_recharge = 1
flags = NODROP
slot_flags = null
@@ -20,7 +20,7 @@
icon_state = "armcannon"
item_state = "armcannonlase"
modifystate = "armcannon"
force = "5"
force = 5
self_recharge = 1
flags = NODROP
slot_flags = null
+2 -4
View File
@@ -50,10 +50,8 @@
/obj/item/weapon/reagent_containers/attack_self(mob/user as mob)
return
///obj/item/weapon/reagent_containers/attack(mob/M as mob, mob/user as mob, def_zone)
// if (can_operate(M)) //Checks if mob is lying down on table for surgery
// if (do_surgery(M,user,src))
// return
/obj/item/weapon/reagent_containers/attack(mob/M as mob, mob/user as mob, def_zone)
return
// this prevented pills, food, and other things from being picked up by bags.
// possibly intentional, but removing it allows us to not duplicate functionality.
@@ -102,7 +102,7 @@
O.status |= ORGAN_CUT_AWAY
if(!O.sterile)
spread_germs_to_organ(O,user) // This wouldn't be any cleaner than the actual surgery
O.remove(src)
O.forceMove(src)
if(!(user.l_hand && user.r_hand))
user.put_in_hands(removing)
user.visible_message("<span class='danger'><b>[user]</b> extracts [removing] from [src] with [W]!")
+17 -4
View File
@@ -45,7 +45,16 @@
if(M)
M.internal_organs -= src
if(vital && !special)
M.death()
if(M.stat != DEAD)//safety check!
M.death()
if(istype(M, /mob/living/carbon/human))
var/mob/living/carbon/human/H = M
var/obj/item/organ/external/parent = H.get_organ(check_zone(parent_organ))
if(!istype(parent))
log_to_dd("[src] attempted to remove from a [parent], but [parent] didn't exist! Area: [get_area(M)], Mob: [M]")
else
parent.internal_organs -= src
if(organ_action_name)
action_button_name = null
@@ -54,6 +63,10 @@
remove(owner)
..()
/obj/item/organ/internal/replaced(var/mob/living/carbon/human/target,var/obj/item/organ/external/affected)
insert(target)
..()
/obj/item/organ/internal/proc/on_find(mob/living/finder)
return
@@ -368,6 +381,7 @@
M.mutations.Add(CLUMSY)
M.dna.SetSEState(COMICBLOCK,1,1)
genemutcheck(M,COMICBLOCK,null,MUTCHK_FORCED)
lasthonk = world.time
/obj/item/organ/internal/honktumor/remove(mob/living/carbon/M, special = 0)
M.mutations.Remove(CLUMSY)
@@ -378,9 +392,8 @@
if(!owner)
return
if(lasthonk == 0)
lasthonk = world.time
if((lasthonk > world.time + 60)|| lasthonk == 0)
if((lasthonk > world.time + 60))
lasthonk = world.time
owner << "<font color='red' size='7'>HONK</font>"
owner.sleeping = 0
+1 -1
View File
@@ -123,7 +123,7 @@ mob/living/carbon/human/proc/handle_pain()
continue
if(I.damage > 2) if(prob(2))
var/obj/item/organ/external/parent = get_organ(I.parent_organ)
src.custom_pain("You feel a sharp pain in your [parent.name]", 1)
src.custom_pain("You feel a sharp pain in your [parent.limb_name]", 1)
var/toxDamageMessage = null
var/toxMessageProb = 1
+5
View File
@@ -36,6 +36,11 @@
return 0
return 1
/datum/surgery/organ_manipulation/alien/can_start(mob/user, mob/living/carbon/target)
if(istype(target,/mob/living/carbon/alien/humanoid))
return 1
else return 0
// Internal surgeries.
/datum/surgery_step/internal
priority = 2