删除原来UIRoot下的UI窗口,使用场景管理器加载。
public class CreateCharacterScene : LogicManagerBase<CreateCharacterScene>
{
private void Start()
{
//初始化角色自定义数据
DataManager.InitCustomCharacterData();
//初始化角色创建者
CharacterCreator.Instance.InitData();
//显示角色选择窗口
UIManager.Instance.Show<UI_CreateCharacterWindow>();
}
}
创建数据管理器,将数据的初始化从UI窗口中移除。
/// <summary>
/// 数据管理器
/// </summary>
public static class DataManager
{
//自定义角色的数据
public static CustomCharacterData CustomCharacterData;
public static void InitCustomCharacterData()
{
CustomCharacterData = new CustomCharacterData();
CustomCharacterData.CustomPartDataDic = new Dictionary<int, CustomCharacterPartData>();
CustomCharacterData.CustomPartDataDic.Add((int)CharacterParType.Face, new CustomCharacterPartData()
{
Index = 1,
Size = 1,
Height = 0
});
CustomCharacterData.CustomPartDataDic.Add((int)CharacterParType.Hair, new CustomCharacterPartData()
{
Index = 1,
Color1 = Color.white
});
CustomCharacterData.CustomPartDataDic.Add((int)CharacterParType.Cloth, new CustomCharacterPartData()
{
Index = 1,
Color1 = Color.white,
Color2 = Color.black
});
}
}