I bought OnePlus5 on first day of release, had to set alarm clock to remind me of the releasing time because the stock runs out in less than 2 minutes... OnePlus5T may face the same issue here, you have to try very hard to get one.
Back to the question. S8 looks better, feels better in the hand, much much much better screen, has IP68 warterproof (which is very important for me because i take the phone to shower everyday) and much much better camera. But OnePlus5 performs better (many games just dont run as smooth on S8, even tho the specs are nearly identical), has much better battery life (seriously! ) . I assume 5T is similar, if not better than 5 in these aspects.
So if you are into gaming, go for Oneplus, the gaming experience is the top in the market
But if you want better camera and waterproof, go for S8
If you have to choose, i would recommend S8 because you can solve the battery problem with a power bank, and the inferior AMOLED screen OP uses sores my eyes. But i strongly recommend S8+, if budget allows. I had one before, exchanged it for S8, huuuuuge regret. S8+ has much better battery life than S8, and somehow feels smoother than S8, too (don;t know why because they are supposed to be the same)