private void UpdateGeneratorIcon() { if (Services.PlanetService.CurrentPlanet.Id == PlanetConst.EARTH_ID) { if (generator.State == GeneratorState.Active) { staticGeneratorImage?.Deactivate(); ToggleAnimatedObject(Services.PlanetService.CurrentPlanet.Id, true); } else { staticGeneratorImage?.Activate(); ToggleAnimatedObject(Services.PlanetService.CurrentPlanet.Id, false); } } else { if (HasAnimatedImageForPlanet(Services.PlanetService.CurrentPlanet.Id)) { ToggleAnimatedObject(Services.PlanetService.CurrentPlanet.Id, true); staticGeneratorImage?.Deactivate(); } else { var generatorIconData = Services.ResourceService.GeneratorLocalData.GetLocalData(generator.GeneratorId).GetIconData(Services.PlanetService.CurrentPlanet.Id); ToggleAnimatedObject(Services.PlanetService.CurrentPlanet.Id, false); staticGeneratorImage?.Activate(); if (staticGeneratorImage != null) { staticGeneratorImage.overrideSprite = Services.ResourceService.GetSpriteByKey(generatorIconData.icon_id); } } } }
private void Setup() { Construct(); switch (boostService.State) { case BoostState.FirstCharger: { progressBack.Activate(); progressFill.overrideSprite = orangeSprite; readyToActivateText.Deactivate(); activateText.Activate(); activateText.text = Services.ResourceService.Localization.GetString("boost"); timerText.Activate(); button.interactable = false; videoAdIconImage.Deactivate(); x20Image.gameObject.Activate(); } break; case BoostState.Active: { progressBack.Activate(); progressFill.fillAmount = 1.0f; progressFill.overrideSprite = orangeSprite; readyToActivateText.Deactivate(); activateText.Activate(); activateText.text = Services.ResourceService.Localization.GetString("boost"); timerText.Activate(); button.interactable = true; videoAdIconImage.Deactivate(); x20Image.gameObject.Activate(); } break; case BoostState.ReadyToActivate: { progressBack.Deactivate(); readyToActivateText.Activate(); readyToActivateText.text = Services.ResourceService.Localization.GetString("megaboost"); activateText.Deactivate(); timerText.Deactivate(); button.interactable = true; videoAdIconImage.Deactivate(); x20Image.gameObject.Activate(); } break; case BoostState.Locked: { progressBack.Activate(); progressFill.overrideSprite = greenSprite; readyToActivateText.Deactivate(); activateText.Activate(); activateText.text = Services.ResourceService.Localization.GetString("unlocknow"); timerText.Activate(); button.interactable = true; videoAdIconImage.Activate(); x20Image.gameObject.Deactivate(); } break; } }
public void SetImageProperties(Sprite imageSprite = null, Color?newColor = null, bool keepAspectRatio = false) { ImageAnnouncement.Activate(); ImageAnnouncement.sprite = imageSprite; ImageAnnouncement.DOColor(newColor ?? Color.white, 0.5f); ImageAnnouncement.preserveAspect = keepAspectRatio; }
private void UpdateGeneratorIcon() { if (lockIcon == null) { return; } if (generatorPlanetIconData == null || (generatorPlanetIconData.planet_id != Services.PlanetService.CurrentPlanet.Id)) { generatorPlanetIconData = Services.ResourceService.GeneratorLocalData.GetLocalData(generator.GeneratorId) .GetIconData(Services.PlanetService.CurrentPlanet.Id); if (generatorPlanetIconData != null) { lockIcon.Activate(); if (generatorPlanetIconData.icon_id.IsValid()) { var sprite = Services.ResourceService.GetSpriteByKey(generatorPlanetIconData.lock_icon); if (sprite != null) { lockIcon.overrideSprite = sprite; } else { Debug.LogError($"Not found generator {generator.GeneratorId} icon for planet => {Services.PlanetService.CurrentPlanet.Id}"); lockIcon.MakeTransparent(); } } else { lockIcon.MakeTransparent(); } } } }
private void UpdateReadytOpenPlanetView() { actionButton.Activate(); actionButton.interactable = true; SetButtonGrayed(false); actionButtonName.Activate(); actionButtonName.text = Services.ResourceService.Localization.GetString("btn_launch"); progressParent.Deactivate(); priceParent.Deactivate(); buttonRocketImage.Activate(); moduleCollection.Deactivate(); //buttonRocketImage.overrideSprite = context.EndOpenedSprite; actionButton.SetListener(() => { Services.GetService <IPlanetService>().SetOpened(planetId); actionButton.GetComponent <Animator>()?.SetTrigger("click"); Services.ViewService.Remove(ViewType.PlanetsView); GameEvents.OnTutorialEvent(new TutorialEventData(TutorialEventName.OpenPlanetClicked, Planet.Id)); }); }
private void UpdateTabState(IPlanetService planetService) { //Now rocket game available also on Earth if (planetService.IsMoonOpened) { raceTabCarIconImage.overrideSprite = raceAvailableIconSprite; tabMoonImage.Deactivate(); } else { raceTabCarIconImage.overrideSprite = raceNotAvailableIconSprite; tabMoonImage.Activate(); } }
public void ShowProgress(float progress) { if (!IsDownloading) { if (IfDownloading != null) { IfDownloading.Invoke(false); } return; } var rProgress = progress / 100; //relative progress if (LoaderImage) { if (!LoaderImage.IsActive()) { LoaderImage.Activate(); DownloadIcon.Deactivate(); if (OnDownloadStarts != null) { OnDownloadStarts.Invoke(); } if (IfDownloading != null) { IfDownloading.Invoke(true); } } LoaderImage.fillAmount = rProgress; if (Downloading != null) { Downloading.Invoke(rProgress); } } _alreadyClicked = true; }
private void UpdateMiscImages() { IPlanetService planetService = Services.GetService <IPlanetService>(); if (planetService.IsOpened(PlanetConst.MARS_ID)) { marsImage.Deactivate(); } else { marsImage.Activate(); } if (planetService.IsOpened(PlanetConst.MOON_ID)) { moonImage.Deactivate(); } else { moonImage.Activate(); } }
public void Setup(ShipModuleInfo module) { this.module = module; ModuleNameData moduleNameData = Services.ResourceService.ModuleNameRepository.GetModuleNameData(module.Id); moduleNameText.text = Services.ResourceService.Localization.GetString(moduleNameData.name); switch (module.State) { case ShipModuleState.Opened: { currencyIconImage.Deactivate(); currencyText.Deactivate(); planetImage.Deactivate(); buyButton.Deactivate(); } break; case ShipModuleState.Available: { currencyIconImage.Activate(); currencyText.Activate(); planetImage.Deactivate(); buyButton.Activate(); } break; case ShipModuleState.Locked: { currencyIconImage.Activate(); currencyText.Activate(); planetImage.Activate(); buyButton.Activate(); } break; } currencyIconImage.overrideSprite = Services.ResourceService.GetCurrencySprite(module.CurrencyType); currencyText.text = BosUtils.GetCurrencyString(Currency.Create(module.CurrencyType, module.Price)); PlanetNameData planetNameData = Services.ResourceService.PlanetNameRepository.GetPlanetNameData(module.Data.PlanetId); if (planetNameData != null) { planetImage.overrideSprite = Services.ResourceService.GetSpriteByKey(planetNameData.icon); } else { planetImage.overrideSprite = Services.ResourceService.Sprites.FallbackSprite; } buyButton.SetListener(() => { var status = Services.GetService <IShipModuleService>().BuyModule(module.Id); switch (status) { case ModuleTransactionState.Success: { Services.SoundService.PlayOneShot(SoundName.buyUpgrade); Setup(module); } break; case ModuleTransactionState.NotEnoughCurrency: { if (module.CurrencyType == CurrencyType.Coins) { Services.ViewService.Show(ViewType.CoinRequiredView, new ViewData { UserData = (int)module.Price }); } } break; } }); IShipModuleService moduleService = Services.GetService <IShipModuleService>(); updateTimer.Setup(0.5f, (deltaTime) => { ModuleTransactionState moduleTransactionState; if (moduleService.IsAllowBuyModule(module.Id, out moduleTransactionState)) { buyButton.interactable = true; } else if (moduleTransactionState == ModuleTransactionState.NotEnoughCurrency && module.CurrencyType == CurrencyType.Coins) { buyButton.interactable = true; } else { buyButton.interactable = false; } }, true); MoveObject(module); }