Skip to content

Commit d39404b

Browse files
committed
Add races filter, fix ocr not regconize properly
1 parent 67902e8 commit d39404b

File tree

3 files changed

+32
-57
lines changed

3 files changed

+32
-57
lines changed

Data/RaceData.cs

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,28 @@ namespace UmatoMusume.Data
1010
{
1111
public static class RaceData
1212
{
13-
public static List<Race> GetRaces(this List<Race> _races, string _dateTime, List<string> _grades)
13+
public static List<Race> GetRaces(this List<Race> _races, string _dateTime, List<string> _grades, List<string> _distanceTypes, List<string> _terrainTypes)
1414
{
15+
16+
var result = _races.DistinctBy(x => x.RaceName)
17+
.Where(x => x.Schedule.Equals(_dateTime) || Helper.CheckRatio(x.Schedule, _dateTime));
18+
1519
if (_grades.Any())
1620
{
17-
return _races.DistinctBy(x => x.RaceName)
18-
.Where(x => x.Schedule.Equals(_dateTime) || Helper.CheckRatio(x.Schedule, _dateTime))
19-
.Where(x => _grades.Contains(x.Grade))
20-
.ToList();
21+
result = result.Where(x => _grades.Contains(x.Grade));
2122
}
2223

23-
return _races
24-
.DistinctBy(x => x.RaceName)
25-
.Where(x => x.Schedule.Equals(_dateTime) || Helper.CheckRatio(x.Schedule, _dateTime))
26-
.ToList();
24+
if (_distanceTypes.Any())
25+
{
26+
result = result.Where(x => _distanceTypes.Contains(x.DistanceType));
27+
}
28+
29+
if (_terrainTypes.Any())
30+
{
31+
result = result.Where(x => _terrainTypes.Contains(x.Terrain));
32+
}
33+
34+
return result.ToList();
2735
}
2836

2937
public static List<string> GetRaceGrades(this List<Race> _races)

FrmMain.Designer.cs

Lines changed: 5 additions & 29 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

FrmMain.cs

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public partial class FrmMain : Form
2929
protected Hook.WinEventDelegate _winEventDelegate;
3030
static GCHandle _gcSafetyHandle;
3131

32-
private const string TARGET_PROCESS_NAME = "Photos";
32+
private const string TARGET_PROCESS_NAME = "UmamusumePrettyDerby";
3333
private const string FORM_TITLE = "UmatoMusume - Process Window Capture";
3434
private const int ATTACH_INTERVAL = 500;
3535
private const int CAPTURE_INTERVAL = 1000;
@@ -85,7 +85,6 @@ public FrmMain()
8585
}
8686

8787
_appWidth = Width;
88-
8988
InitFilter();
9089
}
9190

@@ -96,17 +95,9 @@ private void InitFilter()
9695
_raceTerrains = _raceList.GetRaceTerrains();
9796

9897
pGradeCheckboxes.FlowDirection = FlowDirection.LeftToRight;
99-
pGradeCheckboxes.WrapContents = false;
98+
pGradeCheckboxes.WrapContents = true;
10099
pGradeCheckboxes.AutoScroll = true;
101100

102-
pDistantTypeCheckboxes.FlowDirection = FlowDirection.LeftToRight;
103-
pDistantTypeCheckboxes.WrapContents = false;
104-
pDistantTypeCheckboxes.AutoScroll = true;
105-
106-
pTerrainCheckboxes.FlowDirection = FlowDirection.LeftToRight;
107-
pTerrainCheckboxes.WrapContents = false;
108-
pTerrainCheckboxes.AutoScroll = true;
109-
110101
foreach (var grade in _raceGrades)
111102
{
112103
var checkbox = new CheckBox
@@ -126,7 +117,7 @@ private void InitFilter()
126117
{
127118
_filterGrades.Remove(checkbox.Text);
128119
}
129-
SetRaceData(_filterGrades);
120+
SetRaceData(_filterGrades, _filterDistanceTypes, _filterTerrainTypes);
130121
};
131122

132123
pGradeCheckboxes.Controls.Add(checkbox);
@@ -150,9 +141,9 @@ private void InitFilter()
150141
{
151142
_filterDistanceTypes.Remove(checkbox.Text);
152143
}
153-
SetRaceData(_filterGrades);
144+
SetRaceData(_filterGrades, _filterDistanceTypes, _filterTerrainTypes);
154145
};
155-
pDistantTypeCheckboxes.Controls.Add(checkbox);
146+
pGradeCheckboxes.Controls.Add(checkbox);
156147
}
157148

158149
foreach (var terrain in _raceTerrains)
@@ -173,9 +164,9 @@ private void InitFilter()
173164
{
174165
_filterTerrainTypes.Remove(checkbox.Text);
175166
}
176-
SetRaceData(_filterGrades);
167+
SetRaceData(_filterGrades, _filterDistanceTypes, _filterTerrainTypes);
177168
};
178-
pTerrainCheckboxes.Controls.Add(checkbox);
169+
pGradeCheckboxes.Controls.Add(checkbox);
179170
}
180171
}
181172

@@ -471,12 +462,12 @@ private void SetData()
471462
}
472463
}
473464

474-
private void SetRaceData(List<string> _grades)
465+
private void SetRaceData(List<string> _grades, List<string> _distanceTypes, List<string> _terrainTypes)
475466
{
476467
rtbRaces.Clear();
477468
if (!string.IsNullOrEmpty(lblDate.Text))
478469
{
479-
var races = _raceList.GetRaces(lblDate.Text, _grades);
470+
var races = _raceList.GetRaces(lblDate.Text, _grades, _distanceTypes, _terrainTypes);
480471
if (races.Any())
481472
{
482473
foreach (var race in races)
@@ -532,7 +523,7 @@ await _rectConfigData.Upsert(new RectConfig
532523
return;
533524
}
534525

535-
private void lblDate_TextChanged(object sender, EventArgs e) => SetRaceData(_filterGrades);
526+
private void lblDate_TextChanged(object sender, EventArgs e) => SetRaceData(_filterGrades, _filterDistanceTypes, _filterTerrainTypes);
536527

537528
private async void FrmMain_ResizeEnd(object sender, EventArgs e)
538529
{

0 commit comments

Comments
 (0)