feat(battle-engine): close the AI-simulation subsystem (verbatim)

Copied the 89 uncopied AI*SimulationUtility/extension files defining the
AIVirtualCard/AIVirtualField extension methods; the compile loop then auto-closed
the revealed type deps (~3049 files total, drift-clean). 10.0k -> 62 errors.
This commit is contained in:
gamer147
2026-06-05 20:30:59 -04:00
parent 78f310c2b3
commit 824309ec44
472 changed files with 55870 additions and 0 deletions

View File

@@ -0,0 +1,91 @@
using System.Collections.Generic;
using UnityEngine;
namespace Wizard;
public abstract class ChatLogPlateLayoutBase : MonoBehaviour
{
protected ChatConnectController _chatConnectController;
[SerializeField]
private List<ChatLogContentBase> _listLogContent;
private Dictionary<ChatMessageInfo.eMessageType, ChatLogContentBase> _contentList;
public abstract Vector2 GetPlateSize(ChatMessageInfo messageInfo);
protected abstract void OnClearDisplay();
protected abstract void OnSetDisplayBeforeLoad(ChatMessageInfo messageInfo);
protected abstract void OnSetDisplayAfterLoad(ChatMessageInfo messageInfo);
public void Init(IChatSettings chatSettings, ChatConnectController chatConnectController, ChatLogUI.PartsForPlate partsForPlate)
{
_chatConnectController = chatConnectController;
InitContentList(chatSettings, partsForPlate);
}
public void ClearDisplay()
{
ClearAllContentDisplay();
OnClearDisplay();
}
public void SetDisplayBeforeLoad(ChatMessageInfo messageInfo)
{
OnSetDisplayBeforeLoad(messageInfo);
}
public void SetDisplayAfterLoad(ChatMessageInfo messageInfo)
{
SetContentDisplay(messageInfo);
OnSetDisplayAfterLoad(messageInfo);
}
protected Vector2 GetContentSize(ChatMessageInfo messageInfo)
{
return GetContent(messageInfo.MessageType).GetSize(messageInfo);
}
private void SetContentDisplay(ChatMessageInfo messageInfo)
{
ChatLogContentBase content = GetContent(messageInfo.MessageType);
content.gameObject.SetActive(value: true);
content.SetData(messageInfo);
}
private void InitContentList(IChatSettings chatSettings, ChatLogUI.PartsForPlate partsForPlate)
{
_contentList = new Dictionary<ChatMessageInfo.eMessageType, ChatLogContentBase>();
foreach (ChatLogContentBase item in _listLogContent)
{
foreach (ChatMessageInfo.eMessageType item2 in item.ListMessagetType)
{
_contentList[item2] = item;
}
}
foreach (KeyValuePair<ChatMessageInfo.eMessageType, ChatLogContentBase> content in _contentList)
{
content.Value.Init(chatSettings, _chatConnectController, partsForPlate);
}
}
private ChatLogContentBase GetContent(ChatMessageInfo.eMessageType messageType)
{
_contentList.TryGetValue(messageType, out var value);
return value;
}
private void ClearAllContentDisplay()
{
foreach (KeyValuePair<ChatMessageInfo.eMessageType, ChatLogContentBase> content in _contentList)
{
ChatLogContentBase value = content.Value;
if (value != null)
{
value.gameObject.SetActive(value: false);
}
}
}
}