private void InitializeProperties() { BrownDroprate = new Droprate(WeaponType.Dissolved); SilverDroprate = new Droprate(WeaponType.Melded); GoldDroprate = new Droprate(WeaponType.Sublimated); BlueDroprate = new Droprate(WeaponType.Incandescent); }
private void Render(Droprate droprate, DecimalUpDown r6Pre, DecimalUpDown r6Post, DecimalUpDown r7, DecimalUpDown r8, DecimalUpDown kjarr, TextBlock total) { r6Pre.Value = droprate.R6GoldPrefix; r6Post.Value = droprate.R6GoldPostfix; r7.Value = droprate.R7; r8.Value = droprate.R8; kjarr.Value = droprate.Kjarr; RenderTotal(droprate, total); }
private void PresetDroprate(string file) { var asm = Assembly.GetExecutingAssembly(); using (var stream = asm.GetManifestResourceStream($"MhwKtDroprateEditor.Presets.{file}")) using (var reader = new StreamReader(stream)) { var jsonFile = reader.ReadToEnd(); var droprates = JsonConvert.DeserializeObject <Droprate[]>(jsonFile); BrownDroprate = droprates.FirstOrDefault(d => d.Type == WeaponType.Dissolved); SilverDroprate = droprates.FirstOrDefault(d => d.Type == WeaponType.Melded); GoldDroprate = droprates.FirstOrDefault(d => d.Type == WeaponType.Sublimated); BlueDroprate = droprates.FirstOrDefault(d => d.Type == WeaponType.Incandescent); } Render(); }
private void OpenFile(object sender, RoutedEventArgs e) { var dlg = new Microsoft.Win32.OpenFileDialog { FileName = "em117_ex_grade_lot", DefaultExt = ".em117glt", Filter = "KL Droprate table | *.em117glt", InitialDirectory = AppDomain.CurrentDomain.BaseDirectory }; if (dlg.ShowDialog() == true) { var filename = dlg.FileName; var input = File.ReadAllBytes(filename); var buffer = new byte[1]; for (var i = 6; i < input.Length - 1; i += 28) { buffer[0] = input[i + 8]; var r6Pre = (decimal)(BitConverter.ToInt32(input, i + 8) / 100.0); var r6Post = (decimal)(BitConverter.ToInt32(input, i + 12) / 100.0); var r7 = (decimal)(BitConverter.ToInt32(input, i + 16) / 100.0); var r8 = (decimal)(BitConverter.ToInt32(input, i + 20) / 100.0); var kjarr = (decimal)(BitConverter.ToInt32(input, i + 24) / 100.0); if (i == 6) { BrownDroprate = new Droprate(WeaponType.Dissolved, r6Pre, r6Post, r7, r8, kjarr); } else if (i == 34) { SilverDroprate = new Droprate(WeaponType.Melded, r6Pre, r6Post, r7, r8, kjarr); } else if (i == 62) { GoldDroprate = new Droprate(WeaponType.Sublimated, r6Pre, r6Post, r7, r8, kjarr); } else if (i == 90) { BlueDroprate = new Droprate(WeaponType.Incandescent, r6Pre, r6Post, r7, r8, kjarr); } } Render(); } }
private void RenderTotal(Droprate droprate, TextBlock total) { total.Text = $"{droprate.TotalPercentage}%"; total.Foreground = !droprate.Valid ? Brushes.Red : Brushes.Black; }