mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-10 00:43:14 +00:00
Moves holodeck code to modules/holodeck. Repaths holodeck structures a little. Cleans holodeck code and prepares for additional features (multiple holodecks, etc). Should fix #4828. Necessary map bugfixen for Asteroid, Disc, Dream, Meta, and TG. Adds Lounge, Emergency Medical, pet center, and holdout room to the rec holodeck. All items spawned by the holodeck will do only stamina damage, except when emagged. This allows emergency medical to be staffed with scalpels and bonesaws and such. Emergency medical has some functioning equipment but the only drugs available are in the sleeper.
98 lines
2.3 KiB
Plaintext
98 lines
2.3 KiB
Plaintext
/area/holodeck
|
|
name = "Holodeck"
|
|
icon_state = "Holodeck"
|
|
luminosity = 1
|
|
lighting_use_dynamic = 0
|
|
|
|
var/obj/machinery/computer/holodeck/linked
|
|
var/restricted = 0 // if true, program goes on emag list
|
|
|
|
/*
|
|
Power tracking: Use the holodeck computer's power grid
|
|
Asserts are to avoid the inevitable infinite loops
|
|
*/
|
|
|
|
/area/holodeck/powered(var/chan)
|
|
if(!master.requires_power)
|
|
return 1
|
|
if(master.always_unpowered)
|
|
return 0
|
|
if(!linked)
|
|
return 0
|
|
var/area/A = get_area(linked)
|
|
ASSERT(!istype(A,/area/holodeck))
|
|
return A.powered(chan)
|
|
|
|
/area/holodeck/usage(var/chan)
|
|
if(!linked)
|
|
return 0
|
|
var/area/A = get_area(linked)
|
|
ASSERT(!istype(A,/area/holodeck))
|
|
return A.usage(chan)
|
|
|
|
/area/holodeck/addStaticPower(value, powerchannel)
|
|
if(!linked)
|
|
return
|
|
var/area/A = get_area(linked)
|
|
ASSERT(!istype(A,/area/holodeck))
|
|
return A.addStaticPower(value,powerchannel)
|
|
|
|
/area/holodeck/use_power(var/amount, var/chan)
|
|
if(!linked)
|
|
return 0
|
|
var/area/A = get_area(linked)
|
|
ASSERT(!istype(A,/area/holodeck))
|
|
return A.use_power(amount,chan)
|
|
|
|
|
|
/*
|
|
This is the standard holodeck. It is intended to allow you to
|
|
blow off steam by doing stupid things like laying down, throwing
|
|
spheres at holes, or bludgeoning people.
|
|
*/
|
|
/area/holodeck/rec_center
|
|
name = "\improper Recreational Holodeck"
|
|
|
|
/area/holodeck/rec_center/offline
|
|
name = "Holodeck - Offline"
|
|
|
|
/area/holodeck/rec_center/court
|
|
name = "Holodeck - Empty Court"
|
|
|
|
/area/holodeck/rec_center/dodgeball
|
|
name = "Holodeck - Dodgeball Court"
|
|
|
|
/area/holodeck/rec_center/basketball
|
|
name = "Holodeck - Basketball Court"
|
|
|
|
/area/holodeck/rec_center/thunderdome
|
|
name = "Holodeck - Thunderdome Court"
|
|
|
|
/area/holodeck/rec_center/beach
|
|
name = "Holodeck - Beach"
|
|
|
|
/area/holodeck/rec_center/lounge
|
|
name = "Holodeck - Lounge"
|
|
|
|
/area/holodeck/rec_center/medical
|
|
name = "Holodeck - Emergency Medical"
|
|
|
|
/area/holodeck/rec_center/pet_lounge
|
|
name = "Holodeck - Pet Playground"
|
|
|
|
|
|
// Bad programs
|
|
|
|
/area/holodeck/rec_center/burn
|
|
name = "Holodeck - Atmospheric Burn Test"
|
|
restricted = 1
|
|
|
|
/area/holodeck/rec_center/wildlife
|
|
name = "Holodeck - Wildlife Simulation"
|
|
restricted = 1
|
|
|
|
/area/holodeck/rec_center/bunker
|
|
name = "Holodeck - Holdout Bunker"
|
|
restricted = 1
|
|
|