Added checks for the player being dead, stunned, unconcious ect... to:

- Timers
- Remote Signallers (Fixes issue 325)
- Proximity Sensors
- Infared Sensors (Man.. these really need to be fixed.. or just re-done entierly)

Cargo shuttle:
- People in the area of the cargo shuttle get gibbed when the shuttle shows up. (Fixes issue 508)
- Renamed 'Dock' to 'Away' because Station -> Dock is confusing...

Committing for Sieve:
- The toggle throw hotkey (end) now works with TK (Fixes issue 523)
- Borg diamond drills now properly dig sand (I still don't understand why they don't just have a shovel...)

Updated changelog to reflect some of these changes.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3747 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
johnsonmt88@gmail.com
2012-06-06 05:22:17 +00:00
parent c6f8a3813f
commit db9f4f33a3
8 changed files with 26 additions and 22 deletions

View File

@@ -101,7 +101,7 @@
disp2 = "STATN"
else
disp1 = "SPPLY"
disp2 = "DOCK"
disp2 = "AWAY"
update_display(disp1, disp2)

View File

@@ -151,6 +151,7 @@ var/ordernum=0
/proc/supply_can_move()
if(supply_shuttle_moving) return 0
//I know this is an absolutly horrendous way to do this, very inefficient, but it's the only reliable way I can think of.
//Check for mobs
for(var/mob/living/M in world)
var/area/A = get_area(M)
@@ -417,10 +418,10 @@ This method wont take into account storage items developed in the future and doe
dat = src.temp
else
dat += {"<BR><B>Supply shuttle</B><HR>
\nLocation: [supply_shuttle_moving ? "Moving to station ([supply_shuttle_timeleft] Mins.)":supply_shuttle_at_station ? "Station":"Dock"]<BR>
\nLocation: [supply_shuttle_moving ? "Moving to station ([supply_shuttle_timeleft] Mins.)":supply_shuttle_at_station ? "Station":"Away"]<BR>
<HR>\nSupply points: [supply_shuttle_points]<BR>\n<BR>
[supply_shuttle_moving ? "\n*Must be at dock to order items*<BR>\n<BR>":supply_shuttle_at_station ? "\n*Must be at dock to order items*<BR>\n<BR>":"\n<A href='?src=\ref[src];order=1'>Order items</A><BR>\n<BR>"]
[supply_shuttle_moving ? "\n*Shuttle already called*<BR>\n<BR>":supply_shuttle_at_station ? "\n<A href='?src=\ref[src];sendtodock=1'>Send to Dock</A><BR>\n<BR>":"\n<A href='?src=\ref[src];sendtostation=1'>Send to station</A><BR>\n<BR>"]
[supply_shuttle_moving ? "\n*Must be away to order items*<BR>\n<BR>":supply_shuttle_at_station ? "\n*Must be away to order items*<BR>\n<BR>":"\n<A href='?src=\ref[src];order=1'>Order items</A><BR>\n<BR>"]
[supply_shuttle_moving ? "\n*Shuttle already called*<BR>\n<BR>":supply_shuttle_at_station ? "\n<A href='?src=\ref[src];sendtodock=1'>Send away</A><BR>\n<BR>":"\n<A href='?src=\ref[src];sendtostation=1'>Send to station</A><BR>\n<BR>"]
\n<A href='?src=\ref[src];viewrequests=1'>View requests</A><BR>\n<BR>
\n<A href='?src=\ref[src];vieworders=1'>View orders</A><BR>\n<BR>
\n<A href='?src=\ref[user];mach_close=computer'>Close</A>"}
@@ -473,6 +474,7 @@ This method wont take into account storage items developed in the future and doe
if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon)))
usr.machine = src
//From Station to Centcomm
if (href_list["sendtodock"])
if(!supply_shuttle_at_station || supply_shuttle_moving) return
@@ -498,6 +500,7 @@ This method wont take into account storage items developed in the future and doe
send_supply_shuttle()
//From Centcomm to Station
else if (href_list["sendtostation"])
if(supply_shuttle_at_station || supply_shuttle_moving) return
@@ -628,9 +631,11 @@ This method wont take into account storage items developed in the future and doe
if (supply_shuttle_moving) return
if (!supply_can_move())
usr << "\red The supply shuttle can not transport station employees, exosuits, classified nuclear codes, or homing beacons."
return
var/area/the_shuttles_way = locate(SUPPLY_STATION_AREATYPE)
//Do I really need to explain this loop?
for(var/mob/living/unlucky_person in the_shuttles_way)
unlucky_person.gib()
var/shuttleat = supply_shuttle_at_station ? SUPPLY_STATION_AREATYPE : SUPPLY_DOCK_AREATYPE
var/shuttleto = !supply_shuttle_at_station ? SUPPLY_STATION_AREATYPE : SUPPLY_DOCK_AREATYPE

View File

@@ -123,7 +123,7 @@
Topic(href, href_list)
..()
if(get_dist(src, usr) > 1)
if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr))
usr << browse(null, "window=infra")
onclose(usr, "infra")
return

View File

@@ -119,7 +119,7 @@
Topic(href, href_list)
..()
if(get_dist(src, usr) > 1)
if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr))
usr << browse(null, "window=prox")
onclose(usr, "prox")
return

View File

@@ -76,9 +76,9 @@
Topic(href, href_list)
..()
if(get_dist(src, usr) > 1)
usr << browse(null, "window=signal")
onclose(usr, "signal")
if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr))
usr << browse(null, "window=radio")
onclose(usr, "radio")
return
if (href_list["freq"])

View File

@@ -86,7 +86,7 @@
Topic(href, href_list)
..()
if(get_dist(src, usr) > 1)
if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr))
usr << browse(null, "window=timer")
onclose(usr, "timer")
return

View File

@@ -339,7 +339,7 @@
else
..(W,user)
if ((istype(W,/obj/item/weapon/pickaxe/diamonddrill)))
if ((istype(W,/obj/item/weapon/pickaxe/diamonddrill)) || (istype(W,/obj/item/weapon/pickaxe/borgdrill)))
var/turf/T = user.loc
if (!( istype(T, /turf) ))
return

View File

@@ -40,10 +40,7 @@
/client/Southwest()
if(iscarbon(usr))
var/mob/living/carbon/C = usr
if(!C.get_active_hand())
usr << "\red You have nothing in your hand to throw."
return
toggle_throw_mode()
C.toggle_throw_mode()
else
usr << "\red This mob type cannot throw items."
return
@@ -115,10 +112,12 @@
/client/verb/toggle_throw_mode()
set hidden = 1
if(!istype(mob, /mob/living/carbon)) return
if((mob.stat || mob.restrained()) || !(isturf(mob.loc))) return
mob:toggle_throw_mode()
return
if(!istype(mob, /mob/living/carbon))
return
if (!mob.stat && isturf(mob.loc) && !mob.restrained())
mob:toggle_throw_mode()
else
return
/client/verb/drop_item()