备份CatanBuilding瘦身独立工程
This commit is contained in:
60
Assets/Scripts/Duel/UI/DuelBtnRod.cs
Normal file
60
Assets/Scripts/Duel/UI/DuelBtnRod.cs
Normal file
@@ -0,0 +1,60 @@
|
||||
using asap.core;
|
||||
using cfg;
|
||||
using GameCore;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using UniRx;
|
||||
|
||||
public class DuelBtnRod : MonoBehaviour
|
||||
{
|
||||
Image bg_hud_god_image;
|
||||
Image rawImage;
|
||||
TMP_Text text_grade_rod;
|
||||
TMP_Text text_star_rod;
|
||||
PlayerFishData _playerFishData;
|
||||
Tables _tables;
|
||||
string[] bg_hud_gods = { "bg_hud_god_blue", "bg_hud_god_blue", "bg_hud_god_purple", "bg_hud_god_yellow" };
|
||||
System.IDisposable disposable;
|
||||
private void Awake()
|
||||
{
|
||||
_playerFishData = GContext.container.Resolve<PlayerFishData>();
|
||||
_tables = GContext.container.Resolve<Tables>();
|
||||
bg_hud_god_image = transform.Find("bg").GetComponent<Image>();
|
||||
rawImage = transform.Find("mask/icon").GetComponent<Image>();
|
||||
text_grade_rod = transform.Find("text_grade").GetComponent<TMP_Text>();
|
||||
text_star_rod = transform.Find("bg_star/text_star").GetComponent<TMP_Text>();
|
||||
disposable = GContext.OnEvent<ActChangeRodDataEvent>().Subscribe(e =>
|
||||
{
|
||||
InitData();
|
||||
});
|
||||
}
|
||||
private void Start()
|
||||
{
|
||||
InitData();
|
||||
}
|
||||
public void InitData()
|
||||
{
|
||||
RodData rod = _tables.GetRodData(GContext.container.Resolve<PlayerData>().equipRodID);
|
||||
text_grade_rod.text = LocalizationMgr.GetFormatTextValue("UI_PlayerGradePanel_2", _playerFishData.GetRodLevel(rod.ID) + 1);
|
||||
text_star_rod.text = _playerFishData.GetRodPiece(rod.ID).ToString();
|
||||
GContext.container.Resolve<IUIService>().SetImageSprite(bg_hud_god_image, bg_hud_gods[rod.Quality - 1], "HomePanel");
|
||||
int skindID = GContext.container.Resolve<PlayerFishData>().GetRodSkin(rod.ID);
|
||||
if (skindID <= 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
var fishRodSkinData = _tables.TbRodSkinData.GetOrDefault(skindID);
|
||||
if (fishRodSkinData == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
GContext.container.Resolve<IUIService>().SetImageSprite(rawImage, fishRodSkinData.Avatar, "HomePanel");
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
disposable?.Dispose();
|
||||
disposable = null;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user