diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-03-10 01:16:17 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-03-10 01:16:17 +0000 |
commit | ba98f3eacc70d548f843d2d82d10314956dbbf68 (patch) | |
tree | d8e619395230d82f226df01fbc3f701e4fe948d9 /src/mode.cpp | |
parent | d616538805bcda081d362f23dc7bc7b25118c4a2 (diff) |
Set bitfields on servermode
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3619 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/mode.cpp')
-rw-r--r-- | src/mode.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/mode.cpp b/src/mode.cpp index 913cea8a0..0436d04be 100644 --- a/src/mode.cpp +++ b/src/mode.cpp @@ -1483,6 +1483,20 @@ void ModeParser::ServerMode(char **parameters, int pcnt, userrec *user) { charlcat(dmodes,*i,MAXBUF); charlcat(outpars,*i,53); + switch (*i) + { + case 'i': + dest->modebits |= UM_INVISIBLE; + break; + case 's': + dest->modebits |= UM_SERVERNOTICE; + break; + case 'w': + dest->modebits |= UM_WALLOPS; + break; + default: + break; + } } } } @@ -1497,6 +1511,20 @@ void ModeParser::ServerMode(char **parameters, int pcnt, userrec *user) { charlcat(outpars,*i,MAXBUF); charremove(dmodes,*i); + switch (*i) + { + case 'i': + dest->modebits &= ~UM_INVISIBLE; + break; + case 's': + dest->modebits &= ~UM_SERVERNOTICE; + break; + case 'w': + dest->modebits &= ~UM_WALLOPS; + break; + default: + break; + } } } } |