Fix wallet destroy fund loss, Tumbler progress timing, settle idempotence, bounds guards (from external review)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ZHU MINCHAOandClaude Sonnet 5.5 committed 2026-11-04 10:02:02 +08:00
1 parent d0054443ec
commit 4501807cd2
5 files changed
+38 -10

No files matched your search

+2 -1
View File
@@ -142,6 +142,7 @@ namespace Decentralized
{
var d = Session.Data;
int day = StoreStation.GetDayCounter();
if (d.Day == day) { Log.Info($"第 {day} 天夜间结算已执行过,跳过重复调用"); return; }
StoryLinks.Night(d, day);
TumblerStory.Night(d, day);
var events = ActiveEvents();
@@ -256,7 +257,7 @@ namespace Decentralized
News.Show("pd_news_ponzi_" + day, L.T("news.ponzi.title"), L.T("news.ponzi.desc"), 4);
Log.Info($"理财崩盘:{ponzi.Kind},池子 {ponzi.Amount:0} 被没收");
}
foreach (var e in d.Scams.Night(day, d.Rng, d.Own, new[] { Assets.CRT, Assets.PSC, Assets.CRC, Assets.CRA }, Session.Price))
foreach (var e in d.Scams.Night(day, d.Rng, d.WalletAt, new[] { Assets.CRT, Assets.PSC, Assets.CRC, Assets.CRA }, Session.Price))
{
var sw = d.Own(e.Wallet);
string wn = sw != null ? WalletWindow.NameOf(sw) : e.Wallet;