Pad Rolemaster die chip values

This commit is contained in:
2026-04-03 01:54:04 +02:00
parent 923c6ae26d
commit 7d91e7c900

View File

@@ -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<string> { $"Roll {die.Roll}" };