Files
SVSimServer/SVSim.BattleEngine/Engine/BattleSettingData.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

158 lines
3.8 KiB
C#

using LitJson;
public class BattleSettingData
{
public int DeckClassId { get; }
public int DeckSkinId { get; }
public int PlayerCharaId { get; }
public string PlayerEmotionId { get; }
public int EnemyCharaId { get; }
public string EnemyEmotionId { get; }
public int EnemyClassId { get; }
public int EnemyAiId { get; }
public int FieldId { get; }
public string BgmId { get; }
public BattleSettingData(JsonData jsonData, BattleSettingBaseData baseData)
{
DeckClassId = jsonData["deck_class_id"].ToInt();
DeckSkinId = GetDeckSkinId(jsonData, DeckClassId);
PlayerCharaId = GetPlayerCharaId(jsonData, baseData.PlayerCharaId, DeckClassId);
PlayerEmotionId = GetPlayerEmotionId(jsonData, PlayerCharaId);
EnemyCharaId = baseData.EnemyCharaId;
EnemyEmotionId = GetEnemyEmotionId(jsonData, EnemyCharaId);
EnemyClassId = baseData.EnemyClassId;
EnemyAiId = baseData.EnemyAiId;
FieldId = GetFieldId(jsonData, baseData.FieldId);
BgmId = GetBgmId(jsonData, baseData.BgmId);
}
private static int GetDeckSkinId(JsonData jsonData, int deckClassId)
{
int num = jsonData["deck_skin_id_override"].ToInt();
if (num == 0)
{
return GameMgr.GetIns().GetDataMgr().GetCharaPrmByClassId(deckClassId, isCurrentChara: false)
.skin_id;
}
return num;
}
private static int GetPlayerCharaId(JsonData jsonData, int baseCharaId, int classId)
{
int? overridePlayerCharaId = GetOverridePlayerCharaId(jsonData);
if (overridePlayerCharaId.HasValue)
{
return overridePlayerCharaId.Value;
}
if (baseCharaId == 0)
{
return GameMgr.GetIns().GetDataMgr().GetCharaPrmByClassId(classId, isCurrentChara: false)
.chara_id;
}
return baseCharaId;
}
private static int? GetOverridePlayerCharaId(JsonData jsonData)
{
int num = jsonData["skin_id_override"].ToInt();
if (num == 0)
{
return null;
}
return num;
}
private static string GetPlayerEmotionId(JsonData jsonData, int charaId)
{
int? overridePlayerEmotionId = GetOverridePlayerEmotionId(jsonData);
return GetEmotionId(charaId, overridePlayerEmotionId);
}
private static int? GetOverridePlayerEmotionId(JsonData jsonData)
{
int num = jsonData["player_emotion_override"].ToInt();
if (num == 0)
{
return null;
}
return num;
}
private static string GetEnemyEmotionId(JsonData jsonData, int charaId)
{
int? overrideEnemyEmotionId = GetOverrideEnemyEmotionId(jsonData);
return GetEmotionId(charaId, overrideEnemyEmotionId);
}
private static int? GetOverrideEnemyEmotionId(JsonData jsonData)
{
int num = jsonData["enemy_emotion_override"].ToInt();
if (num == 0)
{
return null;
}
return num;
}
private static string GetEmotionId(int charaId, int? variationId)
{
int skin_id = GameMgr.GetIns().GetDataMgr().GetCharaPrmByCharaId(charaId)
.skin_id;
if (!variationId.HasValue)
{
return $"{skin_id}";
}
return $"{skin_id}_{variationId.Value}";
}
private static int GetFieldId(JsonData jsonData, int baseFieldId)
{
int? overrideFieldId = GetOverrideFieldId(jsonData);
if (!overrideFieldId.HasValue)
{
return baseFieldId;
}
return overrideFieldId.Value;
}
private static int? GetOverrideFieldId(JsonData jsonData)
{
int num = jsonData["battle3dfield_id_override"].ToInt();
if (num == 0)
{
return null;
}
return num;
}
private static string GetBgmId(JsonData jsonData, string baseBgmId)
{
string overrideBgmId = GetOverrideBgmId(jsonData);
if (overrideBgmId == null)
{
return baseBgmId;
}
return overrideBgmId;
}
private static string GetOverrideBgmId(JsonData jsonData)
{
string text = jsonData["bgm_id_override"].ToString();
if (!(text != "0"))
{
return null;
}
return text;
}
}