Exemple #1
0
        protected virtual bool Include(ConquestState s)
        {
            if (s == null || s.Conquest == this)
            {
                return(false);
            }

            if (ConquestType.IsNotNull && !s.Conquest.TypeEquals(ConquestType, ConquestChildren))
            {
                return(false);
            }

            if (!String.IsNullOrWhiteSpace(NameReq) && !NameSearch.Execute(s.Conquest.Name, NameReq, NameIgnoreCaps))
            {
                return(false);
            }

            if (!String.IsNullOrWhiteSpace(CategoryReq) &&
                !CategorySearch.Execute(s.Conquest.Category, CategoryReq, CategoryIgnoreCaps))
            {
                return(false);
            }

            return(true);
        }
Exemple #2
0
        protected virtual int GetProgress(ConquestState state, TArgs args)
        {
            if (args == null || args.State == null || args.State.Conquest == null || args.State.Conquest == this)
            {
                return(0);
            }

            if (state.User == null)
            {
                return(0);
            }

            if (ConquestType.IsNotNull && !args.State.Conquest.TypeEquals(ConquestType, ConquestChildren))
            {
                if (ConquestChangeReset)
                {
                    return(-state.Progress);
                }

                return(0);
            }

            if (!String.IsNullOrWhiteSpace(NameReq) && !NameSearch.Execute(args.State.Conquest.Name, NameReq, NameIgnoreCaps))
            {
                if (NameChangeReset)
                {
                    return(-state.Progress);
                }

                return(0);
            }

            if (!String.IsNullOrWhiteSpace(CategoryReq) &&
                !CategorySearch.Execute(args.State.Conquest.Category, CategoryReq, CategoryIgnoreCaps))
            {
                if (CategoryChangeReset)
                {
                    return(-state.Progress);
                }

                return(0);
            }

            return(1);
        }