Beispiel #1
0
 public override void Load(string level)
 {
     _levelName = level;
     for (int i = 0; i < _anchors.Length; i++)
     {
         if (PlayerPrefs.HasKey(level + "_actionAnchorIndex_" + i + "_positionX"))
         {
             SavedObject savedObject  = GameDataStorage.GetSavedObject("action", i);
             var         actionObject = Instantiate(Resources.Load <ActionObject>("Prefabs/ActionObject/" + savedObject.Name));
             var         anchor       = _anchors.Where(a => a.GetPosition() == savedObject.Position).First();
             actionObject.SetPosition(anchor.GetPosition());
             anchor.SetChangeableObject(actionObject);
         }
     }
 }
    public override void Load(string level)
    {
        _levelName = level;

        for (int i = 0; i < _anchors.Length; i++)
        {
            if (PlayerPrefs.HasKey(level + "_spawnAnchorIndex_" + i + "_positionX"))
            {
                SavedObject savedObject = GameDataStorage.GetSavedObject("spawn", i);
                var         spawn       = _spawnPool.GetObject() as Spawn;
                var         anchor      = _anchors.Where(a => a.GetPosition() == savedObject.Position).First();
                if (anchor.IsFree)
                {
                    spawn.Upgrade(spawn.SpawnTime - PlayerPrefs.GetFloat(level + "_spawnIndex_" + i + "_spawnTime"));
                    spawn.LeaveThePoolAndRun(anchor.GetPosition());
                    anchor.SetChangeableObject(spawn as IUpgradeable);
                }
            }
        }
    }