     {
         _currentCursorYOffset = value;
 
-		dispatchEvent(new Event("currentCursorYOffset"));
+        if (hasEventListener("currentCursorYOffset"))
+    		dispatchEvent(new Event("currentCursorYOffset"));
     }
 
     //--------------------------------------------------------------------------

                currentCursorXOffset = 0;
                currentCursorYOffset = 0;

				if (dispatchEvent(new Event("removeMouseMoveListener", false, true)))
                {
               		systemManager.stage.removeEventListener(MouseEvent.MOUSE_MOVE,
                                          mouseMoveHandler,true);
                }

				if (dispatchEvent(new Event("removeMouseOutListener", false, true)))
                {
               		systemManager.stage.removeEventListener(MouseEvent.MOUSE_OUT,
                                          mouseOutHandler,true);

			cursorHolder.visible = true;
            Mouse.hide();

            if (hasEventListener("showCustomCursor"))
	    		dispatchEvent(new Event("showCustomCursor"));
        }
    }
    
