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--; } } }
public void MarkCrystalsOwedForOverload(int numCrystals) { if (numCrystals > 0) { this.m_overloadLocksAreShowing = true; } int num = 0; for (int i = 0; numCrystals != num; i++) { if (i == this.m_permanentCrystals.Count) { this.m_additionalOverloadedCrystalsOwedNextTurn += numCrystals - num; break; } ManaCrystal crystal = this.m_permanentCrystals[i]; if (!crystal.IsOwedForOverload()) { crystal.MarkAsOwedForOverload(); num++; } } }