Quick answer: Construct 3 Photon disconnect event handlers stale on reconnect? Handlers registered at create; reconnect doesn't re-register - explicit re-subscribe.
Player disconnects; reconnects; events don't fire because handlers were on the previous connection.
Re-subscribe on reconnect
OnReconnect: re-register all handlers.
Or use a persistent subscription
Photon plugin handles re-subscription. Less custom code.
Audit handler lifecycle
Each handler's registration timing.
“Reconnect is a new connection. State doesn't transfer automatically.”
If your multiplayer has reconnect, the handler re-registration is the cleanup.