Sometimes the SBAPlayerWrapper can re-register immediately after unregistering in the PlayerQuitEvent, making it impossible for GC to clear the instance. After rejoining, the broken wrapper prevents registering a new one, breaking shop and other features.
This PR delays the wrapper unregistration as much as possible to mitigate this issue.
Sometimes the SBAPlayerWrapper can re-register immediately after unregistering in the PlayerQuitEvent, making it impossible for GC to clear the instance. After rejoining, the broken wrapper prevents registering a new one, breaking shop and other features.
This PR delays the wrapper unregistration as much as possible to mitigate this issue.