示例#1
0
        private void Start()
        {
            LevelSaveData levelSaveData = SaveSystem.LoadProgress();

            if (levelSaveData.firstGameStart)
            {
                levelSaveData.levelStates    = new LevelState[levelChoseButtons.Count];
                levelSaveData.levelStates[0] = LevelState.Open;
                for (int i = 1; i < levelSaveData.levelStates.Length; i++)
                {
                    levelSaveData.levelStates[i] = LevelState.Blocked;
                }

                levelSaveData.firstGameStart = false;
                SaveSystem.SaveProgress(levelSaveData);
            }

            for (int i = 0; i < levelSaveData.levelStates.Length; i++)
            {
                if (levelSaveData.levelStates[i] == LevelState.Open)
                {
                    levelChoseButtons[i].interactable = true;
                }
                else if (levelSaveData.levelStates[i] == LevelState.Blocked)
                {
                    levelChoseButtons[i].interactable = false;
                }
                else if (levelSaveData.levelStates[i] == LevelState.Finished)
                {
                    levelChoseButtons[i].interactable = true;
                }
            }
        }
    protected override void Execute()
    {
        string previousLevelName = levelNameStatus.Name;

        bool levelWasRenamed = !string.IsNullOrEmpty(previousLevelName) && newLevelName != previousLevelName;

        if (levelWasRenamed)
        {
            string oldLevelFileName = StringHelper.ConvertToXMLCompatible(previousLevelName);

            if (File.Exists(LevelDataPath.Path + oldLevelFileName))
            {
                File.Delete(LevelDataPath.Path + oldLevelFileName);
            }
        }

        List <LevelObjectSaveData> levelObjectsSaveData = ExtractLevelObjectsSaveData();

        List <Vector2> standardTilePositions = TileGrid.Instance.GetGridPositionsByTileType(TileType.Standard);

        List <Vector2>      tileGridPositions            = TileGrid.Instance.GetTileGridPositions();
        List <Vector2>      nonStandardTileGridPositions = tileGridPositions.Except(standardTilePositions).ToList();
        List <TileSaveData> nonStandardTileSaveData      = ExtractTilesSaveData(nonStandardTileGridPositions);

        LevelSaveData levelData = new LevelSaveData {
            StandardTileGridPositions = standardTilePositions,
            NonStandardTilesSaveData  = nonStandardTileSaveData,
            LevelObjectsSaveData      = levelObjectsSaveData,
        };

        string levelFileName = StringHelper.ConvertToXMLCompatible(newLevelName);

        SerializeHelper.Serialize(LevelDataPath.Path + levelFileName, levelData);
    }
    public static void SaveLevelData(GameLevel level)
    {
        GlobalSaveData globalSaveData = GameManager.instance.globalSaveData;

        //look for a matching data piece in the level list
        LevelSaveData data = globalSaveData.levelSaveData.Where(obj => obj.dataName == level.levelName).SingleOrDefault();

        if (data != null)
        {
            //update global level save data again
            data.damageSustainedOnLevel = globalSaveData.damageSustainedOnLevel;
            data.earnedQuickTeacup      = globalSaveData.currentLevelSaveData.earnedQuickTeacup;
            data.earnedSafeTeacup       = globalSaveData.currentLevelSaveData.earnedSafeTeacup;
            data.timeLeftOnLevel        = globalSaveData.timeLeftOnLevel;
        }
        else
        {
            //create a new one
            LevelSaveData newData = new LevelSaveData();
            newData.dataName = level.levelName;
            newData.damageSustainedOnLevel = globalSaveData.damageSustainedOnLevel;
            newData.teacupsEarnedOnLevel   = globalSaveData.currentLevelSaveData.teacupsEarnedOnLevel;
            newData.earnedQuickTeacup      = globalSaveData.currentLevelSaveData.earnedQuickTeacup;
            newData.earnedSafeTeacup       = globalSaveData.currentLevelSaveData.earnedSafeTeacup;
            newData.timeLeftOnLevel        = globalSaveData.timeLeftOnLevel;
            globalSaveData.levelSaveData.Add(newData);
        }
    }
    bool InitFromSaveFile()
    {
        if (File.Exists(savePath))
        {
            Debug.Log("Loading save from : " + savePath);
            string jsonStr = File.ReadAllText(savePath);

            Debug.Log("Reading save file: " + jsonStr);
            JsonUtility.FromJsonOverwrite(jsonStr, this);

            foreach (var kvp in savedLevelsData)
            {
                string        id       = kvp.Key;
                LevelSaveData saveData = kvp.Value;

                var levelProgress = FindLevelProgress(id);
                if (levelProgress != null)
                {
                    levelProgress.LoadFromSave(saveData);
                }
            }

            return(true);
        }
        return(false);
    }
