When we create a master_plane on client's screen certain mouse operations (Click() & DblClick()) stop working.
Numbered Steps to Reproduce Problem:
1. Add a master_plane to client.screen with appearance_flags = PLANE_MASTER
2. Click anywhere on the map
Code Snippet (if applicable) to Reproduce Problem:
client/Click() world<<"Test"
obj
Master_Plane
screen_loc = "10,10"
blend_mode = BLEND_MULTIPLY
appearance_flags = PLANE_MASTER | NO_CLIENT_COLOR
color = list(null,null,null,"#0000","#000f")
mouse_opacity = 0
Darkness
screen_loc = "10,10"
blend_mode = BLEND_ADD
mouse_opacity = 0
alpha = 100
plane = -10
New()
..()
var/matrix/m = matrix()
m.Scale(50)
transform = m
mob/verb/Object()
client.screen += new/obj/Master_Plane ()
client.screen += new/obj/Darkness ()
Expected Results:
To receive "Test" message.
Actual Results:
Client/Click() isn't called.
Does the problem occur:
Every time? Or how often? Always
In other games? Yes
In other user accounts? Yes
On other computers? Yes
When does the problem NOT occur?
When we use images
client/Click() world<<"Test"
image
Master_Plane
blend_mode = BLEND_MULTIPLY
appearance_flags = PLANE_MASTER | NO_CLIENT_COLOR
color = list(null,null,null,"#0000","#000f")
mouse_opacity = 0
Darkness
icon = 'Darkness.dmi'
blend_mode = BLEND_ADD
mouse_opacity = 0
alpha = 100
plane = -10
New()
..()
var/matrix/m = matrix()
m.Scale(50)
transform = m
mob/verb/Image()
client.screen = null
src << new/image/Master_Plane (loc=src)
src << new/image/Darkness (loc=src)
Workarounds:
I uploaded the source with a map and two verbs (one creates images, and the other one creates objects).
https://www.sendspace.com/file/helxe4
If appearance_flags doesn't include PLANE_MASTER Click() & DblClick() works.
/Edit/ I tested the example with versions 510.1340 to 510.1330 and the same happened. Relog once you've used Image/Object, otherwise it may not reproduce the problem. Use Object once and click anywhere, you won't receive "Test" message.