diff --git a/RpgRoller/Components/Pages/HomeControls/RollDiceStrip.razor.cs b/RpgRoller/Components/Pages/HomeControls/RollDiceStrip.razor.cs index e295ef2..33802c6 100644 --- a/RpgRoller/Components/Pages/HomeControls/RollDiceStrip.razor.cs +++ b/RpgRoller/Components/Pages/HomeControls/RollDiceStrip.razor.cs @@ -26,10 +26,18 @@ public partial class RollDiceStrip if (string.Equals(die.Kind, RollDieKinds.RolemasterOpenEndedInitial, StringComparison.Ordinal) && !die.SignedContribution.HasValue) return $"({die.Roll:00})"; + if (IsRolemasterDie(die)) + { + return die.Kind switch + { + RollDieKinds.RolemasterOpenEndedHigh => $"+{die.Roll:00}", + RollDieKinds.RolemasterOpenEndedLowSubtract => $"-{die.Roll:00}", + _ => die.Roll.ToString("00") + }; + } + return die.Kind switch { - RollDieKinds.RolemasterOpenEndedHigh => $"+{die.Roll}", - RollDieKinds.RolemasterOpenEndedLowSubtract => $"-{die.Roll}", _ => RollDieGlyph(die.Roll) }; } @@ -71,6 +79,14 @@ public partial class RollDiceStrip return string.Join(" ", classes); } + private static bool IsRolemasterDie(RollDieResult die) + { + return die.Kind is RollDieKinds.RolemasterStandard or + RollDieKinds.RolemasterOpenEndedInitial or + RollDieKinds.RolemasterOpenEndedHigh or + RollDieKinds.RolemasterOpenEndedLowSubtract; + } + private static string RollDieTitle(RollDieResult die) { var labels = new List { $"Roll {die.Roll}" };