Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

API.Unity.Behaviour Extensions

JuDelCo edited this page Jun 1, 2021 · 5 revisions

Namespace: Ju.Extensions

Behaviour Extensions

You can use these on all classes inherited from Behaviour like MonoBehaviour or UIBehaviour.

Vector3 GetPosition();
Vector3 GetLocalPosition();
Quaternion GetRotation();
Quaternion GetLocalRotation();
Vector3 GetScale();

void EventSubscribe<T>(Action<T> action, bool alwaysActive);
void EventSubscribe<T>(Action<T> action, int priority = 0, bool alwaysActive = false);
void EventSubscribe<T>(Action action, bool alwaysActive);
void EventSubscribe<T>(Action action, int priority = 0, bool alwaysActive = false);
void EventSubscribe<T>(Action<T> action, Func<T, bool> filter, bool alwaysActive);
void EventSubscribe<T>(Action<T> action, Func<T, bool> filter, int priority = 0, bool alwaysActive = false);
void EventSubscribe<T>(Action action, Func<T, bool> filter, bool alwaysActive);
void EventSubscribe<T>(Action action, Func<T, bool> filter, int priority = 0, bool alwaysActive = false);

void EventSubscribe<T>(byte channel, Action<T> action, bool alwaysActive);
void EventSubscribe<T>(byte channel, Action<T> action, int priority = 0, bool alwaysActive = false);
void EventSubscribe<T>(byte channel, Action action, bool alwaysActive);
void EventSubscribe<T>(byte channel, Action action, int priority = 0, bool alwaysActive = false);
void EventSubscribe<T>(byte channel, Action<T> action, Func<T, bool> filter, bool alwaysActive);
void EventSubscribe<T>(byte channel, Action<T> action, Func<T, bool> filter, int priority = 0, bool alwaysActive = false);
void EventSubscribe<T>(byte channel, Action action, Func<T, bool> filter, bool alwaysActive);
void EventSubscribe<T>(byte channel, Action action, Func<T, bool> filter, int priority = 0, bool alwaysActive = false);

Coroutine CoroutineStart(IEnumerator routine, bool alwaysActive = true);

IPromise WaitUntil(Func<bool> condition, bool alwaysActive = false);
IPromise WaitWhile(Func<bool> condition, bool alwaysActive = false);
IPromise WaitForSeconds<T>(float seconds, bool alwaysActive = false) where T : ITimeDeltaEvent;
IPromise WaitForSeconds(float seconds, bool alwaysActive = false);
IPromise WaitForTicks<T>(int ticks, bool alwaysActive = false) where T : ITimeEvent;
IPromise WaitForNextUpdate(bool alwaysActive = false);
IPromise WaitForNextFixedUpdate(bool alwaysActive = false);

IClock NewClock<T>(bool alwaysActive = false) where T : ITimeDeltaEvent;
IClock NewClock<T>(float elapsedSeconds, bool alwaysActive = false) where T : ITimeDeltaEvent;
ITimer NewTimer<T>(float seconds, Action onCompleted, bool alwaysActive = false) where T : ITimeDeltaEvent;
IFrameTimer NewFrameTimer<T>(int frames, Action onCompleted, bool alwaysActive = false) where T : ITimeEvent;

void NodeSubscribe(JNode node, Action<JNode, JNodeEvent> action, bool alwaysActive = false);
void NodeSubscribe(JNode node, JNodeEvent eventFilter, Action<JNode> action, bool alwaysActive = false);
void NodeSubscribe(JNode node, JNodeEvent eventFilter, Action<T> action, bool alwaysActive = false) where T : JNode;
void NodeSubscribe(JNode node, Action action, bool alwaysActive = false);
void NodeSubscribe(JNode node, JNodeEvent eventFilter, Action action, bool alwaysActive = false);
void DataSubscribe<T>(JData<T> node, Action<JData<T>> action, bool alwaysActive = false);
Action<T> DataBind<T>(JData<T> node, Action<JData<T>> action, bool alwaysActive = false);
Action<TRemote> DataBind<T, TRemote>(JData<T> node, Action<JData<T>> action, Func<TRemote, T> converter, bool alwaysActive = false);

Clone this wiki locally

Morty Proxy This is a proxified and sanitized view of the page, visit original site.