Infected Room Update (#8477)

This commit is contained in:
Guti
2024-06-03 16:36:19 +02:00
committed by GitHub
parent a0ff6fbb1b
commit bd7a30272a
5 changed files with 42 additions and 12 deletions

View File

@@ -2643,6 +2643,10 @@ var/list/the_station_areas = list (
name = "\improper Exploration Locker Room Three"
icon_state = "hangarcontrol"
/area/engineering/gravgen
name = "Gravity Generator"
icon_state = "engineering"
//CHOMPedit KSC = overmap exploration shuttles
/area/shuttle/stargazer

View File

@@ -44,7 +44,7 @@
resistance += 10
if(GLOB.all_species.len)
affected_species = get_infectable_species()
affected_species = get_all_infectable_species() // CHOMPEdit
/proc/get_infectable_species()
var/list/meat = list()

View File

@@ -2328,10 +2328,6 @@ End Chompstation Edit*/
name = "Gravity Generator Substation"
icon_state = "engineering"
/area/engineering/gravgen
name = "Gravity Generator"
icon_state = "engineering"
/area/maintenance/engineering/gravgen
name = "Gravity Generator Maintenance"

View File

@@ -8,8 +8,13 @@
/area/shuttle,
/area/crew_quarters,
/area/holodeck,
/area/construction,
/area/engineering/engine_room,
/area/maintenance)
/area/engineering/engine_monitoring,
/area/engineering/gravgen,
/area/maintenance,
/area/medical,
/area/rnd/test_area)
var/commondisease = list(
"Friday Fever" = list(
@@ -72,7 +77,7 @@
var/list/turfs = list()
for(var/turf/simulated/floor/F in A)
if(turf_clear(F))
if(!F.check_density())
turfs += F
if(turfs.len == 0)
log_debug("infectedroom event: Rejected [A] because it has no clear turfs.")
@@ -93,7 +98,24 @@
command_announcement.Announce("Confirmed outbreak of level 7 biohazard aboard \the [location_name()]. All personnel must contain the outbreak.", "Infectious Contaminant in [target_area.name]", new_sound = 'sound/AI/outbreak7.ogg')
/datum/event/infectedroom/start()
var/obj/effect/decal/cleanable/mucus/mapped/M
var/decal
for(var/i in 1 to infected_tiles)
decal = rand(1, 5)
if(decal == 1)
var/obj/effect/decal/cleanable/blood/C
C = new(pick_n_take(target_turfs))
C.basecolor = get_random_colour(rand(0, 1))
C.update_icon()
C.virus2 |= new /datum/disease2/disease
C.virus2[1] = virus.getcopy()
else if(decal == 2)
var/obj/effect/decal/cleanable/vomit/V
V = new(pick_n_take(target_turfs))
V.virus2 |= new /datum/disease2/disease
V.virus2[1] = virus.getcopy()
else
var/obj/effect/decal/cleanable/mucus/M
M = new(pick_n_take(target_turfs))
M.virus2 |= new /datum/disease2/disease
M.virus2[1] = virus.getcopy()

View File

@@ -52,4 +52,12 @@
resistance += 10
if(GLOB.all_species.len)
affected_species = get_infectable_species()
affected_species = get_all_infectable_species()
/proc/get_all_infectable_species()
var/list/meat = list()
for (var/specie in GLOB.all_species)
var/datum/species/S = GLOB.all_species[specie]
if(!S.get_virus_immune())
meat += S
return meat