/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed) { Exit(); } // TODO: Add your update logic here m_focusManager.UpdateFocus(); foreach (ButtonSprite button in m_buttons) { if (button == m_focusManager.SelectedButton) { button.ButtonTexture = button.ButtonActive; } else { button.ButtonTexture = button.ButtonInactive; } } m_focusManager.UpdatePauseFocus(BtnPause); base.Update(gameTime); }
/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed) { Exit(); } // touch exception property to avoid killing app if (null != TaskRequestProducts) { AggregateException exception = TaskRequestProducts.Exception; if (null != exception) { m_debugText = string.Format("Request Products has exception. {0}", exception); TaskRequestProducts.Dispose(); TaskRequestProducts = null; } } // touch exception property to avoid killing app if (null != TaskRequestPurchase) { AggregateException exception = TaskRequestPurchase.Exception; if (null != exception) { m_debugText = string.Format("Request Purchase has exception. {0}", exception); TaskRequestPurchase.Dispose(); TaskRequestPurchase = null; ClearPurchaseId(); } } // touch exception property to avoid killing app if (null != TaskRequestReceipts) { AggregateException exception = TaskRequestReceipts.Exception; if (null != exception) { m_debugText = string.Format("Request Receipts has exception. {0}", exception); TaskRequestReceipts.Dispose(); TaskRequestReceipts = null; } } // touch exception property to avoid killing app if (null != TaskRequestGamer) { AggregateException exception = TaskRequestGamer.Exception; if (null != exception) { m_debugText = string.Format("Request Gamer UUID has exception. {0}", exception); TaskRequestGamer.Dispose(); TaskRequestGamer = null; } } // TODO: Add your update logic here m_focusManager.UpdateFocus(); foreach (ButtonSprite button in m_buttons) { if (button == m_focusManager.SelectedButton) { button.ButtonTexture = button.ButtonActive; } else { button.ButtonTexture = button.ButtonInactive; } } if (m_focusManager.SelectedButton == BtnGetReceipts) { if (null != TaskRequestReceipts) { if (TaskRequestReceipts.IsCanceled) { m_debugText = "Request Receipts has cancelled."; } else if (TaskRequestReceipts.IsCompleted) { m_debugText = "Request Receipts has completed."; } } if (null != TaskRequestReceipts && null == TaskRequestReceipts.Exception && !TaskRequestReceipts.IsCanceled && TaskRequestReceipts.IsCompleted && null != TaskRequestReceipts.Result) { m_focusManager.UpdateReceiptFocus(TaskRequestReceipts.Result.Count); } } else if (m_focusManager.SelectedButton == BtnGetUUID) { if (null != TaskRequestGamer) { if (TaskRequestGamer.IsCanceled) { m_debugText = "Request Gamer UUID has cancelled."; } else if (TaskRequestGamer.IsCompleted) { m_debugText = string.Format("Request Gamer UUID: {0}", TaskRequestGamer.Result); } } if (null != TaskRequestReceipts && null == TaskRequestReceipts.Exception && !TaskRequestReceipts.IsCanceled && TaskRequestReceipts.IsCompleted && null != TaskRequestReceipts.Result) { m_focusManager.UpdateReceiptFocus(TaskRequestReceipts.Result.Count); } } else { if (m_focusManager.SelectedButton == BtnPurchase) { if (null != TaskRequestPurchase) { if (TaskRequestPurchase.IsCanceled) { m_debugText = "Request Purchase has cancelled."; ClearPurchaseId(); //clear the purchase id } else if (TaskRequestPurchase.IsCompleted) { if (TaskRequestPurchase.Result) { m_debugText = "Request Purchase has completed succesfully."; } else { m_debugText = "Request Purchase has completed with failure."; } ClearPurchaseId(); //clear the purchase id } } } else if (m_focusManager.SelectedButton == BtnGetProducts) { if (null != TaskRequestProducts) { if (TaskRequestProducts.IsCanceled) { m_debugText = "Request Products has cancelled."; } else if (TaskRequestProducts.IsCompleted) { if (TaskRequestProducts.Result.Count > 0) { m_debugText = "Request Products has completed with results."; } else { m_debugText = "Request Products has completed without results."; } } } } if (null != TaskRequestProducts && null == TaskRequestProducts.Exception && !TaskRequestProducts.IsCanceled && TaskRequestProducts.IsCompleted) { m_focusManager.UpdateProductFocus(TaskRequestProducts.Result.Count); } } m_focusManager.UpdatePauseFocus(BtnPause); base.Update(gameTime); }