using Koogle.Domain.Enums; namespace Koogle.Application.Games.Shit; /// /// Setup model for Scheiss-Spiel (Shit Game). /// public record ShitGameSetup : GameSetupModelBase { /// public override string GameType => "Shit"; /// /// The "Scheiss-Zahl" (1-9, default 5). /// When a player knocks down exactly this many pins, they must take the collected points. /// public int ShitNumber { get; init; } = 5; /// /// Starting points for each player (10-1000, default 50). /// public int StartNumber { get; init; } = 50; /// /// Creates a default ShitGameSetup with specified base parameters. /// public static ShitGameSetup Create( ThrowMode throwMode, int throwsPerRound, ParticipantsMode participantsMode, int shitNumber = 5, int startNumber = 50) => new() { ThrowMode = throwMode, ThrowsPerRound = throwsPerRound, ParticipantsMode = participantsMode, ShitNumber = shitNumber, StartNumber = startNumber }; }