AnGelBot-Portal²

Normale Version: antiban
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
hi leute

such nen script, das jemand bant, wenn der jenige +b oder -b bei einem andreren user oder beim bot macht..

mfg, DaGo
Code:
Sub Init()ban-protect by St4rg4t3"
  HOOK "Ban"
End Sub

Dim Name2, Check
Const Channel = "#Chan"

Sub Ban(Nick, RegUser, Chan, HMask)
Name2 = Nick
If WildMatch(HMask, MyHostmask) Or WildMatch(HMask, "*!*@" & ReadINIString("Auth", "UserNick", vbNullString, "AnGel.ini") & ".users.quakenet.org") Then
  Sendline "PRIVMSG L :invite " & Channel,1
  Sendline "PRIVMSG Q :invite " & Channel,1
  Sendline "JOIN " & Channel,1
   Check = CBool(1)
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
    If Check = CBool(1) Then    
     TimedCommand "antiflood", 1 * 2
    End If
   End If
   Check = CBool(0)
End If
If Not Nick = Mynick Then
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
    SendLine "MODE " & Channel & " -o+b " & Nick & " " & Mask(Hostmask(Channel, Nick), 3), 1
    Sendline "Kick " & Channel & " " & Nick, 1
  End If
End If
End Sub



Sub antiflood()
If Check = CBool(1) Then
  SendLine "MODE " & Channel & " -o+b " & Name2 & " " & Mask(Hostmask(Channel, Name2), 3), 1
  Sendline "Kick " & Channel & " " & Name2, 1
  TimedCommand "antiflood", 1 * 2
End If
End Sub

sollte so klappen, ist aber nicht getestet Wink

wenn der bot dekicktbannt wird invitet er sich bei Q/L joint channel und 2sek später wird die betreffene person gekicktbannt oder wenn wer gebannt oder entbannt wird wird die person sofort gekicktbannt
mh komtm fehler wenn ich script adden will...

*** Scripting error in 'antiban.asc':
Error : 1025 (Anweisungsende erwartet)
Position: Line 1, Column 22
Context : "Sub Init()ban-protect by St4rg4t3" "
*** End of error message
*** Sorry, the script couldn't be added.


ps: such noch script das Qdeopall macht und demjenigen -ao +b , wenn einer +i setzt oder einen op kickt ... :D
Code:
Sub Init()
  Script "ban-protect by St4rg4t3"
  HOOK "Ban"
End Sub

Dim Name2, Check
Const Channel = "#Chan"

Sub Ban(Nick, RegUser, Chan, HMask)
Name2 = Nick
If WildMatch(HMask, MyHostmask) Or WildMatch(HMask, "*!*@" & ReadINIString("Auth", "UserNick", vbNullString, "AnGel.ini") & ".users.quakenet.org") Then
  Sendline "PRIVMSG L :invite " & Channel,1
  Sendline "PRIVMSG Q :invite " & Channel,1
  Sendline "JOIN " & Channel,1
   Check = CBool(1)
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
    If Check = CBool(1) Then    
     TimedCommand "antiflood", 1 * 2
    End If
   End If
   Check = CBool(0)
End If
If Not Nick = Mynick Then
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
    SendLine "MODE " & Channel & " -o+b " & Nick & " " & Mask(Hostmask(Channel, Nick), 3), 1
    Sendline "Kick " & Channel & " " & Nick, 1
  End If
End If
End Sub



Sub antiflood()
If Check = CBool(1) Then
  SendLine "MODE " & Channel & " -o+b " & Name2 & " " & Mask(Hostmask(Channel, Name2), 3), 1
  Sendline "Kick " & Channel & " " & Name2, 1
  TimedCommand "antiflood", 1 * 2
End If
End Sub


also den fehler hätteste auhc selber beheben können *ggg*
scheiss kopierfehler *rausreden tu*
nun zu deinem ps.
Code:
Sub Init()
  Script "invite-aufpasser&kick-protect by St4rg4t3"
  HOOk "ModeEnd"
  HOOK "Kick"
  HOOK "RAW"
End Sub

Dim Name2, Check
Const Channel = "#Chan"

Sub RAW(Line)
test = Instr(1, Line, "!", 1)
If Not test = "0" Then
  Name1 = Mid(Line, 2, (test - 2))
   If Not Name1 = MyNick Then
    Name2 = Name1
  End If
End If
End Sub

Sub ModeEnd()
If MatchFlags(ChanMode(ChanNum("#Chan")),"+i") Then
  SendLine "MODE #Chan -o+b " & Name2 & " " & Mask(Hostmask("#Chan", Name2), 3), 1
  Sendline "Kick #Chan " & Name2, 1
  Sendline "PRIVMSG L chanlev #Chan " & Name2 & " -aom", 1
  Sendline "PRIVMSG Q chanlev #Chan " & Name2 & " -aom", 1
  SendLine "MODE #Chan -i", 1
End If
End Sub

Sub Kick(Chan, Name, User, Flags, KNick, KUser, KFlags, Message)
If KNick = MyNick Then
  Sendline "PRIVMSG L :invite " & Channel,1
  Sendline "PRIVMSG Q :invite " & Channel,1
  Sendline "JOIN " & Channel,1
  Check = CBool(1)
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
    If Check = CBool(1) Then
     TimedCommand "antiflood", 1 * 2
    End if
   End If
   Check = CBool(0)
