Esempio n. 1
0
        public InstanceResolverResult ResolvePossibleData(object baseObject, object data, PropertyInfo property)
        {
            LanguageInfo[] languageInfos = (LanguageInfo[])data;
            if (languageInfos == null)
            {
                languageInfos = new LanguageInfo[0];
            }
            LanguageInfo[] editorLanguages = FortLanguage.ResolveLanguageEditorInfo()
                                             .Languages;
            LanguageInfo[] possibleLanguages =
                editorLanguages.Where(info => languageInfos.All(languageInfo => languageInfo.Id != info.Id))
                .ToArray();
            InstanceResolverResult result = new InstanceResolverResult
            {
                PossibleInstanceTokens =
                    possibleLanguages.Select(language => new InstanceToken(language.Name, language)).ToArray(),
                PresentableInstanceTokens =
                    languageInfos.Where(info => editorLanguages.Any(languageInfo => languageInfo.Id == info.Id))
                    .Select(info => new InstanceToken(info.Name, info))
                    .ToArray(),
                IsEditable          = false,
                UseValueTypeForEdit = false
            };

            return(result);
        }
Esempio n. 2
0
        public InstanceResolverResult ResolvePossibleData(object baseObject, object data, PropertyInfo property)
        {
            InstanceResolverResult result = new InstanceResolverResult
            {
                PossibleInstanceTokens = InfoResolver.Resolve <FortInfo>().MarketInfos.Where(info => info != null).Select(info => new InstanceToken(info.MarketName, info.MarketName)).ToArray()
            };
            InstanceToken instanceToken =
                result.PossibleInstanceTokens.FirstOrDefault(token => string.Equals((string)token.Value, (string)data));

            result.PresentableInstanceTokens = instanceToken == null ? new InstanceToken[0] : new[] { instanceToken };
            return(result);
        }
        public InstanceResolverResult ResolvePossibleData(object baseObject, object data, PropertyInfo property)
        {
            InstanceResolverResult result = new InstanceResolverResult
            {
                PossibleInstanceTokens = InfoResolver.Resolve <FortInfo>().Purchase.GetAllPurchasableItemInfos().OfType <NoneLevelBasePurchasableItemInfo>().Select(info => new InstanceToken(info.Name, info)).ToArray()//InfoResolver.Resolve<FortInfo>().Package.Packages.Where(info => !(info is DiscountIapPackage)).Select(info => new InstanceToken(info.Sku, info)).ToArray()
            };
            InstanceToken instanceToken =
                result.PossibleInstanceTokens.FirstOrDefault(token => ReferenceEquals(token.Value, data));

            result.PresentableInstanceTokens = instanceToken == null ? new InstanceToken[0] : new[] { instanceToken };
            return(result);
        }
Esempio n. 4
0
        public InstanceResolverResult ResolvePossibleData(object baseObject, object data, PropertyInfo property)
        {
            InstanceResolverResult result = new InstanceResolverResult
            {
                PossibleInstanceTokens = InfoResolver.Resolve <FortInfo>().SkinnerBox.BoxInfos.OfType <PurchableSkinnerBoxInfo>().Select(info => new InstanceToken(info.Name, info)).ToArray()
            };
            InstanceToken instanceToken =
                result.PossibleInstanceTokens.FirstOrDefault(token => ReferenceEquals(token.Value, data));

            result.PresentableInstanceTokens = instanceToken == null ? new InstanceToken[0] : new[] { instanceToken };
            return(result);
        }
Esempio n. 5
0
        public InstanceResolverResult ResolvePossibleData(object baseObject, object data, PropertyInfo property)
        {
            LanguageInfo[]         editorLanguages = FortLanguage.ResolveLanguageEditorInfo().Languages;
            InstanceResolverResult result          = new InstanceResolverResult
            {
                PossibleInstanceTokens =
                    InfoResolver.Resolve <FortInfo>().Language.ActiveLanguages.Where(
                        info => editorLanguages.Any(languageInfo => languageInfo.Id == info.Id))
                    .Select(info => new InstanceToken(info.Name, info))
                    .ToArray()
            };
            InstanceToken instanceToken =
                result.PossibleInstanceTokens.FirstOrDefault(token => ReferenceEquals(token.Value, data));

            result.PresentableInstanceTokens = instanceToken == null ? new InstanceToken[0] : new[] { instanceToken };
            return(result);
        }
Esempio n. 6
0
        public InstanceResolverResult ResolvePossibleData(object baseObject, object data, PropertyInfo property)
        {
            MarketInfo[] marketInfos = (MarketInfo[])data;
            if (marketInfos == null)
            {
                marketInfos = new MarketInfo[0];
            }
            MarketInfo[]           possibleMarkets = InfoResolver.Resolve <FortInfo>().MarketInfos.Where(info => marketInfos.All(marketInfo => marketInfo.GetType() != info.GetType())).ToArray();
            InstanceResolverResult result          = new InstanceResolverResult
            {
                PossibleInstanceTokens    = possibleMarkets.Select(market => new InstanceToken(market.GetType().Name, market)).ToArray(),
                PresentableInstanceTokens = marketInfos.Select(info => new InstanceToken(info.GetType().Name, info)).ToArray(),
                IsEditable          = false,
                UseValueTypeForEdit = false
            };

            return(result);
        }
Esempio n. 7
0
        public InstanceResolverResult ResolvePossibleData(object baseObject, object data, PropertyInfo property)
        {
            MarketInfo[] marketInfos = (MarketInfo[])data;
            if (marketInfos == null)
            {
                marketInfos = new MarketInfo[0];
            }
            Type[] possibleTypes =
                TypeHelper.GetAllTypes(AllTypeCategory.Game)
                .Where(type => typeof(MarketInfo).IsAssignableFrom(type) && !type.IsAbstract)
                .Where(type => marketInfos.Where(info => info != null).Select(info => info.GetType()).All(type1 => type1 != type))
                .ToArray();
            InstanceResolverResult result = new InstanceResolverResult
            {
                PossibleInstanceTokens    = possibleTypes.Select(type => new InstanceToken(type.Name, Activator.CreateInstance(type))).ToArray(),
                PresentableInstanceTokens = marketInfos.Where(info => info != null).Select(info => new InstanceToken(info.GetType().Name, info)).ToArray(),
                IsEditable          = true,
                UseValueTypeForEdit = true
            };

            return(result);
        }