Beispiel #1
0
        /*
         * @brief 取任一符合
         */
        public INoneMatcher <T> AnyOf(params int[] complexIds)
        {
            anyFlags.Clear();
            anyFlags.Set(Merge(complexIds), true);
            isHashChanged = true;

            return(this);
        }
Beispiel #2
0
        /*
         * @brief 取無符合
         */
        public IComponentMatcher <T> NoneOf(params int[] complexIds)
        {
            noneFlags.Clear();
            noneFlags.Set(Merge(complexIds), true);
            isHashChanged = true;

            return(this);
        }
Beispiel #3
0
        /*
         * @brief 合併來源
         * @return 合併後的編號
         */
        private static int Merge(params int[] complexIds)
        {
            flagsBuf.Clear();

            foreach (var id in complexIds)
            {
                flagsBuf.Set(id, true);
            }

            return(flagsBuf.Id);
        }