Example #1
0
            protected override bool Allow(MiniSimDescription me, IMiniSimDescription actor)
            {
                if (mFilter == null)
                {
                    return(false);
                }

                foreach (SimSelection.ICriteria item in mFilter.mElements)
                {
                    if (item.CanBeRandomCriteria && RandomUtil.CoinFlip())
                    {
                        continue;
                    }

                    ITestableOption testable = item as ITestableOption;
                    if (testable == null)
                    {
                        continue;
                    }

                    if (!testable.Test(me, false, actor))
                    {
                        return(false);
                    }
                }

                return(true);
            }