Merge pull request #417 from SkyMarshal/master

Should reduce lag, mobs no longer update icons ever tick.
This commit is contained in:
Albert Iordache
2012-02-14 04:20:00 -08:00
14 changed files with 51 additions and 5 deletions
-2
View File
@@ -80,7 +80,6 @@
#define FILE_DIR "code/game/objects/stacks"
#define FILE_DIR "code/game/objects/storage"
#define FILE_DIR "code/game/objects/tanks"
#define FILE_DIR "code/game/structure"
#define FILE_DIR "code/game/verbs"
#define FILE_DIR "code/js"
#define FILE_DIR "code/modules"
@@ -725,7 +724,6 @@
#include "code\game\objects\tanks\emergency.dm"
#include "code\game\objects\tanks\jetpack.dm"
#include "code\game\objects\tanks\oxygen.dm"
#include "code\game\structure\structure.dm"
#include "code\game\verbs\AI_status.dm"
#include "code\game\verbs\checkkarma.dm"
#include "code\game\verbs\ooc.dm"
+12 -2
View File
@@ -193,10 +193,20 @@ A list of items and costs is stored under the datum of every game mode, alongsid
return
explode()
var/turf/location = get_turf(src.loc)
if(location)
location.hotspot_expose(700,125)
explosion(location, 0, 0, 2, 4, 1)
var/obj/item/weapon/implant/uplink/U = src.loc
var/mob/living/A = U.imp_in
A.gib()
..()
var/datum/organ/external/head = A:organs["head"]
head.destroyed = 1
spawn(2)
head.droplimb()
del(src.master)
del(src)
return
/obj/item/device/uplink/radio
+19
View File
@@ -663,6 +663,25 @@
anchored = 1.0
var/list/buckled_mobs = list( )
/obj/stool/chair/comfy
name = "comfy chair"
desc = "It looks comfy."
/obj/stool/chair/comfy/brown
icon_state = "comfychair_brown"
/obj/stool/chair/comfy/beige
icon_state = "comfychair_beige"
/obj/stool/chair/comfy/teal
icon_state = "comfychair_teal"
/obj/stool/chair/comfy/black
icon_state = "comfychair_black"
/obj/stool/chair/comfy/lime
icon_state = "comfychair_lime"
/obj/structure/stool/chair/e_chair
name = "electrified chair"
desc = "Looks absolutely terrifying!"
+1
View File
@@ -482,6 +482,7 @@
I.implanted = O
O.flavor_text = M.flavor_text
O.warn_flavor_changed()
O.update_clothing()
del(M)
return
//////////////////////////////////////////////////////////// Monkey Block
+1
View File
@@ -246,6 +246,7 @@ var/global/datum/controller/occupations/job_master
var/obj/item/weapon/storage/backpack/BPK = new/obj/item/weapon/storage/backpack(H)
H.equip_if_possible(BPK, H.slot_back,1)
H.equip_if_possible(new /obj/item/weapon/storage/box(H.back), H.slot_in_backpack)
H.update_clothing()
return 1
+5
View File
@@ -369,6 +369,11 @@ mob/proc/flash_weak_pain()
if(istype(M, /mob/living/carbon/human))
M:attacked_by(src, user, def_zone)
var/mob/living/carbon/human/H = M
if(H)
H.UpdateDamageIcon()
H.update_clothing()
user.update_clothing()
else
switch(src.damtype)
if("brute")
@@ -266,6 +266,7 @@ ZIPPO
else
user.r_hand = W
W.layer = 20
user.update_clothing()
else
return ..()
src.update_icon()
@@ -87,6 +87,7 @@
spawn( 0 )
O.process()
user.update_clothing()
return
else
for(var/mob/O in viewers(M, null))
@@ -29,6 +29,7 @@
dropped(source)
if (W)
W.layer = initial(W.layer)
source.update_clothing()
return
+4
View File
@@ -69,6 +69,7 @@
if (M.buckled == src)
M.buckled = null
M.anchored = 0
M.update_clothing()
/obj/structure/stool/proc/manual_unbuckle_all(mob/user as mob)
var/N = 0;
@@ -87,6 +88,7 @@
// world << "[M] is no longer buckled to [src]"
M.anchored = 0
M.buckled = null
M.update_clothing()
N++
return N
@@ -109,6 +111,7 @@
M.buckled = src
M.loc = src.loc
M.dir = src.dir
M.update_clothing()
src:buckled_mobs += M
src.add_fingerprint(user)
return
@@ -339,6 +342,7 @@
M.pixel_y = 0
M.anchored = 0
M.buckled = null
M.update_clothing()
N++
if(N)
density = 0
View File
+5 -1
View File
@@ -12,6 +12,7 @@
life_tick = 0
isbreathing = 1
holdbreath = 0
lyingcheck = 0
/mob/living/carbon/human/Life()
set invisibility = 0
@@ -85,7 +86,10 @@
handle_health_updates()
// Update clothing
update_clothing()
// update_clothing()
if(lyingcheck != lying) //This is a fix for falling down / standing up not updating icons. Instead of going through and changing every
update_clothing() //instance in the code where lying is modified, I've just added a new variable "lyingcheck" which will be compared
lyingcheck = lying //to lying, so if lying ever changes, update_clothing() will run like normal.
if(client)
handle_regular_hud_updates()
+1
View File
@@ -474,6 +474,7 @@
usr << "\blue You successfully remove your handcuffs."
usr:handcuffed:loc = usr:loc
usr:handcuffed = null
usr.update_clothing()
if(istype(usr, /mob/living/carbon/human) && istype(usr:wear_suit, /obj/item/clothing/suit/straight_jacket) && usr:canmove && (usr.last_special <= world.time))
usr.next_move = world.time + 200
Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 86 KiB