コード例 #1
0
        private IEnumerator DisplayWeaponEnumerator(WeaponDefinition definition)
        {
            if (!(m_currentWeapon == definition))
            {
                m_currentWeapon = definition;
                bool flag  = PlayerData.instance.weaponInventory.Contains(definition.get_id());
                bool flag2 = !IsCurrentWeapon(definition.get_id()) && flag;
                m_validateButton.set_interactable(flag2);
                m_validateButtonText.SetText(flag2 ? 40340 : 38149);
                PlayerData.instance.weaponInventory.TryGetLevel(m_currentWeapon.get_id(), out m_level);
                if (m_enterAnimationFinished)
                {
                    yield return(PlayFadeSequence(toOut: true));
                }
                yield return(LoadWeaponInfos(definition));

                BuildDeckList();
                m_backgroundShader.TweenColor(definition.deckBuildingBackgroundColor, definition.deckBuildingBackgroundColor2, 0.2f);
                AssetReference uIAnimatedCharacterReference = definition.GetUIAnimatedCharacterReference();
                CanvasGroup    characterGroup = m_characterloader.GetComponent <CanvasGroup>();
                characterGroup.set_alpha(0f);
                m_characterloader.Setup(uIAnimatedCharacterReference, AssetBundlesUtility.GetUIAnimatedCharacterResourcesBundleName());
                while (m_characterloader.loadState == UIResourceLoadState.Loading)
                {
                    yield return(null);
                }
                DOTweenModuleUI.DOFade(characterGroup, 1f, 0.3f);
                m_equippedFX.SetEquipped(IsCurrentWeapon(definition.get_id()));
                if (m_enterAnimationFinished)
                {
                    yield return(PlayFadeSequence(toOut: false));
                }
            }
        }