ID:1682479
 
Resolved
Invisibility of the parent atom was wrongly applied to attached images.
BYOND Version:507
Operating System:Windows 7 Pro 64-bit
Web Browser:Firefox 32.0
Applies to:Webclient
Status: Resolved (507.1259)

This issue has been resolved.
Descriptive Problem Summary:
If you set an atom's invisibility variable, it not only hides the atom's main icon, but also any images that have their loc set to it in the Webclient. In Dream Seeker, the images remain visible even if the atom is itself invisible.

Numbered Steps to Reproduce Problem:
1) Create a /image with the loc set to a mob
2) Output that image to a player
3) Set the mob's invisibility to 1
4) Notice that the image also disappears in the Webclient

Code Snippet (if applicable) to Reproduce Problem:
mob
icon = 'Person.dmi'
Login()
client.images+=image(icon='CPPlayer.dmi', loc=src, layer=MOB_LAYER+1)
..()
verb
ToggleInvisibility()
invisibility = !invisibility
Logout()
del(src)

world
maxx = 10
maxy = 10
maxz = 1


Expected Results:
Images manually output to a client should be visible even if the atom they're attached to is invisible.

Actual Results:
In the Webclient, the image disappears when its loc is invisible.

Does the problem occur:
Every time? Or how often? Every time
In other games? Snippet provided
In other user accounts? On admin
On other computers? Unknown

When does the problem NOT occur?
When in Dream Seeker, or when the image's loc is not invisible.

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
It has occurred since the first Webclient beta (took me a while to track down, haha)

Workarounds:
Set the icon of the atom to null instead of using invisibility.
Another workaround: use image.override?
Lummox JR resolved issue with message:
Invisibility of the parent atom was wrongly applied to attached images.
Let me know if you want this in a separate bug report, but in 507.1259, although the image is now visible when the parent atom is invisible, it doesn't glide in the Webclient. The client's eye will glide from tile to tile, but the attached image just jumps. Same test code as before.

Kaiochao wrote:
Another workaround: use image.override?

This code is from a map-instancing system for an old game. In this case, for clients that don't have the image output to them (because they're in a different instance), I still need the mob to be invisible.