Пример #1
0
        public BaseItem(TaggedItemsList itemList) : base(itemList)
        {
            ConvertItem <List <Property> >("Tags", x => Tags      = x.Select(x => (x.Value as FName)?.Name.Value).ToArray());
            ConvertItem <FName>("HandPosition", x => HandPosition = x.Name);
            ConvertItem <FName>("Role", x => Role          = x.Name);
            ConvertItem <FName>("Rarity", x => Rarity      = x.Name);
            ConvertItem <bool>("Inventory", x => Inventory = x);
            ConvertItem <bool>("Chest", x => Chest         = x);
            ConvertItem <FName>("RequiredKillerAbility", x => RequiredKillerAbility        = x.Name);
            ConvertItem <bool>("IsInNonViolentBuild", x => IsInNonViolentBuild             = x);
            ConvertItem <bool>("IsAvailableInAtlantaBuild", x => IsAvailableInAtlantaBuild = x);
            ConvertItem <bool>("AntiDLC", x => AntiDLC   = x);
            ConvertItem <bool>("Bloodweb", x => BloodWeb = x);
            ConvertItem <FName>("ID", x => Id            = x.Name);
            ConvertItem <FName>("Type", x => Type        = x.Name);
            ConvertItem <TaggedObject>("UIData", x =>
            {
                var item = x.Vars.FirstOrDefault(x => x.Key == "DisplayName");
                if (!item.Equals(default) && (item.Value.Value is FText displayName))
                {
                    DisplayName = displayName.ToString();
                }

                item = x.Vars.FirstOrDefault(x => x.Key == "Description");
                if (!item.Equals(default) && (item.Value.Value is FText description))
Пример #2
0
        public CharacterInfo(TaggedItemsList itemList) : base(itemList)
        {
            ConvertItem <int>("CharacterIndex", x => CharacterIndex = x);
            ConvertItem <FName>("Role", x => Role               = x.Name);
            ConvertItem <FName>("Difficulty", x => Difficulty   = x.Name);
            ConvertItem <FText>("DisplayName", x => DisplayName = x.ToString());
            ConvertItem <FText>("BackStory", x => Backstory     = x.ToString());
            ConvertItem <FText>("Biography", x => Biography     = x.ToString());
            ConvertItem <FString>("RequiredDlcIDString", x => RequiredDlcIdString = x.Value);
            ConvertItem <FName>("IdName", x => IdName = x.Name);
            ConvertItem <bool>("IsAvailableInNonViolentBuild", x => IsAvailableInNonViolentBuild = x);
            ConvertItem <bool>("IsAvailableInAtlantaBuild", x => IsAvailableInAtlantaBuild       = x);
            ConvertItem <uint>("PlatformExclusiveFlag", x => PlatformExclusiveFlag = x);
            ConvertItem <FName>("DefaultItem", x => DefaultItem                    = x.Name);
            ConvertItem <FName>("Gender", x => Gender                              = x.Name);
            ConvertItem <FName>("KillerHeight", x => KillerHeight                  = x.Name);
            ConvertItem <FName>("IconFilePath", x => IconPath                      = x.Name);
            ConvertItem <FName>("BackgroundImagePath", x => BackgroundPath         = x.Name);
            ConvertItem <List <Property> >("KillerAbilities", x => KillerAbilities = x.Select(y => ((FName)y.Value).Name.Value).ToArray());
            ConvertItem <TaggedObject>("SlideShowDescriptions", x =>
            {
                var overviewStr  = "";
                var playStyleStr = "";

                var item = x.Vars.FirstOrDefault(y => y.Key == "Overview");
                if (!item.Equals(default) && item.Value.Value is FText overview)
                {
                    overviewStr = overview.ToString();
                }

                item = x.Vars.FirstOrDefault(y => y.Key == "Playstyle");
                if (!item.Equals(default) && item.Value.Value is FText playStyle)
Пример #3
0
        public CustomItemInfo(TaggedItemsList itemList) : base(itemList)
        {
            ConvertItem <FName>("ID", x => Id                         = x.Name);
            ConvertItem <FName>("Category", x => Category             = x.Name);
            ConvertItem <FName>("Rarity", x => Rarity                 = x.Name);
            ConvertItem <FName>("AssociatedRole", x => AssociatedRole = x.Name);
            ConvertItem <FText>("CollectionName", x => CollectionName = x.ToString());
            ConvertItem <FText>("CollectionDescription", x => CollectionDescription = x.ToString());
            ConvertItem <uint>("PlatformExclusiveFlag", x => PlatformExclusiveFlag  = x);
            ConvertItem <int>("AssociatedCharacter", x => AssociatedCharacter       = x);
            ConvertItem <int>("PrestigeUnlockLevel", x => PrestigeUnlockLevel       = x);
            ConvertItem <FString>("PrestigeUnlockDate", x => PrestigeUnlockDate     = x.Value);
            ConvertItem <bool>("ItemIsInStore", x => ItemIsInStore       = x);
            ConvertItem <bool>("IsNonVioletBuild", x => IsNonVioletBuild = x);
            ConvertItem <bool>("IsAvailableInAtlantaBuild", x => IsAvailableInAtlantaBuild = x);
            ConvertItem <TaggedObject>("UIData", x =>
            {
                var item = x.Vars.FirstOrDefault(x => x.Key == "DisplayName");
                if (!item.Equals(default) && (item.Value.Value is FText displayName))
                {
                    DisplayName = displayName.ToString();
                }

                item = x.Vars.FirstOrDefault(x => x.Key == "Description");
                if (!item.Equals(default) && (item.Value.Value is FText description))
Пример #4
0
 public MapInfo(TaggedItemsList itemList) : base(itemList)
 {
     ConvertItem <FName>("MapId", x => MapId                            = x.Name);
     ConvertItem <FText>("Name", x => Name                              = x.ToString());
     ConvertItem <FText>("ThemeName", x => ThemeName                    = x.ToString());
     ConvertItem <FText>("Description", x => Description                = x.ToString());
     ConvertItem <FString>("ThumbnailPath", x => ThumbnailPath          = x.Value);
     ConvertItem <FString>("DlcIDString", x => DlcIDString              = x.ToString());
     ConvertItem <bool>("IsInNonViolentBuild", x => IsInNonViolentBuild = x);
     ConvertItem <int>("SortingIndex", x => SortingIndex                = x);
     ConvertItem <int>("LivingWorldObjectsMaxCount", x => LivingWorldObjectsMaxCount = x);
     ConvertItem <int>("LivingWorldObjectsMinCount", x => LivingWorldObjectsMinCount = x);
     ConvertItem <int>("BookShelvesMaxCount", x => BookShelvesMaxCount       = x);
     ConvertItem <int>("BookShelvesMinCount", x => BookShelvesMinCount       = x);
     ConvertItem <int>("BookShelvesMinDistance", x => BookShelvesMinDistance = x);
     ConvertItem <int>("HookMaxCount", x => HookMaxCount       = x);
     ConvertItem <int>("HookMinCount", x => HookMinCount       = x);
     ConvertItem <int>("HookMinDistance", x => HookMinDistance = x);
 }
Пример #5
0
        public TunableInfo(TaggedItemsList itemList)
        {
            Tunables = new ConcurrentDictionary <string, Tunable>();

            foreach (var item in itemList)
            {
                if (item.Value == null || string.IsNullOrEmpty(item.Key))
                {
                    continue;
                }

                object value          = null;
                object atlantaValue   = null;
                var    description    = "";
                var    descriptorTags = "";
                var    overriden      = false;

                var obj  = item.Value;
                var temp = obj.Vars.FirstOrDefault(x => x.Key == "Value");
                if (!temp.Equals(default) && temp.Value != null)
Пример #6
0
 public PerkInfo(TaggedItemsList itemList) : base(itemList)
 {
     ConvertItem <int>("AssociatedPlayerIndex", x => AssociatedPlayerIndex       = x);
     ConvertItem <int>("MandatoryOnBloodweblevel", x => MandatoryOnBloodweblevel = x);
     ConvertItem <int>("TeachableOnBloodweblevel", x => TeachableOnBloodweblevel = x);
     ConvertItem <int>("AtlantaTeachableLevel", x => AtlantaTeachableLevel       = x);
     ConvertItem <List <Property> >("PerkCategory", x => PerkCategory            = x.Select(x => (x.Value as FName)?.Name.Value).ToArray());
     ConvertItem <List <Property> >("PerkLevelRarity", x => PerkLevelRarity      = x.Select(x => (x.Value as FName)?.Name.Value).ToArray());
     ConvertItem <FText>("PerkDefaultDescription", x => PerkDefaultDescription   = x.ToString());
     ConvertItem <FText>("PerkLevel1Description", x => PerkLevel1Description     = x.ToString());
     ConvertItem <FText>("PerkLevel2Description", x => PerkLevel2Description     = x.ToString());
     ConvertItem <FText>("PerkLevel3Description", x => PerkLevel3Description     = x.ToString());
     ConvertItem <FText>("PerkUnlicensedDescriptionOverride", x => PerkUnlicensedDescriptionOverride = x.ToString());
     ConvertItem <TaggedObject>("UIData", x =>
     {
         var item = x.Vars.FirstOrDefault(x => x.Key == "IconFilePathList");
         if (!item.Equals(default) && (item.Value.Value is List <Property> paths))
         {
             IconPathList = paths.Select(y => y.Value.ToString()).ToArray();
         }
     });
Пример #7
0
 public ItemAddonInfo(TaggedItemsList itemList) : base(itemList)
 {
     ConvertItem <List <Property> >("ParentItems", x => ParentItems = x.Select(x => (x.Value as FName)?.Name.Value).ToArray());
 }
Пример #8
0
 public OfferingInfo(TaggedItemsList itemList) : base(itemList)
 {
     ConvertItem <FName>("OfferingType", x => OfferingType = x.Name);
     ConvertItem <bool>("CanUseAfterEventEnd", x => CanUseAfterEventEnd = x);
 }
Пример #9
0
 public BaseInfo(TaggedItemsList itemList)
 {
     _itemList = itemList;
 }