133 lines
3.1 KiB
C#
133 lines
3.1 KiB
C#
![]() |
// ***********************************************************************
|
|||
|
// Assembly : Game
|
|||
|
// Author : Kimch
|
|||
|
// Created : 2021-06-22
|
|||
|
// Description :
|
|||
|
// Last Modified By :
|
|||
|
// Last Modified On :
|
|||
|
// ***********************************************************************
|
|||
|
// <copyright file= "OfflineWindow.View" company="Kunpo"></copyright>
|
|||
|
// <summary></summary>
|
|||
|
// ***********************************************************************
|
|||
|
namespace G.UI
|
|||
|
{
|
|||
|
using System.Collections.Generic;
|
|||
|
using TMPro;
|
|||
|
using UnityEngine;
|
|||
|
using UnityEngine.UI;
|
|||
|
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
partial class OfflineWindow
|
|||
|
{
|
|||
|
#region Field
|
|||
|
|
|||
|
#pragma warning disable CS0649 // 从未对字段赋值,字段将一直保持其默认值 null
|
|||
|
|
|||
|
[KUIFlag]
|
|||
|
KUIList __listReward;
|
|||
|
[KUIFlag]
|
|||
|
Button _btnCollect;
|
|||
|
[KUIFlag]
|
|||
|
TextMeshProUGUI _tmpTime;
|
|||
|
|
|||
|
#pragma warning restore CS0649 // 从未对字段赋值,字段将一直保持其默认值 null
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Method
|
|||
|
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
public void InitView()
|
|||
|
{
|
|||
|
SetViewData();
|
|||
|
|
|||
|
__listReward.AddTemplate<PropWidget>(true);
|
|||
|
_btnCollect.onClick.AddListener(this.OnCollectBtnClick);
|
|||
|
}
|
|||
|
|
|||
|
public void RefreshView()
|
|||
|
{
|
|||
|
if (this.data is BattleResult result)
|
|||
|
{
|
|||
|
int count = Mathf.Clamp(result.duration, 1, 12);
|
|||
|
result.coin = result.coin * count;
|
|||
|
|
|||
|
result.ApplyResult2();
|
|||
|
|
|||
|
//_tmpTime.text = $"溢出体力:{result.duration}";
|
|||
|
__listReward.Clear();
|
|||
|
//__listReward.GetItem<PropWidget>().SetItem(Item.Id.kExp, result.exp);
|
|||
|
__listReward.GetItem<PropWidget>().SetItem(Item.Id.kCoin, result.coin);
|
|||
|
|
|||
|
int q3 = 0, q4 = 0, q5 = 0;
|
|||
|
foreach (var equipment in result.equipments)
|
|||
|
{
|
|||
|
var quality = equipment.quality;
|
|||
|
if (quality == 3)
|
|||
|
{
|
|||
|
q3++;
|
|||
|
}
|
|||
|
else if (quality == 4)
|
|||
|
{
|
|||
|
q4++;
|
|||
|
}
|
|||
|
else if (quality == 5)
|
|||
|
{
|
|||
|
q5++;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
__listReward.GetItem<PropWidget>().SetQualityCount($"随机{Item.GetQualityText(5)}装备", 5, q5);
|
|||
|
__listReward.GetItem<PropWidget>().SetQualityCount($"随机{Item.GetQualityText(4)}装备", 4, q4);
|
|||
|
__listReward.GetItem<PropWidget>().SetQualityCount($"随机{Item.GetQualityText(3)}装备", 3, q3);
|
|||
|
}
|
|||
|
|
|||
|
SoundProxy.PlayFxAsync("Sounds/attack_ui_end.mp3");
|
|||
|
}
|
|||
|
|
|||
|
private void OnCollectBtnClick()
|
|||
|
{
|
|||
|
PostNotification(GlobalDefine.EVENT_GRADE_CHANGED);
|
|||
|
if (this.data is BattleResult result)
|
|||
|
{
|
|||
|
var rewards = F.ListPool<Item.ItemInfo>.Get();
|
|||
|
|
|||
|
//rewards.Add(new Item.ItemInfo
|
|||
|
//{
|
|||
|
// id = Item.Id.kExp,
|
|||
|
// count = result.exp,
|
|||
|
//});
|
|||
|
|
|||
|
rewards.Add(new Item.ItemInfo
|
|||
|
{
|
|||
|
id = Item.Id.kCoin,
|
|||
|
count = result.coin,
|
|||
|
});
|
|||
|
|
|||
|
foreach (var equipment in result.equipments)
|
|||
|
{
|
|||
|
var quality = equipment.quality;
|
|||
|
if (quality == 5 || quality == 4)
|
|||
|
{
|
|||
|
rewards.Add(new Item.ItemInfo
|
|||
|
{
|
|||
|
id = equipment.itemId,
|
|||
|
count = 1,
|
|||
|
});
|
|||
|
}
|
|||
|
}
|
|||
|
RewardWindow.ShowRewards(rewards, result.callback);
|
|||
|
F.ListPool<Item.ItemInfo>.Release(rewards);
|
|||
|
}
|
|||
|
CloseWindow(this);
|
|||
|
SoundProxy.PlayFxAsync(GlobalDefine.BUTTON_CLICK_SOUND);
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
}
|
|||
|
}
|