lcy
2026-06-15 319d798dd53178934e2d6c1031f57757cbe7fc4f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using System;
using UnityEngine;
 
public class GuildAtkDefBatChallengeDifficulty : MonoBehaviour
{
    [SerializeField] TextEx defBaseAttrPerNumText;
    [SerializeField] TextEx defStarNumText;
    [SerializeField] ButtonEx challengeBtn;
 
    private int difficultyIndex;
    private int defBaseAttrPer;
    private Action<int, int> onChallenge;
 
    private void Awake()
    {
        challengeBtn.onClick.RemoveAllListeners();
        challengeBtn.onClick.AddListener(OnClickChallenge);
    }
 
    public void Display(int index, int attrPer, int starNum, bool isKilled, Action<int, int> challengeCallback)
    {
        difficultyIndex = index;
        defBaseAttrPer = attrPer;
        onChallenge = challengeCallback;
 
        defBaseAttrPerNumText.text = Language.Get("GuildAtkDefBat03",attrPer);
        defStarNumText.text = starNum.ToString();
 
        challengeBtn.interactable = !isKilled;
        if (challengeBtn.image is ImageEx buttonImage)
        {
            buttonImage.gray = isKilled;
        }
    }
 
    private void OnClickChallenge()
    {
        onChallenge?.Invoke(difficultyIndex, defBaseAttrPer);
    }
}