Files
SVSimServer/SVSim.BattleEngine/Engine/SpecialCrystalInfo.cs
gamer147 957af3d1ec feat(battle-engine): full Unity/VFX/god-object shims + expanded copy closure (2570 files)
Authored Unity primitive/object-model shim, VFX layer (control-flow-preserving, InstantVfx never invokes its action -- headless suppression), god-object stubs (GameMgr/EffectMgr/UIManager with faithfully-extracted nested enums), View/UI/Touch tree, LitJson+BetterList+Tuple copied, third-party stubs. Discovered Roslyn header-error masking: fixing class-header type errors unmasks body references, so the true copy closure is ~2570 files (was 782 under masking). Errors: masked-25720 -> 268; our shim files compile clean. Remaining: ~50 residual shim/external types, 24 NGUI UI-base overrides, static-type fixes, plus likely 1-2 more unmask waves.
2026-06-05 17:22:20 -04:00

54 lines
1.8 KiB
C#

using LitJson;
using Wizard;
public class SpecialCrystalInfo
{
public string ProductId { get; private set; }
public int AvailablePurchaseCount { get; private set; }
public RemainTime RemainTime { get; private set; }
public string DialogTitle { get; private set; }
public string DialogBGImageFileName { get; private set; }
public bool EnableExtraResult { get; private set; }
public int ExtraResultPurchaseCount { get; private set; }
public string ExtraResultDialogBGImageFileName { get; private set; }
public string ResultDialogNextSceneClick { get; private set; }
public string ResultDialogNextSceneStatus { get; private set; }
public string Status { get; private set; }
public SpecialCrystalInfo(JsonData json, JsonData responseData)
{
ProductId = json["product_id"].ToString();
AvailablePurchaseCount = json["available_purchase_num"].ToInt();
RemainTime = new RemainTime(json["end_time"].ToString(), responseData["data_headers"]["servertime"].ToDouble());
DialogTitle = json["dialog_top_title"].ToString();
DialogBGImageFileName = json["dialog_top_img"].ToString();
Status = json["status_id"].ToString();
if (json.Keys.Contains("ex_dialog_img"))
{
EnableExtraResult = true;
ExtraResultPurchaseCount = json["ex_dialog_condtion_available_purchase_num"].ToInt();
ExtraResultDialogBGImageFileName = json["ex_dialog_img"].ToString();
ResultDialogNextSceneClick = json["ex_dialog_click"].ToString();
ResultDialogNextSceneStatus = json["ex_dialog_status"].ToString();
}
else
{
EnableExtraResult = false;
ExtraResultPurchaseCount = -1;
ExtraResultDialogBGImageFileName = string.Empty;
ResultDialogNextSceneClick = string.Empty;
ResultDialogNextSceneStatus = string.Empty;
}
}
}