Вход

Просмотр полной версии : Поменять местами кнопки.


MyNameIs
25.11.2007, 23:36
Такое дело, у меня на сцене 19 кнопок с именами butt1, butt2, butt3 ....
С помомощью цикла задаю обработку нажатия
for(i=0;i<=19;i++){
this["butt"+i].onPress=function(){
this.gotoAndStop(3);
}
}


Задача : нажимаем на одну кнопку, потом нажимаем на другую и эти кнопки меняются местами. Понимаю, что нужно запомнить координаты Первой кнопки, потом второй и поменять местами. Но дело в том, что всё крутится в цикле.
Максимум чего добился это сгребание в одну кучу всех кнопок. Подскажите как реализовать.:wacko:

iNils
25.11.2007, 23:43
Не понятно...

MyNameIs
25.11.2007, 23:50
Есть 19 кнопок. Нажимаем на ОДНУ кнопку, потом нажимаем на ВТОРУЮ и эти кнопки меняются местами. Чтобы их поменять нужно знать координаты и той и другой кнопки. Вот выложу код.
this["butt" + i].onPress = function () {
this.gotoAndStop (3);
if (vibrano == true) {
this._y = yy;
this._x = xx;
vibrano = false;
}
if (vibrano == false) {
yy = this._y;
xx = this._x;
vibrano = true;
}
};

Сохранение первых координат идёт в переменные yy и xx. Как сохранить координаты второй выбранной кнопки?

qwerter
25.11.2007, 23:54
заведи две переменные mov, x и y на глобале. инициализируй их с нулями. потом по нажатии кнопки проверяй: если х и y по нулям, то присваивай им координаты текущей кнопки и в mov переменную заноси ссылку на эту кнопку. если х и y не равны нулям(то есть они хранят координаты какой то кнопки), то кнопке mov присваивай координаты текущей кнопки, а самой кнопке присваивай координаты которые хранят х и y и потом обнуляй их. думаю работать должно, сам не пробовал. единственное что пришло в голову.

iNils
26.11.2007, 00:25
Вы оформили код тегами, это хорошо. Но мне не понятно, неужели так сложно этот код прежде отформатировать, ведь каша получается!