mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-17 10:03:50 +01:00
Merge pull request #8491 from Tayyyyyyy/dark_view
Dark view increases flash damage to eyes
This commit is contained in:
@@ -313,6 +313,7 @@
|
||||
/mob/living/carbon/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0)
|
||||
. = ..()
|
||||
var/damage = intensity - check_eye_prot()
|
||||
var/extra_damage = 0
|
||||
if(.)
|
||||
if(visual)
|
||||
return
|
||||
@@ -323,19 +324,32 @@
|
||||
if(!E || (E && E.weld_proof))
|
||||
return
|
||||
|
||||
var/extra_darkview = 0
|
||||
if(E.dark_view)
|
||||
extra_darkview = max(E.dark_view - 2, 0)
|
||||
extra_damage = extra_darkview
|
||||
|
||||
var/light_amount = 10 // assume full brightness
|
||||
if(isturf(src.loc))
|
||||
var/turf/T = src.loc
|
||||
light_amount = round(T.get_lumcount() * 10)
|
||||
|
||||
// a dark view of 8, in full darkness, will result in maximum 1st tier damage
|
||||
var/extra_prob = (10 - light_amount) * extra_darkview
|
||||
|
||||
switch(damage)
|
||||
if(1)
|
||||
to_chat(src, "<span class='warning'>Your eyes sting a little.</span>")
|
||||
if(prob(40)) //waiting on carbon organs
|
||||
E.receive_damage(1, 1)
|
||||
|
||||
var/minor_damage_multiplier = min(40 + extra_prob, 100) / 100
|
||||
var/minor_damage = minor_damage_multiplier * (1 + extra_damage)
|
||||
E.receive_damage(minor_damage, 1)
|
||||
if(2)
|
||||
to_chat(src, "<span class='warning'>Your eyes burn.</span>")
|
||||
E.receive_damage(rand(2, 4), 1)
|
||||
E.receive_damage(rand(2, 4) + extra_damage, 1)
|
||||
|
||||
else
|
||||
to_chat(src, "Your eyes itch and burn severely!</span>")
|
||||
E.receive_damage(rand(12, 16), 1)
|
||||
E.receive_damage(rand(12, 16) + extra_damage, 1)
|
||||
|
||||
if(E.damage > E.min_bruised_damage)
|
||||
AdjustEyeBlind(damage)
|
||||
@@ -1105,4 +1119,4 @@ so that different stomachs can handle things in different ways VB*/
|
||||
update_tint()
|
||||
if(I.flags_inv & HIDEMASK || forced)
|
||||
update_inv_wear_mask()
|
||||
update_inv_head()
|
||||
update_inv_head()
|
||||
|
||||
Reference in New Issue
Block a user