protected override async Task ClickedPieceAsync(int deck) { if (_model.DrewDominoAsync == null) { throw new BasicBlankException("The drew domino was never populated. Rethink"); } await _model.DrewDominoAsync.Invoke(RemainingList.GetSpecificItem(deck)); //i think }
public D FindDoubleDomino(int whichOne) { var output = RemainingList.Single(Items => Items.FirstNum == whichOne && Items.SecondNum == whichOne); RemoveDomino(output); output.IsUnknown = false; return(output); }
protected void PassDominos() { if (_model.BoneYard !.RemainingList.Count() == 0) { throw new BasicBlankException("Cannot have 0 dominos after shuffling"); } PlayerList !.ForEach(ThisPlayer => { ThisPlayer.MainHandList.ReplaceRange(_model.BoneYard.FirstDraw(DominosToPassOut)); if (ThisPlayer.MainHandList.Count() == 0) { throw new BasicBlankException("Cannot have 0 dominos when passing out"); } }); AfterPassedDominos(); }
public async Task DrewDominoReceivedAsync(int deck) { D thisDomino = _model.BoneYard !.RemainingList.GetSpecificItem(deck); await DrawDominoAsync(thisDomino); }
public D DrawDomino() { int Decks = DrawPiece(); return(RemainingList.GetSpecificItem(Decks)); }