Exemple #1
0
        public void addUserToList(string user)
        {
            //Check User Types
            tempUser = getUserProfile(user);

            if (user.StartsWith("@") || user.StartsWith("&") || user.StartsWith("%")) //Op/Admin/Halfop
            {
                tempUser.Name = tempUser.Name.Substring(1);
                if (sm.userIsSquelched(tempUser.Name))
                {
                    tempUser.squelch();
                }
                cw.insertUser(0, tempUser);
                users.Insert(0, tempUser);
            }
            else
            {
                if (sm.userIsSquelched(tempUser.Name))
                {
                    tempUser.squelch();
                }
                cw.addUser(tempUser);
                users.Add(tempUser);
            }
        }
Exemple #2
0
 public D2SoundSettings(D2ChatClient client)
 {
     InitializeComponent(); ini = new IniFile(System.IO.Path.Combine(Environment.CurrentDirectory, @"config.ini"));
     av          = new d2avatar();
     DataContext = av;
     AddHotKeys();
     spawnChat = client;
     btns      = new List <SpChBtn>();
     loadSettings();
     setupButtons();
 }
 public void insertUser(int index, d2avatar user)
 {
     try
     {
         lstUsers.Items.Insert(index, user);
     }
     catch (ArgumentOutOfRangeException e)
     {
         lstUsers.Items.Add(user);
     }
     refreshChannelHeader();
 }
 public void updateAvPreview()
 {
     try
     {
         //avatar.setClass(avChar);
         //avatar.setPreset(avArmor);
         avPreview           = new d2avatar(avChar, avArmor);
         charPreview.Content = avPreview;
         //avatarDisplay.DataContext = avPreview;
         //avatarDisplay.Content = avPreview;
     }
     catch (NullReferenceException e)
     {
     }
 }
Exemple #5
0
 void client_UserNickChange(object sender, UserNickChangedEventArgs e)
 {
     tempInt = getUserByName(e.Old); //Gets the index where the old name is found in the userlist.
     if (tempInt >= 0)
     {
         tempBool = userIsSquelched(e.Old);   //Remember if user was squelched
         tempUser = users.ElementAt(tempInt); //Save avatar
         cw.removeUser(tempInt);              //Remove user
         users.RemoveAt(tempInt);
         users.Insert(tempInt, new d2avatar(tempUser.classId, tempUser.armorId, tempBool, e.New));
         cw.insertUser(tempInt, new d2avatar(tempUser.classId, tempUser.armorId, tempBool, e.New));    //Re-add user at old index with new name
         if (!tempBool)
         {
             cw.AddToChatWindow(3, e.Old, " is now known as " + e.New);
         }
     }
 }
