Files
@ d63ade4d8489
Branch filter:
Location: ATITD-Tools/Desert-Paint-Codex/Models/GeneratorRecipe.cs - annotation
d63ade4d8489
1.5 KiB
text/x-csharp
Recipe generation no longer incorrectly skips some recipes when a catalyst is included. This should result in some less expensive receips, and more total recipes tested.
40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 40eaee10ae56 | using System.ComponentModel;
using System.Runtime.CompilerServices;
using System.Text;
using JetBrains.Annotations;
namespace DesertPaintCodex.Models
{
public class GeneratorRecipe : INotifyPropertyChanged
{
private PaintColor _color;
public PaintColor Color { get => _color; set { _color = value; NotifyPropertyChanged(nameof(Color)); } }
private string _recipe = "";
public string Recipe { get => _recipe; set { _recipe = value; NotifyPropertyChanged(nameof(Recipe)); } }
public GeneratorRecipe(PaintColor color)
{
_color = color;
}
public void DraftRecipe(PaintRecipe recipe)
{
StringBuilder sb = new();
for (int i = 0; i < recipe.Reagents.Count; i++)
{
sb.Append(recipe.Reagents[i].Quantity);
sb.Append(' ');
sb.Append(recipe.Reagents[i].Name);
if (i != recipe.Reagents.Count - 1)
{
sb.Append(", ");
}
}
Recipe = sb.ToString();
}
public void ClearRecipe()
{
Recipe = "";
}
public event PropertyChangedEventHandler? PropertyChanged;
[NotifyPropertyChangedInvocator]
private void NotifyPropertyChanged([CallerMemberName] string? propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
}
|