UI换了很多,spine主视觉停用

This commit is contained in:
FloatGaming
2026-06-15 20:17:25 +08:00
parent 5eec879582
commit 216ab08e8d
3634 changed files with 814422 additions and 382766 deletions
@@ -15,13 +15,21 @@ public class taskPrefabController : MonoBehaviour
public Image rewardImg;
public Text rewardAmmount;
public void Setup(DailyTaskViewData taskView, int displayIndex, Sprite rewardSprite, UnityAction onRewardClicked)
[Header("materials")]
[SerializeField] private Material unavailableRewardMaterial;
public void Setup(DailyTaskViewData taskView, int displayIndex, Sprite rewardSprite, UnityAction onRewardClicked, Material overrideUnavailableRewardMaterial = null)
{
if (taskView == null || taskView.definition == null || taskView.runtimeEntry == null)
{
return;
}
if (overrideUnavailableRewardMaterial != null)
{
unavailableRewardMaterial = overrideUnavailableRewardMaterial;
}
if (taskNumber != null)
{
taskNumber.text = displayIndex.ToString("00");
@@ -61,6 +69,33 @@ public class taskPrefabController : MonoBehaviour
rewardButton.onClick.AddListener(onRewardClicked);
}
rewardButton.interactable = taskView.runtimeEntry.isCompleted && !taskView.runtimeEntry.isClaimed;
bool canClaim = taskView.runtimeEntry.isCompleted && !taskView.runtimeEntry.isClaimed;
rewardButton.interactable = canClaim;
ApplyRewardAvailabilityMaterial(taskView.runtimeEntry.isCompleted);
}
private void ApplyRewardAvailabilityMaterial(bool isCompleted)
{
Material targetMaterial = isCompleted ? null : unavailableRewardMaterial;
if (rewardButton != null)
{
Graphic buttonGraphic = rewardButton.targetGraphic;
if (buttonGraphic != null)
{
buttonGraphic.material = targetMaterial;
}
}
if (rewardImg != null)
{
rewardImg.material = targetMaterial;
}
if (rewardAmmount != null)
{
rewardAmmount.material = targetMaterial;
}
}
}