Esempio n. 1
0
        /// <summary>
        /// Make an In App Purchase with this product ID
        /// </summary>
        /// <param name="braincloudProductId"></param>
        /// <param name="in_success"></param>
        /// <param name="in_failure"></param>
        public void BuyProductID(string braincloudProductId, SuccessCallback in_success = null, FailureCallback in_failure = null, bool in_forcedRealPurchase = false)
        {
            IAPProduct product = GetIAPProductByBrainCloudID(braincloudProductId);

#if DEBUG_IAP_ENABLED
            if (!in_forcedRealPurchase)
            {
                GStateManager.InitializeDelegate init = null;
                init = (BaseState state) =>
                {
                    IAPMessageSubState messageSubState = state as IAPMessageSubState;
                    if (messageSubState)
                    {
                        GStateManager.Instance.OnInitializeDelegate -= init;
                        messageSubState.LateInit(product, GPlayerMgr.Instance.OnVirtualCurrencies + in_success, in_failure);
                    }
                };

                GStateManager.Instance.OnInitializeDelegate += init;
                GStateManager.Instance.PushSubState(IAPMessageSubState.STATE_NAME);
            }
            else
#endif
            {
                handlePurchase(product.StoreProductId, GPlayerMgr.Instance.OnVirtualCurrencies + in_success, in_failure);
            }
        }
Esempio n. 2
0
 protected override void OnDestroy()
 {
     base.OnDestroy();
     OnInitializeDelegate = null;
     m_eventSystem = null;
     Destroy(this.gameObject);
 }
Esempio n. 3
0
 protected override void OnDestroy()
 {
     base.OnDestroy();
     OnInitializeDelegate = null;
     Destroy(this.gameObject);
     ActivateUpdateKeyboardMouseControlsCoroutine(false);
 }
Esempio n. 4
0
        // TODO:: refactor into Generic Message SubState
        #region GenericMessageSubState
        public static void DisplayMessageDialog(string title, string message, string buttonTxt, GenericMessageSubState.OnDialogAction onCloseAction = null)
        {
            if (GStateManager.Instance.NextSubStateId != GenericMessageSubState.STATE_NAME)
            {
                GStateManager.InitializeDelegate init = null;
                init = (BaseState state) =>
                {
                    GenericMessageSubState messageSubState = state as GenericMessageSubState;
                    if (messageSubState)
                    {
                        GStateManager.Instance.OnInitializeDelegate -= init;

                        Canvas canvas = state.GetComponentInChildren <Canvas>();
                        canvas.sortingOrder = GLOBAL_MSG_SORTING_ORDER;
                        if (messageSubState != null)
                        {
                            messageSubState.LateInit(title, message, onCloseAction, buttonTxt);
                        }
                    }
                };

                GStateManager.Instance.OnInitializeDelegate += init;
                GStateManager.Instance.PushSubState(GenericMessageSubState.STATE_NAME);
            }
        }
Esempio n. 5
0
        public static void DisplayMessageDialogTwoButton(string title, string message, string in_leftButtonTxt,
                                                         GenericMessageSubState.OnDialogAction onLeftAction = null, string in_rightButtonTxt = "", GenericMessageSubState.OnDialogAction onRightAction = null,
                                                         GenericMessageSubState.eButtonColors mainColor     = GenericMessageSubState.eButtonColors.GREEN, GenericMessageSubState.eButtonColors secondColor = GenericMessageSubState.eButtonColors.GREEN,
                                                         bool in_showCloseButton = false, GenericMessageSubState.OnDialogAction onCloseAction = null)
        {
            GStateManager.InitializeDelegate init = null;
            init = (BaseState state) =>
            {
                GStateManager.Instance.OnInitializeDelegate -= init;
                var    messageSubState = state as GenericMessageSubState;
                Canvas canvas          = state.GetComponentInChildren <Canvas>();
                canvas.sortingOrder = GLOBAL_MSG_SORTING_ORDER;
                messageSubState.LateInit(title, message, onLeftAction, in_leftButtonTxt, onRightAction, in_rightButtonTxt, in_showCloseButton, onCloseAction);
                messageSubState.SetButtonColors(mainColor, secondColor);
            };

            GStateManager.Instance.OnInitializeDelegate += init;
            GStateManager.Instance.PushSubState(GenericMessageSubState.STATE_NAME);
        }
        public static void PushImageGenericMessageSubStateHelper(string title, string message, string in_leftButtonTxt,
                                                                 OnDialogAction onLeftAction = null, string in_rightButtonTxt                 = "", OnDialogAction onRightAction = null,
                                                                 eButtonColors mainColor     = eButtonColors.GREEN, eButtonColors secondColor = eButtonColors.GREEN,
                                                                 bool in_showCloseButton     = false, OnDialogAction onCloseAction            = null, Image in_image = null)
        {
            GStateManager.InitializeDelegate init = null;
            init = (BaseState state) =>
            {
                GStateManager.Instance.OnInitializeDelegate -= init;
                var messageSubState = state as ImageGenericMessageSubState;
                if (messageSubState != null)
                {
                    Canvas canvas = state.GetComponentInChildren <Canvas>();
                    canvas.sortingOrder = HudHelper.GLOBAL_MSG_SORTING_ORDER;
                    messageSubState.LateInit(title, message, onLeftAction, in_leftButtonTxt, onRightAction, in_rightButtonTxt, in_showCloseButton, onCloseAction, in_image);
                    messageSubState.SetButtonColors(mainColor, secondColor);
                }
            };

            GStateManager.Instance.OnInitializeDelegate += init;
            GStateManager.Instance.PushSubState(STATE_NAME);
        }