IEnumerator DownLoadAssetBundleByBuffer(string url, UnityEngine.Events.UnityAction <byte[]> cb, UnityEngine.Events.UnityAction onFailed) { using (UnityWebRequest www = UnityWebRequest.Get(url)) { DownloadHandlerBuffer handler = new DownloadHandlerBuffer(); www.downloadHandler = handler; yield return(www.Send()); if (www.isError) { LoggerManager.Instance().LogErrorFormat("DownLoadAssetBundleByBuffer Failed:{0} url={1}", www.error, url); if (null != onFailed) { onFailed.Invoke(); } } else { LoggerManager.Instance().LogFormat("DownLoadAssetBundleByBuffer Succeed : Length = {0} ...", handler.data.Length); if (null != cb) { cb.Invoke(www.downloadHandler.data); } } } }
public void RemoveInputOnValueChanged(UnityEngine.Events.UnityAction <string> func) { if (this.gameObject.GetComponent <InputField> () != null) { this.gameObject.GetComponent <InputField> ().onValueChanged.RemoveListener(func); } }
public void UnregisterSpriteChangeCallback(UnityEngine.Events.UnityAction <SpriteRenderer> callback) { if (m_SpriteChangeEvent != null) { m_SpriteChangeEvent.RemoveListener(callback); } }
/// <summary> /// toggle事件绑定并返回本身 /// </summary> /// <param name="toggle"></param> /// <param name="fun"></param> public static void AddToggleEvent(Toggle toggle, UnityEngine.Events.UnityAction <bool> fun) { toggle.onValueChanged.AddListener((isOn) => { fun(isOn); }); }
public void AddToggleOnValueChanged(UnityEngine.Events.UnityAction <bool> func) { if (this.gameObject.GetComponent <Toggle> () != null) { this.gameObject.GetComponent <Toggle> ().onValueChanged.AddListener(func); } }
public void RemoveScrollOnValueChanged(UnityEngine.Events.UnityAction <Vector2> func) { if (this.gameObject.GetComponent <ScrollRect> () != null) { this.gameObject.GetComponent <ScrollRect> ().onValueChanged.RemoveListener(func); } }
private static System.Collections.IEnumerator OnDelayCallEndOfFrame(object obj, UnityEngine.Events.UnityAction <object> rFunc) { yield return(new WaitForEndOfFrame()); if (rFunc != null) { rFunc(obj); } }
public void RemoveSliderOnValueChanged(UnityEngine.Events.UnityAction <float> func) { if (this.gameObject.GetComponent <Slider> () != null) { this.gameObject.GetComponent <Slider> ().onValueChanged.RemoveListener(func); } }
public void RegisterSpriteChangeCallback(UnityEngine.Events.UnityAction <SpriteRenderer> callback) { if (m_SpriteChangeEvent == null) { m_SpriteChangeEvent = new UnityEvent <SpriteRenderer>(); } m_SpriteChangeEvent.AddListener(callback); }
static public UnityEngine.Events.UnityAction <Vector2> Vec2Delegate(LuaFunction func) { UnityEngine.Events.UnityAction <Vector2> d = (arg0) => { func.Call <Vector2>(arg0); }; return(d); }
static public UnityEngine.Events.UnityAction <bool> BoolDelegate(LuaFunction func) { UnityEngine.Events.UnityAction <bool> d = (arg0) => { func.Call <bool>(arg0); }; return(d); }
static public UnityEngine.Events.UnityAction <float> FloatDelegate(LuaFunction func) { UnityEngine.Events.UnityAction <float> d = (arg0) => { func.Call <float>(arg0); }; return(d); }
static public UnityEngine.Events.UnityAction <String> StringDelegate(LuaFunction func) { UnityEngine.Events.UnityAction <String> d = (arg0) => { func.Call <String>(arg0); }; return(d); }
static public UnityEngine.Events.UnityAction <BaseEventData> BaseEventDelegate(LuaFunction func) { UnityEngine.Events.UnityAction <BaseEventData> d = (arg0) => { func.Call <BaseEventData>(arg0); }; return(d); }
/// <summary> /// 状態が変化した際に呼び出されるリスナーを削除する /// </summary> /// <param name="tOnValueChanged">リスナーメソッド</param> public void RemoveOnValueChangedListener(UnityEngine.Events.UnityAction <float> tOnValueChanged) { Scrollbar tScrollbar = _scrollbar; if (tScrollbar != null) { tScrollbar.onValueChanged.RemoveListener(tOnValueChanged); } }
public static void InsertFunctionIntoCallback(EventTrigger trigger, EventTriggerType type, Del func) { EventTrigger.Entry entry = new EventTrigger.Entry(); entry.eventID = type; entry.callback = new EventTrigger.TriggerEvent(); UnityEngine.Events.UnityAction <BaseEventData> call = new UnityEngine.Events.UnityAction <BaseEventData>(func); entry.callback.AddListener(call); trigger.triggers.Add(entry); }
public void AddEventTrigger(Transform insObject, EventTriggerType eventType, UnityEngine.Events.UnityAction <BaseEventData> myFunction)//泛型委托 { EventTrigger trigger = insObject.GetComponent <EventTrigger>(); EventTrigger.Entry entry = new EventTrigger.Entry(); entry.eventID = eventType; entry.callback.AddListener(myFunction); trigger.triggers.Add(entry); }
/// <summary> /// 状態が変化した際に呼び出されるリスナーを削除する /// </summary> /// <param name="tOnValueChanged">リスナーメソッド</param> public void RemoveOnValueChangedListener(UnityEngine.Events.UnityAction <int> tOnValueChanged) { Dropdown tDropdown = _dropdown; if (tDropdown != null) { tDropdown.onValueChanged.RemoveListener(tOnValueChanged); } }
private UnityEngine.Events.UnityAction <float> SetScaleBuilder(Action <float> setScale) { UnityEngine.Events.UnityAction <float> action = (float scale) => { updateViewProperties(AbstractVisualisation.PropertyType.Scaling); setScale(scale); updateViewProperties(AbstractVisualisation.PropertyType.Scaling); }; return(action); }
public void UnregisterEventHandler(int id, UnityEngine.Events.UnityAction <GameObject, string> on_event) { for (int i = 0; i < UiAinm.Length; i++) { GUIAnim g_anim = UiAinm[id]; if (g_anim != null) { g_anim.OnSequenceEvent -= on_event; } } }
/// <summary> /// Methodto create a new button in a panel /// </summary> /// <param name="panel">Site where we will add a new button</param> /// <param name="center">The center position of the new button</param> /// <param name="extends">The extents of the button</param> /// <param name="action">Actin name</param> /// <param name="actionMethod">Method that will be called when we click the button</param> Button CreateButton(RectTransform panelTransform, Vector2 center, Vector2 extends, String ability, UnityAction actionMethod, Boolean enabled) { var transform = panelTransform.transform; var buttonObject = new GameObject(ability); buttonObject.tag = "ActionButton"; buttonObject.layer = 5; // UI Layer var image = buttonObject.AddComponent <Image>(); image.tag = "ActionButton"; //image.rectTransform.SetParent(panelTransform); image.rectTransform.localScale = panelTransform.localScale; image.rectTransform.sizeDelta = 1.5f * extends; image.rectTransform.position = center; //image.rectTransform.position = transform.position; image.sprite = CreateSprite(ability, image.rectTransform.sizeDelta); //Debug.LogError("Button position: " + center); var button = buttonObject.AddComponent <Button>(); button.targetGraphic = image; button.onClick.AddListener(() => actionMethod()); var enterTrigger = buttonObject.AddComponent <EventTrigger>(); EventTrigger.Entry enterEntry = new EventTrigger.Entry(); enterEntry.eventID = EventTriggerType.PointerEnter; enterEntry.callback = new EventTrigger.TriggerEvent(); UnityEngine.Events.UnityAction <BaseEventData> enterCall = new UnityEngine.Events.UnityAction <BaseEventData>(mouseEnter); enterEntry.callback.AddListener(enterCall); enterTrigger.triggers.Add(enterEntry); var exitTrigger = buttonObject.AddComponent <EventTrigger>(); EventTrigger.Entry exitEntry = new EventTrigger.Entry(); exitEntry.eventID = EventTriggerType.PointerExit; exitEntry.callback = new EventTrigger.TriggerEvent(); UnityEngine.Events.UnityAction <BaseEventData> exitCall = new UnityEngine.Events.UnityAction <BaseEventData>(mouseExit); exitEntry.callback.AddListener(exitCall); exitTrigger.triggers.Add(exitEntry); button.transform.SetParent(GameObject.Find("HUD/actions").transform); // We assign the parent to actions Canvas from the HUD button.GetComponent <RectTransform>().localPosition = new Vector3(button.GetComponent <RectTransform>().localPosition.x, button.GetComponent <RectTransform>().localPosition.y, 0f); return(button); //button.enabled = false; //button.interactable = false; //button.enabled = false; //button.gameObject.SetActive(false); }
void addEventTriggerToButton(GameObject button, string triggerType, UnityAction <BaseEventData> buttonFunction) { EventTrigger trigger = button.GetComponent <EventTrigger>(); EventTrigger.Entry entry = new EventTrigger.Entry(); entry.eventID = (EventTriggerType)System.Enum.Parse(typeof(EventTriggerType), triggerType); entry.callback = new EventTrigger.TriggerEvent(); UnityEngine.Events.UnityAction <BaseEventData> call = new UnityEngine.Events.UnityAction <BaseEventData>(buttonFunction); entry.callback.AddListener(call); trigger.triggers.Add(entry); }
/// <summary> /// 创建对象 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="panelName"></param> /// <param name="onCreate"></param> public void CreatePanel(UIInfoBase itemInfo, UnityEngine.Events.UnityAction <GameObject> onCreate) { if (_cansaleKeys.Contains(itemInfo.panelName)) { _cansaleKeys.RemoveAll(x => x == itemInfo.panelName); } if (!_loadingKeys.Contains(itemInfo.IDName)) { _loadingKeys.Add(itemInfo.IDName); var bInfo = itemInfo as BundleUIInfo; var pInfo = itemInfo as PrefabUIInfo; var rInfo = itemInfo as ResourceUIInfo; if (pInfo != null) { var go = GetGameObjectInfo(pInfo); if (onCreate != null) { onCreate.Invoke(go); } } else if (rInfo != null) { var go = GetGameObjectInfo(rInfo); if (onCreate != null) { onCreate.Invoke(go); } } else if (bInfo != null) { if (bundleLoader != null) { bundleLoader.LoadAssetAsync <GameObject>(bInfo.bundleName, bInfo.panelName, (x) => { if (x != null) { var instence = CreateInstance(x, bInfo); if (onCreate != null) { onCreate.Invoke(instence); } _loadingKeys.Remove(bInfo.IDName); } }); } else { Debug.LogError("请先设置AssetBundle加载时的规则!"); } } } }
// [SerializeField] // public ItemEventTrigger m_ItemEventTrigger = new ItemEventTrigger(); // Start is called before the first frame update void Start() { EventTrigger trigger = this.gameObject.AddComponent <EventTrigger>(); EventTrigger.Entry entry = new EventTrigger.Entry(); entry.eventID = EventTriggerType.PointerClick; UnityEngine.Events.UnityAction <BaseEventData> click = new UnityEngine.Events.UnityAction <BaseEventData>(OnItemClick); entry.callback.AddListener(click); trigger.triggers.Clear(); trigger.triggers.Add(entry); }
internal static void AddButtonEvent(GameObject obj, UnityEngine.Events.UnityAction <GameObject> unityAction) { Button btn = obj.GetComponent <Button>(); if (btn == null) { btn = obj.AddComponent <Button>(); } if (btn.onClick.GetPersistentEventCount() > 0) { btn.onClick.RemoveAllListeners(); } btn.onClick.AddListener(delegate { unityAction(obj); }); }
public float PlaySequence(int id, string seq_name, UnityEngine.Events.UnityAction <GameObject, string> on_finish) { SafeInit(); float ret = -1; if (id > -1 && id < UiAinm.Length) { GUIAnim g_anim = UiAinm[id]; if (g_anim) { g_anim.StopSequence(); g_anim.OnSequenceEnd = on_finish; ret = g_anim.PlaySequence(seq_name); } } return(ret); }
// Create a new text box with title, initial value and call back public QuestEditorTextEdit(StringKey t, string initial, UnityAction <string> call) { value = initial; title = t; returnCall = call; }
public static void DelayCall(object obj, float rTime, UnityEngine.Events.UnityAction <object> rFunc) { Global.TaskManager.StartTask(OnDelayCall(obj, rTime, rFunc)); }
private static System.Collections.IEnumerator OnDelayCall(object obj, float time, UnityEngine.Events.UnityAction <object> rFunc) { yield return(new WaitForSeconds(time)); if (rFunc != null) { rFunc(obj); } }
public static void DelayCallForEndOfFrame(object obj, UnityEngine.Events.UnityAction <object> rFunc) { Global.TaskManager.StartTask(OnDelayCallEndOfFrame(obj, rFunc)); }