public void SetAchievementStep(int taskID, int currentStep, int oldStep)
    {
        if (isConnected())
        {
            AchievementIdTable.AchievementIdData byTask = Singleton <AchievementIdTable> .I.GetByTask(taskID);

            if (byTask != null)
            {
                int goalNum = byTask.goalNum;
                if (currentStep < goalNum)
                {
                    double num = (double)currentStep * 100.0 / (double)goalNum;
                    Social.ReportProgress(byTask.key, num, (Action <bool>) delegate
                    {
                    });
                }
                else
                {
                    Social.ReportProgress(byTask.key, 100.0, (Action <bool>) delegate
                    {
                    });
                }
            }
        }
    }
    public void UnlockAchievement(int taskID)
    {
        if (isConnected())
        {
            AchievementIdTable.AchievementIdData byTask = Singleton <AchievementIdTable> .I.GetByTask(taskID);

            if (byTask != null)
            {
                Social.ReportProgress(byTask.key, 100.0, (Action <bool>) delegate(bool success)
                {
                    if (!success)
                    {
                        return;
                    }
                });
            }
        }
    }