Code:
'|-------------------------------------------------------------------|'
'| Support-Script 1.1 © by sts |'
'| |'
'| Website : www.AnGelBot-Portal.de |'
'|-------------------------------------------------------------------|'
'| PartyLine Setup [ ] |'
'| Anlegung einer INI-Datei [x] |'
'| Channeleinstellungen [x] |'
'|-------------------------------------------------------------------|'
'| Instruction |'
'|-Commands: |'
'| -.next <for the next user> |'
'| -.next <users> <for the 'x' users |'
'| -.done <nick> devoice nick and kick user auto. (10 minutes) |'
'| -.done all devoice all support-users and kick auto. (10 Minutes) |'
'|-------------------------------------------------------------------|'
Const INI = "support.ini"
Const Channel = "#AnGel-Bot.org"
Sub Init()
Script "Support-Script 1.1 © by sts"
SpreadFlagMessage 0, "+m", "3 Support-Script 1.1 © by sts"
Hook "Chan_Msg"
Hook "Join"
Hook "Part"
Hook "Quit"
Hook "Nick"
End Sub
Sub Join(Chan, Nick, RegUser, Flags)
If LCase(Channel) <> LCase(Chan) Then Exit Sub
WriteINIString "Global", "wUsers", ReadINIString("Global", "wUsers", "", INI) & Nick & "*", INI
End Sub
Sub Part(Chan, Nick, RegUser, Flags)
Dim wUsers
If LCase(Channel) <> LCase(Chan) Then Exit Sub
wUsers = ReadINIString("Global", "wUsers", "", INI)
If InStr(1, wUsers, Nick) > 0 Then
nUsers = Replace(wUsers, Nick & "*", vBNullstring)
WriteINIString "Global", "wUsers", nUsers, INI
End If
End Sub
Sub Quit(Chan, Nick, RegUser, Flags, Message)
Dim wUsers, nUsers
If LCase(Channel) <> LCase(Chan) Then Exit Sub
wUsers = ReadINIString("Global", "wUsers", "", INI)
If InStr(1, wUsers, Nick) > 0 Then
nUser = Replace(wUsers, Nick & "*", vBNullstring)
WriteINIString "Global", "wUsers", nUsers, INI
End If
End Sub
Sub Nick(Chan, OldNick, NewNick, RegUser, Flags, Count)
Dim wUsers, nUsers
If LCase(Channel) <> LCase(Chan) Then Exit Sub
wUsers = ReadINIString("Global", "wUsers", "", INI)
If InStr(1, wUsers, OldNick) > 0 Then
nUsers = Replace(wUsers, OldNick, NewNick)
WriteINIString "Global", "wUsers", nUsers, INI
End If
End Sub
Sub Chan_Msg(Chan, Nick, RegUser, Line)
If LCase(Channel) <> LCase(Chan) Then Exit Sub
Select Case LCase(Param(Line,1))
Case ".next"
SpreadFlagMessage 0, "+m", wUsers
If Param(Line,2) = "" Then
wUsers = ReadINIString("Global", "wUsers", "", INI)
aUser = ParamX(wUsers, "*",1)
nUsers = Replace(wUsers, aUser & "*", "")
Sendline "Mode " & Chan & " +v " & aUser,3
Sendline "Notice " & aUser & " : " & aUser & " please state your question! Your Helper is Op -- " & Chan,3
WriteINIString "Global", "wUsers", nUsers, INI
WriteINIString "Global", "aUsers", ReadINIString("Global", "aUsers", "", INI) & aUser & "*", INI
ElseIf IsNumeric(Param(Line,2)) Then
For i = 1 to Param(Line,2)
aUser = ParamX(wUsers, "*",i)
Sendline "Mode " & Chan & " +v " & aUser,3
nUsers = Replace(wUsers, aUser & "*", vBNUllString)
WriteINIString "Global", "wUsers", nUsers, INI
WriteINIString "Global", "aUsers", ReadINIString("Global", "aUsers", "", INI) & aUser & "*", INI
Sendline "Notice " & aUser & " : " & Nick & " please state your question! Your Helper is Op -- " & Chan,3
Next
Else
Sendline "Notice " & Nick & " : Wrong syntax: .next <Number>",3
End If
Case ".done"
Dim aUsers, aUser, Count, all, i, j, k
If LCase(Param(Line,2)) = "all" Then
aUsers = ReadINIString("Global", "aUsers", "", INI)
all = Split(aUsers, "*")
For j = LBound(all) To UBound(all)
Count = Count + 1
Next
For k = 1 To Count
aUser = ParamX(aUsers, "*", k)
Sendline "Mode " & Chan & " -v " & aUser,3
Sendline "Notice " & aUser & " :Support end... please part the channel",3
WriteINIString "Global", "aUsers", Replace(aUsers, aUser & "*", vBNullString), INI
TimedCommand "KickUser """ & aUser & """, """ & Chan & """", 600
Next
WriteINIString "Global", "aUsers", vBNullString, INI
Else
aUsers = ReadINIString("Global", "aUsers", "", INI)
If IsOn(Param(Line,2), Chan) And IsVoice(Param(Line,2), Chan) AND InStr(1, aUsers, Param(Line,2)) > 0 Then
Sendline "Mode " & Chan & " -v " & Param(Line,2),3
Sendline "Notice " & Param(Line,2) & " :Support end... please part the channel",3
WriteINIString "Global", "aUsers", Replace(aUsers, Param(Line,2) & "*", vBNullString), INI
TimedCommand "KickUser """ & Param(Line,2) & """, """ & Chan & """", 600
End If
End If
End Select
End Sub
Sub KickUser(Nick, Chan)
If IsOn(Nick, Chan) Then
SendLine "Kick " & Chan & " " & Nick & " : Support end... please part the channel",3
End If
End Sub