/// <summary> /// Открывает страницу результатов /// </summary> public void Show(RapperInfo rapper, int playerPoints, int rapperPoints) { _result = AnalyzeResult(rapper, playerPoints, rapperPoints); DisplayResult(); Open(); }
/// <summary> /// Начинает выполнение работы /// </summary> public override void StartWork(params object[] args) { _rapper = (RapperInfo)args[0]; _isFeat = (bool)args[1]; Open(); }
/// <summary> /// Отобажает информацию в UI /// </summary> private void DisplayInfo(RapperInfo info) { avatar.sprite = info.Avatar; nickname.text = info.Name; vocobulary.text = info.Vocobulary.ToString(); bitmaking.text = info.Bitmaking.ToString(); management.text = info.Management.ToString(); fans.text = $"{info.Fans}M"; }
/// <summary> /// Открывает персональную карточку репера /// </summary> public void Show(RapperInfo rapperInfo) { _rapper = rapperInfo; DisplayInfo(rapperInfo); CheckPlayerManager(); gameObject.SetActive(true); }
/// <summary> /// Создает элемент списка реперов /// </summary> private void CreateItem(RapperInfo info) { var rapperItem = Instantiate(rapperItemTemplate, listContainer); rapperItem.Setup(info); rapperItem.onClick += HandleItemClick; rapperItem.gameObject.SetActive(true); _rappersList.Add(rapperItem); }
/// <summary> /// Сохраняет информацию о фите /// </summary> public static void AddFeat(RapperInfo rapperInfo) { if (data.Feats.Contains(rapperInfo.Id)) { return; } data.Feats.Add(rapperInfo.Id); Instance.onFeat.Invoke(rapperInfo); }
/// <summary> /// Сохраняет информацию о батле /// </summary> public static void AddBattle(RapperInfo rapperInfo) { if (data.Battles.Contains(rapperInfo.Id)) { return; } data.Battles.Add(rapperInfo.Id); Instance.onBattle.Invoke(rapperInfo); }
/// <summary> /// Открывает страницу с результатами переговоров /// </summary> public void Show(RapperInfo rapper, int playerPoints, int rapperPoints, bool isFeat) { _rapper = rapper; _isFeat = isFeat; bool result = AnalyzeConversations(playerPoints, rapperPoints); DisplayResult(result, rapper.Name); Open(); }
/// <summary> /// Анализирует результаты батла /// </summary> private BattleResult AnalyzeResult(RapperInfo rapper, int playerPoints, int rapperPoints) { bool isWin = playerPoints != rapperPoints ? playerPoints > rapperPoints : Random.Range(0, 2) > 0; int fans = (int)fansChange.Evaluate(PlayerManager.Data.Fans) * (isWin ? +1 : -1); int hype = isWin ? winnerHype : loserHype; return(new BattleResult { RapperInfo = rapper, FansIncome = fans, HypeIncome = hype, IsWin = isWin }); }
/// <summary> /// Листенер события баттла с реальным репером /// </summary> private void CheckBattle(RapperInfo rapperInfo) { _lastRapperName = rapperInfo.Name; EqualCheckValue(AchievementsType.Battle, rapperInfo.Id, null); }
/// <summary> /// Листенер события фита с каким-то реальным репером /// </summary> private void CheckFeat(RapperInfo rapperInfo) { _lastRapperName = rapperInfo.Name; EqualCheckValue(AchievementsType.Feat, rapperInfo.Id, null); }
/// <summary> /// Инициализирует элемент списка /// </summary> public void Setup(RapperInfo info) { Info = info; avatar.sprite = info.Avatar; }
protected override void BeforePageClose() { base.BeforePageClose(); _rapper = null; }
protected override void AfterPageClose() { base.AfterPageClose(); _rapper = null; }
/// <summary> /// Открывает страницу настроек /// </summary> public void Show(RapperInfo rapper) { _rapper = rapper; Open(); }