Add deterministic post-action coach
This commit is contained in:
@@ -51,6 +51,7 @@ fun TableScreen(vm: PokerViewModel) {
|
||||
// Only show an action bar that belongs to the table currently on screen.
|
||||
val offer = state.liveOffer(rawOffer)
|
||||
val handSummary = state.visibleHandSummary()
|
||||
val coachReview = state.visibleCoachReview()
|
||||
val status = snap?.let(::tableStatus)
|
||||
|
||||
Column(
|
||||
@@ -147,6 +148,7 @@ fun TableScreen(vm: PokerViewModel) {
|
||||
nextHandRequested = state.nextHandRequested,
|
||||
rebuyRequired = state.heroNeedsRebuy,
|
||||
buyIn = state.gameConfig?.buyIn ?: DEFAULT_BUY_IN,
|
||||
coachReview = coachReview,
|
||||
heroFolded = hero?.folded == true,
|
||||
onFold = vm::fold,
|
||||
onCheckCall = vm::checkOrCall,
|
||||
@@ -247,6 +249,7 @@ private fun ActionBar(
|
||||
nextHandRequested: Boolean,
|
||||
rebuyRequired: Boolean,
|
||||
buyIn: Int,
|
||||
coachReview: com.jsjdesigns.poker.bot.CoachingReview?,
|
||||
heroFolded: Boolean,
|
||||
onFold: (Long) -> Unit,
|
||||
onCheckCall: (Long) -> Unit,
|
||||
@@ -262,6 +265,8 @@ private fun ActionBar(
|
||||
buyIn = buyIn,
|
||||
onNextHand = onNextHand,
|
||||
)
|
||||
} else if (coachReview != null) {
|
||||
CoachBar(coachPresentation(coachReview))
|
||||
} else {
|
||||
Box(Modifier.fillMaxWidth().height(96.dp), contentAlignment = Alignment.Center) {
|
||||
Text(
|
||||
@@ -335,6 +340,30 @@ private fun ActionBar(
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun CoachBar(presentation: CoachPresentation) {
|
||||
Card(
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
colors = CardDefaults.cardColors(containerColor = Color(0xFF14357A).copy(alpha = 0.48f)),
|
||||
) {
|
||||
Column(Modifier.fillMaxWidth().padding(12.dp)) {
|
||||
Text(
|
||||
"COACH • ${presentation.title}",
|
||||
color = Color(0xFFE3C179),
|
||||
fontWeight = FontWeight.Bold,
|
||||
fontSize = 12.sp,
|
||||
)
|
||||
Text(
|
||||
presentation.detail,
|
||||
color = Color.White.copy(alpha = 0.78f),
|
||||
fontSize = 12.sp,
|
||||
maxLines = 2,
|
||||
overflow = TextOverflow.Ellipsis,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun HandResultBar(
|
||||
summary: HandSummary,
|
||||
|
||||
Reference in New Issue
Block a user