示例#5
0
    /// <summary>
    /// When given new LevelSaveData add it to 'level' list and save to file
    /// </summary>
    /// <param name="path"></param>
    /// <param name="lsd"></param>
    public bool Save(string path, LevelSaveData lsd)
    {
        try
        {
            bool found = false;

            //Find if level is already in list, if it is has overwrite it.
            for (int i = 0; i < this.levels.Count; i++)
            {
                if (levels[i].index == lsd.index)
                {
                    levels[i].Overwrite(lsd);
                    found = true;
                    break;
                }
            }

            //If level is not in list add it
            if (!found)
            {
                levels.Add(lsd);
            }
            return(Save(path));
        }
        catch (Exception ex)
        {
            Debug.LogError("Could not save file at: " + path + "\nException: " + ex.Message);
            return(false);
        }
    }
示例#6
0
    public static LevelSaveData LoadLevelData(string levelName)
    {
        LevelSaveData saveData = null;
        string        dataPath = Application.persistentDataPath + folderName + levelName + FileExtension;

        //make sure the file actually exists
        if (File.Exists(dataPath))
        {
            BinaryFormatter binaryFormatter = new BinaryFormatter();
            FileStream      fileStream      = File.Open(dataPath, FileMode.Open);

            try
            {
                saveData = (LevelSaveData)binaryFormatter.Deserialize(fileStream);
            }
            catch (System.Exception e)
            {
                PlatformSafeMessage("Level Deserialization Failed: " + e.Message);
            }
            finally
            {
                //always close the fileStream
                fileStream.Close();
            }
        }
        return(saveData);
    }
示例#7
0
 //--------------------------------------------------------------------------------------------------
 //-- LOAD
 //--------------------------------------------------------------------------------------------------
 public void Load()
 {
     if (File.Exists(path))
     {
         BinaryFormatter bf   = new BinaryFormatter();
         FileStream      file = File.Open(path, FileMode.Open);
         lastSaveData = (GameSaveData)bf.Deserialize(file);
         file.Close();
         Debug.Log("Current Level:" + lastSaveData.currentLevel);
         string        level     = SceneManager.GetActiveScene().name;
         LevelSaveData levelData = lastSaveData.GetLevelDataFor(level);
         if (levelData == null)
         {
             Debug.Log("Level Data null");
         }
         else
         {
             Debug.Log("Level Data found!");
             ActivateSavePoints(levelData);
             DeleteCollectables(levelData);
             SetSpawnPosition(levelData);
             SkipCutScenes(levelData);
         }
     }
 }
示例#8
0
    protected override void Execute()
    {
        string        levelFileName = StringHelper.ConvertToXMLCompatible(levelNameStatus.Name);
        LevelSaveData levelSaveData = SerializeHelper.Deserialize <LevelSaveData>(LevelDataPath.Path + levelFileName);

        deserializedLevelSaveDataStatus.LevelSaveData = levelSaveData;
    }
示例#9
0
    public static LevelSaveData Load(string name)
    {
        string        fullPath;
        LevelSaveData levelSaveData = new LevelSaveData();

        if (name != "tutorial" && name != "zoo" && name != "parkour")
        {
            fullPath = Application.persistentDataPath + directory + name + ".txt";
            if (File.Exists(fullPath))
            {
                string json = File.ReadAllText(fullPath);
                levelSaveData = JsonUtility.FromJson <LevelSaveData>(json);
            }
            else
            {
                Debug.Log("Save file does not exist");
            }
        }
        else
        {
            TextAsset text = Resources.Load <TextAsset>(name);
            string    json = text.text;
            levelSaveData = JsonUtility.FromJson <LevelSaveData>(json);
        }

        return(levelSaveData);
    }
示例#10
0
    public void SaveLevelSaveDataEntry(LevelSaveData levelSaveData, string id)
    {
        var tempDict = LevelProgress;

        tempDict [id] = levelSaveData;
        LevelProgress = tempDict;
    }
