コード例 #1
0
        internal void Remove(IEnumerable <Token> tokens, Player player)
        {
            Type t = tokens.First().GetType();

            this[t].RemoveAll(token => tokens.Contains(token));

            if (TokenCollectionsChanged != null)
            {
                TokenCollectionsChangedEventArgs tccea = new TokenCollectionsChangedEventArgs(this[t], player, TokenCollectionsChangedEventArgs.Operation.Removed, tokens);
                TokenCollectionsChanged(this, tccea);
            }
        }
コード例 #2
0
        internal void Remove(Token token, Player player)
        {
            Type t = token.GetType();

            this[t].Remove(token);

            if (TokenCollectionsChanged != null)
            {
                TokenCollectionsChangedEventArgs tccea = new TokenCollectionsChangedEventArgs(this[t], player, TokenCollectionsChangedEventArgs.Operation.Removed, token);
                TokenCollectionsChanged(this, tccea);
            }
        }
コード例 #3
0
        public void Add(Token token)
        {
            Type t = token.GetType();

            this[t].Add(token);

            if (TokenCollectionsChanged != null)
            {
                TokenCollectionsChangedEventArgs tccea = new TokenCollectionsChangedEventArgs(this[t], TokenCollectionsChangedEventArgs.Operation.Added, token);
                TokenCollectionsChanged(this, tccea);
            }
        }
コード例 #4
0
        public void Remove(IEnumerable <Token> tokens)
        {
            Type         t          = tokens.First().GetType();
            List <Token> tokensList = new List <Token>(tokens);

            this[t].RemoveAll(token => tokensList.Contains(token));

            if (TokenCollectionsChanged != null)
            {
                TokenCollectionsChangedEventArgs tccea = new TokenCollectionsChangedEventArgs(this[t], TokenCollectionsChangedEventArgs.Operation.Removed, tokensList);
                TokenCollectionsChanged(this, tccea);
            }
        }
コード例 #5
0
        internal void Load(XmlNode xnRoot)
        {
            foreach (XmlNode xnTokenPile in xnRoot.SelectNodes("tokenpile"))
            {
                XmlNode xnType = xnTokenPile.SelectSingleNode("type");

                if (xnType == null)
                {
                    continue;
                }
                Type type = Type.GetType(xnType.InnerText);

                this[type] = TokenCollection.Load(xnTokenPile.SelectSingleNode("tokens"));
                if (TokenCollectionsChanged != null)
                {
                    TokenCollectionsChangedEventArgs tccea = new TokenCollectionsChangedEventArgs(this[type], TokenCollectionsChangedEventArgs.Operation.Added, this[type]);
                    TokenCollectionsChanged(this, tccea);
                }
            }
        }