mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-21 03:55:05 +01:00
Removes karma jobs framework (#17646)
This commit is contained in:
@@ -58,9 +58,6 @@ CREATE TABLE `characters` (
|
||||
`job_engsec_high` mediumint(8) NOT NULL,
|
||||
`job_engsec_med` mediumint(8) NOT NULL,
|
||||
`job_engsec_low` mediumint(8) NOT NULL,
|
||||
`job_karma_high` mediumint(8) NOT NULL,
|
||||
`job_karma_med` mediumint(8) NOT NULL,
|
||||
`job_karma_low` mediumint(8) NOT NULL,
|
||||
`flavor_text` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`med_record` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`sec_record` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# Updates DB from 35 to 36 -AffectedArc07
|
||||
# Removes karma job prefs
|
||||
|
||||
ALTER TABLE `characters`
|
||||
DROP COLUMN `job_karma_high`,
|
||||
DROP COLUMN `job_karma_med`,
|
||||
DROP COLUMN `job_karma_low`;
|
||||
@@ -56,13 +56,3 @@
|
||||
#define JOB_ASSISTANT (1<<13)
|
||||
#define JOB_EXPLORER (1<<14)
|
||||
#define JOB_BARBER (1<<15)
|
||||
|
||||
#define JOBCAT_KARMA (1<<3)
|
||||
|
||||
// #define JOB_NANO (1<<0) // AA07 2022-04-10 - Moved to ENGSEC (Non karma): Define kept for history sake
|
||||
// #define JOB_BLUESHIELD (1<<1) // AA07 2022-02-23 - Moved to ENGSEC (Non karma): Define kept for history sake
|
||||
// #define JOB_BARBER (1<<3) // AA07 2022-04-07 - Moved to SUPPORT (Non karma): Define kept for history sake
|
||||
// #define JOB_MECHANIC (1<<4) // AA07 2021-10-02 - Removed: Kept for history sake
|
||||
// #define JOB_BRIGDOC (1<<5) // AA07 2021-12-01 - Removed: Kept for history sake
|
||||
// #define JOB_JUDGE (1<<6) // AA07 2021-10-09 - Moved to ENGSEC (Non karma): Define kept for history sake
|
||||
// #define JOB_PILOT (1<<7) // AA07 2021-10-02 - Removed: Kept for history sake
|
||||
|
||||
@@ -367,7 +367,7 @@
|
||||
#define INVESTIGATE_BOMB "bombs"
|
||||
|
||||
// The SQL version required by this version of the code
|
||||
#define SQL_VERSION 35
|
||||
#define SQL_VERSION 36
|
||||
|
||||
// Vending machine stuff
|
||||
#define CAT_NORMAL 1
|
||||
|
||||
@@ -93,7 +93,6 @@
|
||||
#define EXP_TYPE_SECURITY "Security"
|
||||
#define EXP_TYPE_SILICON "Silicon"
|
||||
#define EXP_TYPE_SERVICE "Service"
|
||||
#define EXP_TYPE_WHITELIST "Whitelist"
|
||||
|
||||
#define EXP_DEPT_TYPE_LIST list(EXP_TYPE_SUPPLY, EXP_TYPE_SERVICE, EXP_TYPE_MEDICAL, EXP_TYPE_ENGINEERING, EXP_TYPE_SCIENCE, EXP_TYPE_SECURITY, EXP_TYPE_COMMAND, EXP_TYPE_SILICON, EXP_TYPE_SPECIAL, EXP_TYPE_GHOST)
|
||||
|
||||
|
||||
@@ -77,8 +77,6 @@ SUBSYSTEM_DEF(jobs)
|
||||
return FALSE
|
||||
if(job.barred_by_disability(player.client))
|
||||
return FALSE
|
||||
if(!is_job_whitelisted(player, rank))
|
||||
return FALSE
|
||||
|
||||
var/position_limit = job.total_positions
|
||||
if(!latejoin)
|
||||
@@ -153,9 +151,6 @@ SUBSYSTEM_DEF(jobs)
|
||||
if(job.title in GLOB.command_positions) //If you want a command position, select it!
|
||||
continue
|
||||
|
||||
if(job.title in GLOB.whitelisted_positions) // No random whitelisted job, sorry!
|
||||
continue
|
||||
|
||||
if(job.admin_only) // No admin positions either.
|
||||
continue
|
||||
|
||||
@@ -356,10 +351,6 @@ SUBSYSTEM_DEF(jobs)
|
||||
Debug("DO incompatible with antagonist role, Player: [player], Job:[job.title]")
|
||||
continue
|
||||
|
||||
if(!is_job_whitelisted(player, job.title))
|
||||
Debug("DO player not whitelisted, Player: [player], Job:[job.title]")
|
||||
continue
|
||||
|
||||
// If the player wants that job on this level, then try give it to him.
|
||||
if(player.client.prefs.active_character.GetJobDepartment(job, level) & job.flag)
|
||||
|
||||
@@ -620,8 +611,8 @@ SUBSYSTEM_DEF(jobs)
|
||||
jobs_to_formats[job.title] = "green" // the job they already have is pre-selected
|
||||
else if(tgtcard.assignment == "Demoted" || tgtcard.assignment == "Terminated")
|
||||
jobs_to_formats[job.title] = "grey"
|
||||
else if(!job.would_accept_job_transfer_from_player(M))
|
||||
jobs_to_formats[job.title] = "grey" // jobs which are karma-locked and not unlocked for this player are discouraged
|
||||
else if(!job.transfer_allowed)
|
||||
jobs_to_formats[job.title] = "grey" // jobs which shouldnt be transferred into for whatever reason, likely due to high hour requirements
|
||||
else if((job.title in GLOB.command_positions) && istype(M) && M.client && job.get_exp_restrictions(M.client))
|
||||
jobs_to_formats[job.title] = "grey" // command jobs which are playtime-locked and not unlocked for this player are discouraged
|
||||
else if(job.total_positions && !job.current_positions && job.title != "Assistant")
|
||||
|
||||
@@ -265,12 +265,3 @@
|
||||
PDA.ownjob = C.assignment
|
||||
PDA.ownrank = C.rank
|
||||
PDA.name = "PDA-[H.real_name] ([PDA.ownjob])"
|
||||
|
||||
/datum/job/proc/would_accept_job_transfer_from_player(mob/player)
|
||||
if(!transfer_allowed)
|
||||
return FALSE
|
||||
if(!check_job_karma(title))
|
||||
return TRUE
|
||||
if(!istype(player))
|
||||
return FALSE
|
||||
return is_job_whitelisted(player, title)
|
||||
|
||||
@@ -88,13 +88,6 @@ GLOBAL_LIST_INIT(nonhuman_positions, list(
|
||||
"pAI"
|
||||
))
|
||||
|
||||
// TODO: Remove
|
||||
GLOBAL_LIST_EMPTY(whitelisted_positions)
|
||||
|
||||
/proc/check_job_karma(job)
|
||||
return (job in GLOB.whitelisted_positions)
|
||||
// END TODO
|
||||
|
||||
/proc/get_job_datums()
|
||||
var/list/occupations = list()
|
||||
var/list/all_jobs = typesof(/datum/job)
|
||||
@@ -119,7 +112,7 @@ GLOBAL_LIST_EMPTY(whitelisted_positions)
|
||||
|
||||
GLOBAL_LIST_INIT(exp_jobsmap, list(
|
||||
EXP_TYPE_LIVING = list(), // all living mobs
|
||||
EXP_TYPE_CREW = list(titles = command_positions | engineering_positions | medical_positions | science_positions | support_positions | supply_positions | security_positions | assistant_positions | list("AI","Cyborg") | whitelisted_positions), // crew positions
|
||||
EXP_TYPE_CREW = list(titles = command_positions | engineering_positions | medical_positions | science_positions | support_positions | supply_positions | security_positions | assistant_positions | list("AI","Cyborg")), // crew positions
|
||||
EXP_TYPE_SPECIAL = list(), // antags, ERT, etc
|
||||
EXP_TYPE_GHOST = list(), // dead people, observers
|
||||
EXP_TYPE_COMMAND = list(titles = command_positions),
|
||||
@@ -130,5 +123,4 @@ GLOBAL_LIST_INIT(exp_jobsmap, list(
|
||||
EXP_TYPE_SECURITY = list(titles = security_positions),
|
||||
EXP_TYPE_SILICON = list(titles = list("AI","Cyborg")),
|
||||
EXP_TYPE_SERVICE = list(titles = service_positions),
|
||||
EXP_TYPE_WHITELIST = list(titles = whitelisted_positions) // karma-locked jobs
|
||||
))
|
||||
|
||||
@@ -1,19 +1,3 @@
|
||||
/proc/is_job_whitelisted(mob/M, rank)
|
||||
if(!check_job_karma(rank)) // If it aint a karma job, let them play
|
||||
return TRUE
|
||||
if(!GLOB.configuration.general.enable_karma)
|
||||
return TRUE
|
||||
if(check_rights(R_ADMIN, FALSE, M))
|
||||
return TRUE
|
||||
|
||||
var/package_id = job2package(rank)
|
||||
if(!package_id) // Not a valid karma package
|
||||
return TRUE
|
||||
if(M.client.karmaholder.hasPackage(package_id)) // They have it
|
||||
return TRUE
|
||||
|
||||
return FALSE
|
||||
|
||||
/proc/can_use_species(mob/M, species)
|
||||
if(!GLOB.configuration.general.enable_karma)
|
||||
return TRUE
|
||||
@@ -51,12 +35,3 @@
|
||||
return KARMAPACKAGE_SPECIES_MACHINE
|
||||
if("Plasmaman")
|
||||
return KARMAPACKAGE_SPECIES_PLASMAMAN
|
||||
|
||||
/proc/job2package(job_id)
|
||||
switch(job_id)
|
||||
if("Blueshield")
|
||||
return KARMAPACKAGE_JOB_BLUESHIELD
|
||||
if("Barber")
|
||||
return KARMAPACKAGE_JOB_BARBER
|
||||
if("Nanotrasen Representative")
|
||||
return KARMAPACKAGE_JOB_NANOTRASENREPRESENTATIVE
|
||||
|
||||
@@ -341,7 +341,6 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0)
|
||||
data["jobs_service"] = GLOB.service_positions
|
||||
data["jobs_supply"] = GLOB.supply_positions - "Head of Personnel"
|
||||
data["jobs_assistant"] = GLOB.assistant_positions
|
||||
data["jobs_karma"] = GLOB.whitelisted_positions
|
||||
data["jobs_centcom"] = get_all_centcom_jobs()
|
||||
data["jobFormats"] = SSjobs.format_jobs_for_id_computer(modify)
|
||||
data["current_skin"] = modify.icon_state
|
||||
|
||||
@@ -647,27 +647,6 @@
|
||||
counter = 0
|
||||
jobs += "</tr></table>"
|
||||
|
||||
//Whitelisted positions
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='dddddd'><th colspan='[length(GLOB.whitelisted_positions)]'><a href='?src=[UID()];jobban3=whitelistdept;jobban4=[M.UID()];dbbanaddckey=[M.ckey]'>Whitelisted Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in GLOB.whitelisted_positions)
|
||||
if(!jobPos) continue
|
||||
var/datum/job/job = SSjobs.GetJob(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[UID()];jobban3=[job.title];jobban4=[M.UID()];dbbanaddckey=[M.ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[UID()];jobban3=[job.title];jobban4=[M.UID()];dbbanaddckey=[M.ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if(counter >= 5) //So things dont get squiiiiished!
|
||||
jobs += "</tr><tr align='center'>"
|
||||
counter = 0
|
||||
jobs += "</tr></table>"
|
||||
|
||||
body = "<body>[jobs]</body>"
|
||||
dat = "<tt>[header][body]</tt>"
|
||||
usr << browse(dat, "window=jobban2;size=800x490")
|
||||
@@ -739,12 +718,6 @@
|
||||
var/datum/job/temp = SSjobs.GetJob(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("whitelistdept")
|
||||
for(var/jobPos in GLOB.whitelisted_positions)
|
||||
if(!jobPos) continue
|
||||
var/datum/job/temp = SSjobs.GetJob(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
else
|
||||
joblist += href_list["jobban3"]
|
||||
|
||||
|
||||
@@ -391,7 +391,7 @@
|
||||
if(_2fa_alert)
|
||||
to_chat(src,"<span class='boldannounce'><big>You do not have 2FA enabled. Admin verbs will be unavailable until you have enabled 2FA.</big></span>") // Very fucking obvious
|
||||
|
||||
// This happens asyncronously
|
||||
// This happens "asyncronously"
|
||||
if(karmaholder)
|
||||
karmaholder.processRefunds(mob)
|
||||
|
||||
|
||||
@@ -39,9 +39,6 @@
|
||||
job_engsec_high,
|
||||
job_engsec_med,
|
||||
job_engsec_low,
|
||||
job_karma_high,
|
||||
job_karma_med,
|
||||
job_karma_low,
|
||||
flavor_text,
|
||||
med_record,
|
||||
sec_record,
|
||||
@@ -85,7 +82,7 @@
|
||||
|
||||
while(Q.NextRow())
|
||||
character_loaded = TRUE
|
||||
var/datum/character_save/CS = C.prefs.character_saves[Q.item[53]] // Get the slot referenced by this query
|
||||
var/datum/character_save/CS = C.prefs.character_saves[Q.item[50]] // Get the slot referenced by this query
|
||||
CS.load(Q) // Let the save handle the query processing
|
||||
CS.valid_save = TRUE
|
||||
|
||||
|
||||
@@ -62,10 +62,6 @@
|
||||
var/job_engsec_med = 0
|
||||
var/job_engsec_low = 0
|
||||
|
||||
var/job_karma_high = 0
|
||||
var/job_karma_med = 0
|
||||
var/job_karma_low = 0
|
||||
|
||||
//Keeps track of preferrence for not getting any wanted jobs
|
||||
var/alternate_option = 2
|
||||
|
||||
@@ -170,9 +166,6 @@
|
||||
job_engsec_high=:job_engsec_high,
|
||||
job_engsec_med=:job_engsec_med,
|
||||
job_engsec_low=:job_engsec_low,
|
||||
job_karma_high=:job_karma_high,
|
||||
job_karma_med=:job_karma_med,
|
||||
job_karma_low=:job_karma_low,
|
||||
flavor_text=:flavor_text,
|
||||
med_record=:med_record,
|
||||
sec_record=:sec_record,
|
||||
@@ -229,9 +222,6 @@
|
||||
"job_engsec_high" = job_engsec_high,
|
||||
"job_engsec_med" = job_engsec_med,
|
||||
"job_engsec_low" = job_engsec_low,
|
||||
"job_karma_high" = job_karma_high,
|
||||
"job_karma_med" = job_karma_med,
|
||||
"job_karma_low" = job_karma_low,
|
||||
"flavor_text" = flavor_text,
|
||||
"med_record" = med_record,
|
||||
"sec_record" = sec_record,
|
||||
@@ -283,7 +273,6 @@
|
||||
job_support_high, job_support_med, job_support_low,
|
||||
job_medsci_high, job_medsci_med, job_medsci_low,
|
||||
job_engsec_high, job_engsec_med, job_engsec_low,
|
||||
job_karma_high, job_karma_med, job_karma_low,
|
||||
flavor_text,
|
||||
med_record,
|
||||
sec_record,
|
||||
@@ -311,7 +300,6 @@
|
||||
:job_support_high, :job_support_med, :job_support_low,
|
||||
:job_medsci_high, :job_medsci_med, :job_medsci_low,
|
||||
:job_engsec_high, :job_engsec_med, :job_engsec_low,
|
||||
:job_karma_high, :job_karma_med, :job_karma_low,
|
||||
:flavor_text,
|
||||
:med_record,
|
||||
:sec_record,
|
||||
@@ -359,9 +347,6 @@
|
||||
"job_engsec_high" = job_engsec_high,
|
||||
"job_engsec_med" = job_engsec_med,
|
||||
"job_engsec_low" = job_engsec_low,
|
||||
"job_karma_high" = job_karma_high,
|
||||
"job_karma_med" = job_karma_med,
|
||||
"job_karma_low" = job_karma_low,
|
||||
"flavor_text" = flavor_text,
|
||||
"med_record" = med_record,
|
||||
"sec_record" = sec_record,
|
||||
@@ -432,15 +417,12 @@
|
||||
job_engsec_high = text2num(query.item[33])
|
||||
job_engsec_med = text2num(query.item[34])
|
||||
job_engsec_low = text2num(query.item[35])
|
||||
job_karma_high = text2num(query.item[36])
|
||||
job_karma_med = text2num(query.item[37])
|
||||
job_karma_low = text2num(query.item[38])
|
||||
|
||||
//Miscellaneous
|
||||
flavor_text = query.item[39]
|
||||
med_record = query.item[40]
|
||||
sec_record = query.item[41]
|
||||
gen_record = query.item[42]
|
||||
flavor_text = query.item[36]
|
||||
med_record = query.item[37]
|
||||
sec_record = query.item[38]
|
||||
gen_record = query.item[39]
|
||||
// Apparently, the preceding vars weren't always encoded properly...
|
||||
if(findtext(flavor_text, "<")) // ... so let's clumsily check for tags!
|
||||
flavor_text = html_encode(flavor_text)
|
||||
@@ -450,23 +432,23 @@
|
||||
sec_record = html_encode(sec_record)
|
||||
if(findtext(gen_record, "<"))
|
||||
gen_record = html_encode(gen_record)
|
||||
disabilities = text2num(query.item[43])
|
||||
player_alt_titles = params2list(query.item[44])
|
||||
organ_data = params2list(query.item[45])
|
||||
rlimb_data = params2list(query.item[46])
|
||||
nanotrasen_relation = query.item[47]
|
||||
speciesprefs = text2num(query.item[48])
|
||||
disabilities = text2num(query.item[40])
|
||||
player_alt_titles = params2list(query.item[41])
|
||||
organ_data = params2list(query.item[42])
|
||||
rlimb_data = params2list(query.item[43])
|
||||
nanotrasen_relation = query.item[44]
|
||||
speciesprefs = text2num(query.item[45])
|
||||
|
||||
//socks
|
||||
socks = query.item[49]
|
||||
body_accessory = query.item[50]
|
||||
loadout_gear = query.item[51]
|
||||
autohiss_mode = text2num(query.item[52])
|
||||
|
||||
h_grad_style = query.item[54]
|
||||
h_grad_offset_x = query.item[55] // parsed down below
|
||||
h_grad_colour = query.item[56]
|
||||
h_grad_alpha = query.item[57]
|
||||
socks = query.item[46]
|
||||
body_accessory = query.item[47]
|
||||
loadout_gear = query.item[48]
|
||||
autohiss_mode = text2num(query.item[49])
|
||||
// Index [50] is the slot
|
||||
h_grad_style = query.item[51]
|
||||
h_grad_offset_x = query.item[52] // parsed down below
|
||||
h_grad_colour = query.item[53]
|
||||
h_grad_alpha = query.item[54]
|
||||
|
||||
//Sanitize
|
||||
var/datum/species/SP = GLOB.all_species[species]
|
||||
@@ -527,9 +509,6 @@
|
||||
job_engsec_high = sanitize_integer(job_engsec_high, 0, 65535, initial(job_engsec_high))
|
||||
job_engsec_med = sanitize_integer(job_engsec_med, 0, 65535, initial(job_engsec_med))
|
||||
job_engsec_low = sanitize_integer(job_engsec_low, 0, 65535, initial(job_engsec_low))
|
||||
job_karma_high = sanitize_integer(job_karma_high, 0, 65535, initial(job_karma_high))
|
||||
job_karma_med = sanitize_integer(job_karma_med, 0, 65535, initial(job_karma_med))
|
||||
job_karma_low = sanitize_integer(job_karma_low, 0, 65535, initial(job_karma_low))
|
||||
disabilities = sanitize_integer(disabilities, 0, 65535, initial(disabilities))
|
||||
|
||||
socks = sanitize_text(socks, initial(socks))
|
||||
@@ -1443,8 +1422,6 @@
|
||||
clothes_s.Blend(new /icon('icons/mob/clothing/back.dmi', "satchel-norm"), ICON_OVERLAY)
|
||||
if(4)
|
||||
clothes_s.Blend(new /icon('icons/mob/clothing/back.dmi', "satchel"), ICON_OVERLAY)
|
||||
else if(job_karma_high)
|
||||
switch(job_karma_high)
|
||||
if(JOB_NANO)
|
||||
clothes_s = new /icon(uniform_dmi, "officer_s")
|
||||
clothes_s.Blend(new /icon('icons/mob/clothing/feet.dmi', "laceups"), ICON_UNDERLAY)
|
||||
@@ -1527,11 +1504,9 @@
|
||||
job_support_med |= job_support_high
|
||||
job_engsec_med |= job_engsec_high
|
||||
job_medsci_med |= job_medsci_high
|
||||
job_karma_med |= job_karma_high
|
||||
job_support_high = 0
|
||||
job_engsec_high = 0
|
||||
job_medsci_high = 0
|
||||
job_karma_high = 0
|
||||
|
||||
if(job.department_flag == JOBCAT_SUPPORT)
|
||||
job_support_low &= ~job.flag
|
||||
@@ -1575,20 +1550,6 @@
|
||||
job_medsci_low |= job.flag
|
||||
|
||||
return 1
|
||||
else if(job.department_flag == JOBCAT_KARMA)
|
||||
job_karma_low &= ~job.flag
|
||||
job_karma_med &= ~job.flag
|
||||
job_karma_high &= ~job.flag
|
||||
|
||||
switch(level)
|
||||
if(1)
|
||||
job_karma_high |= job.flag
|
||||
if(2)
|
||||
job_karma_med |= job.flag
|
||||
if(3)
|
||||
job_karma_low |= job.flag
|
||||
|
||||
return 1
|
||||
|
||||
return 0
|
||||
|
||||
@@ -1684,11 +1645,6 @@
|
||||
job_engsec_med = 0
|
||||
job_engsec_low = 0
|
||||
|
||||
job_karma_high = 0
|
||||
job_karma_med = 0
|
||||
job_karma_low = 0
|
||||
|
||||
|
||||
/datum/character_save/proc/GetJobDepartment(datum/job/job, level)
|
||||
if(!job || !level) return 0
|
||||
switch(job.department_flag)
|
||||
@@ -1716,14 +1672,6 @@
|
||||
return job_engsec_med
|
||||
if(3)
|
||||
return job_engsec_low
|
||||
if(JOBCAT_KARMA)
|
||||
switch(level)
|
||||
if(1)
|
||||
return job_karma_high
|
||||
if(2)
|
||||
return job_karma_med
|
||||
if(3)
|
||||
return job_karma_low
|
||||
return 0
|
||||
|
||||
/datum/character_save/proc/SetJobDepartment(datum/job/job, level)
|
||||
@@ -1733,17 +1681,14 @@
|
||||
job_support_high = 0
|
||||
job_medsci_high = 0
|
||||
job_engsec_high = 0
|
||||
job_karma_high = 0
|
||||
return 1
|
||||
if(2)//Set current highs to med, then reset them
|
||||
job_support_med |= job_support_high
|
||||
job_medsci_med |= job_medsci_high
|
||||
job_engsec_med |= job_engsec_high
|
||||
job_karma_med |= job_karma_high
|
||||
job_support_high = 0
|
||||
job_medsci_high = 0
|
||||
job_engsec_high = 0
|
||||
job_karma_high = 0
|
||||
|
||||
switch(job.department_flag)
|
||||
if(JOBCAT_SUPPORT)
|
||||
@@ -1776,16 +1721,6 @@
|
||||
job_engsec_low &= ~job.flag
|
||||
else
|
||||
job_engsec_low |= job.flag
|
||||
if(JOBCAT_KARMA)
|
||||
switch(level)
|
||||
if(2)
|
||||
job_karma_high = job.flag
|
||||
job_karma_med &= ~job.flag
|
||||
if(3)
|
||||
job_karma_med |= job.flag
|
||||
job_karma_low &= ~job.flag
|
||||
else
|
||||
job_karma_low |= job.flag
|
||||
return 1
|
||||
|
||||
/datum/character_save/proc/copy_to(mob/living/carbon/human/character)
|
||||
@@ -1956,7 +1891,7 @@
|
||||
|
||||
//Check if the user has ANY job selected.
|
||||
/datum/character_save/proc/check_any_job()
|
||||
return(job_support_high || job_support_med || job_support_low || job_medsci_high || job_medsci_med || job_medsci_low || job_engsec_high || job_engsec_med || job_engsec_low || job_karma_high || job_karma_med || job_karma_low)
|
||||
return(job_support_high || job_support_med || job_support_low || job_medsci_high || job_medsci_med || job_medsci_low || job_engsec_high || job_engsec_med || job_engsec_low)
|
||||
|
||||
|
||||
/datum/character_save/proc/SetChoices(mob/user, limit = 17, list/splitJobs = list("Head of Security", "Bartender"), widthPerColumn = 400, height = 700)
|
||||
@@ -2017,9 +1952,6 @@
|
||||
else
|
||||
rank = job.title
|
||||
lastJob = job
|
||||
if(!is_job_whitelisted(user, job.title))
|
||||
html += "<del class='dark'>[rank]</del></td><td class='bad'><b> \[KARMA]</b></td></tr>"
|
||||
continue
|
||||
if(jobban_isbanned(user, job.title))
|
||||
html += "<del class='dark'>[rank]</del></td><td class='bad'><b> \[BANNED]</b></td></tr>"
|
||||
continue
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
// If you are ever removing something from the karma store, **DO NOT** delete its definition datum.
|
||||
// Just set redunable = TRUE on it so people can get their karma refund
|
||||
|
||||
// Jobs
|
||||
// Jobs - These no longer exist in the codebase
|
||||
/datum/karma_package/job
|
||||
category = "Karma Jobs"
|
||||
|
||||
|
||||
@@ -259,8 +259,6 @@
|
||||
return FALSE
|
||||
if(jobban_isbanned(src, rank))
|
||||
return FALSE
|
||||
if(!is_job_whitelisted(src, rank))
|
||||
return FALSE
|
||||
if(!job.player_old_enough(client))
|
||||
return FALSE
|
||||
if(job.admin_only && !check_rights(R_EVENT, FALSE))
|
||||
|
||||
@@ -145,7 +145,7 @@ ipc_screens = [
|
||||
# Enable/disable the database on a whole
|
||||
sql_enabled = false
|
||||
# SQL version. If this is a mismatch, round start will be delayed
|
||||
sql_version = 35
|
||||
sql_version = 36
|
||||
# SQL server address. Can be an IP or DNS name
|
||||
sql_address = "127.0.0.1"
|
||||
# SQL server port
|
||||
|
||||
@@ -236,15 +236,6 @@ export const CardComputer = (props, context) => {
|
||||
onClick={() => act("assign", { assign_target: v })} />
|
||||
))}
|
||||
</LabeledList.Item>
|
||||
<LabeledList.Item label="Restricted">
|
||||
{data.jobs_karma.map(v => (
|
||||
<Button
|
||||
selected={v === data.modify_rank}
|
||||
color={data.jobFormats[v] ? data.jobFormats[v] : ""}
|
||||
key={v} content={v}
|
||||
onClick={() => act("assign", { assign_target: v })} />
|
||||
))}
|
||||
</LabeledList.Item>
|
||||
{!!data.iscentcom && (
|
||||
<LabeledList.Item label="CentCom" labelColor={deptCols.centcom}>
|
||||
{data.jobs_centcom.map(v => (
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user