Make possession retrieve cross-platform
This commit is contained in:
parent
c512dd42c3
commit
f60f7a5634
@ -200,12 +200,14 @@ namespace Passer {
|
||||
StartCoroutine(RetrievePossessionAsync(possession));
|
||||
}
|
||||
|
||||
//public void RetrievePossession(PersistentPossession possession, System.Action<GameObject> callback) {
|
||||
// StartCoroutine(RetrievePossessionAsync(possession, callback));
|
||||
//}
|
||||
|
||||
private static IEnumerator RetrievePossessionAsync(Possession possession) {
|
||||
string url = "https://" + possession.siteLocation + ".windows" + ".site";
|
||||
#if UNITY_ANDROID
|
||||
string url = "https://" + possession.siteLocation + ".android.site";
|
||||
#elif UNITY_WEBGL
|
||||
string url = "https://" + possession.siteLocation + ".webgl.site";
|
||||
#else
|
||||
string url = "https://" + possession.siteLocation + ".windows.site";
|
||||
#endif
|
||||
Debug.Log("Loading possession: " + url);
|
||||
|
||||
UnityWebRequest request = UnityWebRequestAssetBundle.GetAssetBundle(url);
|
||||
@ -234,10 +236,15 @@ namespace Passer {
|
||||
prefab.SetActive(false);
|
||||
}
|
||||
else {
|
||||
Debug.Log("Cache size: " + cache.Count);
|
||||
CachedPossession foundPossession = cache.Find(entry => entry.siteLocation == possession.siteLocation);
|
||||
if (foundPossession == null) {
|
||||
string url = "https://" + possession.siteLocation + ".windows" + ".site";
|
||||
#if UNITY_ANDROID
|
||||
string url = "https://" + possession.siteLocation + ".android.site";
|
||||
#elif UNITY_WEBGL
|
||||
string url = "https://" + possession.siteLocation + ".webgl.site";
|
||||
#else
|
||||
string url = "https://" + possession.siteLocation + ".windows.site";
|
||||
#endif
|
||||
Debug.Log("Loading possession: " + url);
|
||||
|
||||
UnityWebRequest request = UnityWebRequestAssetBundle.GetAssetBundle(url);
|
||||
@ -286,7 +293,13 @@ namespace Passer {
|
||||
Debug.Log("Cache size: " + cache.Count);
|
||||
CachedPossession foundPossession = cache.Find(entry => entry.siteLocation == possessableLocation);
|
||||
if (foundPossession == null) {
|
||||
string url = "https://" + possessableLocation + ".windows" + ".site";
|
||||
#if UNITY_ANDROID
|
||||
string url = "https://" + possessableLocation + ".android.site";
|
||||
#elif UNITY_WEBGL
|
||||
string url = "https://" + possessableLocation + ".webgl.site";
|
||||
#else
|
||||
string url = "https://" + possessableLocation + ".windows.site";
|
||||
#endif
|
||||
Debug.Log("Loading possession: " + url);
|
||||
|
||||
UnityWebRequest request = UnityWebRequestAssetBundle.GetAssetBundle(url);
|
||||
@ -302,13 +315,9 @@ namespace Passer {
|
||||
int lastSlashIx = possessablePath.LastIndexOf('/');
|
||||
if (lastSlashIx >= 0)
|
||||
possessableName = possessablePath.Substring( + 1);
|
||||
//string[] assetPaths = assetBundle.GetAllAssetNames();
|
||||
//foreach (string assetPath in assetPaths) {
|
||||
// Debug.Log(" " + assetPath);
|
||||
//}
|
||||
|
||||
Debug.Log("Load: " + possessablePath);
|
||||
prefab = assetBundle.LoadAsset<GameObject>(possessableName); // possessablePath);
|
||||
prefab = assetBundle.LoadAsset<GameObject>(possessableName);
|
||||
if (prefab == null) {
|
||||
Debug.LogError("Could not load " + possessablePath);
|
||||
yield break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user