Auncun50, I personally don't fancy the mass if statements, let alone the repetition of a routine. I know that goto isn't favored by many folks, and it indeed can make a code look untidy. But there is another way involving the use of $replace, which I believe will be more clearly and legible:
else {
var %a Spamming is not tolerated here.
var %b Please watch your language. We want everyone to feel welcome here.
var %c Talking in caps is considered yelling, annoying, and rude. Please turn them off. Thanks.
var %d You may not PM/DCC/Notice/Query/CTCP users without their expressed permission.
var %e Personal attacks are not tolerated here.
var %f Your attitude is not conducive to the desired environment.
kick $active $did(ban_assist,4).seltext $replace($did(17),spamming,%a,abusive language,%b,caps,%c,no pm permission,%d,personal attacks,%e,bad attitude,%f)
}
And doing it this way still uses less bytes - 256 bytes in comparison to the original.