示例#11
0
    public static void Save(LevelSaveData levelSaveData, string name)
    {
        int    saveNumber = 0;
        string dir        = Application.persistentDataPath + directory;

        if (!Directory.Exists(dir))
        {
            Directory.CreateDirectory(dir);
        }

        while (File.Exists(dir + name + saveNumber + ".txt") && name != "testedLevel")
        {
            saveNumber++;
        }
        GameObject.FindGameObjectWithTag("TestSave").GetComponent <EditorController>().saveNumber = saveNumber;
        string json = JsonUtility.ToJson(levelSaveData);

        if (name == "testedLevel")
        {
            File.WriteAllText(dir + name + ".txt", json);
        }
        else
        {
            File.WriteAllText(dir + name + saveNumber + ".txt", json);
        }
    }
    public void LoadData(bool shouldSave)
    {
        foreach (LevelSelectButton levelSelect in allGrassyLevels)
        {
            LevelSelectInfo lSelect    = levelSelect.levelToTravelTo;
            string          loadString = "LevelData_" + lSelect.buildSceneNumber.ToString();
            if (ES3.KeyExists(loadString))
            {
                LevelSaveData loadedData = ES3.Load <LevelSaveData>(loadString);
                lSelect.levelCompletionData             = new LevelCompletionData();
                lSelect.levelCompletionData.completed   = loadedData.completed;
                lSelect.levelCompletionData.earnedStars = loadedData.stars;
                lSelect.levelCompletionData.cratesUsed  = loadedData.cratesDropped;
            }
            else
            {
                lSelect.levelCompletionData             = new LevelCompletionData();
                lSelect.levelCompletionData.completed   = false;
                lSelect.levelCompletionData.earnedStars = 0;
                lSelect.levelCompletionData.cratesUsed  = 0;
                if (shouldSave)
                {
                    SaveProgress(false, 0, 0, true, lSelect);
                }
            }

            levelSelect.UpdateStars(grassyPalette);
        }
        UpdateUnlocks();
    }
    protected override void Execute()
    {
        string levelFileName = StringHelper.ConvertToXMLCompatible(levelNameStatus.Name);

        LevelSaveData levelSaveData = SerializeHelper.Deserialize <LevelSaveData>(LevelDataPath.Path + levelFileName);

        List <Vector2> standardTileGridPositions = levelSaveData.StandardTileGridPositions;

        List <Vector2> nonStandardTileGridPositions = new List <Vector2>();

        foreach (TileSaveData tileSaveData in levelSaveData.NonStandardTilesSaveData)
        {
            GenerateableTileNode generateableTileNode = GenerateableTileLibrary.GetGeneratableTileNode(tileSaveData.TileType);
            if (!generateableTileNode.UserGenerated)
            {
                continue;
            }
            nonStandardTileGridPositions.Add(tileSaveData.GridPosition);
        }

        List <Vector2> userGeneratedTileGridPositions = standardTileGridPositions.Concat(nonStandardTileGridPositions).ToList();

        TileGenerator.SpawnTiles(userGeneratedTileGridPositions);

        List <LevelObjectSaveData> levelObjectsSaveData = levelSaveData.LevelObjectsSaveData;

        SpawnLevelObjects(levelObjectsSaveData);
    }
    //Figure out how many new cups were earned
    public static int UpdateLevelSaveData(LevelSaveData levelSaveData)
    {
        int teacupsAlreadyEarnedInLevel = levelSaveData.teacupsEarnedOnLevel;

        int newTeacupsEarned = 0;

        //the first one is for completion
        if (teacupsAlreadyEarnedInLevel == 0)
        {
            newTeacupsEarned++;
        }

        //only earn it if you don't already have it
        if (!levelSaveData.earnedQuickTeacup)
        {
            if (ShouldEarnQuickTeacup())
            {
                newTeacupsEarned++;
                levelSaveData.earnedQuickTeacup = true;
            }
        }

        if (!levelSaveData.earnedSafeTeacup)
        {
            if (ShouldEarnCarefulTeacup())
            {
                newTeacupsEarned++;
                levelSaveData.earnedSafeTeacup = true;
            }
        }

        levelSaveData.teacupsEarnedOnLevel = teacupsAlreadyEarnedInLevel + newTeacupsEarned;
        return(newTeacupsEarned);
    }
示例#15
0
    /// <summary>
    ///
    /// </summary>
    /// <param name="saveData"></param>
    public static bool SaveLevelData(LevelSaveData saveData)
    {
        string dataPath = Application.persistentDataPath + folderName + saveData.levelName + FileExtension;

        BinaryFormatter binaryFormatter = new BinaryFormatter();
        FileStream      fileStream      = File.Open(dataPath, FileMode.OpenOrCreate);

        bool success = false;

        try
        {
            binaryFormatter.Serialize(fileStream, saveData);
            if (Web)
            {
                SyncFiles();
            }
            success = true;
        }
        catch (System.Exception e)
        {
            PlatformSafeMessage("Serialization Failed: " + e.Message);
        }
        finally
        {
            //always close the fileStream
            fileStream.Close();
        }
        return(success);
    }
