public void BuildPile(UICardPile pile) { ClearPile(); SetCurrentPile(pile); BuildBottomCard(); BuildTopCard(); }
public void ResetPile() { UICard resetBottomCard = ResetBottomCard(); UICard resetTopCard = ResetTopCard(); UICard currentBottomCard = null; UICard currentTopCard = null; if (CurrentPile != null) { currentBottomCard = CurrentPile.BottomCard; currentTopCard = CurrentPile.TopCard; } else { BuildPile(new UICardPile()); } if (currentBottomCard != resetBottomCard) { UICardPile newPile = new UICardPile(); newPile.PileCard(resetBottomCard); newPile.PileCard(resetTopCard); BuildPile(newPile); } else if (currentTopCard != resetTopCard) { CurrentPile.PileCard(resetTopCard); } }
private static UICardDesk NewDatabaseDesk(Database database, out UICard dataBaseCard) { UICardPile[] cardPiles = new UICardPile[] { new UICardPile(), new UICardPile() }; dataBaseCard = UICard.NewCard(typeof(Database), false, false, database); cardPiles[0].PileCard(dataBaseCard); return(new UICardDesk(cardPiles)); }
private void OnEndEditCalulatorInputCard(UICardDesk desk, UICardPile pile, UICard card) { if (card != null && card == calculatorInputCard) { RefreshCalculator(); } }
private void OnDealCard(UICardPile pile, UICard card) { if (pile == null || card == null || pile != CurrentPile) { return; } BuildBottomCard(); BuildTopCard(); }
private static UICardDesk NewCalculatorDesk(out UICard inputCard, out UICard outputCard) { UICardPile[] cardPiles = new UICardPile[] { new UICardPile(), new UICardPile() }; inputCard = UICard.NewCard(typeof(CalculatorInput), false, false); cardPiles[0].PileCard(inputCard); outputCard = UICard.NewCard(typeof(CalculatorOutput), true, false); cardPiles[1].PileCard(outputCard); return(new UICardDesk(cardPiles)); }
private void OnEndEditDatabaseCard(UICardDesk desk, UICardPile pile, UICard card) { if (card != null && card == databaseCard) { Database editedData = databaseCard.Data as Database; DatapackSerializer.Serialize(editedData, databaseSavePath); databaseCard.Data = editedData; //onSaveDatabase?.Invoke((Database)card.Data); } }
public void DealCard(int pileIndex, UICard card) { if (CardPiles == null || pileIndex < 0 || CardPiles.Length <= pileIndex) { return; } if (CardPiles[pileIndex] == null) { CardPiles[pileIndex] = new UICardPile(); } CardPiles[pileIndex].PileCard(card); }
private void OnCardRequest(UICardPile pile, UICard card) { if (pile == null || card == null || CardPiles == null || CardPiles.Length == 0) { return; } int pileIndex = Array.FindIndex(CardPiles, p => p.ContainsCard(card)); if (pileIndex < 0) { pileIndex = Array.IndexOf(CardPiles, pile); if (pileIndex >= 0) { pileIndex = (pileIndex + 1) % CardPiles.Length; } else { pileIndex = 0; } } DealCard(pileIndex, card); }
private void Reset() { CurrentPile = new UICardPile(); currentBottomDataType = "(null)"; currentTopDataType = "(null)"; }
private void SetCurrentPile(UICardPile newPile) { RemoveListenners(); CurrentPile = newPile != null ? newPile : new UICardPile(); AddListenners(); }
private void OnEndEditCard(UICardPile pile, UICard card) { onEndEditCard?.Invoke(this, pile, card); }