Exemple #6
0
        void client_ChannelModeSet(object sender, ModeSetEventArgs e)
        {
            tempBool = userIsSquelched(e.To); //Remember if user was squelched
            tempInt  = getUserByName(e.To);   //Gets the index where the target user is found in the user list.
            Console.WriteLine("MODE SET OUTPUT: "
                              + "\nCHANNEL: " + e.Channel
                              + "\nFROM: " + e.From
                              + "\nMODE: " + e.Mode
                              + "\nTO: " + e.To);

            /*
             * ADDING MODES
             */
            if (e.Mode.StartsWith("+"))
            {
                /*
                 * OP and Halfop
                 */
                if (e.Mode.Contains("o") || e.Mode.Contains("h"))
                {
                    if (tempInt >= 0)
                    {
                        cw.removeUser(tempInt);   //Remove user
                        users.RemoveAt(tempInt);
                        tempInt = 0;
                        users.Insert(tempInt, new d2avatar(13, tempBool, e.To));
                        cw.AddToChatWindow(3, e.To, " is now a channel operator.");
                        cw.insertUser(tempInt, new d2avatar(13, tempBool, e.To));    //Re-add user at old index
                        //Cleanup if need be
                        tempList = getUsersByName(tempString);
                        if (tempList.Count > 1)
                        {
                            cw.removeUser(tempList.ElementAt(tempList.Count - 1));
                        }
                    }
                }

                /*
                 * VOICE mode
                 */
                else if (e.Mode.Contains("v"))
                {
                    if (tempInt >= 0)
                    {
                        cw.removeUser(tempInt);   //Remove user
                        users.RemoveAt(tempInt);
                        cw.AddToChatWindow(3, e.To, " is now a speaker.");
                        try
                        {
                            users.Insert(tempInt, new d2avatar(14, tempBool, e.To));
                            cw.insertUser(tempInt, new d2avatar(14, tempBool, e.To));    //Re-add user at old index with new name
                        }
                        catch (ArgumentOutOfRangeException ex)
                        {
                            users.Add(new d2avatar(6, tempBool, e.To));
                            cw.addUser(new d2avatar(6, tempBool, e.To));
                        }
                    }
                }
                else if (e.Mode.Contains("b"))
                {
                    cw.AddToChatWindow(3, e.To, " was banned by " + e.From + ".");
                }
            }

            /*
             * REMOVING MODES
             */
            if (e.Mode.StartsWith("-"))
            {
                /*
                 * OP, Halfop, and Voice
                 */
                if (e.Mode.Contains("o") || e.Mode.Contains("h") || e.Mode.Contains("v"))
                {
                    if (tempInt >= 0)
                    {
                        cw.removeUser(tempInt);   //Remove user
                        users.RemoveAt(tempInt);
                        tempUser = getUserProfile(e.To);
                        users.Add(new d2avatar(tempUser.classId, tempUser.armorId, tempBool, e.To));
                        cw.addUser(new d2avatar(tempUser.classId, tempUser.armorId, tempBool, e.To));    //Re-add user at old index with new name
                        if (e.Mode.Contains("o") || e.Mode.Contains("h"))
                        {
                            cw.AddToChatWindow(3, e.To, " is no longer a channel operator.");
                        }
                        else
                        {
                            cw.AddToChatWindow(3, e.To, " is no longer a speaker.");
                        }
                    }
                }
                else if (e.Mode.Contains("b"))
                {
                    cw.AddToChatWindow(3, e.To, " was unbanned by " + e.From + ".");
                }
            }
        }
        //ObservableCollection<d2Item> items = new ObservableCollection<d2Item>();
        public D2ChatWindow(string username, string channel, MainWindow main, D2ChatClient client)
        {
            InitializeComponent();
            gameID = "D2DV";
            ini    = new IniFile(System.IO.Path.Combine(Environment.CurrentDirectory, @"config.ini"));
            rnd    = new Random();
            AddHotKeys();
            mw = main;
            d2avatar t = new d2avatar();

            //Border border = (Border)VisualTreeHelper.GetChild(lstUsers, 0);
            //sv = VisualTreeHelper.GetChild(border, 0) as ScrollViewer;
            DataContext = t;
            nick        = username;
            chan        = channel;
            //setBanner();
            btns      = new List <SpChBtn>();
            spawnChat = client;
            try
            {
                elnotif = (Boolean.Parse(ini.IniReadValue("Settings", "enterleave")));
            }
            catch (FormatException e)
            {
                elnotif = false;
            }
            try
            {
                timestamps = (Boolean.Parse(ini.IniReadValue("Settings", "timestamp")));
            }
            catch (FormatException e)
            {
                timestamps = false;
            }
            try
            {
                fullscreen = (Boolean.Parse(ini.IniReadValue("Window", "fullscreen")));
            }
            catch (FormatException e)
            {
                fullscreen = false;
            }
            try
            {
                exitOnQuit = (Boolean.Parse(ini.IniReadValue("Settings", "exitonquit")));
            }
            catch (FormatException e)
            {
                exitOnQuit = false;
            }
            try
            {
                avChar = int.Parse(ini.IniReadValue(gameID, "char"));
            }
            catch (FormatException e)
            {
                avChar = 0;
            }
            try
            {
                avArmor = int.Parse(ini.IniReadValue(gameID, "armor"));
            }
            catch (FormatException e)
            {
                avArmor = 0;
            }
            //tempUri = new Uri(@"pack://application:,,,/" + Assembly.GetCallingAssembly().GetName().Name + ";component/" + avatar, UriKind.Absolute);
            //tempBmp = new BitmapImage(tempUri);

            setupButtons();

            if (fullscreen)
            {
                this.WindowState = WindowState.Maximized;
                this.WindowStyle = WindowStyle.None;
            }
        }
 public void addUser(d2avatar user)
 {
     lstUsers.Items.Add(user);
     refreshChannelHeader();
 }