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); }
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); }
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); }
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); }
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); }
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); }