Files
Bubberstation/code/modules/events/blob.dm
SkyratBot 5a33abb773 [MIRROR] Event menu rewrite [MDB IGNORE] (#15396)
* Event menu rewrite

* Update topic.dm

* Update _event.dm

* Update event_chaos_system.dm

Co-authored-by: Profakos <profakos@gmail.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-08-08 01:15:12 +01:00

39 lines
1.2 KiB
Plaintext

/datum/round_event_control/blob
name = "Blob"
typepath = /datum/round_event/ghost_role/blob
weight = 10
max_occurrences = 1
min_players = 20
dynamic_should_hijack = TRUE
category = EVENT_CATEGORY_ENTITIES
description = "Spawns a new blob overmind."
/datum/round_event_control/blob/canSpawnEvent(players)
if(EMERGENCY_PAST_POINT_OF_NO_RETURN) // no blobs if the shuttle is past the point of no return
return FALSE
return ..()
/datum/round_event/ghost_role/blob
announceChance = 0
role_name = "blob overmind"
fakeable = TRUE
/datum/round_event/ghost_role/blob/announce(fake)
priority_announce("Confirmed outbreak of level 5 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", ANNOUNCER_OUTBREAK5)
/datum/round_event/ghost_role/blob/spawn_role()
if(!GLOB.blobstart.len)
return MAP_ERROR
var/list/candidates = get_candidates(ROLE_BLOB, ROLE_BLOB)
if(!candidates.len)
return NOT_ENOUGH_PLAYERS
var/mob/dead/observer/new_blob = pick(candidates)
var/mob/camera/blob/BC = new_blob.become_overmind()
spawned_mobs += BC
message_admins("[ADMIN_LOOKUPFLW(BC)] has been made into a blob overmind by an event.")
BC.log_message("was spawned as a blob overmind by an event.", LOG_GAME)
return SUCCESSFUL_SPAWN