поставьте трейс сразу после e.target.alpha = 0.5;
обработчик события есть, просто оно не возникает
Вот рабочий код, если не ждать события MouseEvent.CLICK:

Код AS3:
package
{
import flash.display.*;
import flash.events.*;
public class Region extends MovieClip
{
public static const CLICK_REG1:String = "clickreg1";
public function Region():void
{
}
public function testEvent():void
{
dispatchEvent(new Event(Region.CLICK_REG1))
}
}
}
package
{
import flash.display.Sprite;
import flash.events.Event;
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
var reg:Region = new Region();
reg.addEventListener(Region.CLICK_REG1, onClick);
reg.testEvent();
}
private function onClick(e:Event):void
{
trace("SOS")
}
}
}