private void Awake() { EventTriggerBundle eventTriggerBundle = UnityEngine.Object.FindObjectOfType(typeof(EventTriggerBundle)) as EventTriggerBundle; if (eventTriggerBundle != null) { this.SetAssetList(eventTriggerBundle); } }
public virtual void SetAssetList(EventTriggerBundle BundleList) { if (this.m_AssetDataList == null) { return; } FieldInfo[] fields = base.GetType().GetFields(); foreach (AssetData current in this.m_AssetDataList) { UnityEngine.Object @object = BundleList.GetObject(current.m_AssetPath); if (@object != null) { FieldInfo[] array = fields; for (int i = 0; i < array.Length; i++) { FieldInfo fieldInfo = array[i]; if (fieldInfo.Name == current.m_ValueName) { if (fieldInfo.FieldType.IsArray) { Array array2 = fieldInfo.GetValue(this) as Array; if (array2 == null || array2.Length <= 0) { array2 = Array.CreateInstance(Type.GetType(current.m_TypeName), current.m_ArraySize); fieldInfo.SetValue(this, array2); } for (int j = 0; j < current.m_ArraySize; j++) { UnityEngine.Object x = (UnityEngine.Object)array2.GetValue(j); if (x == null) { array2.SetValue(@object, j); break; } } } else { fieldInfo.SetValue(this, @object); } break; } } } } this.m_AssetDataList.Clear(); }
public bool SetAssetList(EventTriggerBundle BundleList) { Array values = Enum.GetValues(typeof(EventTrigger._EVENTTRIGGER)); for (int i = 0; i < values.Length; i++) { List <GameObject> list = this.GetList((EventTrigger._EVENTTRIGGER)((int)values.GetValue(i))); if (list != null) { foreach (GameObject current in list) { EventTriggerItem component = current.GetComponent <EventTriggerItem>(); if (!(component == null)) { component.SetAssetList(BundleList); } } } } return(true); }