Compare commits

...

12 Commits

Author SHA1 Message Date
6b9413ec93 IsWIn bool in Match 2018-12-31 06:30:07 +03:00
16afdb74ac Implement LastMatchSR 2018-12-31 06:29:44 +03:00
0634e5c21b API 2018-12-31 06:29:19 +03:00
b8298a2c4c cleanup 2018-12-25 14:52:29 +03:00
74fc40f0d5 session win/loss 2018-12-25 14:22:57 +03:00
a2d7f8f888 stats class. Incomplete. Add In VS 2018-12-23 20:52:07 +03:00
74cd192c8a Formatting 2018-12-23 20:41:28 +03:00
8f3d764114 new variable in Match. DateTime String. 2018-12-23 20:40:58 +03:00
c54c61c4d9 Unessesery imports 2018-12-23 20:40:17 +03:00
dbcdef9bf0 Exception handling 2018-12-23 20:39:46 +03:00
2e78d7ccfe Ex handling and API changes 2018-12-23 20:19:13 +03:00
de978bb317 use of last match variable/field. 2018-12-23 20:18:28 +03:00
4 changed files with 90 additions and 34 deletions

View File

@ -71,7 +71,6 @@ namespace OWTrack
} }
} }
//Move to saveManeger.cs ?
private void loadSave() private void loadSave()
{ {
try try
@ -92,7 +91,7 @@ namespace OWTrack
} }
catch (Exception) catch (Exception)
{ {
MessageBox.Show("Could not load Save.\n" + MessageBox.Show("Could not load Save!\n" +
"Starting new save."); "Starting new save.");
tr = new Tracker(); tr = new Tracker();
} }
@ -143,6 +142,8 @@ namespace OWTrack
private void OWTrackFunc(bool state) => tr.settings.TrackOW = state; private void OWTrackFunc(bool state) => tr.settings.TrackOW = state;
private void update() private void update()
{
try
{ {
Wins.Text = tr.GetWins().ToString(); Wins.Text = tr.GetWins().ToString();
Losses.Text = tr.GetLosses().ToString(); Losses.Text = tr.GetLosses().ToString();
@ -155,6 +156,12 @@ namespace OWTrack
srTextBox.Text = null; srTextBox.Text = null;
saveManeger.SaveJSON(tr); saveManeger.SaveJSON(tr);
} }
catch (Exception e)
{
MessageBox.Show(e.Message);
}
}
private void AddMatch() private void AddMatch()
{ {
@ -163,7 +170,9 @@ namespace OWTrack
StartSR = tr.startSR, StartSR = tr.startSR,
newSR = tr.newSR, newSR = tr.newSR,
ChangeInSR = tr.srDiff(), 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); tr.GetCurrentSession().AddMatch(match);
} }
@ -226,12 +235,6 @@ namespace OWTrack
} }
finally finally
{ {
//if (!SRonce)
//{
// tr.startSR = sr;
// SRonce = true;
//}
//else tr.newSR = sr;
if (tr.GetCurrentSession().IsNewSession()) if (tr.GetCurrentSession().IsNewSession())
tr.startSR = sr; tr.startSR = sr;
else else

32
OWTrack/Statistics.cs Normal file
View 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)
{
}
}
}
}
}
}

View File

