Reprice listed goods; honeypot stays at 1%
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
a76f04c75e
commit
a44e4008c1
7 files changed
+64
-6
No files matched your search
@@ -551,6 +551,15 @@ namespace Decentralized
|
||||
Open();
|
||||
}
|
||||
|
||||
private static void RepriceSale(BmSale s, double mult)
|
||||
{
|
||||
var d = Session.Data;
|
||||
if (!d.Black.Reprice(s, mult, d.Hot, _payAsset, StoreStation.GetDayCounter(), Session.Price)) { _message = L.T("msg.balance"); Open(); return; }
|
||||
_message = L.T("black.sell.repriced", ItemName(s.Item), s.ListPrice);
|
||||
Session.Save();
|
||||
Open();
|
||||
}
|
||||
|
||||
private static void Delist(BmSale s)
|
||||
{
|
||||
var d = Session.Data;
|
||||
@@ -573,7 +582,22 @@ namespace Decentralized
|
||||
var sale = sl;
|
||||
string st = sale.State == SaleState.Sold ? L.T("black.sale.Sold", sale.PayDay) : L.T("black.sale." + sale.State + (sale.State == SaleState.Delisted && sale.Why != null ? "." + sale.Why : ""));
|
||||
l.AddLabel(L.T("black.mine.sale", ItemName(sale.Item), sale.Mult.ToString("0.0", CultureInfo.InvariantCulture), st));
|
||||
if (sale.State == SaleState.Listed) l.AddButton(L.T("black.sell.delist"), () => Delist(sale));
|
||||
if (sale.State == SaleState.Listed)
|
||||
{
|
||||
l.BeginRow();
|
||||
foreach (var m in SellMults)
|
||||
{
|
||||
double mult = m;
|
||||
string n = m.ToString("0.0", CultureInfo.InvariantCulture);
|
||||
l.AddButton(Math.Abs(mult - sale.Mult) < 1e-9 ? $"[{n}]" : n, () =>
|
||||
{
|
||||
if (Math.Abs(mult - sale.Mult) < 1e-9) return;
|
||||
BeginPay(d.Address("platform"), ItemName(sale.Item) + L.T("pay.repricefee", n), BlackMarket.RepriceFee(BlackMarket.ListPriceOf(sale.Ref, mult)), () => RepriceSale(sale, mult));
|
||||
});
|
||||
}
|
||||
l.AddButton(L.T("black.sell.delist"), () => Delist(sale));
|
||||
l.End();
|
||||
}
|
||||
}
|
||||
foreach (var o in d.Black.Orders.OrderByDescending(x => x.PlacedDay))
|
||||
l.AddLabel(L.T("black.mine.line", ItemName(o.Item) + (o.Count > 1 ? " ×" + o.Count : ""), BlackDelivery.DisplayName(o.Seller), L.T("black.mode." + o.Mode), L.T("black.state." + o.State + (o.Why != null && o.State != OrderState.Done ? "." + o.Why : "")), o.DueDay));
|
||||
|
||||
Reference in new issue
Block a user