public IRCUser(IRCChannel pChannel, IRCNode pNode) { nickname = pNode.Nickname; channel = pChannel; isOperator = false; hasVoice = false; node = pNode; }
public IRCUser(string pNickname, IRCChannel pChannel, bool pOperator, bool pVoice) { nickname = pNickname; channel = pChannel; isOperator = pOperator; hasVoice = pVoice; node = null; }
public IRCUser(string pNickname, IRCChannel pChannel) { nickname = pNickname; channel = pChannel; // evaluate nickname if (pNickname.Substring(0, 1) == "@") isOperator = true; else isOperator = false; if (pNickname.Substring(0, 1) == "+") hasVoice = true; else hasVoice = false; // remove +/@ if necessarry if (isOperator || hasVoice) nickname = pNickname.Substring(1); node = null; }
private void UserQuit(IRCNode pUserNode, IRCMessage pMessage) { // Get user from user-table IRCUser user = (IRCUser)users[pUserNode.Nickname.ToLower()]; // trigger event if necessary if (UserStatusChanged != null) UserStatusChanged(this, new UserStatusChangeEventArgs(user, pMessage, false, false, false, true)); // remove user from channel users.Remove(pUserNode.Nickname.ToLower()); }
private void UserJoined(IRCNode pUserNode, IRCMessage pMessage) { // check if we joined ourselves if (pUserNode.Nickname.ToLower() == connection.Nickname.ToLower()) return; // check if already in channel-user-list if (IsUserInChannel(pUserNode.Nickname)) return; // add as new user in channel IRCUser newUser = new IRCUser(this, pUserNode); users.Add(pUserNode.Nickname, newUser); if (UserStatusChanged != null) // trigger event if necessary UserStatusChanged(this, new UserStatusChangeEventArgs(newUser, pMessage, true, false, false, false)); }