public void Roll(int pins) { frame.Load(pins); //special rule for last frame if (frame.Number == maxFrameCount && (frame.IsStrike() || frame.IsSpare())) { frame.IncreaseThrowCount(); } if (frame.IsStrike() || frame.ThrowCount() == frame.ThrowsPerFrame()) { frame = AddFrames(); } }