Port Legacy Cult (v 2.0) to role_datums. (#18335)

* Port Legacy Cult (v 2.0) to role_datums.

* Renaming things

* Progress

* Makes it compile.

* Jecties

* JECTIES

* Making some progress

* There we go

* Actually testable (100%)

* Dirty

* Fixes

* Runes being fixed (probably)

* I swear to God. I am not retarded.

* Fixes converts (and probably a few other things) not working

* Forgot

* Fixes

* Final cut.

* We've been surroundited

* Objective tweaks

* Final fixes

* Actually

* Cyborgs getting runewords

* Typo

* Grumble

* Overstepping boundaries
This commit is contained in:
ShiftyRail
2018-08-24 01:11:32 +02:00
committed by MadmanMartian
parent 7b8ba9914d
commit c707c264c7
69 changed files with 4982 additions and 210 deletions

View File

@@ -4603,6 +4603,11 @@
var/datum/objective/new_objective = new obj_type(null,FALSE)
if (new_objective.flags & FACTION_OBJECTIVE)
var/datum/faction/fac = input("To which faction shall we give this?", "Faction-wide objective", null) as null|anything in ticker.mode.factions
fac.handleNewObjective(new_objective)
return TRUE // It's a faction objective, let's not move any further.
if (obj_holder.owner)//so objectives won't target their owners.
new_objective.owner = obj_holder.owner
@@ -4629,10 +4634,12 @@
ASSERT(istype(objective) && istype(obj_holder))
obj_holder.objectives.Remove(objective)
check_antagonists()
if (obj_holder.faction)
log_admin("[usr.key]/([usr.name]) removed \the [obj_holder.faction.ID]'s objective ([objective.explanation_text])")
objective.faction.handleRemovedObjective(objective)
obj_holder.objectives.Remove(objective)
if(href_list["obj_completed"])
var/datum/objective/objective = locate(href_list["obj_completed"])
@@ -4640,6 +4647,9 @@
ASSERT(istype(objective))
if (objective.faction)
objective.faction.handleForcedCompletedObjective(objective)
objective.force_success = !objective.force_success
check_antagonists()
log_admin("[usr.key]/([usr.name]) toggled [obj_holder.faction.ID] [objective.explanation_text] to [objective.force_success ? "completed" : "incomplete"]")

View File

@@ -249,7 +249,7 @@ client/proc/antag_madness(var/mob/M in mob_list)
//I.dropped(M)
I.forceMove(pack)
var/obj/item/weapon/tome/T = new/obj/item/weapon/tome(M)
var/obj/item/weapon/tome_legacy/T = new/obj/item/weapon/tome_legacy(M)
var/obj/item/weapon/paper/talisman/supply/A = new/obj/item/weapon/paper/talisman/supply(M)
if (istype(M, /mob/living/carbon/human))

View File

@@ -343,7 +343,7 @@ Pressure: [env.return_pressure()]"}
else
if(alert("Spawn that person a tome?",,"Yes","No")=="Yes")
to_chat(M, "<span class='warning'>You catch a glimpse of the Realm of Nar-Sie, The Geometer of Blood. You now see how flimsy the world is, you see that it should be open to the knowledge of Nar-Sie. A tome, a message from your new master, appears on the ground.</span>")
new /obj/item/weapon/tome(M.loc)
new /obj/item/weapon/tome_legacy(M.loc)
else
to_chat(M, "<span class='warning'>You catch a glimpse of the Realm of Nar-Sie, The Geometer of Blood. You now see how flimsy the world is, you see that it should be open to the knowledge of Nar-Sie.</span>")
var/glimpse=pick("1","2","3","4","5","6","7","8")
@@ -1188,18 +1188,18 @@ client/proc/cure_disease()
message_admins("[src]/([ckey(src.key)] Cured all mobs of [disease_name == "-Cure All-" ? "all diseases." : "[disease_name]"]")
client/proc/check_convertables()
set name = "Check Convertables"
set name = "Check Convertables (Cult v2.0)"
set category = "Debug"
if(!holder || !ticker || !ticker.mode)
return
var/datum/faction/cult = find_active_faction(BLOODCULT)
var/datum/faction/cult = find_active_faction(LEGACY_CULT)
var/dat = ""
for(var/mob/M in player_list)
if(!M.mind)
dat += "[M.real_name]/([ckey(M.key)]): <font color=grey><b>NO MIND</b></font></br>"
else if(!istype(M,/mob/living/carbon/human))
dat += "[M.real_name]/([ckey(M.key)]): <b>NOT HUMAN</b></br>"
else if(!is_convertable_to_cult(M.mind))
else if(!is_convertable_to_cult_legacy(M.mind))
dat += "[M.real_name]/([ckey(M.key)]): <font color=red><b>UNCONVERTABLE</b></font></br>"
else if(jobban_isbanned(M, "cultist"))
dat += "[M.real_name]/([ckey(M.key)]): <font color=red><b>JOBBANNED</b></font></br>"