예제 #1
0
        private IEnumerator GetJSONFromSheet(string url, HandleXMLFromSheetSuccess success)
        {
            using (UnityWebRequest webRequest = UnityWebRequest.Get(url))
            {
                yield return(webRequest.SendWebRequest());

                if (webRequest.isNetworkError || webRequest.isHttpError)
                {
                    Debug.Log("Error on loading JSON from Google Sheets document.");
                }
                else
                {
                    JSONNode data = JSON.Parse(webRequest.downloadHandler.text);
                    _script.GetElementsByTagName("title") [0].InnerText          = data ["feed"] ["title"] ["$t"];
                    _script.GetElementsByTagName("primaryCredits") [0].InnerText = data ["feed"] ["author"] [0] ["name"] ["$t"];
                    JSONArray entry = data ["feed"] ["entry"].AsArray;
                    AddMetadataFromEntry(entry [0]);
                    AddCharactersFromEntry(entry [0]);
                    AddActionsFromEntries(entry);
                    TrimTrailingEntrySteps();
                    success(_script);
                }
            }
        }
예제 #2
0
        public void GetXMLFromSheet(string sheetId, HandleXMLFromSheetSuccess success)
        {
            string url;

            // sheetId contains a Google Sheets id
            if (!sheetId.Contains("https://"))
            {
                url = "https://spreadsheets.google.com/feeds/list/" + sheetId + "/1/public/values?alt=json";
            }
            // or a Google Sheets edit URL
            else if (sheetId.Contains("edit#"))
            {
                string[] temp = sheetId.Split('/');
                url = "https://spreadsheets.google.com/feeds/list/" + temp[5] + "/1/public/values?alt=json";
            }
            // otherwise, assume this is a correctly formed Google Sheets JSON URL
            else
            {
                url = sheetId;
            }
            _script = new XmlDocument();
            _script.LoadXml("<stepwise><title>Untitled</title><description></description><primaryCredits></primaryCredits><secondaryCredits></secondaryCredits><version>1</version><sequence id=\"global\" repeat=\"+\"></sequence></stepwise>");
            StartCoroutine(GetJSONFromSheet(url, success));
        }