using System; using CIG.Translation; using CIGEnums; using SUISS.Core; using SUISSEngine; using UnityEngine; public class CIGRatingRequestManager : DefaultTwoStageRatingRequestManager { public CIGRatingRequestManager(MonoBehaviour anyMonobehaviour, INativeBindings nativeBindings, Messenger messenger) : base(anyMonobehaviour, nativeBindings, messenger, SingletonMonobehaviour.Instance.AppIdentifier, 26088, "City Island 3") { } protected override bool IsRatingRequestPopupConvenient { get { if (IsometricIsland.Current == null || IsometricIsland.Current.builder == null || !SingletonMonobehaviour.IsAvailable || !SingletonMonobehaviour.IsAvailable) { return false; } bool flag = SingletonMonobehaviour.Instance.fsm.CurrentState is HUDState; bool flag2 = IsometricIsland.Current.builder.isBuilding || IsometricIsland.Current.builder.isBuildingRoad; bool flag3 = !SingletonMonobehaviour.Instance.IsVisible; return flag && !flag2 && flag3; } } protected override void ShowPopup(ILocalizedString title, UISpriteType spriteType, ILocalizedString description, ILocalizedString yesButtonText, ILocalizedString noButtonText, Action yesButtonAction, Action noButtonAction, Action dissmissAction, bool dismissable = true) { if (!SingletonMonobehaviour.IsAvailable) { UnityEngine.Debug.LogError("[CIGRatingReuestManager] Failed to show popup: PopupManager was unavailable."); } SingletonMonobehaviour.Instance.RequestPopup(delegate(State state) { ((GenericPopupState)state).UpdateInfo(spriteType, title, description, yesButtonText, noButtonText, yesButtonAction, noButtonAction, dissmissAction, dismissable); }); } }