mIRC Home    About    Download    Register    News    Help

Print Thread
Page 2 of 3 1 2 3
Joined: Jun 2006
Posts: 508
D
Fjord artisan
Offline
Fjord artisan
D
Joined: Jun 2006
Posts: 508
Both of those errors are from this line
Code:
        .raw kick %s.chan $nick $+(:,$readini($keke,options,message)) $+ $cr $+ ban %s.chan $nick $mask($fulladdress,2)

"No such channel" - Apparently you don't have %s.chan defined.
"Unknown command" - /ban is a mIRC command, not an IRCd command.

Replace both these lines
Code:
        .raw kick $chan $nick $+(:,$readini($keke,options,message)) $+ $cr $+ mode $chan +b $mask($fulladdress,2)
        .timerswearunban 1 $readini($keke,options,secs) mode $chan -b $mask($fulladdress,2)
with this line
Code:
        ban $+(-ku,$iif($readini($keke,options,secs),$v1,600)) #CHANNEL $nick 2 $readini($keke,options,message
but first change "#CHANNEL" to the channel you want the user kicked from.

FWIW though, I think that's a pretty awful script, WAY too many $readini's IMHO.


Edit:
This replacement match_text alias will cut down on some of the file accesses...
Code:
alias -l match_text {
  var %i = 1,%a = $readini($keke,swear,words)
  while ($gettok(%a,%i,44)) {
    var %swear = $+(*,$replace($v1,$chr(160),$chr(32)),*) 
    if ($wildtok($1-,%swear,1,44)) { return $true }
    inc %i
  }
}

Last edited by deegee; 30/10/07 04:38 AM.
Joined: Aug 2005
Posts: 1,052
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Aug 2005
Posts: 1,052
Lol I totally agree, sorry for the un-noticed ban mode


Code:
if $reality > $fiction { set %sanity Sane }
Else { echo -a *voices* }
Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
* Invalid parameters: $readini (line 102, dialog75.mrc)

Joined: Aug 2005
Posts: 1,052
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Aug 2005
Posts: 1,052
Can you type out //echo -a $read(dialog75.mrc,n,102) and paste the output


Code:
if $reality > $fiction { set %sanity Sane }
Else { echo -a *voices* }
Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
$read(dialog75.mrc,n,102)

Joined: Aug 2005
Posts: 1,052
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Aug 2005
Posts: 1,052
lol I meant in mirc then give me what it says here.


Code:
if $reality > $fiction { set %sanity Sane }
Else { echo -a *voices* }
Joined: Dec 2002
Posts: 2,031
R
Hoopy frood
Offline
Hoopy frood
R
Joined: Dec 2002
Posts: 2,031
He probably used only one /

Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
* /echo: insufficient parameters

Joined: Jun 2006
Posts: 508
D
Fjord artisan
Offline
Fjord artisan
D
Joined: Jun 2006
Posts: 508
  • //echo -a $read($script(dialog75.mrc),n,102)


Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
.ban $+(-ku,$iif($readini($keke,options,secs),$v1,600)) #test444 $nick 2 $readini($keke,options,message

Joined: Jun 2006
Posts: 508
D
Fjord artisan
Offline
Fjord artisan
D
Joined: Jun 2006
Posts: 508
Add a ) to the end
ban $+(-ku,$iif($readini($keke,options,secs),$v1,600)) #test444 $nick 2 $readini($keke,options,message)

Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
Ok I fixed that but still wont trigger, here is what I have so far:

