备份CatanBuilding瘦身独立工程

This commit is contained in:
JSD\13999
2026-05-26 16:15:54 +08:00
commit 2d0e6a61b7
12001 changed files with 2431925 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
using asap.core;
using UnityEngine;
using UnityEngine.UI;
public class UIImage : Image
{
ShowImageData imageData;
IUIService uiService;
public void Sprite(string spriteName)
{
if (imageData == null)
{
imageData = new ShowImageData(this);
}
if (uiService == null)
{
uiService = GContext.container.Resolve<IUIService>();
}
if (uiService != null)
{
imageData.SetName(spriteName);
uiService.SetImageSprite(imageData);
}
else
{
Debug.LogError("IUIService is not resolved.");
}
}
}
public class ShowImageData : IShowImageData
{
public string spriteName { set; get; }
public Image image { set; get; }
string otherName;
/// <summary>
/// image 赋值必须新new一个对象防止sprite 给的一个错误的对象
/// </summary>
/// <param name="image"></param>
public ShowImageData(Image image)
{
this.image = image;
}
public ShowImageData(Image image, string spriteName)
{
this.image = image;
SetName(spriteName);
}
public void SetName(string spriteName)
{
this.spriteName = spriteName;
otherName = spriteName + "(Clone)";
}
public void SetImage(Sprite sprite)
{
if (image != null && (sprite.name == otherName || sprite.name == spriteName))
{
image.sprite = sprite;
}
}
}