mirror of
https://github.com/4sval/FModel.git
synced 2026-04-18 23:57:42 -05:00
Added GetAssetJsonDataByPath utility.
This commit is contained in:
parent
63925c1df2
commit
c3ecfb4b39
|
|
@ -194,11 +194,9 @@ namespace FModel.Methods.Assets
|
|||
|
||||
public static void LoadAsset(string assetPath)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(assetPath);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(assetPath, true);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(assetPath);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList, true);
|
||||
FWindow.FMain.Dispatcher.InvokeAsync(() =>
|
||||
{
|
||||
FWindow.FMain.AssetPropertiesBox_Main.Text = jsonData;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
using FModel.Methods.Utilities;
|
||||
using FModel.Methods.Utilities;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using PakReader;
|
||||
|
|
@ -16,11 +16,9 @@ namespace FModel.Methods.Assets.IconCreator.AthenaID
|
|||
{
|
||||
if (ItemSetsArray == null)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader("/FortniteGame/Content/Athena/Items/Cosmetics/Metadata/CosmeticSets");
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath("/FortniteGame/Content/Athena/Items/Cosmetics/Metadata/CosmeticSets", true);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries("/FortniteGame/Content/Athena/Items/Cosmetics/Metadata/CosmeticSets");
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList, true);
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
dynamic AssetData = JsonConvert.DeserializeObject(jsonData);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
using FModel.Methods.Utilities;
|
||||
using FModel.Methods.Utilities;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using PakReader;
|
||||
|
|
@ -19,11 +19,9 @@ namespace FModel.Methods.Assets.IconCreator.AthenaID
|
|||
{
|
||||
if (ItemCategoriesArray == null)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader("/FortniteGame/Content/Items/ItemCategories");
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath("/FortniteGame/Content/Items/ItemCategories", true);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries("/FortniteGame/Content/Items/ItemCategories");
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList, true);
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
dynamic AssetData = JsonConvert.DeserializeObject(jsonData);
|
||||
|
|
@ -138,4 +136,4 @@ namespace FModel.Methods.Assets.IconCreator.AthenaID
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -47,12 +47,9 @@ namespace FModel.Methods.Assets.IconCreator.ChallengeID
|
|||
/// <param name="assetPath"></param>
|
||||
private static void GetQuestData(JArray BundleProperties, string assetPath)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(assetPath);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(assetPath);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(assetPath);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
@ -217,12 +214,9 @@ namespace FModel.Methods.Assets.IconCreator.ChallengeID
|
|||
string rewardsTablePath = AssetEntries.AssetEntriesDict.Where(x => x.Key.ToLowerInvariant().Contains("/" + rewardsTable.Value<string>().ToLowerInvariant() + ".uasset")).Select(d => d.Key).FirstOrDefault();
|
||||
if (!string.IsNullOrEmpty(rewardsTablePath))
|
||||
{
|
||||
reader = AssetsUtility.GetPakReader(rewardsTablePath.Substring(0, rewardsTablePath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
if (reader != null)
|
||||
jsonData = AssetsUtility.GetAssetJsonDataByPath(rewardsTablePath.Substring(0, rewardsTablePath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
if (jsonData != null)
|
||||
{
|
||||
entriesList = AssetsUtility.GetPakEntries(rewardsTablePath.Substring(0, rewardsTablePath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetRewarsTableMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
|
|||
|
|
@ -63,12 +63,9 @@ namespace FModel.Methods.Assets.IconCreator.ChallengeID
|
|||
string assetPath = AssetEntries.AssetEntriesDict.Where(x => x.Key.Contains("/BannerIcons.uasset")).Select(d => d.Key).FirstOrDefault();
|
||||
if (!string.IsNullOrEmpty(assetPath))
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(assetPath.Substring(0, assetPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(assetPath.Substring(0, assetPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(assetPath.Substring(0, assetPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
@ -127,12 +124,9 @@ namespace FModel.Methods.Assets.IconCreator.ChallengeID
|
|||
|
||||
private static void DrawNormalIcon(string path, string quantity, int y, int mode = 0)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(path);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(path);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(path);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
@ -189,12 +183,9 @@ namespace FModel.Methods.Assets.IconCreator.ChallengeID
|
|||
|
||||
private static void DrawImageFromTagData(string assetPath, string quantity, int y, int mode = 0)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(assetPath);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(assetPath);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(assetPath);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ using FModel.Methods.Utilities;
|
|||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using PakReader;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
|
|
@ -26,12 +27,10 @@ namespace FModel.Methods.Assets.IconCreator.HeroID
|
|||
string assetPath = AssetEntries.AssetEntriesDict.Where(x => x.Key.ToLowerInvariant().Contains("/" + heroGameplayDefinitionToken.Value<string>().ToLowerInvariant() + ".")).Select(d => d.Key).FirstOrDefault();
|
||||
if (!string.IsNullOrEmpty(assetPath))
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(assetPath);
|
||||
if (reader != null)
|
||||
Console.WriteLine(assetPath);
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(assetPath, false, assetPath.Substring(0, assetPath.LastIndexOf(".")));
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(assetPath.Substring(0, assetPath.Length - ".uasset".Length));
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
@ -125,12 +124,9 @@ namespace FModel.Methods.Assets.IconCreator.HeroID
|
|||
{
|
||||
if (!string.IsNullOrEmpty(assetPath))
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(assetPath);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(assetPath);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(assetPath);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
|
|||
|
|
@ -70,12 +70,9 @@ namespace FModel.Methods.Assets.IconCreator
|
|||
|
||||
private static void DrawImageFromTagData(string assetPath)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(assetPath);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(assetPath);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(assetPath);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
@ -143,12 +140,9 @@ namespace FModel.Methods.Assets.IconCreator
|
|||
|
||||
private static void DrawFeaturedImage(JArray AssetProperties, string displayAssetPath)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(displayAssetPath);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(displayAssetPath);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(displayAssetPath);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
FWindow.FCurrentAsset = Path.GetFileName(displayAssetPath);
|
||||
|
|
@ -224,12 +218,9 @@ namespace FModel.Methods.Assets.IconCreator
|
|||
renderSwitchPath.Contains("M-Wraps-StreetDemon") ||
|
||||
renderSwitchPath.Contains("/FortniteGame/Content/UI/Foundation/Textures/Icons/Wraps/FeaturedMaterials/"))
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(renderSwitchPath.Substring(0, renderSwitchPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(renderSwitchPath.Substring(0, renderSwitchPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(renderSwitchPath.Substring(0, renderSwitchPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
|
|||
|
|
@ -154,13 +154,9 @@ namespace FModel.Methods.Assets.IconCreator
|
|||
string seriesFullPath = AssetEntries.AssetEntriesDict.Where(x => x.Key.ToLowerInvariant().Contains("/" + serieToken.Value<string>().ToLowerInvariant() + ".uasset")).Select(d => d.Key).FirstOrDefault();
|
||||
if (!string.IsNullOrEmpty(seriesFullPath))
|
||||
{
|
||||
string path = seriesFullPath.Substring(0, seriesFullPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase));
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(path);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(seriesFullPath.Substring(0, seriesFullPath.LastIndexOf(".", StringComparison.InvariantCultureIgnoreCase)));
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(path);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
using FModel.Methods.Utilities;
|
||||
using FModel.Methods.Utilities;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using PakReader;
|
||||
|
|
@ -16,12 +16,9 @@ namespace FModel.Methods.Assets.IconCreator.WeaponID
|
|||
{
|
||||
public static void DrawIconAmmoData(string path)
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(path);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(path);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(path);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
dynamic AssetData = JsonConvert.DeserializeObject(jsonData);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
using FModel.Methods.Utilities;
|
||||
using FModel.Methods.Utilities;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using PakReader;
|
||||
|
|
@ -24,11 +24,9 @@ namespace FModel.Methods.Assets.IconCreator.WeaponID
|
|||
string filepath = AssetEntries.AssetEntriesDict.Where(x => x.Key.Contains("/" + file + ".uasset")).Select(d => d.Key).FirstOrDefault();
|
||||
if (!string.IsNullOrEmpty(filepath))
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(filepath.Substring(0, filepath.LastIndexOf(".")));
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(filepath.Substring(0, filepath.LastIndexOf(".")), true);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(filepath.Substring(0, filepath.LastIndexOf(".")));
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList, true);
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
dynamic AssetData = JsonConvert.DeserializeObject(jsonData);
|
||||
|
|
|
|||
|
|
@ -277,6 +277,20 @@ namespace FModel.Methods.Utilities
|
|||
return string.Empty;
|
||||
}
|
||||
|
||||
public static string GetAssetJsonDataByPath(string path, bool loadImageInBox = false, string pathEntries = null)
|
||||
{
|
||||
string jsonData = null;
|
||||
PakReader.PakReader reader = GetPakReader(path);
|
||||
if (reader != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = GetPakEntries(pathEntries != null ? pathEntries : path);
|
||||
if (entriesList != null)
|
||||
jsonData = GetAssetJsonData(reader, entriesList, loadImageInBox);
|
||||
}
|
||||
|
||||
return jsonData;
|
||||
}
|
||||
|
||||
public static byte[] readSound(USoundWave sound)
|
||||
{
|
||||
if (!sound.bStreaming)
|
||||
|
|
@ -421,6 +435,9 @@ namespace FModel.Methods.Utilities
|
|||
|
||||
public static bool IsValidJson(string strInput)
|
||||
{
|
||||
if (string.IsNullOrEmpty(strInput))
|
||||
return false;
|
||||
|
||||
strInput = strInput.Trim();
|
||||
if ((strInput.StartsWith("{") && strInput.EndsWith("}")) || //For object
|
||||
(strInput.StartsWith("[") && strInput.EndsWith("]"))) //For array
|
||||
|
|
|
|||
|
|
@ -125,12 +125,9 @@ namespace FModel.Methods.Utilities
|
|||
string path = FoldersUtility.FixFortnitePath(displayImageToken["asset_path_name"].Value<string>());
|
||||
if (string.Equals(path, "/FortniteGame/Content/Athena/UI/Challenges/Art/TileImages/M_UI_ChallengeTile_PCB"))
|
||||
{
|
||||
PakReader.PakReader reader = AssetsUtility.GetPakReader(path);
|
||||
if (reader != null)
|
||||
string jsonData = AssetsUtility.GetAssetJsonDataByPath(path);
|
||||
if (jsonData != null)
|
||||
{
|
||||
List<FPakEntry> entriesList = AssetsUtility.GetPakEntries(path);
|
||||
string jsonData = AssetsUtility.GetAssetJsonData(reader, entriesList);
|
||||
|
||||
if (AssetsUtility.IsValidJson(jsonData))
|
||||
{
|
||||
JToken AssetMainToken = AssetsUtility.ConvertJson2Token(jsonData);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user