mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-10 07:29:39 +01:00
Radiation Storm Rework (#16515)
* kneel before me sneaky * vending update * conflict * conflict fix take 2? * radiation buff (and changes) * nuking comments I forgot to remove
This commit is contained in:
@@ -42,8 +42,9 @@
|
||||
lights()
|
||||
|
||||
/datum/event/radiation_storm/proc/radiate()
|
||||
for(var/mob/living/C in living_mob_list)
|
||||
C.apply_radiation_effects()
|
||||
var/radiation_level = rand(20, 40)
|
||||
for(var/z in affecting_z)
|
||||
SSradiation.z_radiate(locate(1, 1, z), radiation_level, TRUE)
|
||||
|
||||
/datum/event/radiation_storm/end(var/faked)
|
||||
..()
|
||||
|
||||
@@ -91,9 +91,6 @@
|
||||
/mob/living/announcer/InStasis()
|
||||
return FALSE
|
||||
|
||||
/mob/living/announcer/apply_radiation_effects()
|
||||
return FALSE
|
||||
|
||||
/mob/living/announcer/flash_act(intensity = FLASH_PROTECTION_MODERATE, override_blindness_check = FALSE, affect_silicon = FALSE, ignore_inherent = FALSE, type = /obj/screen/fullscreen/flash, length = 2.5 SECONDS)
|
||||
return FALSE
|
||||
|
||||
|
||||
@@ -2028,30 +2028,6 @@
|
||||
var/matrix/M = new()
|
||||
B.transform = M.Scale(scale)
|
||||
|
||||
/mob/living/carbon/human/apply_radiation_effects()
|
||||
. = ..()
|
||||
if(. == TRUE)
|
||||
if(src.is_diona())
|
||||
var/damage = rand(15, 30)
|
||||
src.adjustToxLoss(-damage)
|
||||
if(prob(5))
|
||||
damage = rand(20, 60)
|
||||
src.adjustToxLoss(-damage)
|
||||
to_chat(src, SPAN_NOTICE("You can feel flow of energy which makes you regenerate."))
|
||||
|
||||
if(species.radiation_mod <= 0)
|
||||
return
|
||||
|
||||
apply_damage((rand(15,30)), DAMAGE_RADIATION, damage_flags = DAMAGE_FLAG_DISPERSED)
|
||||
if(prob(4))
|
||||
apply_damage((rand(20,60)), DAMAGE_RADIATION, damage_flags = DAMAGE_FLAG_DISPERSED)
|
||||
if (prob(75))
|
||||
randmutb(src) // Applies bad mutation
|
||||
domutcheck(src,null,MUTCHK_FORCED)
|
||||
else
|
||||
randmutg(src) // Applies good mutation
|
||||
domutcheck(src,null,MUTCHK_FORCED)
|
||||
|
||||
/mob/living/carbon/human/get_accent_icon(var/datum/language/speaking, var/mob/hearer, var/force_accent)
|
||||
var/used_accent = accent //starts with the mob's default accent
|
||||
|
||||
|
||||
@@ -227,10 +227,10 @@
|
||||
var/damage = 0
|
||||
total_radiation -= 1 * RADIATION_SPEED_COEFFICIENT
|
||||
if(prob(25))
|
||||
damage = 1
|
||||
damage = 2
|
||||
|
||||
if (total_radiation > 50)
|
||||
damage = 1
|
||||
damage = 3
|
||||
total_radiation -= 1 * RADIATION_SPEED_COEFFICIENT
|
||||
if(prob(5) && prob(100 * RADIATION_SPEED_COEFFICIENT))
|
||||
src.apply_radiation(-5 * RADIATION_SPEED_COEFFICIENT)
|
||||
@@ -247,9 +247,10 @@
|
||||
|
||||
if (total_radiation > 75)
|
||||
src.apply_radiation(-1 * RADIATION_SPEED_COEFFICIENT)
|
||||
damage = 3
|
||||
damage = 7
|
||||
if(prob(5))
|
||||
take_overall_damage(0, 5 * RADIATION_SPEED_COEFFICIENT, used_weapon = "Radiation Burns")
|
||||
take_overall_damage(0, 10 * RADIATION_SPEED_COEFFICIENT, used_weapon = "Radiation Burns")
|
||||
to_chat(src, "<span class='warning'>You feel a burning sensation!</span>")
|
||||
if(prob(1))
|
||||
to_chat(src, "<span class='warning'>You feel strange!</span>")
|
||||
adjustCloneLoss(5 * RADIATION_SPEED_COEFFICIENT)
|
||||
|
||||
@@ -995,16 +995,6 @@ default behaviour is:
|
||||
update_icon()
|
||||
return TRUE
|
||||
|
||||
/mob/living/proc/apply_radiation_effects()
|
||||
var/area/A = get_area(src)
|
||||
if(!A)
|
||||
return FALSE
|
||||
if(isNotStationLevel(A.z))
|
||||
return FALSE
|
||||
if(A.flags & RAD_SHIELDED)
|
||||
return FALSE
|
||||
. = TRUE
|
||||
|
||||
/mob/living/proc/needs_wheelchair()
|
||||
return FALSE
|
||||
|
||||
|
||||
@@ -156,11 +156,6 @@
|
||||
. = ..()
|
||||
handle_radiation_light()
|
||||
|
||||
/mob/living/simple_animal/cat/apply_radiation_effects()
|
||||
. = ..()
|
||||
if(.)
|
||||
apply_damage((rand(30,60)), DAMAGE_RADIATION, damage_flags = DAMAGE_FLAG_DISPERSED)
|
||||
|
||||
/mob/living/simple_animal/cat/proc/handle_flee_target()
|
||||
//see if we should stop fleeing
|
||||
if (flee_target && !(flee_target.loc in view(src)))
|
||||
|
||||
Reference in New Issue
Block a user