- Crew monitoring computer using the html_interface module

- Patch: Don't update html_interface clients that have been inactive for more than 10 minutes.
- Patch: Attempt to speed up _renderContent some more (in case of multiple clients) by using spawn.
- Patch: Second argument for hiIsValidClient hook: reference to the current html_interface object (used by crew monitoring computer).
- Feature: procqueue singleton. You can use this to put proc executions on a queue. Used by the crew monitoring computer to queue the update "for the next tick" when humans move.
This commit is contained in:
NullQuery
2015-06-27 10:26:46 +02:00
parent 1aac98a52a
commit b4248b01e4
10 changed files with 226 additions and 78 deletions
+27 -2
View File
@@ -125,7 +125,8 @@ var/list/admin_verbs_debug = list(
/client/proc/test_snap_UI,
/client/proc/debugNatureMapGenerator,
/client/proc/check_bomb_impacts,
/proc/machine_upgrade
/proc/machine_upgrade,
/client/proc/populate_world
)
var/list/admin_verbs_possess = list(
/proc/possess,
@@ -260,7 +261,7 @@ var/list/admin_verbs_hideable = list(
/client/proc/fps,
/client/proc/cmd_admin_grantfullaccess,
/client/proc/cmd_admin_areatest,
/client/proc/readmin
/client/proc/readmin,
)
if(holder)
verbs.Remove(holder.rank.adds)
@@ -590,3 +591,27 @@ var/list/admin_verbs_hideable = list(
verbs -= /client/proc/readmin
deadmins -= ckey
return
/client/proc/populate_world(var/amount = 50 as num)
set name = "Populate World"
set category = "Debug"
set desc = "(\"Amount of mobs to create\") Populate the world with test mobs."
if (amount > 0)
var/area/area
var/list/candidates
var/turf/simulated/floor/tile
var/r
for (var/i = 1 to amount)
area = pick(the_station_areas)
candidates = get_area_turfs(area)
r = 100
do
tile = pick(candidates)
while ((!tile || !istype(tile)) && --r > 0)
world.log << "Spawning test mob at [tile.x],[tile.y],[tile.z]!"
new/mob/living/carbon/human/interactive(tile)