public void Process(RawExpeditionResult rpData) { var rExpeditionID = KanColleGame.Current.Base.Expeditions.Values.Single(r => r.Name == rpData.Name).ID; if (rpData.Result != ExpeditionResult.Failure && (ExpeditionID == null || ExpeditionID.Contains(rExpeditionID))) Current++; }
internal void UpdateExpedition(int rpExpedition, RawExpeditionResult rpData) { using (var rCommand = Connection.CreateCommand()) { var rMaterial = rpData.Result != 0 ? rpData.Material.ToObject<int[]>() : null; rCommand.CommandText = "INSERT INTO expedition(time, result, expedition, fuel, bullet, steel, bauxite, item1, item1_count, item2, item2_count) " + "VALUES (strftime('%s', 'now'), @result, @expedition, @fuel, @bullet, @steel, @bauxite, @item1, @item1_count, @item2, @item2_count)"; rCommand.Parameters.Add(new SQLiteParameter("@result", (int)rpData.Result)); rCommand.Parameters.Add(new SQLiteParameter("@expedition", rpExpedition)); rCommand.Parameters.Add(new SQLiteParameter("@fuel", rMaterial != null ? rMaterial[0] : (int?)null)); rCommand.Parameters.Add(new SQLiteParameter("@bullet", rMaterial != null ? rMaterial[1] : (int?)null)); rCommand.Parameters.Add(new SQLiteParameter("@steel", rMaterial != null ? rMaterial[2] : (int?)null)); rCommand.Parameters.Add(new SQLiteParameter("@bauxite", rMaterial != null ? rMaterial[3] : (int?)null)); rCommand.Parameters.Add(new SQLiteParameter("@item1", rpData.Item1 != null ? rpData.Item1.ID : (int?)null)); rCommand.Parameters.Add(new SQLiteParameter("@item1_count", rpData.Item1 != null ? rpData.Item1.Count : (int?)null)); rCommand.Parameters.Add(new SQLiteParameter("@item2", rpData.Item2 != null ? rpData.Item2.ID : (int?)null)); rCommand.Parameters.Add(new SQLiteParameter("@item2_count", rpData.Item2 != null ? rpData.Item2.Count : (int?)null)); rCommand.ExecuteNonQuery(); } }