mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-01-29 10:21:52 +00:00
Hides the item tf spawn option, as this is currently not functional. This just comments out the spawn point, so it can be easily reenabled in the future if we decide to use it.
130 lines
3.1 KiB
Plaintext
130 lines
3.1 KiB
Plaintext
var/list/spawntypes = list()
|
|
|
|
/proc/populate_spawn_points()
|
|
spawntypes = list()
|
|
for(var/type in subtypesof(/datum/spawnpoint))
|
|
var/datum/spawnpoint/S = new type()
|
|
spawntypes[S.display_name] = S
|
|
|
|
/proc/get_spawn_points()
|
|
if(!LAZYLEN(spawntypes))
|
|
populate_spawn_points()
|
|
return spawntypes
|
|
|
|
/datum/spawnpoint
|
|
var/msg //Message to display on the arrivals computer.
|
|
var/list/turfs //List of turfs to spawn on.
|
|
var/display_name //Name used in preference setup.
|
|
var/list/restrict_job = null
|
|
var/list/disallow_job = null
|
|
var/announce_channel = "Common"
|
|
var/allow_offmap_spawn = FALSE // add option to allow offmap spawns to a spawnpoint without entirely restricting that spawnpoint
|
|
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 && !allow_offmap_spawn && !(job in restrict_job)) // add option to allow offmap spawns to a spawnpoint without entirely restricting that spawnpoint
|
|
return 0
|
|
|
|
if(!(J.mob_type & allowed_mob_types))
|
|
return 0
|
|
|
|
return 1
|
|
|
|
/datum/spawnpoint/proc/get_spawn_position()
|
|
return get_turf(pick(turfs))
|
|
|
|
/datum/spawnpoint/arrivals
|
|
display_name = "Arrivals Shuttle"
|
|
msg = "will arrive to the station shortly by shuttle"
|
|
|
|
/datum/spawnpoint/arrivals/New()
|
|
..()
|
|
turfs = GLOB.latejoin
|
|
|
|
/datum/spawnpoint/gateway
|
|
display_name = "Gateway"
|
|
msg = "has completed translation from offsite gateway"
|
|
|
|
/datum/spawnpoint/gateway/New()
|
|
..()
|
|
turfs = GLOB.latejoin_gateway
|
|
/* VOREStation Edit
|
|
/datum/spawnpoint/elevator
|
|
display_name = "Elevator"
|
|
msg = "has arrived from the residential district"
|
|
|
|
/datum/spawnpoint/elevator/New()
|
|
..()
|
|
turfs = latejoin_elevator
|
|
*/
|
|
/datum/spawnpoint/cryo
|
|
display_name = "Cryogenic Storage"
|
|
msg = "has completed cryogenic revival"
|
|
allowed_mob_types = JOB_CARBON
|
|
|
|
/datum/spawnpoint/cryo/New()
|
|
..()
|
|
turfs = GLOB.latejoin_cryo
|
|
|
|
/datum/spawnpoint/cyborg
|
|
display_name = "Cyborg Storage"
|
|
msg = "has been activated from storage"
|
|
allowed_mob_types = JOB_SILICON
|
|
|
|
/datum/spawnpoint/cyborg/New()
|
|
..()
|
|
turfs = GLOB.latejoin_cyborg
|
|
|
|
/obj/effect/landmark/arrivals
|
|
name = "JoinLateShuttle"
|
|
delete_me = 1
|
|
|
|
/obj/effect/landmark/arrivals/Initialize(mapload)
|
|
GLOB.latejoin += loc
|
|
. = ..()
|
|
|
|
GLOBAL_LIST_EMPTY(latejoin_tram)
|
|
|
|
/obj/effect/landmark/tram
|
|
name = "JoinLateTram"
|
|
delete_me = 1
|
|
|
|
/obj/effect/landmark/tram/Initialize(mapload)
|
|
GLOB.latejoin_tram += loc // There's no tram but you know whatever man!
|
|
. = ..()
|
|
|
|
/datum/spawnpoint/tram
|
|
display_name = "Tram Station"
|
|
msg = "will arrive to the station shortly by shuttle"
|
|
|
|
/datum/spawnpoint/tram/New()
|
|
..()
|
|
turfs = GLOB.latejoin_tram
|
|
|
|
/datum/spawnpoint/vore
|
|
display_name = "Vorespawn - Prey"
|
|
msg = "has arrived on the station"
|
|
allow_offmap_spawn = TRUE
|
|
|
|
/datum/spawnpoint/vore/pred
|
|
display_name = "Vorespawn - Pred"
|
|
msg = "has arrived on the station"
|
|
|
|
/*/datum/spawnpoint/vore/itemtf
|
|
display_name = "Item TF spawn"
|
|
msg = "has arrived on the station"*/
|
|
|
|
/datum/spawnpoint/vore/New()
|
|
..()
|
|
turfs = GLOB.latejoin
|