Hello everyone!
Welcome to this article!
Today I want to show you something called Nineveh Responder engine, or as I say here just NResponder.
And to do this, I will cover just four points, nothing more:
  • Nineveh What?: What is this? For what I want?
  • NResponder's features: What has of special?
  • NResponder usage: How to use it?
  • REAL WORLD example: NResponder in action!
OK, so let's start!

Nineveh What?

Do you remember of city Nineveh? OK, nothing like that.
Nineveh is in really a new Framework to AS3 under construction. Is not the point here talk about this Framework, but just is important to say that NResponder is one of the engines and APIs of the Nineveh Framework. Something new about this framework is that it has engines and APIs independents, like NResponder, and these engines and APIs can work fine outside the framework.
OK, but what the kind of engine is NResponder?
An Event Engine!

For years I used the Event Engine of default Flash framework called EventDispatcher. Oh God!
How boring was that! You know:
  •  Create some kind of instance or inherit from EventDispatcher class.
  •  Add listeners into it.
  • Create a VERY LIMITED AND STRICT event-class inherited from Event class (in majority of cases). And you need to use just event-class AS PARAMETER when dispatch.
  • Create a new instance of that custom Event.
  • Dispatch that Event using the above instance of EventDispatcher (well, I mean, if you have some instance in the time of dispatch).
  • Wait for Capture phase, Target Phase, Bubbling Phase.
Ooooh...  just STOP!!!

If you are boring with all this, like me, NResponder is for you!
If you are completely new to Events in Flash, NResponder is for you too!
And if you are new just delete the points that I just spoke above, you don't need this with NResponder.

NResponder is much much faster than native Event Engine of Flash.
You don't need to create any instance, if you don't want.
Can manage and control events of your entire application.

Imagine this scene:
You start you application, place 3 buttons on the stage, and load an external SWF to play a video.
When you press one button, the video playing in the other SWF need to stop, because another SWF will be loaded above it.
Well...  with EventDispatcher you should have a big path to follow until finally catch it.
But with NResponder, all that you need, is just 2 lines of code!
One in the Button class and another in the video player! Just simple as this!

Well, this is just the natural behavior of NResponder, I didn't even talk about features yet.

You can use NResponder for everything related to events or fire actions, mouse and keyboard and touch interactions, etc.
As the title of this article, you can completely say "Good Bye" to EventDispatcher.

OK, now you know what NResponder is.
If you want, you can see the project page on Google:
Check the blog page here:

You can download the NResponder here:

Obviously you can check the project page on Google to see the Documentation, check the SVN, learn with the Wiki, but here I will teach you step by step in a tutorial to use the great power of NResponder.

Now let's move further.