mirror of
https://github.com/Citadel-Station-13/Citadel-Station-13-RP.git
synced 2026-08-27 16:27:09 +01:00
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may not be viewable. --> <!-- You can view Contributing.MD for a detailed description of the pull request process. --> ## About The Pull Request title <!-- Describe The Pull Request. Please be sure every change is documented or this can delay review and even discourage maintainers from merging your PR! --> ## Why It's Good For The Game muh immursion! <!-- Argue for the merits of your changes and how they benefit the game, especially if they are controversial and/or far reaching. If you can't actually explain WHY what you are doing will improve the game, then it probably isn't good for the game in the first place. --> ## Changelog 🆑 spellcheck: CentComm => Centcom spellcheck: NanoTrasen => Nanotrasen /🆑 <!-- Both 🆑's are required for the changelog to work! You can put your name to the right of the first 🆑 if you want to overwrite your GitHub username as author ingame. --> <!-- You can use multiple of the same prefix (they're only used for the icon ingame) and delete the unneeded ones. Despite some of the tags, changelogs should generally represent how a player might be affected by the changes rather than a summary of the PR's contents. -->
105 lines
4.3 KiB
Plaintext
105 lines
4.3 KiB
Plaintext
// Consoladating Spawn points to one file to help with map modularity -Bloop
|
|
|
|
|
|
///// Tether's Tram station (Someone can use these for another station that uses trams as well too!) - Bloop
|
|
// Tram departure cryo doors that turn into ordinary airlock doors at round end
|
|
/obj/machinery/cryopod/robot/door/tram
|
|
name = "\improper Tram Station"
|
|
icon = 'icons/obj/doors/Doorextglass.dmi'
|
|
icon_state = "door_closed"
|
|
CanAtmosPass = ATMOS_PASS_AIR_BLOCKED
|
|
base_icon_state = "door_closed"
|
|
occupied_icon_state = "door_locked"
|
|
desc = "The tram station you might've came in from. You could leave the base easily using this."
|
|
on_store_message = "has departed on the tram."
|
|
on_store_name = "Travel Oversight"
|
|
on_enter_occupant_message = "The tram arrives at the platform; you step inside and take a seat."
|
|
on_store_visible_message_1 = "'s speakers chime, anouncing a tram has arrived to take"
|
|
on_store_visible_message_2 = "to the colony"
|
|
time_till_despawn = 10 SECONDS
|
|
spawnpoint_type = /datum/spawnpoint/tram
|
|
|
|
/obj/machinery/cryopod/robot/door/tram/process()
|
|
if(SSemergencyshuttle.online() || SSemergencyshuttle.returned())
|
|
// Transform into a door! But first despawn anyone inside
|
|
time_till_despawn = 0
|
|
..()
|
|
var/turf/T = get_turf(src)
|
|
var/obj/machinery/door/airlock/glass_external/door = new(T)
|
|
door.req_access = null
|
|
door.req_one_access = null
|
|
qdel(src)
|
|
// Otherwise just operate normally
|
|
return ..()
|
|
|
|
/obj/machinery/cryopod/robot/door/tram/go_in(mob/living/M, mob/living/user)
|
|
if(M != user)
|
|
return ..()
|
|
var/choice = alert(user, "Do you want to depart via the shuttle? Your character will leave the round.","Departure","No","Yes")
|
|
if(user && Adjacent(user) && choice == "Yes")
|
|
var/mob/observer/dead/newghost = user.ghostize()
|
|
newghost.timeofdeath = world.time
|
|
despawn_occupant(user)
|
|
|
|
/datum/spawnpoint/tram
|
|
display_name = "Tram Station"
|
|
method = LATEJOIN_METHOD_TRAM
|
|
|
|
/obj/machinery/cryopod/robot/door/dorms
|
|
spawnpoint_type = /datum/spawnpoint/tram
|
|
|
|
////////////////////////////////////////////////////////////////
|
|
|
|
///// Triumph's shuttle doors (Or if someone else wants to use them for another station!)
|
|
// shuttle departure cryo doors that turn into ordinary airlock doors at round end
|
|
/obj/machinery/cryopod/robot/door/shuttle
|
|
name = "\improper Shuttle Station"
|
|
icon = 'icons/obj/doors/Doorextglass.dmi'
|
|
icon_state = "door_closed"
|
|
CanAtmosPass = ATMOS_PASS_AIR_BLOCKED
|
|
base_icon_state = "door_closed"
|
|
occupied_icon_state = "door_locked"
|
|
desc = "The shuttle bay you might've came in from. You could leave the base easily using this.<br><span class='userdanger'>Drag-drop yourself onto it while adjacent to leave.</span>"
|
|
on_store_message = "has departed on the shuttle."
|
|
on_store_name = "Crew Shift Transfer Services"
|
|
on_enter_occupant_message = "The shuttle arrives at the platform; you step inside and take a seat."
|
|
on_store_visible_message_1 = "'s speakers chime, anouncing a shuttle has arrived to take"
|
|
on_store_visible_message_2 = "to the commanding ship"
|
|
time_till_despawn = 10 SECONDS
|
|
spawnpoint_type = /datum/spawnpoint/arrivals
|
|
|
|
/obj/machinery/cryopod/robot/door/shuttle/process(delta_time)
|
|
if(SSemergencyshuttle.online() || SSemergencyshuttle.returned())
|
|
// Transform into a door! But first despawn anyone inside
|
|
time_till_despawn = 0
|
|
..()
|
|
var/turf/T = get_turf(src)
|
|
var/obj/machinery/door/airlock/glass_external/door = new(T)
|
|
door.req_access = null
|
|
door.req_one_access = null
|
|
qdel(src)
|
|
// Otherwise just operate normally
|
|
return ..()
|
|
|
|
/obj/machinery/cryopod/robot/door/shuttle/go_in(mob/living/M, mob/living/user)
|
|
if(M != user)
|
|
return ..()
|
|
var/choice = alert(user, "Do you want to depart via the shuttle? Your character will leave the round.","Departure","No","Yes")
|
|
if(user && Adjacent(user) && choice == "Yes")
|
|
var/mob/observer/dead/newghost = user.ghostize()
|
|
newghost.timeofdeath = world.time
|
|
despawn_occupant(user)
|
|
|
|
// Used at centcom for the elevator
|
|
/obj/machinery/cryopod/robot/door/dorms
|
|
spawnpoint_type = /datum/spawnpoint/arrivals
|
|
|
|
///////////////////////////////////////////////////////////////////////////
|
|
|
|
// Rift Shuttle variant with slightly different messages //
|
|
/obj/machinery/cryopod/robot/door/shuttle/rift
|
|
on_store_message = "has departed on an automated shuttle."
|
|
on_store_name = "Travel Oversight"
|
|
on_store_visible_message_2 = "to the orbital relay"
|
|
|