Player.onNextBlockInteract was not marking the future as cancelled when it completes.