Add Juice, Polish and Functionality with Unity Event Handlers

  Рет қаралды 10,579

One Wheel Studio

One Wheel Studio

Күн бұрын

Пікірлер: 24
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Okay, not sure why I said "Event System" at the beginning... Oops. Either way, here's the written tutorial: onewheelstudio.com/blog/2022/4/15/input-event-handlers-or-adding-juice-the-easy-way And the code: github.com/onewheelstudio/Adventures-in-C-Sharp/tree/main/Event%20Handlers
@steveradtke1308
@steveradtke1308 2 жыл бұрын
Thank you for putting in the time to make these videos, I know they are not "blowing up" but they are very helpful and informative to those of us who they pertain to.
@dererzherzog
@dererzherzog 2 жыл бұрын
To have IEventHandler interfaces neatly presented with those super-relevant use case examples all in one place. Way to go, man!!! Great job, as usual!
@josephenriquez579
@josephenriquez579 4 ай бұрын
Super useful and super clean! Thank you for making this!
@rttmx
@rttmx 2 жыл бұрын
Great vid with some nice use case examples
@blazingpotato642
@blazingpotato642 2 жыл бұрын
dude! thanks!
@MarekNijaki
@MarekNijaki 2 жыл бұрын
Awesome video
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
🙏
@sharat.achary
@sharat.achary 2 жыл бұрын
Thank you for this wonderful tutorial. Btw one question is it necessary to add "event" before "System.Action"? Please advise.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
You don't need to but often it's a good practice to do so. The event keyword does not allow assignment statements only += and -= this prevents classes from overriding which classes are subscribed to a delegate. It also prevents other classes from calling "invoke" on the delegate. So not needed, but its generally a good idea. You can see more about it in this video: kzbin.info/www/bejne/i4iwnpyYZreMfKc
@sharat.achary
@sharat.achary 2 жыл бұрын
@@OneWheelStudio Thanks, that was good to know. Shared these two videos they are a must.
@mrvastayan
@mrvastayan 2 жыл бұрын
10/10
@KroneDev
@KroneDev 2 жыл бұрын
Neat
@inkofthedragon
@inkofthedragon 2 жыл бұрын
I'm curious why you use interfaces in these examples? Can't you just use straight up methods? Thanks
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Without the interfaces the methods won’t get called. I’m not sure how Unity locates the interfaces, but I think about it as if Unity calls FindObjectsOfType() then calls the corresponding method on each instance. Does that help?
@SRCoder
@SRCoder 2 жыл бұрын
Any tips on where to find the documentation on these interfaces? The Unity Scripting Reference doesn't show them! In fact there isn't even any documentation for UnityEngine.EventSystem.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
It is a bit tricky to find. You may need to switch to an older version of the documentation at least that's what I noticed. I also added a link in the video description to "supported events" which should be a good starting point. You can find other links by following the link to the OWS blog in the pinned comment.
@SRCoder
@SRCoder 2 жыл бұрын
@@OneWheelStudio excellent. Thank you.
@captainnoyaux
@captainnoyaux 2 жыл бұрын
Do you have a way to handle double click without triggering single click ? If you need double click and single click logic on the same gameobject for instance without one interfering with the other.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Hmm. It might depend on EXACTLY what you are trying to do. But I my first attempt would be to put the double click detection BEFORE the single click AND if the double click happens you return or exit the function. Would that work?
@captainnoyaux
@captainnoyaux 2 жыл бұрын
@@OneWheelStudio yeah probably! I tried to do it with the new input system too but it complicated too much the code base, plus you add delay on all calls :/, I never found a correct solution to that (maybe there is none)
@nikescar
@nikescar 2 жыл бұрын
If this is the new Input System, try adding Tap and MultiTap interactions to the click. You can then check the interaction type in your code. If the interaction type is MultiTapInteraction then you have your double click. Otherwise, single click.
@VEOdev
@VEOdev 2 жыл бұрын
you can keep tracking last click time on update, if you click again while you are in the click duration, it triggers the double click, else if the time reached 0 > reset the double click, it will be something like that : first make a bool call it : clicked = false; then make a float call it : clickTreshhold = 0.05f; in update check if we click, if we do and the clicked is false, start counting down, if we clicked again and the countdown is not 0 yet, we trigger the function.. else if the time reached 0, set clicked to false again.
@DeathxStrike18
@DeathxStrike18 2 жыл бұрын
There is also this method: using UnityEngine; public class OnMouseOverExample : MonoBehaviour { void OnMouseOver() { //If your mouse hovers over the GameObject with the script attached, output this message Debug.Log("Mouse is over GameObject."); } void OnMouseExit() { //The mouse is no longer hovering over the GameObject so output this message each frame Debug.Log("Mouse is no longer on GameObject."); } }
(Better) Object Pooling - I Didn't Like My Old Solution
8:49
One Wheel Studio
Рет қаралды 15 М.
How to Program in Unity: Observer Pattern Explained
15:57
iHeartGameDev
Рет қаралды 117 М.
黑天使只对C罗有感觉#short #angel #clown
00:39
Super Beauty team
Рет қаралды 36 МЛН
Что-что Мурсдей говорит? 💭 #симбочка #симба #мурсдей
00:19
The Power of Scriptable Objects as Middle-Men
17:41
samyam
Рет қаралды 131 М.
Delegates, Events, Actions and Funcs - The Observer Pattern (Unity & C#)
11:48
Drag and drop in Unity UI - create your own inventory UI!
12:47
Coco Code
Рет қаралды 117 М.
Game Events - Power & Simplicity in Unity3D
17:15
Jason Weimann (GameDev)
Рет қаралды 73 М.
Unity Coroutines - Neat and tidy ways to know when they're done!
9:32
One Wheel Studio
Рет қаралды 7 М.
I Scraped the Entire Steam Catalog, Here’s the Data
11:29
Newbie Indie Game Dev
Рет қаралды 605 М.
Why you should switch to Unity's New Input System (and how easy it is)
9:51
Jason Weimann (GameDev)
Рет қаралды 34 М.
How Two People Created Gaming’s Most Complex Simulation System
38:54
ThatGuyGlen
Рет қаралды 1,5 МЛН
C# Events & Delegates
17:21
Tarodev
Рет қаралды 91 М.
黑天使只对C罗有感觉#short #angel #clown
00:39
Super Beauty team
Рет қаралды 36 МЛН