-Killed the updateDialog lag. I added a check to see if there were any mobs to update, if not it will stop checking until a user uses the machine again. I had to replace all the machine = src and machine = null with procs to help make it manageable. I believe this is one of the culprits causing the server to lag as the round goes on, as more players will interact with machines.

-Atmos delay is now based on active players, to help fight lag for massive player rounds.

-Changed some for(blah in world) loops to use the correct lists.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4958 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
giacomand@gmail.com
2012-10-25 19:15:51 +00:00
parent 2063c3715d
commit 6a2d78bc94
156 changed files with 403 additions and 367 deletions
+1 -1
View File
@@ -87,7 +87,7 @@
if ((usr.stat || usr.restrained()))
return
if (usr.contents.Find(src))
usr.machine = src
usr.set_machine(src)
if (href_list["remove"])
var/obj/item/P = locate(href_list["remove"])
if ((P && P.loc == src))
@@ -136,7 +136,7 @@
/obj/item/weapon/flamethrower/attack_self(mob/user as mob)
if(user.stat || user.restrained() || user.lying) return
user.machine = src
user.set_machine(src)
if(!ptank)
user << "<span class='notice'>Attach a plasma tank first!</span>"
return
@@ -148,11 +148,11 @@
/obj/item/weapon/flamethrower/Topic(href,href_list[])
if(href_list["close"])
usr.machine = null
usr.unset_machine()
usr << browse(null, "window=flamethrower")
return
if(usr.stat || usr.restrained() || usr.lying) return
usr.machine = src
usr.set_machine(src)
if(href_list["light"])
if(!ptank) return
if(ptank.air_contents.toxins < 1) return
@@ -168,7 +168,7 @@
usr.put_in_hands(ptank)
ptank = null
lit = 0
usr.machine = null
usr.unset_machine()
usr << browse(null, "window=flamethrower")
for(var/mob/M in viewers(1, loc))
if((M.client && M.machine == src))
@@ -32,7 +32,7 @@
attack_hand(mob/user as mob)
user.machine = src
user.set_machine(src)
var/health_text = ""
if(src.occupant)
if(src.occupant.health <= -100)
@@ -48,7 +48,7 @@
dat += "<B>Implants:</B> [src.implant_list.len ? "[implant_list.len]" : "<A href='?src=\ref[src];replenish=1'>Replenish</A>"]<BR>"
if(src.occupant)
dat += "[src.ready ? "<A href='?src=\ref[src];implant=1'>Implant</A>" : "Recharging"]<BR>"
user.machine = src
user.set_machine(src)
user << browse(dat, "window=implant")
onclose(user, "implant")
@@ -57,7 +57,7 @@
attack_self(mob/user as mob)
user.machine = src
user.set_machine(src)
var/dat = "<B>Implant Mini-Computer:</B><HR>"
if (src.case)
if(src.case.imp)
@@ -83,7 +83,7 @@
if (usr.stat)
return
if ((usr.contents.Find(src)) || ((in_range(src, usr) && istype(src.loc, /turf))))
usr.machine = src
usr.set_machine(src)
if (href_list["tracking_id"])
var/obj/item/weapon/implant/tracking/T = src.case.imp
T.id += text2num(href_list["tracking_id"])
+2 -2
View File
@@ -12,7 +12,7 @@
origin_tech = "bluespace=4"
/obj/item/weapon/teleportation_scroll/attack_self(mob/user as mob)
user.machine = src
user.set_machine(src)
var/dat = "<B>Teleportation Scroll:</B><BR>"
dat += "Number of uses: [src.uses]<BR>"
dat += "<HR>"
@@ -31,7 +31,7 @@
if (!( istype(H, /mob/living/carbon/human)))
return 1
if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))))
usr.machine = src
usr.set_machine(src)
if (href_list["spell_teleport"])
if (src.uses >= 1)
src.uses -= 1
@@ -201,7 +201,7 @@
return
/obj/item/weapon/secstorage/attack_self(mob/user as mob)
user.machine = src
user.set_machine(src)
var/dat = text("<TT><B>[]</B><BR>\n\nLock Status: []",src, (src.locked ? "LOCKED" : "UNLOCKED"))
var/message = "Code"
if ((src.l_set == 0) && (!src.emagged) && (!src.l_setshort))
@@ -118,7 +118,7 @@
/obj/item/weapon/tank/attack_self(mob/user as mob)
if (!(src.air_contents))
return
user.machine = src
user.set_machine(src)
var/using_internal
if(istype(loc,/mob/living/carbon))
@@ -142,7 +142,7 @@
if (usr.stat|| usr.restrained())
return
if (src.loc == usr)
usr.machine = src
usr.set_machine(src)
if (href_list["dist_p"])
var/cp = text2num(href_list["dist_p"])
src.distribute_pressure += cp
@@ -8,7 +8,7 @@
* Locator
*/
/obj/item/weapon/locator/attack_self(mob/user as mob)
user.machine = src
user.set_machine(src)
var/dat
if (src.temp)
dat = "[src.temp]<BR><BR><A href='byond://?src=\ref[src];temp=1'>Clear</A>"
@@ -35,7 +35,7 @@ Frequency:
usr << "The [src] is malfunctioning."
return
if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))))
usr.machine = src
usr.set_machine(src)
if (href_list["refresh"])
src.temp = "<B>Persistent Signal Locator</B><HR>"
var/turf/sr = get_turf(src)