On second thought, I decided to work on this once again. I found that when you have reusable functions versus broadcasting and wait variables, functions work best.
Any help? I don't know why it doesn't work.