diff options
author | Kjetil Orbekk <kj@orbekk.com> | 2022-09-22 20:26:26 -0400 |
---|---|---|
committer | Kjetil Orbekk <kj@orbekk.com> | 2022-09-22 20:39:51 -0400 |
commit | 507a81f25dc6e38df91dce2eed63a8b7d282184f (patch) | |
tree | 6f2653409c7d528a0f85eccbb579c71429ecef6e /webapp/src/components | |
parent | 6a11eedc3df00c88bdf5fcb004f2afd4fa3dc49f (diff) |
Add component to show tricks played
Diffstat (limited to 'webapp/src/components')
-rw-r--r-- | webapp/src/components/game.rs | 5 | ||||
-rw-r--r-- | webapp/src/components/tricks_played.rs | 16 |
2 files changed, 18 insertions, 3 deletions
diff --git a/webapp/src/components/game.rs b/webapp/src/components/game.rs index 91b3022..b42f912 100644 --- a/webapp/src/components/game.rs +++ b/webapp/src/components/game.rs @@ -2,7 +2,7 @@ use crate::bridge_engine::{self, Contract, Player, DealInPlay, DealInPlayResult} use crate::card; use crate::card::Deal; use crate::card::Suit; -use crate::components::{Bidding, Hand, ShowBid, TrickInPlay}; +use crate::components::{Bidding, Hand, ShowBid, TrickInPlay, TricksPlayed}; use log::{error, info}; use yew::prelude::*; @@ -115,7 +115,7 @@ pub fn game() -> Html { } => { html! { <> - <p>{ "Time to play" }</p> + <TricksPlayed tricks={ playing_deal.tricks().clone() } /> <TrickInPlay in_progress={ playing_deal.trick_in_play().clone() } /> </> } @@ -129,7 +129,6 @@ pub fn game() -> Html { if let GameState::Play { contract, bidding, .. } = &*state { <ShowBid contract={contract.clone()} bidding={bidding.clone()}/> } - <p>{ format!("Phase: {:?}", &*state) }</p> <button onclick={shuffle}>{ "Shuffle" }</button> </div> <div class="center"> diff --git a/webapp/src/components/tricks_played.rs b/webapp/src/components/tricks_played.rs new file mode 100644 index 0000000..352a030 --- /dev/null +++ b/webapp/src/components/tricks_played.rs @@ -0,0 +1,16 @@ +use yew::prelude::*; +use crate::bridge_engine::Trick; + +#[function_component(TricksPlayed)] +pub fn tricks_played(props: &TricksPlayedProperties) -> Html { + html! { + <> + <p>{ format!("{} tricks played", props.tricks.len()) }</p> + </> + } +} + +#[derive(PartialEq, Properties, Clone)] +pub struct TricksPlayedProperties { + pub tricks: Vec<Trick>, +} |