Added survivalist job, wilderness spawn and checkpoint spawn to Cynosure.

This commit is contained in:
MistakeNot4892
2022-06-15 20:16:23 +10:00
parent edb54f137d
commit 8b8e1ecdf4
22 changed files with 714 additions and 441 deletions
@@ -270,17 +270,16 @@
/datum/category_item/player_setup_item/occupation/proc/SetJob(mob/user, role, level)
var/datum/job/job = job_master.GetJob(role)
if(!job)
return 0
return FALSE
if(job.type == /datum/job/assistant)
if(pref.job_civilian_low & job.flag)
pref.job_civilian_low &= ~job.flag
else
pref.job_civilian_low |= job.flag
return 1
return TRUE
SetJobDepartment(job, level)
return 1
return TRUE
/datum/category_item/player_setup_item/occupation/proc/reset_jobhigh()
pref.job_civilian_med |= pref.job_civilian_high
@@ -293,7 +292,7 @@
// Level is equal to the desired new level of the job. So for a value of 4, we want to disable the job.
/datum/category_item/player_setup_item/occupation/proc/SetJobDepartment(var/datum/job/job, var/level)
if(!job || !level)
return 0
return FALSE
switch(job.department_flag)
if(CIVILIAN)
@@ -332,7 +331,7 @@
pref.job_engsec_med |= job.flag
if(3)
pref.job_engsec_low |= job.flag
return 1
return TRUE
/datum/category_item/player_setup_item/occupation/proc/ResetJobs()
pref.job_civilian_high = 0
+19 -15
View File
@@ -12,27 +12,23 @@ var/global/list/spawntypes = list()
var/display_name //Name used in preference setup.
var/list/restrict_job = null
var/list/disallow_job = null
var/list/permit_offsite_job = null
var/announce_channel = "Common"
var/allowed_mob_types = JOB_SILICON|JOB_CARBON
/datum/spawnpoint/proc/check_job_spawning(job)
if(restrict_job && !(job in restrict_job))
return 0
if(disallow_job && (job in disallow_job))
return 0
var/datum/job/J = SSjob.get_job(job)
if(!J) // Couldn't find, admin shenanigans? Allow it
return 1
if(J.offmap_spawn && !(job in restrict_job))
return 0
return TRUE
if(J.offmap_spawn && !(job in permit_offsite_job) && !(job in restrict_job))
return FALSE
if(restrict_job && !(job in restrict_job))
return FALSE
if(disallow_job && (job in disallow_job))
return FALSE
if(!(J.mob_type & allowed_mob_types))
return 0
return 1
return FALSE
return TRUE
/datum/spawnpoint/proc/get_spawn_position()
return get_turf(pick(turfs))
@@ -85,4 +81,12 @@ var/global/list/spawntypes = list()
/datum/spawnpoint/cyborg/New()
..()
turfs = latejoin_cyborg
turfs = latejoin_cyborg
/datum/spawnpoint/wilderness
display_name = "Wilderness"
msg = null
/datum/spawnpoint/wilderness/New()
..()
turfs = latejoin_wilderness