public void OnCurrentPlayerChanged() { this.m_additionalOverloadedCrystalsOwedThisTurn = this.m_additionalOverloadedCrystalsOwedNextTurn; this.m_additionalOverloadedCrystalsOwedNextTurn = 0; if (this.m_additionalOverloadedCrystalsOwedThisTurn > 0) { this.m_overloadLocksAreShowing = true; } else { this.m_overloadLocksAreShowing = false; } for (int i = 0; i < this.m_permanentCrystals.Count; i++) { ManaCrystal crystal = this.m_permanentCrystals[i]; if (crystal.IsOverloaded()) { crystal.UnlockOverload(); } if (crystal.IsOwedForOverload()) { this.m_overloadLocksAreShowing = true; crystal.PayOverload(); } else if (this.m_additionalOverloadedCrystalsOwedThisTurn > 0) { crystal.PayOverload(); this.m_additionalOverloadedCrystalsOwedThisTurn--; } } }
private void LoadCrystalCallback(string actorName, GameObject actorObject, object callbackData) { this.m_numCrystalsLoading--; if (this.m_manaCrystalWidth <= 0f) { if (UniversalInputManager.UsePhoneUI != null) { this.m_manaCrystalWidth = 0.33f; } else { this.m_manaCrystalWidth = actorObject.transform.FindChild("Gem_Mana").GetComponent <Renderer>().bounds.size.x; } } LoadCrystalCallbackData data = callbackData as LoadCrystalCallbackData; ManaCrystal component = actorObject.GetComponent <ManaCrystal>(); if (data.IsTempCrystal) { component.MarkAsTemp(); this.m_temporaryCrystals.Add(component); } else { this.m_permanentCrystals.Add(component); if (data.IsTurnStart) { if (this.m_additionalOverloadedCrystalsOwedThisTurn > 0) { component.PayOverload(); this.m_additionalOverloadedCrystalsOwedThisTurn--; } } else if (this.m_additionalOverloadedCrystalsOwedNextTurn > 0) { component.state = ManaCrystal.State.USED; component.MarkAsOwedForOverload(); this.m_additionalOverloadedCrystalsOwedNextTurn--; } base.StartCoroutine(this.UpdatePermanentCrystalStates()); } if (UniversalInputManager.UsePhoneUI != null) { component.transform.parent = this.manaGemBone.transform.parent; component.transform.localRotation = this.manaGemBone.transform.localRotation; component.transform.localScale = this.manaGemBone.transform.localScale; } else { component.transform.parent = base.transform; } component.transform.localPosition = Vector3.zero; component.PlayCreateAnimation(); SoundManager.Get().LoadAndPlay("mana_crystal_add", base.gameObject); this.UpdateLayout(); }