Files
Bubberstation/code/modules/events/space_dragon.dm
T
IndieanaJones 0937264f1e [READY]New Side Antagonist: Space Dragon (#42551)
* Add files via upload

* Rename space_dragon.dm to code/modules/events/space_dragon.dm

* Adds Space Dragon

* Adds Space Dragon Event

* Remove Copied File

* Put antagonist definition in proper location for space dragon

* Update space_dragon.dm

* Removed passive health regen from space dragon

* Updated Weight and Earliness for Space Dragon

* Added Objective to Space Dragon, Updated Starting Blurb

* Cleaned Up the Objective Determiner

* Actually fix the space dragon objectives

* Fix the objective display for the space dragon's target

* Updated Space Dragon Intro Blurb

* Updated Centcom Message When Space Dragon Spawns

* Updated Space Dragon's description with new lore

* Clean Up Space Dragon's OnFire()

* Add Space Dragon Sprites

* Sprite in wrong location

* Properly adds Space Dragon Sprites

* Adds Space Dragon Tiny Sprite to be Carp

* Space Dragon Uses New Sprites, Tiny Form Updated

* Increased Time Til' Dragon Spawn

* Drake's Tail Sweep Now Uses Prebuilt Spell

Thanks to Cobblestone for the head's up on this.
2019-02-10 21:12:17 -05:00

46 lines
1.5 KiB
Plaintext

/datum/round_event_control/space_dragon
name = "Spawn Space Dragon"
typepath = /datum/round_event/ghost_role/space_dragon
max_occurrences = 1
weight = 8
earliest_start = 70 MINUTES
min_players = 20
/datum/round_event/ghost_role/space_dragon
minimum_required = 1
role_name = "Space Dragon"
fakeable = FALSE
/datum/round_event/ghost_role/space_dragon/announce(fake)
priority_announce("It appears a lifeform with magical traces is approaching [station_name()], please stand-by.", "Lifesign Alert")
/datum/round_event/ghost_role/space_dragon/spawn_role()
var/list/candidates = get_candidates(ROLE_ALIEN, null, ROLE_ALIEN)
if(!candidates.len)
return NOT_ENOUGH_PLAYERS
var/mob/dead/selected = pick(candidates)
var/datum/mind/player_mind = new /datum/mind(selected.key)
player_mind.active = TRUE
var/list/spawn_locs = list()
for(var/obj/effect/landmark/carpspawn/C in GLOB.landmarks_list)
spawn_locs += (C.loc)
if(!spawn_locs.len)
message_admins("No valid spawn locations found, aborting...")
return MAP_ERROR
var/mob/living/simple_animal/hostile/megafauna/dragon/space_dragon/S = new ((pick(spawn_locs)))
player_mind.transfer_to(S)
player_mind.assigned_role = "Space Dragon"
player_mind.special_role = "Space Dragon"
player_mind.add_antag_datum(/datum/antagonist/space_dragon)
playsound(S, 'sound/magic/ethereal_exit.ogg', 50, 1, -1)
message_admins("[ADMIN_LOOKUPFLW(S)] has been made into a Space Dragon by an event.")
log_game("[key_name(S)] was spawned as a Space Dragon by an event.")
spawned_mobs += S
return SUCCESSFUL_SPAWN