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)); } } }