private void OnAchievementDone(int index) { AchievementProperty achievementProperty = Resources.Load <AchievementData>(AchievementData.ResourcePath).achievementProperties[index]; int achieveLevel = _config.GetAchievementLevel(achievementProperty.achieveName); _config.TakeStatusPoints(achievementProperty.statusType.ToString(), achievementProperty.points[achieveLevel].point); _config.AddAchievementLevel(achievementProperty.achieveName); _uiController.SetCurrency(achievementProperty.points[achieveLevel].rewardType, _config.GiveCurrency(achievementProperty.points[achieveLevel].rewardType, achievementProperty.points[achieveLevel].reward)); achieveLevel = _config.GetAchievementLevel(achievementProperty.achieveName); _uiController.SetAchievementItem(index, achievementProperty.achieveName, achievementProperty.description, achievementProperty.statusType, achievementProperty.points[achieveLevel].rewardType.ToString(), achievementProperty.points[achieveLevel].reward, achieveLevel, achievementProperty.points[achieveLevel].point, _config.GetStatusPoint(achievementProperty.statusType.ToString())); _uiController.SetAchievementPoint(achievementProperty.statusType, _config.GetStatusPoint(achievementProperty.statusType.ToString())); }