private void ShowPurchasePopup(UnlockLootCrateSlotDialog.UnlockType unlockType) { this.unlockPrice = 0; int snoutPrice = LootCrateSlot.GetSnoutCoinPrice(this.crateType, this.TimeLeftInSeconds()); this.lootCrateSlots.ShowUnlockDialog(this.crateType, snoutPrice, (int)this.TimeLeftInSeconds(), delegate { if (unlockType == UnlockLootCrateSlotDialog.UnlockType.StartUnlocking) { this.ActivateLootCrateSlot(); } else if (GameProgress.UseSnoutCoins(snoutPrice)) { this.unlockPrice = snoutPrice; Singleton <AudioManager> .Instance.Spawn2dOneShotEffect(WPFMonoBehaviour.gameData.commonAudioCollection.snoutCoinUse); SnoutButton.Instance.UpdateAmount(false); this.OnCrateUnlocked(0); this.OpenCrate(); } }, unlockType); }
public void ShowUnlockDialog(LootCrateType crateType, int price, int timeLeft, TextDialog.OnConfirm onConfirm, UnlockLootCrateSlotDialog.UnlockType unlockType) { if (Singleton <BuildCustomizationLoader> .Instance.IsOdyssey) { return; } if (this.unlockCrateSlotDialogPrefab == null) { return; } if (this.unlockCrateSlotDialog == null) { this.unlockCrateSlotDialog = UnityEngine.Object.Instantiate <GameObject>(this.unlockCrateSlotDialogPrefab).GetComponent <UnlockLootCrateSlotDialog>(); } this.unlockCrateSlotDialog.Open(); this.unlockCrateSlotDialog.SetInfoLabel(unlockType); this.unlockCrateSlotDialog.SetOnConfirm(onConfirm); this.unlockCrateSlotDialog.InitPopup(price, timeLeft, LootCrateSlots.GetCratePrefab(crateType), crateType); }