//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Thursday, December 07, 2017
|
//--------------------------------------------------------
|
|
using vnxbqy.UI;
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace vnxbqy.UI
|
{
|
|
public class KingTempleWin : Window
|
{
|
[SerializeField] EmblemCell emblemCell;
|
[SerializeField] Text m_FairyNameTxt;
|
[SerializeField] ItemCell m_PrivilegeItem;
|
[SerializeField] List<ItemCell> m_SalaryItemList;
|
[SerializeField] Image m_LeaderRealmImg;
|
[SerializeField] Text m_LeaderNameTxt;
|
[SerializeField] RawImage m_LeaderMob;
|
[SerializeField] Text m_WinCntTxt;
|
[SerializeField] Button m_WinRewardBtn;
|
[SerializeField] Button m_FinalityBtn;
|
[SerializeField] Button m_GuideBtn;
|
[SerializeField] Button m_SalaryBtn;
|
|
KingFairyModel m_Model;
|
KingFairyModel model
|
{
|
get
|
{
|
return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<KingFairyModel>());
|
}
|
}
|
|
RoleParticularModel m_RoleParticularModel;
|
RoleParticularModel particularModel
|
{
|
get
|
{
|
return m_RoleParticularModel ?? (m_RoleParticularModel = ModelCenter.Instance.GetModel<RoleParticularModel>());
|
}
|
}
|
|
#region Built-in
|
protected override void BindController()
|
{
|
}
|
|
protected override void AddListeners()
|
{
|
m_WinRewardBtn.onClick.AddListener(OnWinRewardBtn);
|
m_FinalityBtn.onClick.AddListener(OnFinalityBtn);
|
m_GuideBtn.onClick.AddListener(OnGuideBtn);
|
m_SalaryBtn.onClick.AddListener(OnSalaryBtn);
|
m_PrivilegeItem.button.onClick.AddListener(OnPrivilegeItem);
|
for (int i = 0; i < m_SalaryItemList.Count; i++)
|
{
|
var _index = i;
|
m_SalaryItemList[i].button.onClick.AddListener(() =>
|
{
|
OnSalaryItem(_index);
|
});
|
}
|
}
|
|
protected override void OnPreOpen()
|
{
|
model.RequestKingFairyData();
|
model.UpdateKingFairyEvent += UpdateKingFairyEvent;
|
model.UpdateDailySalaryEvent += Model_UpdateDailySalaryEvent;
|
UpdateKingFairyEvent();
|
m_SalaryBtn.interactable = !model.dailySalaryGet;
|
}
|
|
private void Model_UpdateDailySalaryEvent()
|
{
|
m_SalaryBtn.interactable = !model.dailySalaryGet;
|
}
|
|
protected override void OnAfterOpen()
|
{
|
}
|
|
protected override void OnPreClose()
|
{
|
model.UpdateKingFairyEvent -= UpdateKingFairyEvent;
|
model.UpdateDailySalaryEvent -= Model_UpdateDailySalaryEvent;
|
UI3DModelExhibition.Instance.StopShow();
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
#endregion
|
private void OnSalaryBtn()
|
{
|
if (!model.IsSelfInKingFairy())
|
{
|
SysNotifyMgr.Instance.ShowTip("LeagueNoFL2");
|
return;
|
}
|
if (model.dailySalaryGet)
|
{
|
SysNotifyMgr.Instance.ShowTip("LeagueNoFL1");
|
return;
|
}
|
CA504_tagCMPlayerGetReward _pak = new CA504_tagCMPlayerGetReward();
|
_pak.RewardType = (byte)GotServerRewardType.Def_RewardType_ChampionFamilyDailyReward;
|
_pak.DataEx = (uint)0;
|
_pak.DataExStrLen = 0;
|
_pak.DataExStr = string.Empty;
|
GameNetSystem.Instance.SendInfo(_pak);
|
}
|
|
private void OnGuideBtn()
|
{
|
WindowCenter.Instance.Open<BattleGroundGuideWin>();
|
}
|
|
private void OnFinalityBtn()
|
{
|
WindowCenter.Instance.Open<WinningStreakWin>();
|
}
|
|
private void OnWinRewardBtn()
|
{
|
WindowCenter.Instance.Open<KingFairyRewardWin>();
|
}
|
|
private void UpdateKingFairyEvent()
|
{
|
emblemCell.SetActive(model.hasKingFairy);
|
if (model.hasKingFairy)
|
{
|
if (PlayerDatas.Instance.fairyData.fairy == null)
|
{
|
emblemCell.InitUI(EmblemHelper.GetOtherEmblemModel(model.kingFairyData.emblemId));
|
}
|
else
|
{
|
emblemCell.InitUI(EmblemHelper.GetEmblemModel(model.kingFairyData.fairyId, model.kingFairyData.emblemId));
|
}
|
}
|
m_FairyNameTxt.text = model.hasKingFairy ? model.kingFairyData.fairyName : Language.Get("FamilyMatchNoOneHere");
|
ItemCellModel cellModel = new ItemCellModel(model.privilegeItemId);
|
m_PrivilegeItem.Init(cellModel);
|
|
for (int i = 0; i < m_SalaryItemList.Count; i++)
|
{
|
if (i < model.salaryAwardItems.Length)
|
{
|
var _itemArray = model.salaryAwardItems[i];
|
m_SalaryItemList[i].SetActive(true);
|
ItemCellModel cellModel2 = new ItemCellModel(_itemArray[0], false, (ulong)_itemArray[1]);
|
m_SalaryItemList[i].Init(cellModel2);
|
}
|
else
|
{
|
m_SalaryItemList[i].SetActive(false);
|
}
|
}
|
m_WinCntTxt.text = StringUtility.Contact(Language.Get("FamilyMatchLianWinTimee"), model.hasKingFairy ?
|
model.kingFairyData.multipleWinCnt.ToString() : "-");
|
|
bool _hasLeaderData = model.hasKingFairy && model.kingFairyData.leaderData != null;
|
m_LeaderRealmImg.SetActive(_hasLeaderData);
|
m_LeaderNameTxt.text = Language.Get("FamilyMatchNoOneHere");
|
m_LeaderMob.SetActive(_hasLeaderData);
|
if (_hasLeaderData)
|
{
|
var _leaderData = model.kingFairyData.leaderData;
|
int _suitEffect = (int)(_leaderData.rolePropData.EquipShowSwitch % 10);
|
int clothes = _leaderData.GetItemId(RoleEquipType.Clothes);
|
int weapon = _leaderData.GetItemId(RoleEquipType.Weapon);
|
int wing = _leaderData.GetItemId(RoleEquipType.Wing);
|
int weapon2 = _leaderData.GetItemId(RoleEquipType.Weapon2);
|
int fashionClothes = _leaderData.GetItemId(RoleEquipType.FashionClothes);
|
int fashionWeapon = _leaderData.GetItemId(RoleEquipType.FashionWeapon);
|
int fashionWeapon2 = _leaderData.GetItemId(RoleEquipType.FashionWeapon2);
|
var reikiRootEffectId = _leaderData.rolePropData.EquipShowSwitch / 1000 % 1000;
|
|
var data = new UI3DPlayerExhibitionData
|
{
|
job = _leaderData.rolePropData.Job,
|
fashionClothesId = fashionClothes,
|
fashionWeaponId = fashionWeapon,
|
fashionSecondaryId = fashionWeapon2,
|
clothesId = clothes,
|
suitLevel = _suitEffect,
|
weaponId = weapon,
|
wingsId = wing,
|
secondaryId = weapon2,
|
reikiRootEffectId = (int)reikiRootEffectId,
|
isDialogue = false,
|
equipLevel = (int)_leaderData.rolePropData.EquipShowSwitch / 10 % 100,
|
titleID = _leaderData.rolePropData.TitleID,
|
};
|
|
UI3DModelExhibition.Instance.ShowPlayer(m_LeaderMob, data);
|
m_LeaderNameTxt.text = _leaderData.rolePropData.Name;
|
m_LeaderRealmImg.SetActive(_leaderData.rolePropData.RealmLV > 0);
|
var _realmCfg = RealmConfig.Get(_leaderData.rolePropData.RealmLV);
|
if (_realmCfg != null)
|
{
|
m_LeaderRealmImg.SetSprite(_realmCfg.Img);
|
}
|
}
|
}
|
|
private void OnPrivilegeItem()
|
{
|
ItemTipUtility.Show(model.privilegeItemId);
|
}
|
|
private void OnSalaryItem(int index)
|
{
|
var _itemArray = model.salaryAwardItems[index];
|
ItemTipUtility.Show(_itemArray[0]);
|
}
|
}
|
|
}
|
|
|
|
|