示例#16
0
        public void Save(string levelName)
        {
            ClearLocalSaveDatas();
            string savePath = GetFullPath(levelName);

            LevelSaveData toSave = new LevelSaveData();

            {
                LevelObject[] levelObjects = GameObject.FindObjectsOfType <LevelObject>();
                if (levelObjects.Length > 0)
                {
                    foreach (var l in levelObjects)
                    {
                        _levelObjectDatas.Add(l.ToSaveData());
                    }
                }
            }

            toSave._levelObjectDatas = _levelObjectDatas;

            //Actual Save
            IFormatter formatter = new BinaryFormatter();
            Stream     stream    = new FileStream(savePath, FileMode.Create, FileAccess.Write, FileShare.None);

            formatter.Serialize(stream, toSave);
            stream.Close();
        }
示例#17
0
    public static void SaveData(int playerLevel, Dictionary <int, LevelData> levels)
    {
        // Create a reference to our BinaryFormatter and create a new file at specified path
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = File.Create(filePath);

        // Create new SaveData variable
        SaveData data = new SaveData();

        // Set the playerLevel value in the SaveData variable to the playerLevel
        data.playerLevel = playerLevel;
        // Loop through each level and copy level data to save data struct
        foreach (LevelData level in levels.Values)
        {
            LevelSaveData newLevel = new LevelSaveData();
            newLevel.rating = level.rating;
            newLevel.score  = level.score;
            data.levelData.Add(newLevel);
        }

        // Serialize our file with the GameData class and close the file
        bf.Serialize(file, data);
        file.Close();
        Debug.Log("Game saved to: " + filePath + " successfully");
    }
示例#18
0
    public void NewGameProcess()
    {
        gameSessionData = new GameSessionData();
        gameSessionData.wipeAbilityCount         = 2;
        gameSessionData.doubleDamageAbilityCount = 2;
        gameSessionData.freezeAbilityCount       = 2;
        gameSessionData.shieldAbilityCount       = 2;
        gameSessionData.planetStatus.Add(1, false);

        /*gameSessionData.planetStatus.Add (2, false);
        *  gameSessionData.planetStatus.Add (3, false);
        *  gameSessionData.planetStatus.Add (4, false);
        *  gameSessionData.planetStatus.Add (5, false);
        *  gameSessionData.planetStatus.Add (6, false);*/

        for (int i = 1; i <= 6; i++)
        {
            LevelSaveData levelSaveData = new LevelSaveData();
            levelSaveData.levelID  = 1;
            levelSaveData.planetID = i;
            gameSessionData.levels.Add(i.ToString() + "_1", levelSaveData);
        }

        SaveGameSessionData();
    }
示例#19
0
    protected override void Execute()
    {
        LevelSaveData levelSaveData = deserializedLevelSaveDataStatus.LevelSaveData;

        List <LevelObjectSaveData> levelObjectsSaveData = levelSaveData.LevelObjectsSaveData;

        SpawnLevelObjects(levelObjectsSaveData);
    }
示例#20
0
 private void CreateObjectsFromSaveData(LevelSaveData data)
 {
     foreach (var l in data._levelObjectDatas)
     {
         NodeSideInfo info = BoardManager.Instance.CurrentBoard.GetNodeInfoAt(l._boardX, l._boardY, l._boardZ, l._installedSide);
         LevelCreator.Instance.InstallObjectAtNode(info, l._prefabIndex, l._offset, l._rotation);
     }
 }
 static void GatherLevelData()
 {
     if (baseLevels == null)
     {
         baseLevels = new LevelSaveData();
     }
     baseLevels.levels = LevelManager.GameLevels;
 }
    //required for proper teacup progress to be saved
    public static void UpdateCurrentLevelDataWithPrevious()
    {
        LevelSaveData previousLevelData = SaveManager.GetLevelData(GameManager.instance.activeLevel);

        GameManager.instance.globalSaveData.currentLevelSaveData.teacupsEarnedOnLevel = previousLevelData.teacupsEarnedOnLevel;
        GameManager.instance.globalSaveData.currentLevelSaveData.earnedQuickTeacup    = previousLevelData.earnedQuickTeacup;
        GameManager.instance.globalSaveData.currentLevelSaveData.earnedSafeTeacup     = previousLevelData.earnedSafeTeacup;
    }
    //retrieve data by finding the matching element in the level save data list
    public static LevelSaveData GetLevelData(GameLevel level)
    {
        GlobalSaveData globalSaveData = GameManager.instance.globalSaveData;

        List <LevelSaveData> levelSaveDataList = new List <LevelSaveData>(globalSaveData.levelSaveData);
        LevelSaveData        data = levelSaveDataList.Where(obj => obj.dataName == level.levelName).SingleOrDefault();

        return(data);
    }
