Compare commits
16 Commits
master
...
develop-la
Author | SHA1 | Date | |
---|---|---|---|
417e364595 | |||
6b9413ec93 | |||
16afdb74ac | |||
0634e5c21b | |||
04371ef645 | |||
fdcdbdaa7c | |||
1360a570bc | |||
b8298a2c4c | |||
74fc40f0d5 | |||
a2d7f8f888 | |||
74cd192c8a | |||
8f3d764114 | |||
c54c61c4d9 | |||
dbcdef9bf0 | |||
2e78d7ccfe | |||
de978bb317 |
@ -34,14 +34,14 @@ namespace OWTrack
|
||||
private string Version = Program.Version.ToString();
|
||||
|
||||
public MainForm()
|
||||
{
|
||||
{
|
||||
InitializeComponent();
|
||||
tr = new Tracker();
|
||||
tr = new Tracker();
|
||||
loadSave();
|
||||
checkStatus();
|
||||
update();
|
||||
label4.Text = Version;
|
||||
Text = "OWTrack " + Version;
|
||||
Text = "OWTrack " + Version;
|
||||
}
|
||||
|
||||
private void checkStatus()
|
||||
@ -71,7 +71,6 @@ namespace OWTrack
|
||||
}
|
||||
}
|
||||
|
||||
//Move to saveManeger.cs ?
|
||||
private void loadSave()
|
||||
{
|
||||
try
|
||||
@ -92,7 +91,7 @@ namespace OWTrack
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
MessageBox.Show("Could not load Save.\n" +
|
||||
MessageBox.Show("Could not load Save!\n" +
|
||||
"Starting new save.");
|
||||
tr = new Tracker();
|
||||
}
|
||||
@ -144,16 +143,24 @@ namespace OWTrack
|
||||
|
||||
private void update()
|
||||
{
|
||||
Wins.Text = tr.GetWins().ToString();
|
||||
Losses.Text = tr.GetLosses().ToString();
|
||||
if (tr.newSR == 0)
|
||||
try
|
||||
{
|
||||
if (tr.srDiff() < 1) { srLabel.Text = tr.startSR.ToString() + " - 0"; }
|
||||
Wins.Text = tr.GetWins().ToString();
|
||||
Losses.Text = tr.GetLosses().ToString();
|
||||
if (tr.newSR == 0)
|
||||
{
|
||||
if (tr.srDiff() < 1) { srLabel.Text = tr.startSR.ToString() + " - 0"; }
|
||||
else srLabel.Text = tr.startSR.ToString() + " - " + tr.srDiff();
|
||||
}
|
||||
else srLabel.Text = tr.startSR.ToString() + " - " + tr.srDiff();
|
||||
srTextBox.Text = null;
|
||||
saveManeger.SaveJSON(tr);
|
||||
}
|
||||
else srLabel.Text = tr.startSR.ToString() + " - " + tr.srDiff();
|
||||
srTextBox.Text = null;
|
||||
saveManeger.SaveJSON(tr);
|
||||
catch (Exception e)
|
||||
{
|
||||
MessageBox.Show(e.Message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void AddMatch()
|
||||
@ -163,7 +170,9 @@ namespace OWTrack
|
||||
StartSR = tr.startSR,
|
||||
newSR = tr.newSR,
|
||||
ChangeInSR = tr.srDiff(),
|
||||
dateTime = DateTime.Now.Date
|
||||
dateTime = DateTime.Now.Date,
|
||||
DateTimeSting = DateTime.Now.ToString("hh:mm tt"),
|
||||
LastMatchSR = tr.GetCurrentSession().GetLastMatch().newSR,
|
||||
};
|
||||
tr.GetCurrentSession().AddMatch(match);
|
||||
}
|
||||
@ -226,12 +235,6 @@ namespace OWTrack
|
||||
}
|
||||
finally
|
||||
{
|
||||
//if (!SRonce)
|
||||
//{
|
||||
// tr.startSR = sr;
|
||||
// SRonce = true;
|
||||
//}
|
||||
//else tr.newSR = sr;
|
||||
if (tr.GetCurrentSession().IsNewSession())
|
||||
tr.startSR = sr;
|
||||
else
|
||||
|
@ -113,6 +113,7 @@
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="saveManeger.cs" />
|
||||
<Compile Include="Settings.cs" />
|
||||
<Compile Include="Tracker.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
|
43
OWTrack/Settings.cs
Normal file
43
OWTrack/Settings.cs
Normal file
@ -0,0 +1,43 @@
|
||||
/*Copyright(c) 2018 Hesham Systems LLC.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.*/
|
||||
|
||||
|
||||
namespace OWTrack
|
||||
{
|
||||
class Settings
|
||||
{
|
||||
public bool TrackSR, TrackOW = true;
|
||||
public string GamePath = "";
|
||||
|
||||
public Settings()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reset All values to defult
|
||||
/// </summary>
|
||||
public void Reset()
|
||||
{
|
||||
TrackOW = true;
|
||||
TrackSR = true;
|
||||
GamePath = "";
|
||||
}
|
||||
}
|
||||
}
|
32
OWTrack/Statistics.cs
Normal file
32
OWTrack/Statistics.cs
Normal file
@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Newtonsoft.Json;
|
||||
using System.Collections.Generic;
|
||||
|
||||
|
||||
namespace OWTrack
|
||||
{
|
||||
public class Statistics
|
||||
{
|
||||
private Tracker tr;
|
||||
public Statistics(Tracker tr)
|
||||
{
|
||||
this.tr = tr;
|
||||
}
|
||||
|
||||
public int GetTotalSkillChange()
|
||||
{
|
||||
int change = 0;
|
||||
foreach (var Session in tr.sessions)
|
||||
{
|
||||
if (Session.Matches.Count != 0)
|
||||
{
|
||||
foreach (var match in Session.Matches)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -22,7 +22,6 @@ using System;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.IO;
|
||||
using System.Windows.Forms;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace OWTrack
|
||||
@ -30,7 +29,7 @@ namespace OWTrack
|
||||
class Tracker
|
||||
{
|
||||
public int wins, losses, startSR, newSR, totalMatches = 0;
|
||||
|
||||
|
||||
public void addWin() => wins++;
|
||||
public void addLoss() => losses++;
|
||||
public void reduceWin() => wins--;
|
||||
@ -66,7 +65,7 @@ namespace OWTrack
|
||||
sessions.Clear();
|
||||
StartNewSeission();
|
||||
}
|
||||
|
||||
|
||||
public void StartNewSeission()
|
||||
{
|
||||
Session ses = new Session(startSR);
|
||||
@ -128,8 +127,7 @@ namespace OWTrack
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
MessageBox.Show(e.Message);
|
||||
return false;
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
@ -158,32 +156,17 @@ namespace OWTrack
|
||||
}
|
||||
}
|
||||
|
||||
class Settings
|
||||
{
|
||||
public bool TrackSR, TrackOW = true;
|
||||
public string GamePath = "";
|
||||
|
||||
/// <summary>
|
||||
/// Reset All values to defult
|
||||
/// </summary>
|
||||
public void Reset()
|
||||
{
|
||||
TrackOW = true;
|
||||
TrackSR = true;
|
||||
GamePath = "";
|
||||
}
|
||||
}
|
||||
|
||||
class Session
|
||||
{
|
||||
public int wins, losses = 0;
|
||||
public int TotalMatches;
|
||||
public int SkillChange;
|
||||
public int StartSR;
|
||||
public DateTime date;
|
||||
public List<Match> Matches = new List<Match>();
|
||||
public List<Match> Matches = new List<Match>();
|
||||
|
||||
/// <summary>
|
||||
/// Start a new session with a starting Skill Rating
|
||||
/// Start a new session
|
||||
///</summary>
|
||||
public Session(int StartSR)
|
||||
{
|
||||
@ -192,21 +175,38 @@ namespace OWTrack
|
||||
TotalMatches = 0;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Check if session does not have any matches
|
||||
/// </summary>
|
||||
/// <returns>Booelan</returns>
|
||||
public bool IsNewSession()
|
||||
{
|
||||
if (Matches.Count == 0) return true;
|
||||
else return false;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get last match in Matchs list
|
||||
/// </summary>
|
||||
/// <returns>Match</returns>
|
||||
public Match GetLastMatch()
|
||||
{
|
||||
return Matches.Last();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add Match to list
|
||||
/// </summary>
|
||||
/// <param name="match"></param>
|
||||
public void AddMatch(Match match)
|
||||
{
|
||||
match.LastMatchSR = this.Matches.Last().newSR;
|
||||
this.Matches.Add(match);
|
||||
this.TotalMatches = Matches.Count();
|
||||
if (match.IsWin)
|
||||
wins++;
|
||||
else
|
||||
losses++;
|
||||
}
|
||||
}
|
||||
|
||||
@ -214,6 +214,8 @@ namespace OWTrack
|
||||
{
|
||||
public Match() { }
|
||||
public DateTime dateTime { get; set; }
|
||||
public bool IsWin;
|
||||
public string DateTimeSting;
|
||||
public int StartSR;
|
||||
public int LastMatchSR;
|
||||
public int newSR;
|
||||
|
@ -33,6 +33,10 @@ namespace OWTrack
|
||||
public static string GetSaves() { return SAVES; }
|
||||
public static string GetCurrentDir() { return curDir; }
|
||||
|
||||
/// <summary>
|
||||
/// Paths of 'Program Files' folders.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public struct ProgramFiles
|
||||
{
|
||||
public const string C = "C:\\Program Files";
|
||||
@ -47,31 +51,13 @@ namespace OWTrack
|
||||
/// <summary>
|
||||
/// Deserialize saved tracker instance.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
/// <returns>Tracker</returns>
|
||||
public static Tracker GetSavedTracker()
|
||||
{
|
||||
try
|
||||
{
|
||||
return JsonConvert.DeserializeObject<Tracker>(File.ReadAllText(Paths.GetSaves()));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
Exception ex = new Exception("json");
|
||||
throw ex;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Deserialize saved tracker instance from a Custom path
|
||||
/// </summary>
|
||||
/// <param name="customPath"></param>
|
||||
/// <returns></returns>
|
||||
public static Tracker GetSavedTracker(string customPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
return JsonConvert.DeserializeObject<Tracker>(File.ReadAllText(customPath));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw e;
|
||||
@ -81,8 +67,8 @@ namespace OWTrack
|
||||
/// <summary>
|
||||
///Saves the Tracker Object.
|
||||
/// </summary>
|
||||
/// <param name="tracker"></param>
|
||||
/// <returns></returns>
|
||||
/// <param name="Tracker"></param>
|
||||
/// <returns>Boolean Value</returns>
|
||||
public static bool SaveJSON(Tracker tracker)
|
||||
{
|
||||
try
|
||||
@ -90,9 +76,9 @@ namespace OWTrack
|
||||
File.WriteAllText(Paths.GetSaves(), JsonConvert.SerializeObject(tracker, Formatting.Indented));
|
||||
return true;
|
||||
}
|
||||
catch (Exception)
|
||||
catch (Exception e)
|
||||
{
|
||||
return false;
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user