Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
This commit is contained in:
parent
388c517ba9
commit
c2518abad0
@ -442,7 +442,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.6;
|
||||
MARKETING_VERSION = 1.7;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.mbrucedogs.Baccarat;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
@ -480,7 +480,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.6;
|
||||
MARKETING_VERSION = 1.7;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.mbrucedogs.Baccarat;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
|
||||
@ -9,6 +9,9 @@ import SwiftUI
|
||||
import CasinoKit
|
||||
|
||||
/// Walkthrough steps for Baccarat onboarding.
|
||||
/// Note: Only includes elements that are ALWAYS visible during the betting phase.
|
||||
/// Conditional elements (bettingHint) are excluded to prevent
|
||||
/// the walkthrough from getting stuck when those views aren't rendered.
|
||||
enum BaccaratWalkthroughTags: SherpaTags {
|
||||
// MARK: - Top Bar Elements
|
||||
|
||||
@ -30,14 +33,11 @@ enum BaccaratWalkthroughTags: SherpaTags {
|
||||
/// Shows the road map history display
|
||||
case history
|
||||
|
||||
// MARK: - Gameplay Elements
|
||||
// MARK: - Gameplay Elements (always visible during betting phase)
|
||||
|
||||
/// Introduce the betting zones (Player, Banker, Tie)
|
||||
case bettingZone
|
||||
|
||||
/// Explain the betting hints showing patterns and tips
|
||||
case bettingHint
|
||||
|
||||
/// Explain the chip selector for choosing bet amounts
|
||||
case chipSelector
|
||||
|
||||
@ -111,15 +111,6 @@ enum BaccaratWalkthroughTags: SherpaTags {
|
||||
)
|
||||
}
|
||||
|
||||
case .bettingHint:
|
||||
return .custom(edge: .top) { onTap in
|
||||
WalkthroughCalloutView(
|
||||
icon: "lightbulb.fill",
|
||||
text: String(localized: "walkthrough.bettingHint"),
|
||||
onTap: onTap
|
||||
)
|
||||
}
|
||||
|
||||
case .chipSelector:
|
||||
return .custom(edge: .top) { onTap in
|
||||
WalkthroughCalloutView(
|
||||
|
||||
@ -4976,6 +4976,7 @@
|
||||
},
|
||||
"walkthrough.bettingHint" : {
|
||||
"comment" : "Walkthrough hint for the betting hint display",
|
||||
"extractionState" : "stale",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
|
||||
@ -331,7 +331,6 @@ struct GameTableView: View, SherpaDelegate {
|
||||
secondaryInfo: hintInfo.secondaryText,
|
||||
style: hintInfo.style
|
||||
)
|
||||
.sherpaTag(BaccaratWalkthroughTags.bettingHint)
|
||||
.transition(.opacity)
|
||||
.padding(.vertical, Design.Spacing.small)
|
||||
.debugBorder(showDebugBorders, color: .purple, label: "Hint")
|
||||
@ -448,7 +447,6 @@ struct GameTableView: View, SherpaDelegate {
|
||||
secondaryInfo: hintInfo.secondaryText,
|
||||
style: hintInfo.style
|
||||
)
|
||||
.sherpaTag(BaccaratWalkthroughTags.bettingHint)
|
||||
.transition(.opacity)
|
||||
.padding(.vertical, Design.Spacing.small)
|
||||
.debugBorder(showDebugBorders, color: .purple, label: "Hint")
|
||||
|
||||
@ -421,7 +421,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.6;
|
||||
MARKETING_VERSION = 1.7;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.mbrucedogs.Blackjack;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
STRING_CATALOG_GENERATE_SYMBOLS = YES;
|
||||
@ -454,7 +454,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.6;
|
||||
MARKETING_VERSION = 1.7;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.mbrucedogs.Blackjack;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
STRING_CATALOG_GENERATE_SYMBOLS = YES;
|
||||
|
||||
@ -32,18 +32,12 @@ enum BlackjackWalkthroughTags: SherpaTags {
|
||||
/// Introduce the betting zone where chips are placed
|
||||
case bettingZone
|
||||
|
||||
/// Explain the betting hints based on card count
|
||||
case bettingHint
|
||||
|
||||
/// Explain the chip selector for choosing bet amounts
|
||||
case chipSelector
|
||||
|
||||
/// Show the deal button to start the round
|
||||
case dealButton
|
||||
|
||||
/// Explain player actions during the hand
|
||||
case playerActions
|
||||
|
||||
func makeCallout() -> Callout {
|
||||
switch self {
|
||||
// Top Bar
|
||||
@ -102,15 +96,6 @@ enum BlackjackWalkthroughTags: SherpaTags {
|
||||
)
|
||||
}
|
||||
|
||||
case .bettingHint:
|
||||
return .custom(edge: .top) { onTap in
|
||||
WalkthroughCalloutView(
|
||||
icon: "lightbulb.fill",
|
||||
text: String(localized: "walkthrough.bettingHint"),
|
||||
onTap: onTap
|
||||
)
|
||||
}
|
||||
|
||||
case .chipSelector:
|
||||
return .custom(edge: .top) { onTap in
|
||||
WalkthroughCalloutView(
|
||||
@ -128,15 +113,6 @@ enum BlackjackWalkthroughTags: SherpaTags {
|
||||
onTap: onTap
|
||||
)
|
||||
}
|
||||
|
||||
case .playerActions:
|
||||
return .custom(edge: .top) { onTap in
|
||||
WalkthroughCalloutView(
|
||||
icon: "hand.point.up.left.fill",
|
||||
text: String(localized: "walkthrough.playerActions"),
|
||||
onTap: onTap
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -3526,29 +3526,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"GAME STATS" : {
|
||||
"comment" : "Title for a section in the statistics sheet dedicated to blackjack-specific statistics.",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "GAME STATS"
|
||||
}
|
||||
},
|
||||
"es-MX" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "ESTADÍSTICAS DEL JUEGO"
|
||||
}
|
||||
},
|
||||
"fr-CA" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "STATISTIQUES DE JEU"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"Game Sessions" : {
|
||||
"comment" : "Title for the Game Sessions help page",
|
||||
"localizations" : {
|
||||
@ -3572,6 +3549,29 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"GAME STATS" : {
|
||||
"comment" : "Title for a section in the statistics sheet dedicated to blackjack-specific statistics.",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "GAME STATS"
|
||||
}
|
||||
},
|
||||
"es-MX" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "ESTADÍSTICAS DEL JUEGO"
|
||||
}
|
||||
},
|
||||
"fr-CA" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "STATISTIQUES DE JEU"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"GAME STYLE" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
@ -7789,6 +7789,7 @@
|
||||
},
|
||||
"walkthrough.bettingHint" : {
|
||||
"comment" : "Walkthrough hint for the betting hint display",
|
||||
"extractionState" : "stale",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
@ -7856,29 +7857,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"walkthrough.close" : {
|
||||
"comment" : "Walkthrough button to close/advance to next step",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Close"
|
||||
}
|
||||
},
|
||||
"es-MX" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Cerrar"
|
||||
}
|
||||
},
|
||||
"fr-CA" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Fermer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"walkthrough.chipSelector" : {
|
||||
"comment" : "Walkthrough hint for the chip selector",
|
||||
"localizations" : {
|
||||
@ -7902,6 +7880,29 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"walkthrough.close" : {
|
||||
"comment" : "Walkthrough button to close/advance to next step",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Close"
|
||||
}
|
||||
},
|
||||
"es-MX" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Cerrar"
|
||||
}
|
||||
},
|
||||
"fr-CA" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Fermer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"walkthrough.dealButton" : {
|
||||
"comment" : "Walkthrough hint for the deal button",
|
||||
"localizations" : {
|
||||
@ -7927,6 +7928,7 @@
|
||||
},
|
||||
"walkthrough.playerActions" : {
|
||||
"comment" : "Walkthrough hint for player action buttons",
|
||||
"extractionState" : "stale",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
|
||||
@ -84,7 +84,6 @@ struct ActionButtonsView: View {
|
||||
.transition(.scale.combined(with: .opacity))
|
||||
}
|
||||
}
|
||||
.sherpaTag(BlackjackWalkthroughTags.playerActions)
|
||||
.onAppear {
|
||||
animatedActions = availableActions
|
||||
}
|
||||
|
||||
@ -220,7 +220,6 @@ struct BlackjackTableView: View {
|
||||
// Betting hint based on count (only when card counting enabled)
|
||||
if let hint = state.bettingHint {
|
||||
BlackjackBettingHintView(hint: hint, trueCount: state.engine.trueCount)
|
||||
.sherpaTag(BlackjackWalkthroughTags.bettingHint)
|
||||
.transition(.opacity)
|
||||
.padding(.vertical, 10)
|
||||
.debugBorder(showDebugBorders, color: .purple, label: "BetHint")
|
||||
|
||||
2
Sherpa
2
Sherpa
@ -1 +1 @@
|
||||
Subproject commit 683a5b5c1805643d41b4ddd43edd110361668d93
|
||||
Subproject commit 62b1652aa7af19fdf210cd3a08a445358224e872
|
||||
Loading…
Reference in New Issue
Block a user