示例#24
0
 //initialize using permanent data for a level, savedData can either be passed or a new empty object will be created
 public LevelData(LevelPermanentData permanentData, LevelSaveData savedData = null)
 {
     permData = permanentData;
     if (savedData == null)
     {
         savedData = new LevelSaveData(GetLevelID());
     }
     saveData = savedData;
 }
示例#25
0
    public void LevelComplete()
    {
        if (gameSessionData.levels.ContainsKey(level.GetLevelKey()))
        {
            if (gameSessionData.levels [level.GetLevelKey()].points < currentPoints)
            {
                Interface.interfaceSt.winWindowOldPoints.text = System.Math.Round(gameSessionData.levels [level.GetLevelKey()].points, 0).ToString();
                float plusPoints = currentPoints - gameSessionData.levels [level.GetLevelKey()].points;
                Interface.interfaceSt.winWindowCurrentPoints.text = "+" + System.Math.Round(plusPoints, 0).ToString();
                gameSessionData.points        += plusPoints;
                gameSessionData.maximumPoints += plusPoints;
                gameSessionData.levels [level.GetLevelKey()].points = currentPoints;
            }
            else
            {
                Interface.interfaceSt.winWindowOldPoints.text     = System.Math.Round(gameSessionData.levels [level.GetLevelKey()].points, 0).ToString();
                Interface.interfaceSt.winWindowCurrentPoints.text = "+0";
            }
            gameSessionData.levels [level.GetLevelKey()].isComplete = true;
        }
        else
        {
            Interface.interfaceSt.winWindowOldPoints.text = "0";
            LevelSaveData levelSaveData = new LevelSaveData();
            levelSaveData.planetID   = level.planetID;
            levelSaveData.levelID    = level.levelID;
            levelSaveData.points     = currentPoints;
            levelSaveData.isComplete = true;
            gameSessionData.levels.Add(level.GetLevelKey(), levelSaveData);
            gameSessionData.points        += currentPoints;
            gameSessionData.maximumPoints += currentPoints;
        }


        Level         nextLevel        = Levels.GetNextLevel(level);
        LevelSaveData newLevelSaveData = new LevelSaveData();

        newLevelSaveData.planetID = nextLevel.planetID;
        newLevelSaveData.levelID  = nextLevel.levelID;
        //Debug.Log (nextLevel.GetLevelKey());
        if (!gameSessionData.levels.ContainsKey(nextLevel.GetLevelKey()))
        {
            gameSessionData.levels.Add(nextLevel.GetLevelKey(), newLevelSaveData);
        }

        if (level.planetID < nextLevel.planetID)
        {
            gameSessionData.planetStatus [level.planetID] = true;
            if (!gameSessionData.planetStatus.ContainsKey(nextLevel.planetID))
            {
                gameSessionData.planetStatus.Add(nextLevel.planetID, false);
            }
        }

        LevelController.instance.SaveGameSessionData();
    }
    public void LoadFromSave(LevelSaveData from)
    {
        unlocked = from.unlocked;
        passed   = from.passed;

        for (int i = 0; i < 3; i++)
        {
            bonusTokens[i] = from.bonusTokens[i];
        }
    }
    void SaveLevel()
    {
        var azure = new AzureMobileServices(_azureEndPoint, _applicationKey);
        var data  = new LevelSaveData()
        {
            SaveData = SavePositions(), Id = 1
        };

        azure.Update <LevelSaveData>(data);
    }
    void WriteToSaveData(string uid, Action <LevelSaveData> saveAction)
    {
        LevelSaveData saveData = null;

        if (!savedLevelsData.TryGetValue(uid, out saveData))
        {
            saveData = new LevelSaveData();
            savedLevelsData.Add(uid, saveData);
        }
        saveAction(saveData);
    }
