Ejemplo n.º 1
0
 public void IapUnlock(LockManager.IAP_TYPE iapType, UnlockAnimCallbackWithItem callback = null)
 {
     if (iapType == LockManager.IAP_TYPE.FULL)
     {
         if (LockManager.IsFullUnlocked())
         {
             bool hasCallback = false;
             if (null != _arrayCharactersLockItem && _arrayCharactersLockItem.Length > 0)
             {
                 UnlockItemArray(_arrayCharactersLockItem, callback);
                 hasCallback = true;
             }
             if (null != _arrayAccessoriesLockItem && _arrayAccessoriesLockItem.Length > 0)
             {
                 UnlockItemArray(_arrayAccessoriesLockItem, callback);
                 hasCallback = true;
             }
             if (null != _arrayDecorationsLockItem && _arrayDecorationsLockItem.Length > 0)
             {
                 UnlockDecorationItemArray(_arrayDecorationsLockItem, callback);
                 hasCallback = true;
             }
             if (false == hasCallback)
             {
                 callback();
             }
         }
     }
     CheckHideShop();
 }
Ejemplo n.º 2
0
    private bool UnlockIapItem(string iapKey)
    {
        LockManager.IAP_TYPE iapType = LockManager.IAP_TYPE.NONE;
        bool isUnlock = true;

        if (iapKey == GameManager.Instance.KEY_FULL)
        {
            LockManager.UnlockFull();
            iapType = LockManager.IAP_TYPE.FULL;
        }
        else
        {
            isUnlock = false;
        }
        if (true == isUnlock)
        {
            UIManager.ShowMsgBox("Thank you for your purchase.");
        }
        else
        {
            UIManager.ShowMsgBox(string.Format("Purchase Product '{0}' Fail.", iapKey));
        }
        if (null != _iapCallback && iapType != LockManager.IAP_TYPE.NONE)
        {
            _iapCallback(iapType);
        }
        Close();
        return(isUnlock);
    }
Ejemplo n.º 3
0
    private bool UnlockIapItem(string iapKey)
    {
        LockManager.IAP_TYPE iapType = LockManager.IAP_TYPE.NONE;
        bool isUnlock = true;

        if (iapKey == GameDataManager.Instance.KEY_FULL)
        {
            LockManager.Instance.UnlockFull();
            iapType = LockManager.IAP_TYPE.FULL;
        }
        else
        {
            isUnlock = false;
        }
        if (null != _iapCallback && iapType != LockManager.IAP_TYPE.NONE)
        {
            _iapCallback(iapType);
        }
        Close();
        return(isUnlock);
    }
Ejemplo n.º 4
0
 public void ShowMiniShop(LockManager.IAP_TYPE shopType, string videoLockKey, ShopController.IapCallbackDelegate iapCallback = null, Callback.CallbackB videoLockCallback = null, Callback.CallbackV closeCallback = null)
 {
     AssetBundleManager.LoadAsset(_shopMiniBundleUrl, (AssetBundleManager.Asset asset) =>
     {
         GameObject obj = asset._assetBundle.LoadAsset <GameObject>("ShopMini");
         if (null == obj)
         {
             return;
         }
         GameObject targetObj   = Instantiate(obj);
         ShopController shop    = targetObj.GetComponent <ShopController>();
         shop.MiniShopType      = shopType;
         shop.VideoLockKey      = videoLockKey;
         shop.IapCallback       = iapCallback;
         shop.VideoLockCallback = videoLockCallback;
         shop.ShopCloseCallback = closeCallback;
         // TODO : handle close action for dipose asset
     }, (AssetBundleManager.Asset asset) =>
     {
         Debug.LogWarning("ShowMiniShop LoadAsset Fail");
     });
 }
Ejemplo n.º 5
0
    void OnRestoreQuerySuccess(string[] iapKeys)
    {
        if (null == iapKeys || iapKeys.Length == 0)
        {
            // PluginManager.Instance.internalSDk.popAlertDialog ("No purchase record has been found.");
            return;
        }
        bool hasFull = !string.IsNullOrEmpty(GameDataManager.Instance.KEY_FULL);

        for (int i = 0; i < iapKeys.Length; i++)
        {
            LockManager.IAP_TYPE iapType = LockManager.IAP_TYPE.NONE;
            string iapKey = iapKeys [i];
            if (iapKey.Equals(GameDataManager.Instance.KEY_FULL))
            {
                LockManager.Instance.UnlockFull();
                hasFull = true;
                //				iapType = UnlockManager.IAP_TYPE.FULL_VERSION;
            }
            else
            {
                continue;
            }
            if (null != _iapCallback && iapType != LockManager.IAP_TYPE.NONE)
            {
                _iapCallback(iapType);
            }
        }
        if (hasFull)
        {
            if (null != _iapCallback)
            {
                _iapCallback(LockManager.IAP_TYPE.FULL);
            }
        }
        // PluginManager.Instance.internalSDk.popAlertDialog ("Restore successfully.");
        Close();
    }