Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // (c) Copyright HutongGames, LLC 2010-2013. All rights reserved.
- using UnityEngine;
- using System.Collections.Generic;
- using Prime31;
- namespace HutongGames.PlayMaker.Actions
- {
- [ActionCategory("StoreKit")]
- [Tooltip("Consumes a purchased product so that it may be bought again. Android Only.")]
- public class ConsumeProduct : FsmStateAction
- {
- [RequiredField]
- [Tooltip("product ID from iTunesConnect. MUST match exactly what you have there!")]
- public FsmString productIdentifier;
- [RequiredField]
- public FsmEvent consumeFinished;
- public FsmEvent consumeFailed;
- [Tooltip("If a error occurs where should it be stored")]
- public FsmString errorString;
- public override void OnEnter()
- {
- #if UNITY_ANDROID && !UNITY_EDITOR
- GoogleIABManager.consumePurchaseSucceededEvent += consumePurchaseSucceededEvent;
- GoogleIABManager.consumePurchaseFailedEvent += consumePurchaseFailedEvent;
- GoogleIAB.consumeProduct( productIdentifier.Value );
- #else
- Finish();
- #endif
- }
- public override void OnExit() {
- GoogleIABManager.consumePurchaseSucceededEvent -= consumePurchaseSucceededEvent;
- GoogleIABManager.consumePurchaseFailedEvent -= consumePurchaseFailedEvent;
- }
- void consumePurchaseSucceededEvent( GooglePurchase purchase )
- {
- Debug.Log( "consumePurchaseSucceededEvent: " + purchase );
- Fsm.Event(consumeFinished);
- Finish();
- }
- void consumePurchaseFailedEvent( string error )
- {
- Debug.Log( "consumePurchaseFailedEvent: " + error );
- errorString.Value = error;
- Fsm.Event(consumeFailed);
- Finish();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement