public override void OnActivate(int pinID) { if (pinID != 0) { return; } if (!GameUtility.Config_UseAssetBundles.Value) { this.ActivateOutputLinks(11); } else { if (((Behaviour)this).get_enabled()) { return; } GameManager instance = MonoSingleton <GameManager> .Instance; GachaParam[] gachas = instance.Gachas; for (int index1 = 0; index1 < gachas.Length; ++index1) { if (gachas[index1] != null) { if (gachas[index1].units != null && gachas[index1].units.Count > 0) { for (int index2 = 0; index2 < gachas[index1].units.Count; ++index2) { if (instance.Player.FindUnitDataByUnitID(gachas[index1].units[index2].iname) == null && this.DownloadUnits.IndexOf(gachas[index1].units[index2].iname) == -1) { this.DownloadUnits.Add(gachas[index1].units[index2].iname); } } } if (gachas[index1].artifacts != null && gachas[index1].artifacts.Count > 0) { for (int index2 = 0; index2 < gachas[index1].artifacts.Count; ++index2) { ArtifactParam artifact = gachas[index1].artifacts[index2]; if (artifact != null) { string path = AssetPath.Artifacts(artifact); if (!string.IsNullOrEmpty(path)) { AssetList.Item itemByPath = AssetManager.AssetList.FindItemByPath(path); if (itemByPath != null && !AssetManager.IsAssetInCache(itemByPath.IDStr)) { this.DownloadArtifacts.Add(artifact); } } } } } } } ((Behaviour)this).set_enabled(true); this.StartCoroutine(this.AsyncWork(pinID == 1)); } }