var %current.word = $gettok(%swear.words,%i,32){

needs to be..

var %current.word = $gettok(%swear.words,%i,32) {

Edit:

In the code you sent us you're also missing 3 } braces...

[code]
on @*:TEXT:*:#: {
if ($nick !isop #) {
var %i = 0
while (%i < $numtok(%swear.words,32)) {
; this while loops keeps going until its checked every word in %swear.words
inc %i
var %current.word = $gettok(%swear.words,%i,32) {
if ($istok($strip($1-),%current.word,32) == $true) {
;$istok returns $true if %current.word is in the text
set -u3600 %rl. [ $+ [ $address($nick,2) ] ] $calc( %rl. [ $+ [ $address($nick,2) ] ] + 1)
;the -u3600 makes the variable unset after 1hr without being used
if (%rl. [ $+ [ $address($nick,2) ] ] == 1) .notice $nick Please don't! - this is your first warning!
if (%rl. [ $+ [ $address($nick,2) ] ] == 2) .notice $nick Please don't! - this is your second warning next time you will be banned!
if (%rl. [ $+ [ $address($nick,2) ] ] >= 3) ban -u60 # $nick 11 {
kick # $nick You were warned. You are not allowed to swear in this irc channel!
}
}
}
}
}
}