Code:
alias swear { dialog -dmr sweard sweard | %s.chan = #test44 }

dialog sweard {
  title " Swear"
  size -1 -1 342 330
  option pixels
  button "&Close", 1, 205 305 60 20, flat cancel
  list 2, 15 20 309 110, sort size
  box "Swear Words", 3, 5 6 325 153
  button "Add", 4, 109 133 60 21, flat
  button "Remove", 5, 173 133 74 20, flat
  check "Kick Message:", 10, 13 179 84 20
  box "Other Options", 11, 5 156 326 142
  edit "", 12, 99 179 225 20, autohs
  button "Ok", 13, 270 305 60 20, flat ok
  check "Exempt The Ops in the Channel", 14, 13 205 175 10
  check "Exempt The Voices in the Channel", 15, 13 224 185 10
  edit "", 16, 112 238 50 20, autohs
  check "Set Ban Length:", 17, 13 240 99 20
  text "Seconds", 18, 165 240 50 20
  combo 19, 112 265 151 89, edit drop
  text "Select Ban Time", 21, 13 268 99 30
}

on *:dialog:sweard:*:*:{
  if ($devent == init) {
    if ($readini($keke,options,ban)) { did -c $dname 17 }    
    if ($readini($keke,options,message)) { did -c $dname 10 }  
    if ($readini($keke,options,ops)) { did -c $dname 14 }
    if ($readini($keke,options,vops)) { did -c $dname 15 }
    did -a $dname 12 $readini($keke,options,message)    
    if ($readini($keke,options,secs)) { did -c $dname 17 }
    did -a $dname 16 $readini($keke,options,secs)
    did -i $dname 19 0 $readini($keke,options,punish)    
    .dlist 2 swear words  
    did -f $dname 13
    did -a sweard 19 Kick
    did -a sweard 19 Kick and Ban 
    did -a sweard 19 None

  }    
  if ($devent == sclick) {
    if ($did(14).state == 1) { op_c }
    if ($did(15).state == 1) { vo_c }
    if ($did == 4) {
      var %t = $$?="Enter swear word $crlf $+ Separate multiple entries with a comma:"
      if ($numtok(%t,32) > 1) { %t = $replace(%t,$chr(32),$chr(160)) }
      .writeini $keke swear words $iif($readini($keke,swear,words),$+($ifmatch,$chr(44),%t),%t)
      dlist 2 swear words    
    }
    if ($did == 5) {
      var %tmp = $did(2).seltext
      if (%tmp) {
        if ($remtok($readini($keke,swear,words),%tmp,44)) { 
          .writeini $keke swear words $ifmatch 
        }
        else .remini $keke swear words
        .dlist 2 swear words      
      }
    }
    if ($did == 8) {
      var %t = $$?="Enter Channel Name $crlf $+ Separate multiple entries with a comma:"
      if ($chr(32) !isin %t) {
        .writeini $keke exempt chan $iif($readini($keke,exempt,chan),$+($ifmatch,$chr(44),%t),%t)
        dlist 7 exempt chan      
      }
    }
    if ($did == 9) {
      var %tmp = $did(7).seltext
      if (%tmp) {
        if ($remtok($readini($keke,exempt,chan),%tmp,44)) { 
          .writeini $keke exempt chan $ifmatch 
        }
        else .remini $keke exempt chan
        .dlist 7 exempt chan      
      }
    }


    if ($did == 13) {
      ; OK button,flat

      .writeini $keke options kick $iif($did(10).state == 1,$true,$false)
      .writeini $keke options message $iif($did(12),$ifmatch,$readini($keke,options,message))
      .writeini $keke options secs $iif($did(16) isnum 1-,$ifmatch,$readini($keke,options,secs))
      .writeini $keke options ops $iif($did(14).state == 1,$true,$false)
      .writeini $keke options vops $iif($did(15).state == 1,$true,$false)
      .writeini $keke options ban $iif($did(17).state == 1,$true,$false)
      .writeini $keke options punish $iif($did(19),$ifmatch,$readini($keke,options,punish))
    }
  }
}

on *:OPEN:?:*: {
  %swear.punish = $readini($keke,options,punish)) 
  if ($readini($keke,options,ops)) { op_c }
  if ($readini($keke,options,vops)) { vo_c }
  if ($readini($keke,swear,words)) && ($match_text($1-)) {
    if (None isin %swear.punish) { return }    
    if (kick isin %swear.punish) {
      if (ban isin %swear.punish) {
      .ban $+(-ku,$iif($readini($keke,options,secs),$v1,600)) #test44 $nick 2 $readini($keke,options,message)
      }
      else { .raw kick $chan $nick $+(:,$readini($keke,options,message)) }
    }
  }
}

alias -l keke return $+(",$scriptdirswear.ini,")

alias -l match_text {
  var %i = 1,%a = $readini($keke,swear,words)
  while ($gettok(%a,%i,44)) {
    var %swear = $+(*,$replace($v1,$chr(160),$chr(32)),*) 
    if ($wildtok($1-,%swear,1,44)) { return $true }
    inc %i
  }
}

alias op_c {
  if ($nick isop %s.chan) { halt }
}

alias vo_c {
  if ($nick isvo %s.chan) { halt }
}
alias -l dlist {
  var %a = 1
  did -r $dname $1
  while ($gettok($readini($keke,$2,$3),%a,44)) {
    did -az $dname $1 $ifmatch
    inc %a
  }
}

Joined: Dec 2002
Posts: 503
B
Fjord artisan
Offline
Fjord artisan
B
Joined: Dec 2002
Posts: 503
-- Removed due to being incorrect --

Last edited by Bekar; 31/10/07 08:43 AM.
Bekar #188831 31/10/07 05:54 AM
Joined: Aug 2005
Posts: 1,052
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Aug 2005
Posts: 1,052
Oops, good catch thats what happens when your tired.


Code:
if $reality > $fiction { set %sanity Sane }
Else { echo -a *voices* }
Joined: Dec 2002
Posts: 503
B
Fjord artisan
Offline
Fjord artisan
B
Joined: Dec 2002
Posts: 503
Actually, no. I'm wrong. Checked the help page when I got home.

ON TEXT is that order, ON OPEN is reversed, just for the 'ol confusing wink

Bekar #188844 31/10/07 02:28 PM
Joined: Aug 2005
Posts: 1,052
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Aug 2005
Posts: 1,052
Hmph, that seemed an incorrect order to myself. I guess my brain still functions when tired lol


Code:
if $reality > $fiction { set %sanity Sane }
Else { echo -a *voices* }
Joined: Jun 2006
Posts: 508
D
Fjord artisan
Offline
Fjord artisan
D
Joined: Jun 2006
Posts: 508
Originally Posted By: bcancer
Ok I fixed that but still wont trigger, here is what I have so far:

* deegee wonders where the errors came from if the script didn't trigger... confused



You'll need to change the $chan in this line also
Code:
      else { .raw kick $chan $nick $+(:,$readini($keke,options,message)) }
Not really a lot of use to use /raw for a kick either...
Code:
      else { !kick #CHANNEL $nick $readini($keke,options,message) }


Joined: Aug 2005
Posts: 1,052
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Aug 2005
Posts: 1,052
I would seriously re-write the whole script and use Variables to carry the words and use TOK commands to loop through etc..


Code:
if $reality > $fiction { set %sanity Sane }
Else { echo -a *voices* }
Joined: Jun 2006
Posts: 508
D
Fjord artisan
Offline
Fjord artisan
D
Joined: Jun 2006
Posts: 508
I would suggest using a hash table wink

Joined: Oct 2007
Posts: 102
B
bcancer Offline OP
Vogon poet
OP Offline
Vogon poet
B
Joined: Oct 2007
Posts: 102
Its working fine now accept for kicking or banning the exact bad word exemple:
sex ok to ban but not to ban sexy
can that be fix?

Page 2 of 3 1 2 3

Link Copied to Clipboard