public override void ViewRender() { base.ViewRender(); var product = Flagship; var channelId = ChannelInfo.ID; var cost = Marketing.GetChannelCost(product, channelId); cost = (long)ChannelInfo.costPerAd; var clients = Marketing.GetChannelClientGain(product, ChannelInfo); Cost.text = "for " + Format.Money(cost, true); Gain.text = Visuals.Positive("+" + Format.MinifyToInteger(clients)); // 2K => 3,3 // 10M => 6 bool isUpgrading = Marketing.IsActiveInChannel(product, channelId); var duration = Marketing.GetCampaignDuration(product, ChannelInfo); // Mathf.Log(clients, 5) / 2; var period = C.PERIOD * duration; var f = CurrentIntDate % period; var percent = Mathf.Ceil(f * 100 / period); if (isUpgrading) { var task = product.team.Teams[0].Tasks .First(t => t.IsMarketingTask && (t as TeamTaskChannelActivity).ChannelId == channelId); //Debug.Log("curr " + Format.FormatDate(CurrentIntDate) + " start " + Format.FormatDate(task.StartDate) + " end " + Format.FormatDate(task.EndDate)); RenderChannelProgress((CurrentIntDate - task.StartDate) * 100 / (task.EndDate - task.StartDate)); } else { RenderChannelProgress(0); } /*ProgressBar.SetValue(f, period); * ProgressBar.SetCustomText(percent + "%"); * * if (TextualProgress) * TextualProgress.text = percent + "%";*/ Draw(Fade, isUpgrading); Draw(ProgressBar, isUpgrading); return; bool needsToEnd = f < 2; // ScheduleUtils.IsMonthEnd(CurrentIntDate); /*if (needsToEnd && isUpgrading) * { * var task = product.team.Teams[0].Tasks.First(t => t.IsMarketingTask && (t as TeamTaskChannelActivity).ChannelId == channelId); * * //task.StartDate = * * Teams.RemoveTeamTask(Flagship, Q, task); * //Marketing.AddClients(product, clients); * * // Spawn animation * //Animate(Visuals.Positive($"+{Format.Minify(clients)} users")); * }*/ }