Ya, but you're in an infinite loop if they don't, so literally if there's like a millisecond where that function runs and it's not true, you'll enter an infinite loop you can't get out of because you can't "learn" a spell while the while loop is running
|