mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 05:00:55 +01:00
Merge branch 'master' into random-space
Conflicts: _maps/asteroidstation.dm
This commit is contained in:
@@ -154,7 +154,8 @@
|
||||
/proc/send2otherserver(source,msg,type = "Ahelp")
|
||||
if(global.cross_allowed)
|
||||
var/list/message = list()
|
||||
message["message"] = "[source]: [msg]"
|
||||
message["message_sender"] = source
|
||||
message["message"] = msg
|
||||
message["source"] = "([config.cross_name])"
|
||||
message["key"] = global.comms_key
|
||||
message["crossmessage"] = type
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
<a href='?src=\ref[src];makeAntag=2'>Make Changelings</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=3'>Make Revs</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=4'>Make Cult</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=15'>Make Clockwork Cult</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=11'>Make Blob</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=12'>Make Gangsters</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=16'>Make Shadowling</a><br>
|
||||
@@ -22,7 +23,6 @@
|
||||
<a href='?src=\ref[src];makeAntag=7'>Make Nuke Team (Requires Ghosts)</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=13'>Make Centcom Response Team (Requires Ghosts)</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=14'>Make Abductor Team (Requires Ghosts)</a><br>
|
||||
<a href='?src=\ref[src];makeAntag=15'>Make Revenant (Requires Ghost)</a><br>
|
||||
"}
|
||||
|
||||
var/datum/browser/popup = new(usr, "oneclickantag", "Quick-Create Antagonist", 400, 400)
|
||||
@@ -174,6 +174,43 @@
|
||||
return 0
|
||||
|
||||
|
||||
/datum/admins/proc/makeClockCult()
|
||||
var/datum/game_mode/clockwork_cult/temp = new
|
||||
if(config.protect_roles_from_antagonist)
|
||||
temp.restricted_jobs += temp.protected_jobs
|
||||
|
||||
if(config.protect_assistant_from_antagonist)
|
||||
temp.restricted_jobs += "Assistant"
|
||||
|
||||
var/list/mob/living/carbon/human/candidates = list()
|
||||
var/mob/living/carbon/human/H = null
|
||||
|
||||
for(var/mob/living/carbon/human/applicant in player_list)
|
||||
if(ROLE_SERVANT_OF_RATVAR in applicant.client.prefs.be_special)
|
||||
var/turf/T = get_turf(applicant)
|
||||
if(applicant.stat == CONSCIOUS && applicant.mind && !applicant.mind.special_role && T.z == ZLEVEL_STATION)
|
||||
if(!jobban_isbanned(applicant, ROLE_SERVANT_OF_RATVAR) && !jobban_isbanned(applicant, "Syndicate"))
|
||||
if(temp.age_check(applicant.client))
|
||||
if(!(applicant.job in temp.restricted_jobs))
|
||||
candidates += applicant
|
||||
|
||||
if(candidates.len)
|
||||
var/numCultists = min(candidates.len, 4)
|
||||
|
||||
for(var/i = 0, i<numCultists, i++)
|
||||
H = pick(candidates)
|
||||
H << "<span class='heavy_brass'>The world before you suddenly glows a brilliant yellow. You hear the whooshing steam and clanking cogs of a billion billion machines, and all at once \
|
||||
you see the truth. Ratvar, the Clockwork Justiciar, lies derelict and forgotten in an unseen realm, and he has selected you as one of his harbringers. You are now a servant of \
|
||||
Ratvar, and you will bring him back.</span>"
|
||||
add_servant_of_ratvar(H, TRUE)
|
||||
ticker.mode.equip_servant(H)
|
||||
candidates.Remove(H)
|
||||
|
||||
return 1
|
||||
|
||||
return 0
|
||||
|
||||
|
||||
|
||||
/datum/admins/proc/makeNukeTeam()
|
||||
|
||||
@@ -514,9 +551,6 @@
|
||||
new /datum/round_event/ghost_role/abductor
|
||||
return 1
|
||||
|
||||
/datum/admins/proc/makeRevenant()
|
||||
new /datum/round_event/ghost_role/revenant
|
||||
|
||||
//Shadowling
|
||||
/datum/admins/proc/makeShadowling()
|
||||
var/datum/game_mode/shadowling/temp = new
|
||||
|
||||
@@ -1043,30 +1043,22 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits
|
||||
if(confirm != "Yes")
|
||||
return
|
||||
|
||||
var/keep_name = alert(src, "Do you want mobs to retain their names?", "Keep The Names?", "Yes", "No")
|
||||
|
||||
var/list/mobs = shuffle(living_mob_list.Copy()) // might change while iterating
|
||||
var/who_did_it = key_name_admin(usr)
|
||||
spawn(5) // let other things clear this tick
|
||||
for(var/mob/living/M in mobs)
|
||||
CHECK_TICK
|
||||
|
||||
if(!M || !M.name || !M.real_name)
|
||||
continue
|
||||
|
||||
M.audible_message("<span class='italics'>...wabbajack...wabbajack...</span>")
|
||||
playsound(M.loc, 'sound/magic/Staff_Change.ogg', 50, 1, -1)
|
||||
var/name = M.name
|
||||
var/real_name = M.real_name
|
||||
|
||||
var/mob/living/new_mob = wabbajack(M)
|
||||
if(keep_name == "Yes" && new_mob)
|
||||
new_mob.name = name
|
||||
new_mob.real_name = real_name
|
||||
|
||||
|
||||
message_admins("Mass polymorph started by [who_did_it] is complete.")
|
||||
|
||||
message_admins("[key_name_admin(usr)] started polymorphed all living mobs.")
|
||||
log_admin("[key_name(usr)] polymorphed all living mobs.")
|
||||
feedback_add_details("admin_verb","MASSWABBAJACK")
|
||||
|
||||
for(var/mob/living/M in mobs)
|
||||
CHECK_TICK
|
||||
|
||||
if(!M)
|
||||
continue
|
||||
|
||||
M.audible_message("<span class='italics'>...wabbajack...wabbajack...</span>")
|
||||
playsound(M.loc, 'sound/magic/Staff_Change.ogg', 50, 1, -1)
|
||||
|
||||
wabbajack(M)
|
||||
|
||||
message_admins("Mass polymorph started by [who_did_it] is complete.")
|
||||
|
||||
Reference in New Issue
Block a user