//should only throw I/O related exceptions public void Load(string filename) { Ordinals.Clear(); Values.Clear(); AlreadyMissed.Clear(); Cursor = -1; StreamReader reader = new StreamReader(filename); string line = reader.ReadLine(); while (line != null) { if (!line.Trim().StartsWith("#")) { int tabIndex = line.IndexOf('\t'); if (tabIndex != -1) { string ordinal = line.Substring(0, tabIndex).Trim(); string value = line.Substring(tabIndex).Trim(); if (ordinal != "" && value != "") { Ordinals.Add(ordinal); Values.Add(value); AlreadyMissed.Add(false); } } } line = reader.ReadLine(); } reader.Close(); }
public bool TryResponse(string response) { bool ret = false; string expected = (Polarity == MemoryPractice.Polarity.OrdinalFirst ? Values[Cursor] : Ordinals[Cursor]); if (expected.ToLower() == response.ToLower()) { ret = true; Ordinals.RemoveAt(Cursor); Values.RemoveAt(Cursor); AlreadyMissed.RemoveAt(Cursor); } else { if (!AlreadyMissed[Cursor]) { missCount++; } AlreadyMissed[Cursor] = true; } LastRightAnswer = expected; switch (Order) { case MemoryPractice.Order.Forward: //if (!ret) // Cursor++; break; case MemoryPractice.Order.Backwards: if (ret) { Cursor--; } break; default: Cursor = random.Next(Ordinals.Count); break; } return(ret); }
public bool OrdinalIsPressed(Ordinals direction) { if (!Engaged) { return(false); } switch (direction) { case Ordinals.North: return(AngleNear(0)); case Ordinals.South: return(AngleNear(180)); case Ordinals.East: return(AngleNear(90)); case Ordinals.West: return(AngleNear(270)); case Ordinals.NorthEast: return(AngleNear(45)); case Ordinals.NorthWest: return(AngleNear(240 + 45)); case Ordinals.SouthEast: return(AngleNear(90 + 45)); case Ordinals.SouthWest: return(AngleNear(180 + 45)); } return(false); }
public DTOBaseParser(System.Data.IDataReader reader) { _ordinals = base.Populate <Ordinals>(reader); }
public CredentialParser(System.Data.IDataReader reader) : base(reader) { _ordinals = Populate <Ordinals>(reader); }
public CredentialParser(System.Data.IDataReader reader) : base(reader) { _ordinals = Populate<Ordinals>(reader); }