diff --git a/code/game/machinery/supply_display.dm b/code/game/machinery/supply_display.dm index 5a5c9750b6a..28bed763f68 100644 --- a/code/game/machinery/supply_display.dm +++ b/code/game/machinery/supply_display.dm @@ -1,5 +1,6 @@ /obj/machinery/status_display/supply_display ignore_friendc = 1 + mode = STATUS_DISPLAY_CUSTOM /obj/machinery/status_display/supply_display/update() if(!..() && mode == STATUS_DISPLAY_CUSTOM) @@ -10,7 +11,13 @@ if(!shuttle) message2 = "Error" else if(shuttle.has_arrive_time()) - message2 = get_supply_shuttle_timer() + message2 = "[round(shuttle.eta_seconds() / 60)]:" + if((shuttle.eta_seconds() % 60) < 10) + message2 += "0" // Pad to two characters + message2 += "[shuttle.eta_seconds() % 60]" + + if(shuttle.eta_seconds() < 0) + message2 = "Late" if(length(message2) > CHARS_PER_LINE) message2 = "Error" else if(shuttle.is_launching()) @@ -22,7 +29,7 @@ if(shuttle.at_station()) message2 = "Docked" else - message1 = "" + message2 = "Away" update_display(message1, message2) return 1 return 0 diff --git a/code/modules/shuttles/shuttle_supply.dm b/code/modules/shuttles/shuttle_supply.dm index ee258167960..a51fe50d561 100644 --- a/code/modules/shuttles/shuttle_supply.dm +++ b/code/modules/shuttles/shuttle_supply.dm @@ -13,6 +13,13 @@ if(isnull(location)) return + // Set the supply shuttle displays to read out the ETA + var/datum/signal/S = new() + S.source = src + S.data = list("command" = "supply") + var/datum/radio_frequency/F = radio_controller.return_frequency(1435) + F.post_signal(src, S) + //it would be cool to play a sound here moving_status = SHUTTLE_WARMUP spawn(warmup_time*10) @@ -77,5 +84,8 @@ //returns the ETA in minutes /datum/shuttle/autodock/ferry/supply/proc/eta_minutes() - var/ticksleft = arrive_time - world.time - return round(ticksleft/600,1) + return round((arrive_time - world.time) / (1 MINUTE), 1) // Floor, so it's an actual timer + +// returns the ETA in seconds +/datum/shuttle/autodock/ferry/supply/proc/eta_seconds() + return round((arrive_time - world.time) / (1 SECOND)) // Floor, so it's an actual timer