Project_WL/Assets/Script/UI/Center/Mission/MissionCard_Repeat.cs

81 lines
2.8 KiB
C#

using CodeStage.AntiCheat.ObscuredTypes;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MissionCard_Repeat : MissionCard
{
MissionTableData m_MissionTableData;
List<ObscuredInt> S_Data;
private void Awake()
{
var mcard = GetComponent<MissionCard>();
sprite_reward = mcard.sprite_reward;
labels = mcard.labels;
slider = mcard.slider;
go_getbtn = mcard.go_getbtn;
labels[3].text = "진행 중";
}
public void Set(MissionTableData _base)
{
enabled = true;
m_MissionTableData = _base;
S_Data = ServerInfo.Ins.m_ServerData.Mission[MyValue.arr_Mission[1]].Find(f => f[0] == _base.n_MissionIndex);
var curCount = Get_CurCount();
sprite_reward.spriteName = DSUtil.Get_ItemSpriteInfo(m_MissionTableData.e_Reward, m_MissionTableData.ID).Icon;
int addLv = curCount / m_MissionTableData.n_PurposeCount;
labels[0].text = DSUtil.GetThousandCommaText(m_MissionTableData.n_RewardAmount * (addLv > 0 ? addLv : 1));
labels[1].text = DSUtil.Format("{0} ({1})", m_MissionTableData.Desc, S_Data[2]);
labels[2].text = DSUtil.Format("{0}/{1}", curCount, m_MissionTableData.n_PurposeCount);
slider.value = (float)curCount / m_MissionTableData.n_PurposeCount;
if (slider.value >= 1f)
{
name = "0";
go_getbtn.SetActive(true);
}
else
{
name = "1";
go_getbtn.SetActive(false);
}
if (m_MissionTableData.e_Purpose == ePurpose.PlayTime)
Set_Repeat_for1sec(() =>
{
labels[2].text = DSUtil.Format("{0}/{1}", Get_CurCount(), m_MissionTableData.n_PurposeCount);
});
}
int Get_CurCount()
{
return S_Data[1] - S_Data[2] * m_MissionTableData.n_PurposeCount;
}
public override void OnClick_RewardInfo()
{
ItemDescUI.Ins.Set(new ItemData(m_MissionTableData.e_Reward, m_MissionTableData.n_RewardID, m_MissionTableData.n_RewardAmount, "", eUICardType.GetItem));
}
public override void OnClick_GetReward()
{
var curCount = Get_CurCount();
if (curCount >= m_MissionTableData.n_PurposeCount)
{
var sdata = ServerInfo.Ins.m_ServerData;
var addlv = curCount / m_MissionTableData.n_PurposeCount;
var itemdata = new ItemData(m_MissionTableData.e_Reward, m_MissionTableData.ID, m_MissionTableData.n_RewardAmount * addlv);
sdata.Add_Item(itemdata);
S_Data[2] += addlv;
S_Data[2].RandomizeCryptoKey();
//MyText.ShowToast_ItemText(itemdata);
GameUI.Ins.LobbyUI.Get_MissionUI().Set();
NewGameUI.Ins.m_GuideQuestUI.Add_GuideQuest(ePurpose.GetMissionReward);
}
}
}