See? Isn't it easier to communicate to other people when we're polite?
You can simply change:
Code:
on !1:join:#chan1,#chan2:{
  var %x = $hget(welcomed. $+ $chan,0).item
  while (%x) {
    if ($hget(welcomed. $+ $chan,%x).item iswm $fulladdress) {
      return
    }
    dec %x
  }
  hadd -mu1800 welcomed. $+ $chan $wildsite
  .notice $nick Welcome to $+($chan,!)
}

to:
Code:
on !1:join:#chan1,#chan2:{
  var %x = $hget(welcomed. $+ $chan,0).item
  while (%x) {
    if ($hget(welcomed. $+ $chan,%x).item iswm $fulladdress) {
      return
    }
    dec %x
  }
  hadd -mu1800 welcomed. $+ $chan $gettok($address($nick,0),1,64) $+ @*
  .notice $nick Welcome to $+($chan,!)
}

Then, if you want to save the data, you can use (will keep data intact after you restart the bot):
Code:
on !1:join:#chan1,#chan2:{
  if (($hget(welcomed. $+ $chan) == $null) && ($isfile($scriptdirjoinsg.hsh)) {
    hload -bi welcomed. $+ $chan $qt($scriptdirjoinmsg.hsh) $chan
  }
  var %x = $hget(welcomed. $+ $chan,0).item
  while (%x) {
    if ($hget(welcomed. $+ $chan,%x).item iswm $fulladdress) {
      return
    }
    dec %x
  }
  hadd -mu1800 welcomed. $+ $chan $gettok($address($nick,0),1,64) $+ @*
  hsave -bi welcomed. $+ $chan $qt($scriptdirjoinmsg.hsh) $chan
  .notice $nick Welcome to $+($chan,!)
}

You can remove the "u1800" (1800 seconds until the join message can be sent again), if you want the message to be sent only once.


Those who can, cannot. Those who cannot, can.