Skip to content

Commit

Permalink
Merge pull request VOREStation#15355 from SatinIsle/train
Browse files Browse the repository at this point in the history
Redgate train map
  • Loading branch information
Very-Soft authored Sep 6, 2023
2 parents 77a458a + 7ec3c58 commit 82b27e6
Show file tree
Hide file tree
Showing 11 changed files with 46,868 additions and 3 deletions.
24 changes: 24 additions & 0 deletions code/game/objects/effects/step_triggers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -248,3 +248,27 @@ var/global/list/tele_landmarks = list() // Terrible, but the alternative is loop
else
message_admins("ERROR: planetary_fall step trigger lacks a planet to fall onto.")
return

//Death

/obj/effect/step_trigger/death
var/deathmessage = "You die a horrible, brutal and very sudden death."
var/deathalert = "has stepped on a death trigger."

/obj/effect/step_trigger/death/Trigger(var/atom/movable/A)
if(isliving(A))
to_chat(A, "<span class='danger'>[deathmessage]</span>")
log_and_message_admins("[A] [deathalert]")
qdel(A)

/obj/effect/step_trigger/death/train_lost
deathmessage = "You fly down the tunnel of the train at high speed for a few moments before impact kills you with sheer concussive force."
deathalert = "fell off the side of the train and died horribly."

/obj/effect/step_trigger/death/train_crush
deathmessage = "You get horribly crushed by the train, there's pretty much nothing left of you."
deathalert = "fell under the train and was crushed horribly."

/obj/effect/step_trigger/death/fly_off
deathmessage = "You get caught up in the slipstream of the train and quickly dragged down into the tracks. Your body is brutally smashed into the electrified rails and then sucked right under a carriage. No one is finding that mess, thankfully."
deathalert = "tried to fly away from the train but was died horribly in the process."
50 changes: 50 additions & 0 deletions code/game/objects/items/devices/ticket_printer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -57,3 +57,53 @@
/obj/item/weapon/paper/sec_ticket/update_icon()
icon = icon
icon_state = icon_state


/obj/item/device/ticket_printer/train
name = "permission ticket printer"
desc = "It prints permit tickets!"
icon = 'icons/obj/device_vr.dmi'
icon_state = "train_ticket_printer"

/obj/item/device/ticket_printer/train/print_a_ticket(mob/user)

var/ticket_name = sanitize(tgui_input_text(user, "The Name of the person you are issuing the ticket to.", "Name", max_length = 100))
if(length(ticket_name) > 100)
tgui_alert_async(usr, "Entered name too long. 100 character limit.","Error")
return
if(!ticket_name)
return
var/details = sanitize(tgui_input_text(user, "What is the ticket for? This could be anything like travel to a destination or permission to do something! This is not official and does not override any rules or authorities on the station.", "Ticket Details", max_length = 200))
if(length(details) > 200)
tgui_alert_async(usr, "Entered details too long. 200 character limit.","Error")
return
if(!details)
return

var/turf/our_turf = get_turf(user)

var/final = "<head><style>body {font-family: Verdana; background-color: #ffa1ef;}</style></head><center><h3>Permit Ticket</h3><hr>This ticket has been issued to <br><big>[capitalize(ticket_name)]</big></center><b>This permits them to</b>:<br><i>[details]</i><br>Issued by:<i>[user]</i><hr><center><small>This ticket is non-refundable from the time of receipt. This ticket holds the authority of the issuer only and does not hold any authority over persons nor entities that were not involved in this transaction.</small><br></center>"

var/obj/item/weapon/paper/permit_ticket/p = new /obj/item/weapon/paper/permit_ticket(our_turf)

p.info = final
p.name = "Permit Ticket: [ticket_name]"
playsound(user, 'sound/items/ticket_printer.ogg', 75, 1)

log_and_message_admins("has issued '[ticket_name]' a permit ticket: \"[details]\"", user)
last_print = world.time

/obj/item/weapon/paper/permit_ticket
name = "Permit Ticket"
desc = "A ticket issued to permit someone to do something!"
icon = 'icons/obj/bureaucracy_vr.dmi'
icon_state = "permit_ticket"

/obj/item/weapon/paper/permit_ticket/Initialize(mapload, text, title)
. = ..()
icon = 'icons/obj/bureaucracy_vr.dmi'
icon_state = "permit_ticket"

/obj/item/weapon/paper/permit_ticket/update_icon()
icon = icon
icon_state = icon_state
173 changes: 173 additions & 0 deletions code/modules/awaymissions/redgate.dm
Original file line number Diff line number Diff line change
Expand Up @@ -715,4 +715,177 @@
name = "Islands - Rig Mess"
icon_state = "red"

//train areas

/area/redgate/train
name = "Train"
icon_state = "red"
requires_power = 0

/area/redgate/train/overboard
name = "Outside of the Train"
icon_state = "red"

/area/redgate/train/connection
name = "Train Connection"
icon_state = "bluenew"

