Example #1
0
    private void SetProgress(DATA_GUILDRAID_PROGRESS GuildRaidProgressTable, float progressValue)
    {
        if (_ProgressList.Count < 1 || _ProgressList.Count != 4)
        {
#if DEBUG_LOG
            Debug.LogError("프리팹에 있는 Progress가 연결끊어짐.");
#endif
            return;
        }

        _ProgressList[0].Init(GuildRaidProgressTable.RaidRewardItemIndex, GuildRaidProgressTable.ScoreLevel1, GuildRaidProgressTable.RaidRewardValue1, progressValue);
        _ProgressList[1].Init(GuildRaidProgressTable.RaidRewardItemIndex, GuildRaidProgressTable.ScoreLevel2, GuildRaidProgressTable.RaidRewardValue2, progressValue);
        _ProgressList[2].Init(GuildRaidProgressTable.RaidRewardItemIndex, GuildRaidProgressTable.ScoreLevel3, GuildRaidProgressTable.RaidRewardValue3, progressValue);
        _ProgressList[3].Init(GuildRaidProgressTable.RaidRewardItemIndex, GuildRaidProgressTable.ScoreLevel4, GuildRaidProgressTable.RaidRewardValue4, progressValue);
    }
Example #2
0
    //===================================================================================
    //
    // Method
    //
    //===================================================================================
    public void SetRecvData(_stGuildRaidInfoAck GuildRaidInfoAck)
    {
        _guildRaidInfoAck = GuildRaidInfoAck;

        UserInfo.Instance.guildRaidInfo.guildRaidDay = _guildRaidInfoAck.kGuildRaidDay;

        if (CDATA_GUILDRAID.GetCount() < 1)
        {
            CDATA_GUILDRAID.Load();
        }

        _todayGuildRaidTableList.Clear();
        for (int i = 0; i < CDATA_GUILDRAID.GetCount(); ++i)
        {
            DATA_GUILDRAID GuildRaidTable = CDATA_GUILDRAID.GetByIndex(i);
            if ((int)GuildRaidTable.SetDay == _guildRaidInfoAck.kGuildRaidDay)
            {
                _todayGuildRaidTableList.Add(GuildRaidTable);
            }
        }

        DATA_GUILDRAID_PROGRESS._ProgressEnum ProgressEnum = DATA_GUILDRAID_PROGRESS._ProgressEnum._ProgressEnum_Max;

        foreach (DATA_GUILDRAID data in _todayGuildRaidTableList)
        {
            if (data.SetLevel == (int)enGuildRaidDifficulty.Easy)
            {
                _RaidEasyButtonSprite.sprite2D = UIResourceMgr.CreateSprite(BUNDLELIST.TEXTURE_GUILDRAID, data.RaidCardImage);
            }
            else if (data.SetLevel == (int)enGuildRaidDifficulty.Normal)
            {
                _RaidNormalButtonSprite.sprite2D = UIResourceMgr.CreateSprite(BUNDLELIST.TEXTURE_GUILDRAID, data.RaidCardImage);
            }
            else if (data.SetLevel == (int)enGuildRaidDifficulty.Hard)
            {
                _RaidHardButtonSprite.sprite2D = UIResourceMgr.CreateSprite(BUNDLELIST.TEXTURE_GUILDRAID, data.RaidCardImage);
            }

            ProgressEnum = data.ProgressEnum;
        }

        DATA_GUILDRAID_PROGRESS GuildRaidProgressTable = CDATA_GUILDRAID_PROGRESS.Get(ProgressEnum);

        ulong kGuildRaidCurrDailyScore = _guildRaidInfoAck.kGuildRaidInfo.kGuildRaidCurrDailyScore;

        SetProgress(GuildRaidProgressTable, kGuildRaidCurrDailyScore);
        SetProgressGage(GuildRaidProgressTable.MaxScore, kGuildRaidCurrDailyScore);

        _PointLabel.text = string.Format(StringTableManager.GetData(8667), kGuildRaidCurrDailyScore);        // 8667 {0} 점

        // 길드레이드 오픈상태 설정. (오픈중, 정산중, 보상중)
        {
            _RaidOpen.SetActive(false);
            _RaidCalcurate.SetActive(false);
            _RaidReward.SetActive(false);

            //GameObject ActiveObj = null;

            if (UserInfo.Instance.GuildRaidRewardState == _enGuildRaidRewardState.enGuildRaidRewardState_Recv)      // 보상중
            {
                _RaidReward.SetActive(true);
                //ActiveObj = _RaidReward;

                TimeSpan ts = _guildRaidInfoAck.kEndDate.GetDateTime() - TimeManager.Instance.GetServerTime();
                _RaidRewardTimeLabel.text = string.Format(StringTableManager.GetData(4915), ts.Hours, ts.Minutes);       // 4915 {0}시간 {1}분 남음
            }
            else
            {
                TimeSpan ts = TimeManager.Instance.GetServerTime() - _guildRaidInfoAck.kStartDate.GetDateTime();

                if (ts.TotalSeconds > 0)       // 오픈중
                {
                    _RaidOpen.SetActive(true);
                    //ActiveObj = _RaidOpen;
                }
                else                                // 정산중
                {
                    _RaidCalcurate.SetActive(true);
                    //ActiveObj = _RaidCalcurate;

                    TimeSpan calcurateTimeSpan = _guildRaidInfoAck.kStartDate.GetDateTime() - TimeManager.Instance.GetServerTime();

                    _RaidCalcurateLabel.text = string.Format(StringTableManager.GetData(8673), calcurateTimeSpan.Minutes);   // 8673 정산 중입니다. 정산에는 n분이 소요되며 해당 레이드에 참여 했다면 정산 후 보상을 받을 수 있습니다.
                }
            }

            //Transform[] childs = ActiveObj.GetComponentsInChildren<Transform>(true);
            //foreach (Transform child in childs)
            //{
            //    child.gameObject.SetActive(true);
            //}
        }
    }