mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-29 11:41:14 +00:00
Datumizes revolutionaries (#21762)
* holy shit, datumized revs! * changes to shuttle blocking system * boom, more shit * bonk more commits * convert most in boolean checks to hasantagdatum * oops, its supposed to be like this * updates this comment (im making too many commits) * more changes * aaaaa moooore changes * nukes some stuff, makes stuff GC better * rev victory conditions are checked always on death * more rev stuff * oops fucking forgot to push * i swear to god * lewcc review * i forgot this one small bit * lewc review * reviews * comment * s34n review
This commit is contained in:
@@ -643,9 +643,9 @@ GLOBAL_VAR_INIT(nologevent, 0)
|
||||
if(!SSticker.mode || !istype(M) || !M.mind)
|
||||
return FALSE
|
||||
|
||||
if(M.mind in SSticker.mode.head_revolutionaries)
|
||||
if(M.mind.has_antag_datum(/datum/antagonist/rev/head))
|
||||
antag_list += "Head Rev"
|
||||
if(M.mind in SSticker.mode.revolutionaries)
|
||||
if(M.mind.has_antag_datum(/datum/antagonist/rev, FALSE))
|
||||
antag_list += "Revolutionary"
|
||||
if(M.mind in SSticker.mode.cult)
|
||||
antag_list += "Cultist"
|
||||
|
||||
@@ -389,7 +389,7 @@
|
||||
dat += "in [disk_loc.loc] at ([disk_loc.x], [disk_loc.y], [disk_loc.z])</td></tr>"
|
||||
dat += "</table>"
|
||||
|
||||
if(SSticker.mode.head_revolutionaries.len || SSticker.mode.revolutionaries.len)
|
||||
if(SSticker.mode.rev_team)
|
||||
dat += "<br><table cellspacing=5><tr><td><B>Revolutionaries</B></td><td></td></tr>"
|
||||
for(var/datum/mind/N in SSticker.mode.head_revolutionaries)
|
||||
var/mob/M = N.current
|
||||
|
||||
@@ -126,7 +126,7 @@
|
||||
|
||||
for(var/i = 0, i<numRevs, i++)
|
||||
H = pick(candidates)
|
||||
H.mind.make_Rev()
|
||||
H?.mind?.add_antag_datum(/datum/antagonist/rev/head)
|
||||
candidates.Remove(H)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
@@ -896,15 +896,26 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
if(!check_rights(R_ADMIN))
|
||||
return
|
||||
|
||||
if(alert(usr, "Do you want to [SSshuttle.emergencyNoEscape ? "ALLOW" : "DENY"] shuttle calls?", "Toggle Deny Shuttle", "Yes", "No") != "Yes")
|
||||
var/alert = alert(usr, "Do you want to ALLOW or DENY shuttle calls?", "Toggle Deny Shuttle", "Allow", "Deny", "Cancel")
|
||||
if(alert == "Cancel")
|
||||
return
|
||||
|
||||
if(SSshuttle)
|
||||
SSshuttle.emergencyNoEscape = !SSshuttle.emergencyNoEscape
|
||||
|
||||
SSblackbox.record_feedback("tally", "admin_verb", 1, "Toggle Deny Shuttle")
|
||||
log_admin("[key_name(src)] has [SSshuttle.emergencyNoEscape ? "denied" : "allowed"] the shuttle to be called.")
|
||||
message_admins("[key_name_admin(usr)] has [SSshuttle.emergencyNoEscape ? "denied" : "allowed"] the shuttle to be called.")
|
||||
|
||||
if(alert == "Allow")
|
||||
if(!length(SSshuttle.hostile_environments))
|
||||
to_chat(usr, "<span class='notice'>No hostile environments found, cleared for takeoff!</span>")
|
||||
return
|
||||
if(alert(usr, "[english_list(SSshuttle.hostile_environments)] is currently blocking the shuttle call, do you want to clear them?", "Toggle Deny Shuttle", "Yes", "No") == "Yes")
|
||||
SSshuttle.hostile_environments.Cut()
|
||||
var/log = "[key_name(src)] has cleared all hostile environments, allowing the shuttle to be called."
|
||||
log_admin(log)
|
||||
message_admins(log)
|
||||
return
|
||||
|
||||
SSshuttle.registerHostileEnvironment(src) // wow, a client blocking the shuttle
|
||||
|
||||
log_and_message_admins("has denied the shuttle to be called.")
|
||||
|
||||
/client/proc/cmd_admin_attack_log(mob/M as mob in GLOB.mob_list)
|
||||
set category = "Admin"
|
||||
|
||||
Reference in New Issue
Block a user