elseif (? isin $1-) { haltdef | msg $chan $upper($left($1,1)) $+ $right($1-,-1) }
Above does not add a period to the end and it allows the questionmark to be anywhere in the sentence(s).
else { haltdef | msg $chan $upper($left($1,1)) $+ $right($1-,-1) $+ $chr(46) }
Above allows you to have double period at the end ( .. ) or an exclimation point and then a period ( !. )