|
@@ -96,6 +96,7 @@ func (modes Modes) String() string {
|
96
|
96
|
// User Modes
|
97
|
97
|
const (
|
98
|
98
|
Away Mode = 'a'
|
|
99
|
+ Bot Mode = 'B'
|
99
|
100
|
Invisible Mode = 'i'
|
100
|
101
|
LocalOperator Mode = 'O'
|
101
|
102
|
Operator Mode = 'o'
|
|
@@ -110,7 +111,7 @@ const (
|
110
|
111
|
var (
|
111
|
112
|
// SupportedUserModes are the user modes that we actually support (modifying).
|
112
|
113
|
SupportedUserModes = Modes{
|
113
|
|
- Away, Invisible, Operator, RegisteredOnly, ServerNotice, UserRoleplaying,
|
|
114
|
+ Away, Bot, Invisible, Operator, RegisteredOnly, ServerNotice, UserRoleplaying,
|
114
|
115
|
}
|
115
|
116
|
// supportedUserModesString acts as a cache for when we introduce users
|
116
|
117
|
supportedUserModesString = SupportedUserModes.String()
|
|
@@ -276,7 +277,7 @@ func (client *Client) applyUserModeChanges(force bool, changes ModeChanges) Mode
|
276
|
277
|
|
277
|
278
|
for _, change := range changes {
|
278
|
279
|
switch change.mode {
|
279
|
|
- case Invisible, WallOps, UserRoleplaying, Operator, LocalOperator, RegisteredOnly:
|
|
280
|
+ case Bot, Invisible, WallOps, UserRoleplaying, Operator, LocalOperator, RegisteredOnly:
|
280
|
281
|
switch change.op {
|
281
|
282
|
case Add:
|
282
|
283
|
if !force && (change.mode == Operator || change.mode == LocalOperator) {
|