diff --git a/code/modules/mob/living/carbon/alien/humanoid/life_new.dm b/code/modules/mob/living/carbon/alien/humanoid/life_new.dm index 6d1a59e5fa..ea4dd9dd46 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life_new.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life_new.dm @@ -36,6 +36,9 @@ //Disease Check handle_virus_updates() + //Update mind + update_mind() + //Handle temperature/pressure differences between body and environment handle_environment() @@ -109,6 +112,13 @@ if (prob(10)) src.stuttering = max(10, src.stuttering) + update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.assigned_role = "Hunter" + mind.key = key + handle_mutations_and_radiation() if(src.fireloss) diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm index 4cbfcdc65f..dc8a0742fb 100644 --- a/code/modules/mob/living/carbon/alien/larva/life.dm +++ b/code/modules/mob/living/carbon/alien/larva/life.dm @@ -33,6 +33,9 @@ //to find it. blinded = null + //Mind update + update_mind() + //Disease Check handle_virus_updates() @@ -144,6 +147,12 @@ toxloss += 3 updatehealth() + update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.assigned_role = "Larva" + mind.key = key breathe() diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index b69c16a5b0..444a7b463c 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -400,69 +400,6 @@ else eye_blurry += P.effects["eyeblur"] - - - /* - // Bullet shots - if(P.flag == "bullet") - if (prob(50) && stat != 2) - if(weakened <= 5) weakened = 5 - - // Taser shots - if(P.flag == "taser" && d == P.damage) - armor = getarmor(affecting, "taser") - if (prob(armor["armor"])) - show_message("\red Your [armor["clothes"]] absorbs the hit!", 4) - return - - if (prob(75) && stunned <= 10) - stunned = 10 - else - weakened = 10 - if (stuttering < 10) - stuttering = 10 - - // Laser shots - if(P.flag == "laser") - if (!eye_blurry && prob(50)) eye_blurry = 4 - if (prob(25)) stunned++ - - // Shock shots - if(istype(P, /obj/item/projectile/fireball)) - if (!eye_blurry && prob(50)) eye_blurry = 4 - if (prob(25)) - stunned = 10 - else - weakened = 10 - - // Dart shots - if(istype(P, /obj/item/projectile/dart) && d == P.damage) - armor = getarmor(affecting, "bio") - if (prob(armor["armor"])) - show_message("\red Your [armor["clothes"]] absorbs the hit!", 4) - return - if (istype(l_hand, /obj/item/weapon/shield/riot)||istype(r_hand, /obj/item/weapon/shield/riot)) - if (prob(50)) - show_message("\red Your shield absorbs the hit!", 4) - else - weakened += 5 - toxloss += 10 - - // Pulse shots - if(istype(P, /obj/item/projectile/beam/pulse)) - if (prob(50)) - stunned = min(stunned, 5) - - // Bolt shots - if(istype(P, /obj/item/projectile/bolt) && d == P.damage) - toxloss += 3 - radiation += 100 - updatehealth() - stuttering += 5 - drowsyness += 5 - - */ - return /mob/living/carbon/human/emp_act(severity) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 5679b52922..d4fb1f2b58 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -38,6 +38,9 @@ //to find it. blinded = null + //Update Mind + update_mind() + //Disease Check handle_virus_updates() @@ -133,6 +136,14 @@ oxyloss = max(oxyloss, 0) fireloss = max(fireloss, 0) + update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.assigned_role = job + if(!mind.assigned_role) + mind.assigned_role = "Assistant" + mind.key = key handle_disabilities() if (disabilities & 2) diff --git a/code/modules/mob/living/carbon/metroid/life.dm b/code/modules/mob/living/carbon/metroid/life.dm index 5439efb0ab..f6e38db49d 100644 --- a/code/modules/mob/living/carbon/metroid/life.dm +++ b/code/modules/mob/living/carbon/metroid/life.dm @@ -268,7 +268,12 @@ AIproc = 0 - + update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.assigned_role = "Metroid" + mind.key = key handle_environment(datum/gas_mixture/environment) if(!environment) diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index 2743dedf05..58aff33aa0 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -115,6 +115,12 @@ if (prob(10)) src.stuttering = max(10, src.stuttering) + update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.key = key + handle_mutations_and_radiation() if(src.fireloss) diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index 6f277f8d98..84513c7a51 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -15,6 +15,8 @@ src.updatehealth() + src.update_mind() + /*if (istype(T, /turf)) var/ficheck = src.firecheck(T) if (ficheck) @@ -242,4 +244,11 @@ src.health = 100 - src.oxyloss - src.toxloss - src.fireloss - src.bruteloss else src.health = 100 - src.stat = 0 \ No newline at end of file + src.stat = 0 + +/mob/living/silicon/ai/proc/update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.assigned_role = "AI" + mind.key = key \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index 533ae30875..d5606a548b 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -21,6 +21,8 @@ process_locks() update_canmove() + update_mind() + /mob/living/silicon/robot @@ -73,6 +75,14 @@ else canmove = 1 + update_mind() + if(!mind && client) + mind = new + mind.current = src + mind.assigned_role = "Hunter" + mind.key = key + + handle_regular_status_updates() //Stop AI using us as a camera