Beispiel #1
0
        IEnumerator UploadLevel(string jsonFile)
        {
            DevEditorData level = new DevEditorData();
            level = JsonUtility.FromJson<DevEditorData>(jsonFile);

            DynamoDBInfo requested = RequestIDs();

            while (requested.listOfIndexes.Count == 0 || requested.lastIdUsed == 0) yield return null;

            string levelName = level.levelName;
            string kubicode = GenerateKubiCode(requested);

            // create a new upload request, input the relevant information
            var putItemRequest = new PutItemRequest
            {
                TableName = DatabaseInfo.userContent_tableName,
                Item = new Dictionary<string, AttributeValue>()
                {
                    { DatabaseInfo.userContent_pKey, new AttributeValue{ S =  kubicode } },
                    { DatabaseInfo.userContent_levelName, new AttributeValue { S = levelName } },
                    { DatabaseInfo.userContent_jsonFile, new AttributeValue { S = jsonFile } }
                }
            };

            var response = client.PutItemAsync(putItemRequest);

            // if something goes wrong, debug the log message from AWS
            if (response.Exception != null)
            {
                Debug.Log(response.Exception.Message);
            }

            // else, the item has successfully been uploaded
            else
            {
                Debug.Log(levelName + " has been uploaded successfully!");
                UserLevelFiles.AddToUploads(uploadLevelDropdown.captionText.text);
            }
            /*
            // connect to dynamoDB database and pass the request information to upload the item
            client.PutItemAsync(putItemRequest, (result) =>
            {
                // if something goes wrong, debug the log message from AWS
                if (result.Exception != null)
                {
                    Debug.Log(result.Exception.Message);
                    return;
                }

                // else, the item has successfully been uploaded
                else
                {
                    Debug.Log(levelName + " has been uploaded successfully!");
                    UserLevelFiles.AddToUploads(uploadLevelDropdown.captionText.text);
                }

            }, null);*/

            yield return null;
        }
        // Copy all of the individual lists to the master list
        private void InitializeLists()
        {
            masterList.Clear();

            foreach (List <TextAsset> levelFileList in listOfLists)
            {
                foreach (TextAsset level in levelFileList)
                {
                    LevelFile levelInfo = UserLevelFiles.ConvertToLevelInfo(level);
                    masterList.Add(levelInfo);
                }
            }
        }
        public void RefreshUserLevels()
        {
            levelNames = UserLevelFiles.GetUserLevelNames();

            while (UIManager.instance == null)
            {
                return;
            }
            UIManager.instance.playerLevelsDropdown.ClearOptions();

            foreach (string levelName in levelNames)
            {
                UIManager.instance.playerLevelsDropdown.options.Add(new Dropdown.OptionData(levelName));
            }

            UIManager.instance.playerLevelsDropdown.RefreshShownValue();
        }
        public void RefreshUserLevels()
        {
            levelNames = UserLevelFiles.GetUserLevelNames();

            while (UIManager.instance == null)
            {
                return;
            }
            UIManager.instance.playerLevelsDropdown.ClearOptions();

            foreach (string levelName in levelNames)
            {
                //the info used to fill out the dropdown tabs are provided by the user level files
                UIManager.instance.playerLevelsDropdown.options.Add(new Dropdown.OptionData(levelName));
            }

            UIManager.instance.playerLevelsDropdown.RefreshShownValue();
        }
Beispiel #5
0
 void DeleteLevel()
 {
     string levelToGet = uploadLevelDropdown.captionText.text;
     UserLevelFiles.RemoveFromUploads(levelToGet);
 }
Beispiel #6
0
 // call this when dropdown buttons are on screen to populate them
 private void PopulateDropdownList()
 {
     uploadDropdownOptions = UserLevelFiles.GetUserLevelNames();
     uploadLevelDropdown.ClearOptions();
     uploadLevelDropdown.AddOptions(uploadDropdownOptions);
 }
    void GetInfo()
    {
        folder      = "MainLevels";
        levelFolder = "";
        switch (loadLevelBiome)
        {
        case Biomes.Plains:
            levelFolder = "01_Plains";
            break;

        case Biomes.Mountains:
            levelFolder = "02_Mountains";
            break;

        case Biomes.Underwater:
            levelFolder = "03_Underwater";
            break;

        case Biomes.Ruins:
            levelFolder = "04_Ruins";
            break;

        case Biomes.Statues:
            levelFolder = "05_Statues";
            break;

        case Biomes.Temple:
            levelFolder = "06_Temple";
            break;

        case Biomes.Chaos:
            levelFolder = "07_Chaos";
            break;

        default:
            break;
        }

        path           = Path.Combine(folder, levelFolder);
        loadLevelFiles = Resources.LoadAll(path);

        //UnityEngine.Object[] loadLevelFiles = AssetDatabase.LoadAllAssetsAtPath(path);

        foreach (TextAsset file in loadLevelFiles)
        {
            levelFiles.Add(UserLevelFiles.ConvertToLevelInfo(file));
        }

        for (int i = 0; i < levelFiles.Count; i++)
        {
            if (searchIndex == levelFiles[i].levelName || searchIndex == levelFiles[i].kubicode)
            {
                levelName     = levelFiles[i].levelName;
                Kubicode      = levelFiles[i].kubicode;
                levelBiome    = levelFiles[i].levelBiome;
                minimumMoves  = levelFiles[i].minimumMoves;
                lockRotate    = levelFiles[i].lockRotate;
                levelTextFile = levelFiles[i].levelFile;
            }
        }
    }