// ***********************************************************************
// Assembly : Unity
// Author : Kimch
// Created : 2017-11-11
//
// Last Modified By : Kimch
// Last Modified On :
// ***********************************************************************
//
//
// ***********************************************************************
using System.Collections.Generic;
namespace G.UI
{
public partial class QuickBox : KUIWindow
{
#region Static API
public static void ShowEquipment(EntityItemEquipment equipment)
{
if (_Instance == null)
{
OpenWindow();
}
if (PlayerProxy.Instance.IsBetterEquipment(equipment))
{
var info = new TemplateInfo
{
type = 0,
equipment = equipment,
};
_Instance.AddInfo(info);
}
}
public static void Clear()
{
if (_Instance != null)
{
_Instance.ClearModel();
_Instance.ClearView();
}
CloseWindow();
}
#endregion
#region Model
private class TemplateInfo
{
public int type;
public EntityItemEquipment equipment;
#pragma warning disable CS0649 // 从未对字段“QuickBox.TemplateInfo.quality”赋值,字段将一直保持其默认值 0
public int quality;
#pragma warning restore CS0649 // 从未对字段“QuickBox.TemplateInfo.quality”赋值,字段将一直保持其默认值 0
#pragma warning disable CS0649 // 从未对字段“QuickBox.TemplateInfo.content”赋值,字段将一直保持其默认值 null
public string content;
#pragma warning restore CS0649 // 从未对字段“QuickBox.TemplateInfo.content”赋值,字段将一直保持其默认值 null
}
private readonly Queue _infoQueue = new Queue();
private void AddInfo(TemplateInfo info)
{
if (_infoQueue.Count >= 2)
_infoQueue.Dequeue();
_infoQueue.Enqueue(info);
ShowTemplate();
}
private void RefreshModel()
{
}
private void ClearModel()
{
_infoQueue.Clear();
}
#endregion
#region Constructor
private static QuickBox _Instance;
public QuickBox()
: base(UILayer.kFloat, UIMode.kNone)
{
uiPath = "ui_w_equipment_quick";
_Instance = this;
}
#endregion
#region Method
public override void Awake()
{
InitView();
}
public override void OnEnable()
{
RefreshModel();
RefreshView();
}
#endregion
}
}