End If
If IsOP(KNick ,Channel) Then
  SendLine "MODE #Chan -o+b " & Name2 & " " & Mask(Hostmask("#Chan", Name2), 3), 1
  Sendline "Kick #Chan " & Name2, 1
  Sendline "PRIVMSG L chanlev #Chan " & Name2 & " -aom", 1
  Sendline "PRIVMSG Q chanlev #Chan " & Name2 & " -aom", 1
End If  
End Sub


Sub antiflood()
If Check = CBool(1) Then
  SendLine "MODE " & Channel & " -o+b " & Name2 & " " & Mask(Hostmask(Channel, Name2), 3), 1
  Sendline "Kick " & Channel & " " & Name2, 1
  TimedCommand "antiflood", 1 * 2
End If
End Sub
da denke ich sollte das hinhauen Wink
(oben nur channel angeben in dem das script laufen soll)
wie immer alle angaben ohne gewähr^^
Code:
Script "ban-protect by St4rg4t3"

Bei dem Script kannste das noch so einstellen das er den Ban den der andere gemacht hat (der der gekickbant wird) wieder raus nimmt?

Bye strucky
ich denke schon in ner halben stunde, hab atm keien zeit ^^
Code:
Sub Init()
  Script "ban-protect by St4rg4t3"
  HOOK "Ban"
End Sub

Dim Name2, Check
Const Channel = "#Chan"

Sub Ban(Nick, RegUser, Chan, HMask)
Name2 = Nick
If WildMatch(HMask, MyHostmask) Or WildMatch(HMask, "*!*@" & ReadINIString("Auth", "UserNick", vbNullString, "AnGel.ini") & ".users.quakenet.org") Then
  Sendline "PRIVMSG L :invite " & Channel,1
  Sendline "PRIVMSG Q :invite " & Channel,1
  Sendline "JOIN " & Channel,1
   Check = CBool(1)
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
    If Check = CBool(1) Then    
     TimedCommand "antiflood", 1 * 2
    End If
   End If
   Check = CBool(0)
End If
If Not Nick = Mynick Then
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
    SendLine "MODE " & Channel & " -o+b " & Nick & " " & Mask(Hostmask(Channel, Nick), 3), 1
    Sendline "Kick " & Channel & " " & Nick, 1
    SendLine "MODE " & Channel & " -b " & HMask, 1
  End If
End If
End Sub



Sub antiflood()
If Check = CBool(1) Then
  SendLine "MODE " & Channel & " -o+b " & Name2 & " " & Mask(Hostmask(Channel, Name2), 3), 1
  Sendline "Kick " & Channel & " " & Name2, 1
  SendLine "MODE " & Channel & " -b " & HMask, 1
  TimedCommand "antiflood", 1 * 2
End If
End Sub


musst ma schaun obs geht ich bin mir nciht sicher ob Hmask die gebannte hostmark enthält ;(
Super es klappt alles danke

hab noch ne Frage wenn du mal zeit hast kannst du das noch machen?

Sobald jemand das Topic ändert oder die chan Modes soll er gekickbant werden. wenn jemand jemanden kickt soll der kicker gekickbant werden und der gekickt wurde invitet werden in den channel.

ginge das?

danke im voraus StRuCky

P.S.: Stargate is the best :D

EDIT: aso und wenn kemand einen Ban removed soll der Bo ihn sofort wieder sezten und den unbanner kickbannen. :D und noch was*gg*:

Wenn jemand jemanden deopt soll der deoper gekicktwerden und den den er deopt hat wieder op geben :D biiitte helf mir is zwar viel aba ih denke du schaffst das Wink
naja den grossteil könnte ich machen aber das mit topic habe ich schonmal versucht, allerdings hatte ich da nicht viel erfolg ^^

und für die modes sag mal welche nicht geändert werden dürfen, da das doch bisschen umfangreicher ist ^^


Code:
Sub Init()
  Script "Kick&deop-protect by St4rg4t3"
  HOOK "Kick"
  HOOK "Deop"
End Sub


Const Channel = "#Chan"

Sub Kick(Chan, Nick, User, Flags, KNick, KUser, KFlags, Message)
If Chan = Channel Then
  If Not MyNick = Nick Then
   Sendline "Invite " & Nick & " " & Channel, 1
    If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
     SendLine "MODE " & Channel & " -o+b " & Nick & " " & Mask(Hostmask(Channel, Nick), 3), 1
     Sendline "Kick " & Channel & " " & Nick, 1
    End If
  End If
End If
End Sub

Sub DeOp(Chan, Nick, RegUser, Flags, DNick, DUser, DFlags, RemovedOp)
If Chan = Channel Then
  If Not MyNick = Nick Then
   If Not MatchFlags(GetUserChanFlags(RegUser, Channel), "+m") Then
   SendLine "MODE " & Channel & " -o+b " & Nick & " " & Mask(Hostmask(Channel, Nick), 3), 1
   Sendline "Kick " & Channel & " " & Nick, 1  
   End If
   SendLine "MODE " & Channel & " +o " & DNick, 1
  End If
End If
End Sub


einfach oben bei const channel einsetzen, das kennste ja schon ^^

es sollte das mit deop und kick verhindern ^^ (aba wie immer nicht getestet^^)

wenn der jenige im bot KEIN master hat, dann wird gekicktbannt
Seiten: 1 2
Referenz-URLs