Merge pull request #3851 from Ikarrus/splat

Shuttles docking on you will really hurt
This commit is contained in:
Cheridan
2014-07-01 23:29:05 -05:00
5 changed files with 46 additions and 44 deletions
+1
View File
@@ -427,6 +427,7 @@ var/global/floorIsLava = 0
<BR>
<A href='?src=\ref[src];secretsadmin=moveferry'>Move Ferry</A><BR>
<A href='?src=\ref[src];secretsadmin=moveminingshuttle'>Move Mining Shuttle</A><BR>
<A href='?src=\ref[src];secretsadmin=movelaborshuttle'>Move Labor Shuttle</A><BR>
<BR>
"}
+11 -4
View File
@@ -1926,15 +1926,22 @@
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","ShM")
var/datum/shuttle_manager/s = shuttles["mining"]
if(istype(s)) s.move_shuttle()
message_admins("\blue [key_name_admin(usr)] moved mining shuttle", 1)
if(istype(s)) s.move_shuttle(0)
message_admins("[key_name_admin(usr)] moved mining shuttle", 1)
log_admin("[key_name(usr)] moved the mining shuttle")
if("movelaborshuttle")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","ShL")
var/datum/shuttle_manager/s = shuttles["laborcamp"]
if(istype(s)) s.move_shuttle(0)
message_admins("[key_name_admin(usr)] moved labor shuttle", 1)
log_admin("[key_name(usr)] moved the labor shuttle")
if("moveferry")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","ShF")
var/datum/shuttle_manager/s = shuttles["ferry"]
if(istype(s)) s.move_shuttle()
message_admins("\blue [key_name_admin(usr)] moved the centcom ferry", 1)
if(istype(s)) s.move_shuttle(0)
message_admins("[key_name_admin(usr)] moved the centcom ferry", 1)
log_admin("[key_name(usr)] moved the centcom ferry")
if("kick_all_from_lobby")
if(ticker && ticker.current_state == GAME_STATE_PLAYING)
+4 -32
View File
@@ -21,33 +21,7 @@ datum/shuttle_manager/proc/move_shuttle(var/override_delay)
fromArea = locate(location) //the location of the shuttle
toArea = locate(fromArea.destination)
var/list/dstturfs = list()
var/throwy = world.maxy
for(var/turf/T in toArea)
dstturfs += T
if(T.y < throwy)
throwy = T.y
// hey you, get out of the way!
for(var/turf/T in dstturfs)
// find the turf to move things to
var/turf/D = locate(T.x, throwy - 1, 1)
//var/turf/E = get_step(D, SOUTH)
for(var/atom/movable/AM as mob|obj in T)
AM.Move(D)
// NOTE: Commenting this out to avoid recreating mass driver glitch
/*
spawn(0)
AM.throw_at(E, 1, 1)
return
*/
if(istype(T, /turf/simulated))
del(T)
for(var/mob/living/carbon/bug in toArea) // If someone somehow is still in the shuttle's docking area...
bug.gib()
toArea.clear_docking_area()
fromArea.move_contents_to(toArea)
location = toArea.type
@@ -74,8 +48,6 @@ datum/shuttle_manager/proc/move_shuttle(var/override_delay)
return 1
/obj/machinery/computer/shuttle
name = "Shuttle Console"
icon = 'icons/obj/computer.dmi'
@@ -108,11 +80,11 @@ datum/shuttle_manager/proc/move_shuttle(var/override_delay)
if(id in shuttles)
var/datum/shuttle_manager/s = shuttles[id]
if (s.move_shuttle())
usr << "\blue Shuttle recieved message and will be sent shortly."
usr << "<span class='notice'>Shuttle recieved message and will be sent shortly.</span>"
else
usr << "\blue Shuttle is already moving."
usr << "<span class='notice'>Shuttle is already moving.</span>"
else
usr << "\red Invalid shuttle requested."
usr << "<span class='warning'>Invalid shuttle requested.</span>"
/obj/machinery/computer/shuttle/attackby(I as obj, user as mob)