// Pushes a blob to a specified container with a specified content name public void PushBlob(string containerName, string cardNum, string rawData) { BlobHelper.PutBlob(containerName, cardNum, rawData); }
/// <summary> Builds a Replay string </summary> public void CreateReplay() { m_CurrentContainer = GetContainerToUse(); Replay replay = new Replay(); replay.Replay_ID = LevelManager.Instance.currentArt.ToString() + "L" + GameManager.Instance.timeMode.ToString() + "T" + TerrainGeneration.Instance.seed + "S" + RemoveSymbols(HUDManager.Instance.TimeAtDeath.ToString("F3")) + "G" + RemoveSymbols(HUDManager.Instance.PositionAtDeath.ToString("F")) + "P" + RemoveSymbols(HUDManager.Instance.VelocityAtDeath.ToString("F")) + "V" + ((PowerUpManager.Instance.PermPowerUps.Count > 0) ? (1) : (0)) + ((TerrainGeneration.Instance.friendSaved) ? (1) : (0)) + ((int)TerrainGeneration.Instance.powerUpChunkDrawn).ToString() + ((int)TerrainGeneration.Instance.obsChunkDrawn).ToString(); Debug.Log(replay.Replay_ID); //DEBUG replay.Level = LevelManager.Instance.currentArt.ToString(); replay.TimeOfDay = GameManager.Instance.timeMode.ToString(); replay.Seed = TerrainGeneration.Instance.seed; replay.PlatformIndex = TerrainGeneration.Instance.GeorgePlatform; replay.FriendSaved = TerrainGeneration.Instance.friendSaved; replay.PowerUpChunkDrawn = TerrainGeneration.Instance.powerUpChunkDrawn; replay.ObsChunkDrawn = TerrainGeneration.Instance.obsChunkDrawn; replay.PlayerInput = GameManager.Instance._playerState.GetComponent <PlayerData>().playerInput; replay.Time = GameManager.Instance._playerState.GetComponent <PlayerData>().animator.GetComponent <Player_FSM_Handler>().lastGlobalTime - TerrainGeneration.Instance.lastGameResetTime; replay.InputTime = GameManager.Instance._playerState.GetComponent <PlayerData>().timeTillplayerInput; replay.PermPowerUps = PowerUpManager.Instance.PermPowerUps; replay.XList.Add(GameManager.Instance._playerState.GetComponent <PlayerData>().replayStartPos.x); replay.YList.Add(GameManager.Instance._playerState.GetComponent <PlayerData>().replayStartPos.y); replay.XList.Add(GameManager.Instance._playerState.GetComponent <PlayerData>().replayStartVel.x); replay.YList.Add(GameManager.Instance._playerState.GetComponent <PlayerData>().replayStartVel.y); replay.XList.Add(GameManager.Instance._playerState.GetComponent <PlayerData>().playerFlickForce.x); replay.YList.Add(GameManager.Instance._playerState.GetComponent <PlayerData>().playerFlickForce.y); replay._georgeReplayData = GameManager.Instance._playerState.GetComponent <PlayerData>().replay1; replay._inputReplayData = GameManager.Instance._playerState.GetComponent <PlayerData>().inputReplay; replay.deathTime = GameManager.Instance._playerState.GetComponent <PlayerData>().timeOfDeath; replay.CreationDateTime = DateTime.UtcNow; Debug.Log("UTCTTime " + replay.CreationDateTime.ToLongDateString()); replay.Likes = 0; replay.Height = (uint)GameManager.Instance.BestHieghtAttained; m_RecentReplays.Add(replay); CurrentReplay = replay; BinaryFormatter bf = new BinaryFormatter(); FileStream fs = File.Create(Application.persistentDataPath + "/TempData.dat"); bf.Serialize(fs, replay); fs.Close(); FileStream fs2 = File.Open(Application.persistentDataPath + "/TempData.dat", FileMode.Open); BinaryReader br = new BinaryReader(fs2); byte[] bin = br.ReadBytes(Convert.ToInt32(fs2.Length)); string rawData = Convert.ToBase64String(bin); fs2.Close(); File.Delete(Application.persistentDataPath + "/TempData.dat"); blobHelper.PutBlob(m_CurrentContainer, replay.Replay_ID, rawData); m_Link = LinkMaker(replay.Replay_ID); Debug.Log("Share Link: " + m_Link); Share(); }