Пример #1
0
 /// <summary>
 /// make sure to set the action BEFORE calling Login()
 /// </summary>
 /// <param name="result"></param>
 public void OnUserAchievement(ExecuteCloudScriptResult result)
 {
     if (OnGetAchievement != null)
     {
         FMPlayfabUserAchievementResult fmAchievementResult = new FMPlayfabUserAchievementResult(result);
         OnGetAchievement(fmAchievementResult);
     }
 }
Пример #2
0
    void DisplayAchievements(FMPlayfabUserAchievementResult rs)
    {
        if (rs.status == FMAchievementStatus.error)
        {
            Debug.Log(rs.ErrorMessage);
            return;
        }

        Debug.Log("display achievements " + FMPlayfabAchievements.Items.Count);
        Debug.Log("display user achievements " + FMPlayfabUserAchievement.Items.Count);
        //adding elements in grid
        foreach (FMAchievementItem item in FMPlayfabAchievements.Items)
        {
            GameObject          achievementPrefab = Instantiate(Resources.Load("FMAchievementItemUI")) as GameObject;
            FMAchievementItemUI itemData          = achievementPrefab.GetComponent <FMAchievementItemUI>();

            int currenIndex = FMPlayfabUserAchievement.Instance.GetUserAchievementFromKey(item.Key) != null?
                              FMPlayfabUserAchievement.Instance.GetUserAchievementFromKey(item.Key).CurrenIndex : 0;

            itemData.SetData(item, GetRewardIconName(item, currenIndex));
            itemData.Achievement = item;

            switch (itemData.GetCurrentState())
            {
            case FMAchievementState.Unclaimed:
                itemData.OnReward = OpenReward;
                break;

            case FMAchievementState.Claimed:
                itemData.SetRewardAsClaimed();
                break;
            }

            //Add to grid
            achievementPrefab.transform.parent     = grid.transform;
            achievementPrefab.transform.localScale = Vector3.one;
        }
        grid.Reposition();
    }