Makes all special role entries use unique ids now that it is possible.

This commit is contained in:
PsiOmegaDelta
2016-01-30 17:22:17 +01:00
parent bee18a16db
commit 654f2ccaa0
23 changed files with 46 additions and 59 deletions
@@ -2,7 +2,7 @@ var/list/private_valid_special_roles
/datum/category_item/player_setup_item/antagonism/candidacy
name = "Candidacy"
sort_order = 2
sort_order = 1
/datum/category_item/player_setup_item/antagonism/candidacy/load_character(var/savefile/S)
S["be_special"] >> pref.be_special_role
@@ -20,14 +20,17 @@ var/list/private_valid_special_roles
/datum/category_item/player_setup_item/antagonism/candidacy/content(var/mob/user)
. += "<b>Special Role Availability:</b><br>"
for(var/datum/antagonist/antag in all_antag_types)
. += "[antag.role_text]: "
. += "<table>"
for(var/antag_type in all_antag_types)
var/datum/antagonist/antag = all_antag_types[antag_type]
. += "<tr><td>[antag.role_text]: </td><td>"
if(jobban_isbanned(preference_mob(), antag.bantype))
. += "<span class='danger'>\[BANNED\]</span><br>"
else if(antag.role_type in pref.be_special_role)
. += "<b>Yes</b> / <a href='?src=\ref[src];del_special=[antag.role_type]'>No</a></br>"
else
. += "<a href='?src=\ref[src];add_special=[antag.role_type]'>Yes</a> / <b>No</b></br>"
. += "</td></tr>"
var/list/ghost_traps = get_ghost_traps()
for(var/ghost_trap_key in ghost_traps)
@@ -35,15 +38,21 @@ var/list/private_valid_special_roles
if(!ghost_trap.list_as_special_role)
continue
. += "[(ghost_trap.ghost_trap_role)]: "
for(var/ban_type in ghost_trap.ban_checks)
if(jobban_isbanned(preference_mob(), ban_type))
. += "<span class='danger'>\[BANNED\]</span><br>"
continue
if(ghost_trap.pref_check in pref.be_special_role)
. += "<tr><td>[(ghost_trap.ghost_trap_role)]: </td><td>"
if(banned_from_ghost_role(preference_mob(), ghost_trap))
. += "<span class='danger'>\[BANNED\]</span><br>"
else if(ghost_trap.pref_check in pref.be_special_role)
. += "<b>Yes</b> / <a href='?src=\ref[src];del_special=[ghost_trap.pref_check]'>No</a></br>"
else
. += "<a href='?src=\ref[src];add_special=[ghost_trap.pref_check]'>Yes</a> / <b>No</b></br>"
. += "</td></tr>"
. += "</table>"
/datum/category_item/player_setup_item/proc/banned_from_ghost_role(var/mob, var/datum/ghosttrap/ghost_trap)
for(var/ban_type in ghost_trap.ban_checks)
if(jobban_isbanned(mob, ban_type))
return 1
return 0
/datum/category_item/player_setup_item/antagonism/candidacy/OnTopic(var/href,var/list/href_list, var/mob/user)
if(href_list["add_special"])
@@ -59,11 +68,13 @@ var/list/private_valid_special_roles
return ..()
/datum/category_item/player_setup_item/antagonism/candidacy/proc/valid_special_roles()
if(!private_valid_special_roles)
if(!(private_valid_special_roles && private_valid_special_roles.len))
private_valid_special_roles = list()
for(var/datum/antagonist/antag in all_antag_types)
for(var/antag_type in all_antag_types)
var/datum/antagonist/antag = all_antag_types[antag_type]
private_valid_special_roles += antag.role_type
var/list/ghost_traps = get_ghost_traps()
for(var/ghost_trap_key in ghost_traps)
var/datum/ghosttrap/ghost_trap = ghost_traps[ghost_trap_key]
if(!ghost_trap.list_as_special_role)
@@ -1,8 +1,8 @@
var/global/list/uplink_locations = list("PDA", "Headset", "None")
/datum/category_item/player_setup_item/antagonism/basic
name = "Basic"
sort_order = 1
name = "Setup"
sort_order = 2
/datum/category_item/player_setup_item/antagonism/basic/load_character(var/savefile/S)
S["uplinklocation"] >> pref.uplinklocation
@@ -16,9 +16,9 @@ var/global/list/uplink_locations = list("PDA", "Headset", "None")
pref.uplinklocation = sanitize_inlist(pref.uplinklocation, uplink_locations, initial(pref.uplinklocation))
/datum/category_item/player_setup_item/antagonism/basic/content(var/mob/user)
. +="<b>Uplink Type : <a href='?src=\ref[src];antagtask=1'>[pref.uplinklocation]</a></b>"
. +="<br>"
. +="<b>Exploitable information:</b><br>"
. +="<b>Antag Setup:</b><br>"
. +="Uplink Type: <a href='?src=\ref[src];antagtask=1'>[pref.uplinklocation]</a><br>"
. +="Exploitable information:<br>"
if(jobban_isbanned(user, "Records"))
. += "<b>You are banned from using character records.</b><br>"
else
@@ -19,7 +19,7 @@
category_item_type = /datum/category_item/player_setup_item/occupation
/datum/category_group/player_setup_category/appearance_preferences
name = "Antagonism"
name = "Roles"
sort_order = 4
category_item_type = /datum/category_item/player_setup_item/antagonism