Я предполагаю, что ваша функция должна быть такой:
//when clicked remove listener send back to position
function mouseClick3(event:MouseEvent):void
{
bar.removeEventListener(MouseEvent.CLICK, mouseClick3);
if(bar.x > 780)
{
bar.x = 215;
}
}
Проблема в том, что у вас есть две функции "mouseClick3". Внутренний mouseClick3 фактически никогда не выполняется, и removeEventListener будет предназначаться для mouseClick3, который никогда не выполняется, так как это переменная local в функции. Если вы удалите внутренний mouseClick3, код будет выполнен, и ваш слушатель нацелится на правильную функцию.