Здравствуйте. Помогите пожалуйста оптимизировать код.
В примере у меня игра "Морской бой".
Код создания первого трех-палубника следующий:

Код AS3:
//3-палубник A
var shipCell3a:Field = new Field();
shipCell3a.gotoAndStop(23);
shipCell3a.x = 100;
shipCell3a.y = 100;
addChild(shipCell3a);
shipCell3a.addEventListener(MouseEvent.MOUSE_DOWN, startShipDrag3a);
shipCell3a.addEventListener(MouseEvent.MOUSE_UP, stopShipDrag3a);
shipCell3a.addEventListener(Event.ENTER_FRAME, dragshipCell3a);
var clickOffSet3a:Point = null;
function startShipDrag3a(event:MouseEvent)
{
setChildIndex(event.target as DisplayObject, numChildren - 1);
clickOffSet3a = new Point(event.localX,event.localY);
}
function stopShipDrag3a(event:MouseEvent)
{
clickOffSet3a = null;
}
function dragshipCell3a(event:Event)
{
if (clickOffSet3a != null)
{
shipCell3a.x = mouseX - clickOffSet3a.x;
shipCell3a.y = mouseY - clickOffSet3a.y;
}
}
Для второго трех-палубника аналогичный код, только индекс "3a" везде меняется на "3b".
Как я могу оптимизировать код, и использовать только одно событие для нескольких корабликов?
Спасибо.