62 lines
1.6 KiB
C#
62 lines
1.6 KiB
C#
using cfg;
|
|
using cfg.ActorCfg;
|
|
using Framework;
|
|
using Gameplay.Net;
|
|
using NLDPB;
|
|
|
|
namespace Gameplay
|
|
{
|
|
public class SingleMail:Mail
|
|
{
|
|
string NPOI;
|
|
DataMail mCfg;
|
|
private RedPointNode _redPointNode;
|
|
|
|
public RedPointNode RedPointNode => _redPointNode;
|
|
|
|
public DataMail Cfg => mCfg;
|
|
|
|
public SingleMail(Mail mail)
|
|
{
|
|
Refresh(mail);
|
|
ConstructRedPointTree();
|
|
}
|
|
|
|
public void ConstructRedPointTree()
|
|
{
|
|
_redPointNode = RedPointManager.Instance.AddDynamicNode(cfg.RedPoint.NodeType.Normal, 20,mCfg.Id);
|
|
}
|
|
public void Refresh(Mail mail)
|
|
{
|
|
mCfg = TableManager.Instance.Tables.MailCfg.GetOrDefault((int)mail.MailID);
|
|
if(mCfg == null)
|
|
{
|
|
DebugUtil.LogError("邮件配置没有id为", mail.MailID);
|
|
mCfg = TableManager.Instance.Tables.MailCfg.DataList[0];
|
|
}
|
|
SendTime = mail.SendTime;
|
|
Status = mail.Status;
|
|
MailID = mail.MailID;
|
|
Id = mail.Id;
|
|
Title = mail.Title;
|
|
Body = mail.Body;
|
|
|
|
|
|
if (mail.MailData != null)
|
|
{
|
|
MailData = mail.MailData;
|
|
}
|
|
}
|
|
public void SetStatus(uint stu)
|
|
{
|
|
EventManager.Instance.Send(EventManager.EventName.MailStateChange);
|
|
|
|
if (Status==MailSystem.MailStatus_Cliamed)
|
|
{
|
|
return;
|
|
}
|
|
|
|
Status = stu;
|
|
}
|
|
}
|
|
} |