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.
This commit is contained in:
66
SVSim.BattleEngine/Engine/Wizard/PracticeData.cs
Normal file
66
SVSim.BattleEngine/Engine/Wizard/PracticeData.cs
Normal file
@@ -0,0 +1,66 @@
|
||||
using LitJson;
|
||||
|
||||
namespace Wizard;
|
||||
|
||||
public class PracticeData
|
||||
{
|
||||
public int ID { get; private set; }
|
||||
|
||||
public string Text { get; private set; }
|
||||
|
||||
public int ClassId { get; private set; }
|
||||
|
||||
public int CharaId { get; private set; }
|
||||
|
||||
public int DegreeId { get; private set; }
|
||||
|
||||
public int AIDeckLevel { get; private set; }
|
||||
|
||||
public int AILogicLevel { get; private set; }
|
||||
|
||||
public int AIMaxLife { get; private set; }
|
||||
|
||||
public int Battle3dFieldId { get; private set; }
|
||||
|
||||
public bool IsMaintenance { get; private set; }
|
||||
|
||||
public bool IsCampaign { get; private set; }
|
||||
|
||||
public PracticeData(JsonData data)
|
||||
{
|
||||
ID = data["practice_id"].ToInt();
|
||||
Text = Data.Master.GetPracticeText(data["text_id"].ToString());
|
||||
ClassId = data["class_id"].ToInt();
|
||||
CharaId = data["chara_id"].ToInt();
|
||||
DegreeId = data["degree_id"].ToInt();
|
||||
AIDeckLevel = data["ai_deck_level"].ToInt();
|
||||
AILogicLevel = data["ai_logic_level"].ToInt();
|
||||
AIMaxLife = data["ai_max_life"].ToInt();
|
||||
IsCampaign = data["is_campaign_practice"].ToBoolean();
|
||||
if (IsCampaign)
|
||||
{
|
||||
Text = Data.SystemText.Get("Mission_0080") + Text;
|
||||
}
|
||||
int.TryParse(data["battle3dfield_id"].ToString(), out var result);
|
||||
Battle3dFieldId = result;
|
||||
IsMaintenance = data["is_maintenance"] != null && data["is_maintenance"].ToBoolean();
|
||||
if (IsMaintenance)
|
||||
{
|
||||
Text = Text + " " + Data.Master.GetPracticeText("Practice_Maintenance");
|
||||
}
|
||||
}
|
||||
|
||||
public PracticeData(int id, string text, int classId, int charaId, int degreeId, int aiDeckLevel, int aiLogicLevel, int aiMaxlife)
|
||||
{
|
||||
ID = id;
|
||||
Text = text;
|
||||
ClassId = classId;
|
||||
CharaId = charaId;
|
||||
DegreeId = degreeId;
|
||||
AIDeckLevel = aiDeckLevel;
|
||||
AILogicLevel = aiLogicLevel;
|
||||
AIMaxLife = aiMaxlife;
|
||||
Battle3dFieldId = 1;
|
||||
IsMaintenance = false;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user