using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace vnxbqy.UI
|
{
|
|
public class AssistThanksWin : Window
|
{
|
[SerializeField] ScrollerController AssistCtrl;
|
[SerializeField] Button close;
|
[SerializeField] Text AssistBossText;
|
[SerializeField] ItemCell MyItem;
|
[SerializeField] ItemCell ThanksItem;
|
[SerializeField] Button OneKeyAddFriend;
|
[SerializeField] Button Thanks;
|
|
|
DungeonAssistModel assistModel { get { return ModelCenter.Instance.GetModel<DungeonAssistModel>(); } }
|
|
FriendsModel m_FriendModel
|
{
|
get
|
{
|
return ModelCenter.Instance.GetModel<FriendsModel>();
|
}
|
}
|
#region Built-in
|
protected override void BindController()
|
{
|
|
}
|
|
protected override void OnActived()
|
{
|
|
}
|
|
|
protected override void AddListeners()
|
{
|
close.AddListener(CloseClick);
|
Thanks.SetListener(() =>
|
{
|
var send = new CB014_tagCGUseAssistThanksGift();
|
send.IsPreview = 0;
|
send.ItemID = assistModel.assistThanksGift.ItemID;
|
GameNetSystem.Instance.SendInfo(send);
|
WindowCenter.Instance.Close<AssistThanksWin>();
|
});
|
OneKeyAddFriend.SetListener(OnOneKeyAddFriend);
|
}
|
|
protected override void OnPreOpen()
|
{
|
AssistCtrl.OnRefreshCell += OnRefreshRoleCell;
|
if (assistModel.assistThanksGift.NPCID != 0)
|
{
|
var curNPC = NPCConfig.Get((int)assistModel.assistThanksGift.NPCID);
|
AssistBossText.text = Language.Get("AssistBossThanks",
|
MapConfig.Get((int)assistModel.assistThanksGift.MapID).Name, curNPC.charName, curNPC.NPCLV);
|
}
|
else if (assistModel.assistThanksGift.MapID != 0)
|
{
|
var mapConfig = MapConfig.Get((int)assistModel.assistThanksGift.MapID);
|
AssistBossText.text = Language.Get("AssistBossThanks1", mapConfig.Name);
|
}
|
else
|
{
|
AssistBossText.text = Language.Get("AssistThanks_" + assistModel.assistThanksGift.ItemID);
|
}
|
|
AssistCtrl.Refresh();
|
|
for (int i = 0; i < assistModel.assistThanksGift.AssistPlayerCount; i++)
|
{
|
AssistCtrl.AddCell(ScrollerDataType.Header, i);
|
}
|
AssistCtrl.Restart();
|
|
|
var award = AssistThanksGiftConfig.Get((int)assistModel.assistThanksGift.ItemID);
|
var myAwards = ConfigParse.GetMultipleStr(award.RequestPlayerAward);
|
ItemCellModel cellModel = new ItemCellModel(int.Parse(myAwards[0]), true, (ulong)int.Parse(myAwards[1]));
|
MyItem.Init(cellModel);
|
MyItem.button.SetListener(() =>
|
{
|
ItemTipUtility.Show(int.Parse(myAwards[0]));
|
});
|
|
var thanksAwards = ConfigParse.GetMultipleStr(award.AssistPlayerAward);
|
ItemCellModel cellModel2 = new ItemCellModel(int.Parse(thanksAwards[0]), true, (ulong)int.Parse(thanksAwards[1]));
|
ThanksItem.Init(cellModel2);
|
ThanksItem.button.SetListener(() =>
|
{
|
ItemTipUtility.Show(int.Parse(thanksAwards[0]));
|
});
|
}
|
|
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
AssistCtrl.OnRefreshCell -= OnRefreshRoleCell;
|
assistModel.assistThanksGift = null;
|
}
|
|
protected override void OnAfterClose()
|
{
|
|
}
|
#endregion
|
|
private void OnRefreshRoleCell(ScrollerDataType type, CellView cell)
|
{
|
var roleCell = cell as AssistThanksCell;
|
roleCell.Display(cell.index);
|
}
|
|
private void OnOneKeyAddFriend()
|
{
|
foreach (var playerInfo in assistModel.assistThanksGift.AssistPlayerList)
|
{
|
if (m_FriendModel.GetFirendInfo(playerInfo.PlayerID, 2) == null)
|
{
|
CB301_tagCGAddFriend addFriend = new CB301_tagCGAddFriend();
|
addFriend.TagID = playerInfo.PlayerID;
|
addFriend.TagName = "";
|
GameNetSystem.Instance.SendInfo(addFriend);
|
}
|
}
|
}
|
}
|
}
|