示例#29
0
        public void SaveCurrentSpawnables(string fileName)
        {
            var levelConfigToSave = new LevelSaveData
            {
                levelHash    = LevelManager.Instance.currentLevel.hash,
                levelName    = LevelManager.Instance.currentLevel.name,
                dateModified = DateTime.Now,
            };

            var spawnedItems = SpawnableManager.SpawnedObjects;

            if (spawnedItems == null || !spawnedItems.Any())
            {
                return;
            }

            foreach (var spawnable in spawnedItems)
            {
                var instance = spawnable.SpawnedInstance;

                var objectSaveData = new GameObjectSaveData
                {
                    Id         = instance.name,
                    bundleName = spawnable.BundleName,
                    position   = new SerializableVector3(instance.transform.position),
                    rotation   = new SerializableQuaternion(instance.transform.rotation),
                    localScale = new SerializableVector3(instance.transform.localScale)
                };

                foreach (var settings in spawnable.Settings)
                {
                    var settingsSaveData = settings.ConvertToSaveSettings();
                    if (settingsSaveData != null)
                    {
                        objectSaveData.settings.Add(settingsSaveData);
                    }
                }

                levelConfigToSave.gameObjects.Add(objectSaveData);
            }

            string json = JsonConvert.SerializeObject(levelConfigToSave, new JsonSerializerSettings {
                TypeNameHandling = TypeNameHandling.Auto
            });

            var currentSaveDir = Path.Combine(SaveDir, levelConfigToSave.levelName);

            if (!Directory.Exists(currentSaveDir))
            {
                Directory.CreateDirectory(currentSaveDir);
            }

            File.WriteAllText(Path.Combine(currentSaveDir, $"{fileName}.json"), json);
        }
    public void SaveProgress(bool completed, int droppedCrates, int stars, bool shouldLoad, LevelSelectInfo lSave)
    {
        LoadData(false);
        string        saveString = "LevelData_" + lSave.buildSceneNumber.ToString();
        LevelSaveData lSaveData  = new LevelSaveData();

        lSaveData.stars         = stars;
        lSaveData.cratesDropped = droppedCrates;
        lSaveData.completed     = completed;

        ES3.Save <LevelSaveData>(saveString, lSaveData);
    }
示例#31
0
    public void Load(LevelSaveData level)
    {
        currentLevel = level;
        sprite_icon.spriteName = level.icon;
        inpt_name.text = level.name;
        inpt_spaceObjectsAtScreen.text = level.spaceObjectsAtScreen.ToString ();
        inpt_spaceObjectsGenerationFrequency.text = level.spaceObjectsGenerationFrequency.ToString ();
        inpt_spaceObjectsInLevel.text = level.spaceObjectsInLevel.ToString ();
        inpt_vc_DistanceToPass.text = level.vc_DistanceToPass.ToString ();
        inpt_vc_ShipsNumToDestroy.text = level.vc_ShipsNumToDestroy.ToString ();

        RefreshSpaceObjectsList ();
        poplst_spaceObjects.selection = "-";
        poplst_spaceObjects.selection = poplst_spaceObjects.items [0];
    }
示例#32
0
    /// <summary>
    /// Clone this instance.
    /// </summary>
    public object Clone()
    {
        LevelSaveData ret = new LevelSaveData ();

        ret.icon = icon;
        ret.name = name;
        ret.spaceObjects = new List<string> (spaceObjects);
        ret.spaceObjectsAtScreen = spaceObjectsAtScreen;
        ret.spaceObjectsGenerationFrequency = spaceObjectsGenerationFrequency;
        ret.spaceObjectsInLevel = spaceObjectsInLevel;
        ret.vc_DistanceToPass = vc_DistanceToPass;
        ret.vc_ShipsNumToDestroy = vc_ShipsNumToDestroy;

        return ret;
    }
示例#33
0
 // Use this for initialization
 void Start()
 {
     resultSpawnHeight = (GameManager.SCREENHEIGHT * verticalSpawnOffset) + GameManager.SCREENHEIGHT;
     halfSpawnWidth = (GameManager.SCREENWIDTH - (GameManager.SCREENWIDTH * horizontalSpawnOffset)) * 0.5f;
     selectedLevel = MidSceneData.Instance.selectedLevel;
 }
 void SaveLevel()
 {
     var azure = new AzureMobileServices(_azureEndPoint, _applicationKey);
     var data = new LevelSaveData() { SaveData = SavePositions(), Id = 1 };
     azure.Update<LevelSaveData>(data);
 }
示例#35
0
 void Start()
 {
     int r = Random.Range (1000, 9999);
     currentLevel = new LevelSaveData ("Level" + r);
 }