-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSelfProtection.txt
54 lines (46 loc) · 1.36 KB
/
SelfProtection.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Option Explicit
Script("Name") = "Self Protection"
Script("Author") = "PyroManiac"
Sub Event_ServerInfo(Message)
Dim op, idx
op = vbNullString
If Match(Message, Config.BotOwner & " was banned by *", True) Then
AddQ "/unban " & Config.BotOwner
op = Split(Message, " ")(4)
ElseIf Match(Message, Config.BotOwner & " was kicked out of the channel by *", True) Then
op = Split(Message, " ")(8)
Else
Exit Sub
End If
idx = Clan.GetMemberIndex(op)
If idx <= 0 Then
op = Left(op, Len(op) - 1)
idx = Clan.GetMemberIndex(op)
End If
If idx > 0 Then Call DoDemote(idx)
End Sub
Sub DoDemote(MemberIndex)
Dim mem
Set mem = Clan.GetMember(MemberIndex)
If Clan.Self.Rank > mem.Rank Then
Select Case mem.Rank
Case 3
mem.Demote 2
Case 2
mem.Demote 1
mem.Promote 2
Case 1
mem.Promote 2
mem.Demote 1
Case 0
AddChat Color.ErrorMessageText, "[SP] Member '" & mem.Name & "' cannot be demoted because they are an initiate."
Case 4
AddChat Color.ErrorMessageText, "[SP] Somehow you are a higher rank than the chieftain who kicked you. GG."
Case Else
AddChat Color.ErrorMessageText, "[SP] Invalid member rank: " & mem.Rank & " (" & mem.Name & ")"
End Select
Else
AddChat Color.ErrorMessageText, "[SP] Member '" & mem.Name & "' cannot be demoted because they are an equal or higher rank."
End If
Set mem = Nothing
End Sub