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:
157
SVSim.BattleEngine/Engine/BattleSettingData.cs
Normal file
157
SVSim.BattleEngine/Engine/BattleSettingData.cs
Normal file
@@ -0,0 +1,157 @@
|
||||
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;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user