Files
Bubberstation/modular_skyrat/modules/assaultops/code/assaultops_admin.dm
Gandalf adfe2f099b DS-1 Assault Group + Skyrat Modular Map System [READY FOR TESTING, MODULAR] (#2317)
* START

* aaaaa

* Update assaultops.dm

* aaa

* Logic Systematic Sense

* Logic v2

* Update assaultops.dm

* Update assaultops.dm

* Update assaultops.dm

* Updates.

* Update assaultops.dm

* a

* Update radial.dmi

* Docs

* Update assaultops.dm

* Update one_click_antag.dm

* shuttle!

* Update syndicate_cruiser.dmm

* Update syndicate_cruiser.dmm

* aaaa

* Update shuttle.dm

* Update syndicate_cruiser.dmm

* aaa

* SMMS+Centcom

* Shuttles now get decals!

* Update to shuttle, centcom level!

* Update CentCom_Skyrat.dmm

* New objectives+win conditions

* a

* Merge branch 'master' into assaultops

* system updates + prison area

* Desc fix

* Delete assaultops_dynamic.dm

* a

* Update assaultops.dm

* Make Ass Team

* Update assaultops.dm

* fixes

* Update syndicate_cruiser.dmm

* watch!

* Update assaultops.dm

* Merge branch 'master' into assaultops

* super datumized

* aaaa

* nothing to see here

* Massive map changes.

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* Update syndicate_cruiser.dmm

* Merge branch 'master' into assaultops

* Merge branch 'master' into assaultops

* aaaa

* Update large_doors.dm

* aaa

* Update assaultops_gamemode.dm

* Update assaultops_datum.dm

* aa

* spawners!

* aaa

* Update assaultops_outfits.dm

* Update assaultops_spawners.dm

* Update assaultops_spawners.dm

* Update assaultops_spawners.dm

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* a

* Base alarm!

* Update base_alarm.dm

* a

* aa

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* aaa

* Update areas.dm

* aaaa

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* WOOO MORE SHIT!

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* aa

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* Update syndicate_frigate.dmm

* a

* Update CentCom_Skyrat.dmm

* Assault Ops Card Stuff (#2803)

* Automatic changelog generation for PR #2803 [ci skip]

* Assault Ops Map Tweaks (#2861)

* Update CentCom_Skyrat.dmm

* Update syndicate_frigate.dmm

* Update CentCom_Skyrat.dmm

* Update CentCom_Skyrat.dmm

* modularmaps

* duisables mining

* Removes the gosh darn Orbital Mech Pad (#2917)

Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com>
Co-authored-by: SkyratBot <59378654+SkyratBot@users.noreply.github.com>
2021-01-30 00:32:04 +01:00

55 lines
1.8 KiB
Plaintext

/datum/admins/proc/makeAssaultTeam()
var/datum/game_mode/assaultops/temp = new
var/list/mob/dead/observer/candidates = pollGhostCandidates("Do you wish to be considered for an assault team being sent in?", ROLE_ASSAULTOPS, temp)
var/list/mob/dead/observer/chosen = list()
var/mob/dead/observer/theghost = null
var/numagents = 5
if(candidates.len)
var/agentcount = 0
for(var/i = 0, i<numagents,i++)
shuffle_inplace(candidates) //More shuffles means more randoms
for(var/mob/j in candidates)
if(!j || !j.client)
candidates.Remove(j)
continue
theghost = j
candidates.Remove(theghost)
chosen += theghost
agentcount++
break
//Making sure we have atleast 3 Nuke agents, because less than that is kinda bad
if(agentcount < 3)
return FALSE
//Let's find the spawn locations
var/leader_chosen = FALSE
var/datum/team/assaultops/assault_team
for(var/mob/c in chosen)
var/mob/living/carbon/human/new_character=makeBody(c)
if(!leader_chosen)
leader_chosen = TRUE
var/datum/antagonist/assaultops/N = new_character.mind.add_antag_datum(/datum/antagonist/assaultops/leader)
assault_team = N.assault_team
else
new_character.mind.add_antag_datum(/datum/antagonist/assaultops,assault_team)
return TRUE
else
return FALSE
/datum/antagonist/assaultops/admin_add(datum/mind/new_owner,mob/admin)
new_owner.assigned_role = ROLE_SYNDICATE
new_owner.add_antag_datum(src)
message_admins("[key_name_admin(admin)] has assault op'ed [key_name_admin(new_owner)].")
log_admin("[key_name(admin)] has assault op'ed [key_name(new_owner)].")
/datum/antagonist/assaultops/get_admin_commands()
. = ..()
.["Send to base"] = CALLBACK(src,.proc/admin_send_to_base)
/datum/antagonist/assaultops/proc/admin_send_to_base(mob/admin)
owner.current.forceMove(pick(get_turf(GLOB.assaultop_start)))