Files
SVSimServer/SVSim.BattleEngine/Engine/Wizard/ChatLogPlateLayoutMember.cs
gamer147 824309ec44 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.
2026-06-05 20:30:59 -04:00

77 lines
2.3 KiB
C#

using Cute;
using UnityEngine;
namespace Wizard;
public class ChatLogPlateLayoutMember : ChatLogPlateLayoutBase
{
private readonly Vector2 BASE_SIZE_WITHOUT_CONTENT_DISPLAY = new Vector2(100f, 29f);
private readonly Vector2 MIN_SIZE_SPRITE_FRAME = new Vector2(48f, 39f);
[SerializeField]
private UISprite _spriteFrame;
[SerializeField]
private UITexture _textureEmblem;
[SerializeField]
private UILabel _labelUserName;
[SerializeField]
private UILabel _labelSendTime;
[SerializeField]
private ChatLogPartsNotice _noticeUI;
public override Vector2 GetPlateSize(ChatMessageInfo messageInfo)
{
Vector2 result = GetContentSize(messageInfo) + BASE_SIZE_WITHOUT_CONTENT_DISPLAY;
result.y = Mathf.Max(result.y, _textureEmblem.height);
return result;
}
protected override void OnClearDisplay()
{
_spriteFrame.gameObject.SetActive(value: false);
_textureEmblem.enabled = false;
_labelUserName.gameObject.SetActive(value: false);
_labelSendTime.gameObject.SetActive(value: false);
_noticeUI.gameObject.SetActive(value: false);
}
protected override void OnSetDisplayBeforeLoad(ChatMessageInfo messageInfo)
{
SetUserDisplay(messageInfo);
}
protected override void OnSetDisplayAfterLoad(ChatMessageInfo messageInfo)
{
SetUserEmblem(messageInfo.UserInfo.EmblemId);
SetDisplayFrame(messageInfo);
}
private void SetDisplayFrame(ChatMessageInfo messageInfo)
{
_spriteFrame.gameObject.SetActive(value: true);
Vector2 contentSize = GetContentSize(messageInfo);
_spriteFrame.width = Mathf.Max((int)MIN_SIZE_SPRITE_FRAME.x, (int)contentSize.x);
_spriteFrame.height = Mathf.Max((int)MIN_SIZE_SPRITE_FRAME.y, (int)contentSize.y);
}
private void SetUserDisplay(ChatMessageInfo messageInfo)
{
_labelUserName.text = messageInfo.UserInfo.Name;
_labelUserName.gameObject.SetActive(value: true);
_labelSendTime.text = messageInfo.GetCreateTimeText();
_labelSendTime.gameObject.SetActive(value: true);
}
private void SetUserEmblem(long emblemId)
{
string assetTypePath = Toolbox.ResourcesManager.GetAssetTypePath(emblemId.ToString(), ResourcesManager.AssetLoadPathType.Emblem_M, isfetch: true);
_textureEmblem.enabled = true;
_textureEmblem.mainTexture = Toolbox.ResourcesManager.LoadObject(assetTypePath) as Texture;
}
}