Hi and welcome!
Please use code tags. It’s explained the first sticky on this subforum. Makes stuff a lot more readable.
Your main problem regarding your question is that you create a new random number in each if statement. So you are basically rolling a dice, saying “do XYZ if result is 1”, then you roll a different other dice and ask again “do ABC only if result is 2” and so on. So technically, all if statements can be true, or none of them. Instead you’ll want to save the result of Random.Range(0,4) in an int variable and compare that number to 0, 1, 2 or 3 instead.
Thank you for the reply and feedback. I managed to fix the problem and realise my error by watching a tutorial video but this explanation is very good. Sorry about the code block, new to the forum and coding!