Ejemplo n.º 1
0
    /// <summary>
    /// 押された情報の送信
    /// </summary>
    public void SendPushData()
    {
        // ボタンを押されたのでどのIDが押されたかを親へ教える
        parent.UpdateDescript(this.name, ReachAchievement);

        // ボタンが押されたので通知を削除する
        UserDataRecord    record;
        PlayFabPlayerData playerData = parent.GetPlayerData();

        if (playerData.isGet && playerData.data.TryGetValue("NOTICE_" + gameObject.name, out record))
        {
            if (record.Value == "TRUE")
            {
                playerData.SetPlayerData("NOTICE_" + gameObject.name, "FALSE");
                noticeIcon.enabled = false;
            }
        }
    }
Ejemplo n.º 2
0
    /// <summary>
    /// リーダーボードの取得に成功
    /// </summary>
    /// <param name="result">取得結果</param>
    private void OnGetLeaderboardSuccess(GetLeaderboardResult result)
    {
        Debug.Log($"ランキング(リーダーボード)の取得に成功しました");

        // 通信終了
        waitConnect.RemoveWait(gameObject.name);

        // リストを空にしてから受け取る
        entries.Clear();
        // 子の全削除
        foreach (Transform n in transform)
        {
            GameObject.Destroy(n.gameObject);
        }
        //result.Leaderboardに各順位の情報(PlayerLeaderboardEntry)が入っている
        foreach (var entry in result.Leaderboard)
        {
            entries.Add(entry);

            // PlayFabPlayerDataを人数分取得する
            string    objectName = "PlayFabPlayerData" + "Rank" + entry.Position;
            Transform trs        = transform.parent.Find(objectName);
            // 該当のゲームオブジェクトが作成されていなかったら作成する
            GameObject obj;
            if (trs == null)
            {
                obj = new GameObject(objectName);
                obj.transform.parent = this.transform;
                obj.AddComponent <PlayFabAutoRequest>();
                var playerData = obj.AddComponent <PlayFabPlayerData>();
                // ID指定をしてランキング内のプレイヤーデータの読み込みをする
                playerData.nominationID = entry.PlayFabId;
            }
            else
            {
                // 作成済みの場合はプレイヤーデータの更新をかける
                PlayFabPlayerData playerData = trs.gameObject.GetComponent <PlayFabPlayerData>();
                playerData.nominationID = entry.PlayFabId;
                // プレイヤーデータの取得要求をする
                playerData.RequestGetData();
            }
        }
        isGet = true;
    }
Ejemplo n.º 3
0
    /// <summary>
    /// 通知アイコンの有効化
    /// </summary>
    void EnableNoticeIcon()
    {
        UserDataRecord    record;
        PlayFabPlayerData playerData = parent.GetPlayerData();

        if (playerData.isGet && playerData.data.TryGetValue("NOTICE_" + gameObject.name, out record))
        {
            if (noticeIcon.enabled != true && record.Value == "TRUE")
            {
                noticeIcon.enabled = true;
            }
            else if (record.Value == "FALSE")
            {
                noticeIcon.enabled = false;
            }
        }
        else
        {
            noticeIcon.enabled = false;
        }
    }