The reason, as I've said at least twice already, is readability and maintainability. If you want to use goto then that's fine, but for anyone interested in making code that's easy to read, edit, maintain, and learn from then goto is rarely the appropriate tool.
In fact judging from the code you've given in your original post in this thread, your understanding of goto is flawed. If %rkickmsg doesn't equal 1 the script will attempt to ban and kick the same person twice - something that would've been easily spotted using structured code.