Runtime fixes:

Fixed a runtime caused by someone holding an input window open with the RD Core Computer.

Fixed a runtime caused by an area being null... I have no idea how this is even possible. Tracking the source of the problem will take ages.

Added a check for range and source in hear(). Again.. I'm not sure how this ever even fails. This may also fix a runtime in say() code where it's trying to compare a list of objects to the character "0".

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5282 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
johnsonmt88@gmail.com
2012-12-08 01:14:50 +00:00
parent fcf95c8d6f
commit cab176618a
3 changed files with 4 additions and 2 deletions

View File

@@ -37,6 +37,8 @@
/proc/hear(var/range, var/atom/source)
if(!source || range == null) return
var/lum = source.luminosity
source.luminosity = 6

View File

@@ -90,7 +90,7 @@
while(src && target &&((((src.x < target.x && dx == EAST) || (src.x > target.x && dx == WEST)) && dist_travelled < range) || (a.has_gravity == 0) || istype(src.loc, /turf/space)) && src.throwing && istype(src.loc, /turf))
while(src && target &&((((src.x < target.x && dx == EAST) || (src.x > target.x && dx == WEST)) && dist_travelled < range) || (a && a.has_gravity == 0) || istype(src.loc, /turf/space)) && src.throwing && istype(src.loc, /turf))
// only stop when we've gone the whole distance (or max throw range) and are on a non-space tile, or hit something, or hit the end of the map, or someone picks it up
if(error < 0)
var/atom/step = get_step(src, dy)

View File

@@ -266,7 +266,7 @@ won't update every console in existence) but it's more of a hassle to do. Also,
usr << "\red The destructive analyzer is busy at the moment."
else
var/choice = input("Proceeding will destroy loaded item.") in list("Proceed", "Cancel")
if(choice == "Cancel") return
if(choice == "Cancel" || !linked_destroy) return
linked_destroy.busy = 1
screen = 0.1
updateUsrDialog()