/area/redgate/train/cab
name = "Train Cab"
icon_state = "yellow"

/area/redgate/train/meeting
name = "Train Meeting Room"
icon_state = "green"

/area/redgate/train/storage
name = "Train Storage"
icon_state = "green"

/area/redgate/train/viewing
name = "Train Viewing Carriage"
icon_state = "green"

/area/redgate/train/seating
name = "Train Seating"
icon_state = "green"

/area/redgate/train/tableseating
name = "Train Table Seating"
icon_state = "green"

/area/redgate/train/bar
name = "Train Bar"
icon_state = "green"

/area/redgate/train/arena
name = "Train Arena"
icon_state = "green"

/area/redgate/train/redgate
name = "Train Redgate"
icon_state = "purple"

/area/redgate/train/casino
name = "Train Casino"
icon_state = "green"

/area/redgate/train/animals
name = "Train Animal Transport"
icon_state = "green"

/area/redgate/train/teppi
name = "Train Teppi Transport"
icon_state = "green"

/area/redgate/train/fuel
name = "Train Fuel Transport"
icon_state = "green"

/area/redgate/train/wood
name = "Train Wood Transport"
icon_state = "green"

/area/redgate/train/rear
name = "Train Rear Carriage"
icon_state = "green"

/area/redgate/train/balcony
name = "Train Balcony"
icon_state = "yellow"

/area/redgate/train/roof
name = "Train Roof"
icon_state = "green"

/area/redgate/train/staff
name = "Train Staffroom"
icon_state = "green"

/area/redgate/train/helipad
name = "Train Helipad"
icon_state = "green"

/area/redgate/train/medbay
name = "Train Medical"
icon_state = "green"

/area/redgate/train/gym
name = "Train Gym"
icon_state = "green"

/area/redgate/train/pool
name = "Train Pool"
icon_state = "green"

/area/redgate/train/chef
name = "Train Chef Room"
icon_state = "yellow"

/area/redgate/train/freezer
name = "Train Freezer"
icon_state = "green"

/area/redgate/train/kitchen
name = "Train Kitchen"
icon_state = "purple"

/area/redgate/train/dining
name = "Train Dining Room"
icon_state = "green"

/area/redgate/train/sleeper1
name = "Train Sleeper Carriage One"
icon_state = "green"

/area/redgate/train/sleeper2
name = "Train Sleeper Carriage Two"
icon_state = "green"

/area/redgate/train/dorm1
name = "Train Dorm 1"
icon_state = "purple"

/area/redgate/train/dorm2
name = "Train Dorm 2"
icon_state = "yellow"

/area/redgate/train/dorm3
name = "Train Dorm 3"
icon_state = "purple"

/area/redgate/train/dorm4
name = "Train Dorm 4"
icon_state = "purple"

/area/redgate/train/dorm5
name = "Train Dorm 5"
icon_state = "yellow"

/area/redgate/train/dorm6
name = "Train Dorm 6"
icon_state = "purple"

/area/redgate/train/seclobby
name = "Train Security Lobby"
icon_state = "green"

/area/redgate/train/security
name = "Train Security"
icon_state = "purple"

/area/redgate/train/gear
name = "Train Security Gear"
icon_state = "yellow"

/area/redgate/train/command
name = "Train Command"
icon_state = "green"

/area/redgate/train/vault
name = "Train Vault"
icon_state = "yellow"

/area/redgate/train/captain
name = "Train Captain's Quarters"
icon_state = "purple"
Binary file modified icons/obj/bureaucracy_vr.dmi
Binary file not shown.
Binary file modified icons/obj/device_vr.dmi
Binary file not shown.
3 changes: 2 additions & 1 deletion maps/groundbase/groundbase_defines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,8 @@
list("Redgate - Star Dog"),
list("Redgate - Hotsprings"),
list("Redgate - Rain City"),
list("Redgate - Islands Underwater","Redgate - Islands")
list("Redgate - Islands Underwater","Redgate - Islands"),
list("Redgate - Moving Train", "Redgate - Moving Train Upper Level")
)

lateload_gb_north = list(
Expand Down
15 changes: 15 additions & 0 deletions maps/offmap_vr/common_offmaps.dm
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,21 @@
/obj/effect/landmark/map_data/islands
height = 2

/datum/map_template/common_lateload/redgate/train
name = "Redgate - Moving Train"
desc = "A long train travelling to who-knows-where."
mappath = 'maps/redgate/train.dmm'

/datum/map_template/common_lateload/redgate/train_upper
name = "Redgate - Moving Train Upper Level"
desc = "A long train travelling to who-knows-where."
mappath = 'maps/redgate/train_upper.dmm'

/obj/effect/landmark/map_data/train
height = 2



//////////////////////////////////////////////////////////////////////////////////////
// Admin-use z-levels for loading whenever an admin feels like
#if AWAY_MISSION_TEST
Expand Down
Loading

0 comments on commit 82b27e6

Please sign in to comment.