mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-30 16:16:17 +01:00
Runtimes
Flashing mobs without eyes caused errors
This commit is contained in:
+10
-6
@@ -117,13 +117,17 @@ obj/var/contaminated = 0
|
||||
|
||||
/mob/living/carbon/human/proc/burn_eyes()
|
||||
//The proc that handles eye burning.
|
||||
if(prob(20)) src << "\red Your eyes burn!"
|
||||
if(!species.has_organ["eyes"])
|
||||
return
|
||||
|
||||
var/datum/organ/internal/eyes/E = internal_organs_by_name["eyes"]
|
||||
E.damage += 2.5
|
||||
eye_blurry = min(eye_blurry+1.5,50)
|
||||
if (prob(max(0,E.damage - 15) + 1) &&!eye_blind)
|
||||
src << "\red You are blinded!"
|
||||
eye_blind += 20
|
||||
if(E)
|
||||
if(prob(20)) src << "\red Your eyes burn!"
|
||||
E.damage += 2.5
|
||||
eye_blurry = min(eye_blurry+1.5,50)
|
||||
if (prob(max(0,E.damage - 15) + 1) &&!eye_blind)
|
||||
src << "\red You are blinded!"
|
||||
eye_blind += 20
|
||||
|
||||
/mob/living/carbon/human/proc/pl_head_protected()
|
||||
//Checks if the head is adequately sealed.
|
||||
|
||||
@@ -85,7 +85,7 @@
|
||||
if (istype(O, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = O
|
||||
var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"]
|
||||
if ((E.damage > E.min_bruised_damage && prob(E.damage + 50)))
|
||||
if (E && (E.damage > E.min_bruised_damage && prob(E.damage + 50)))
|
||||
flick("e_flash", O:flash)
|
||||
E.damage += rand(1, 5)
|
||||
else
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
Works similarly to worn sprite_sheets, except the alternate sprites are used when the clothing/refit_for_species() proc is called.
|
||||
*/
|
||||
var/list/sprite_sheets_obj = null
|
||||
|
||||
|
||||
/obj/item/device
|
||||
icon = 'icons/obj/device.dmi'
|
||||
|
||||
@@ -536,6 +536,9 @@
|
||||
|
||||
var/datum/organ/internal/eyes/eyes = H.internal_organs_by_name["eyes"]
|
||||
|
||||
if(!eyes)
|
||||
return
|
||||
|
||||
if(M != user)
|
||||
for(var/mob/O in (viewers(M) - user - M))
|
||||
O.show_message("\red [M] has been stabbed in the eye with [src] by [user].", 1)
|
||||
|
||||
@@ -112,6 +112,8 @@
|
||||
severity = min(max(severity, 0), 4)
|
||||
var/mob/living/carbon/human/H = C
|
||||
var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"]
|
||||
if(!E)
|
||||
return
|
||||
|
||||
switch(severity)
|
||||
if(0)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
var/damage = round(30/(get_dist(B,get_turf(src))+1))
|
||||
B.health -= damage
|
||||
B.update_icon()
|
||||
|
||||
|
||||
new/obj/effect/effect/smoke/flashbang(src.loc)
|
||||
del(src)
|
||||
return
|
||||
@@ -84,7 +84,7 @@
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/datum/organ/internal/eyes/E = H.internal_organs["eyes"]
|
||||
if (E.damage >= E.min_bruised_damage)
|
||||
if (E && E.damage >= E.min_bruised_damage)
|
||||
M << "\red Your eyes start to burn badly!"
|
||||
if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang)))
|
||||
if (E.damage >= E.min_broken_damage)
|
||||
|
||||
@@ -381,6 +381,8 @@
|
||||
if(istype(user, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"]
|
||||
if(!E)
|
||||
return
|
||||
if(H.species.flags & IS_SYNTHETIC)
|
||||
return
|
||||
switch(safety)
|
||||
|
||||
Reference in New Issue
Block a user