@ -22,7 +22,6 @@ using System;
using System.Diagnostics; using System.Diagnostics;
using System.Linq; using System.Linq;
using System.IO; using System.IO;
using System.Windows.Forms;
using System.Collections.Generic; using System.Collections.Generic;
namespace OWTrack namespace OWTrack
@ -128,8 +127,7 @@ namespace OWTrack
} }
catch (Exception e) catch (Exception e)
{ {
MessageBox.Show(e.Message); throw e;
return false;
} }
} }
@ -176,6 +174,7 @@ namespace OWTrack
class Session class Session
{ {
public int wins, losses = 0;
public int TotalMatches; public int TotalMatches;
public int SkillChange; public int SkillChange;
public int StartSR; public int StartSR;
@ -183,7 +182,7 @@ namespace OWTrack
public List<Match> Matches = new List<Match>(); public List<Match> Matches = new List<Match>();
/// <summary> /// <summary>
/// Start a new session with a starting Skill Rating /// Start a new session
///</summary> ///</summary>
public Session(int StartSR) public Session(int StartSR)
{ {
@ -192,21 +191,38 @@ namespace OWTrack
TotalMatches = 0; TotalMatches = 0;
} }
/// <summary>
/// Check if session does not have any matches
/// </summary>
/// <returns>Booelan</returns>
public bool IsNewSession() public bool IsNewSession()
{ {
if (Matches.Count == 0) return true; if (Matches.Count == 0) return true;
else return false; else return false;
} }
/// <summary>
/// Get last match in Matchs list
/// </summary>
/// <returns>Match</returns>
public Match GetLastMatch() public Match GetLastMatch()
{ {
return Matches.Last(); return Matches.Last();
} }
/// <summary>
/// Add Match to list
/// </summary>
/// <param name="match"></param>
public void AddMatch(Match match) public void AddMatch(Match match)
{ {
match.LastMatchSR = this.Matches.Last().newSR;
this.Matches.Add(match); this.Matches.Add(match);
this.TotalMatches = Matches.Count(); this.TotalMatches = Matches.Count();
if (match.IsWin)
wins++;
else
losses++;
} }
} }
@ -214,6 +230,8 @@ namespace OWTrack
{ {
public Match() { } public Match() { }
public DateTime dateTime { get; set; } public DateTime dateTime { get; set; }
public bool IsWin;
public string DateTimeSting;
public int StartSR; public int StartSR;
public int LastMatchSR; public int LastMatchSR;
public int newSR; public int newSR;

View File

@ -33,6 +33,10 @@ namespace OWTrack
public static string GetSaves() { return SAVES; } public static string GetSaves() { return SAVES; }
public static string GetCurrentDir() { return curDir; } public static string GetCurrentDir() { return curDir; }
/// <summary>
/// Paths of 'Program Files' folders.
/// </summary>
/// <returns></returns>
public struct ProgramFiles public struct ProgramFiles
{ {
public const string C = "C:\\Program Files"; public const string C = "C:\\Program Files";
@ -47,17 +51,16 @@ namespace OWTrack
/// <summary> /// <summary>
/// Deserialize saved tracker instance. /// Deserialize saved tracker instance.
/// </summary> /// </summary>
/// <returns></returns> /// <returns>Tracker</returns>
public static Tracker GetSavedTracker() public static Tracker GetSavedTracker()
{ {
try try
{ {
return JsonConvert.DeserializeObject<Tracker>(File.ReadAllText(Paths.GetSaves())); return JsonConvert.DeserializeObject<Tracker>(File.ReadAllText(Paths.GetSaves()));
} }
catch (Exception) catch (Exception e)
{ {
Exception ex = new Exception("json"); throw e;
throw ex;
} }
} }
@ -81,8 +84,8 @@ namespace OWTrack
/// <summary> /// <summary>
///Saves the Tracker Object. ///Saves the Tracker Object.
/// </summary> /// </summary>
/// <param name="tracker"></param> /// <param name="Tracker"></param>
/// <returns></returns> /// <returns>Boolean Value</returns>
public static bool SaveJSON(Tracker tracker) public static bool SaveJSON(Tracker tracker)
{ {
try try
@ -90,9 +93,9 @@ namespace OWTrack
File.WriteAllText(Paths.GetSaves(), JsonConvert.SerializeObject(tracker, Formatting.Indented)); File.WriteAllText(Paths.GetSaves(), JsonConvert.SerializeObject(tracker, Formatting.Indented));
return true; return true;
} }
catch (Exception) catch (Exception e)
{ {
return false; throw e;
} }
} }