mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-02-02 04:10:42 +00:00
* no more self callbacks on update fullness * fix missing code * Belly test * import type * full partiy * . * fix preview * in belly to late join * robot nutri * . * . * update export * finish open todos * code cleanup * fix some old slacking * move this to a define * fixing * , * . * Creates a Consume Belly Reagents pref (#10) * Creates a Consume Belly Reagents pref Added a Consume Belly Reagents pref that blocks the consumption of all reagents produced by a belly via reagent containers such as food, drink, beakers, pills, syringes and hyposprays. Seems to work well as intended. * These changes at least do not cause any problems * Missed this one * Reverts reagent_names * _BELLY versions * Fixed typo * . * fix admin spawn mobs bellies * also fix that bug * hints * fix that * . * initial * should be all * that is no longer needed * fluids into hand items I was convinced this was broken until it was pointed out that the item has to be ON THE GROUND to fill it...Instead of in your hand. That seems so convoluted. ARC = active-hand reagent container. IRC = inactive-hand reagent container. * some stuff --------- Co-authored-by: SatinIsle <98125273+SatinIsle@users.noreply.github.com> Co-authored-by: Cameron Lennox <killer65311@gmail.com>
122 lines
2.9 KiB
Plaintext
122 lines
2.9 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 = latejoin
|
|
|
|
/datum/spawnpoint/gateway
|
|
display_name = "Gateway"
|
|
msg = "has completed translation from offsite gateway"
|
|
|
|
/datum/spawnpoint/gateway/New()
|
|
..()
|
|
turfs = 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 = 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 = latejoin_cyborg
|
|
|
|
/obj/effect/landmark/arrivals
|
|
name = "JoinLateShuttle"
|
|
delete_me = 1
|
|
|
|
/obj/effect/landmark/arrivals/New()
|
|
latejoin += loc
|
|
..()
|
|
|
|
var/global/list/latejoin_tram = list()
|
|
|
|
/obj/effect/landmark/tram
|
|
name = "JoinLateTram"
|
|
delete_me = 1
|
|
|
|
/obj/effect/landmark/tram/New()
|
|
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 = 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"
|