Nirth, что ты перемудрил с авматизацией

зачем тебе событие?

Код:
class MySound extends Sound {
private var _channel:SoundChannel;
public function MySound() {
super();
}
public override function play(...):SoundChannel {
super.play(...);
assignChannel();
// и если тебя раздрожает можешь сразу и написать
this.dispatchEvent(new Event("play"));
}
...
и тд и тп
ну и не по делу: на мой взгляд, создавать события для "самого себя" немного не правельно. проще вписать вызов функции в нужном месте. мне казалось что диспатч скорее подходит для сторонних объектов нежели для "себя".