![]() |
|
||||||||||
|
||||||
|
Регистрация: Oct 2004
Сообщений: 141
|
Цитата:
Я написал ее так (простим мне ламеру использование _root всуе): function func(x,y){
// Искомый тайл
_root.mc["tile" +x+"_"+y]._alpha=100 ;
// Тайлы по кресту (изометрия)
_root.mc["tile" +(x-1)+"_"+(y)]._alpha=75;
_root.mc["tile" +(x+1)+"_"+(y)]._alpha=75;
_root.mc["tile" +(x)+"_"+(y-1)]._alpha=75;
_root.mc["tile" +(x)+"_"+(y+1)]._alpha=75;
// Тайлы по диагоналям (изометрия)
_root.mc["tile" +(x-1)+"_"+(y-1)]._alpha=75;
_root.mc["tile" +(x-1)+"_"+(y+1)]._alpha=75;
_root.mc["tile" +(x+1)+"_"+(y-1)]._alpha=75;
_root.mc["tile" +(x+1)+"_"+(y+1)]._alpha=75;
}
Цитата:
Но, я привожу пример конструкции, где по моему личному, абсолютно не проффесиональному, мнению, использования [], весьма удобно. И в ответ, вместо конкретики или хотя бы объяснения в двух словах (не оптимально по скорости, приводит к багам...) получаю фразы типа: Цитата:
Цитата:
Цитата:
Есть конкретный, очень короткий (см.функцию выше) пример. Покажите как это можно сделать короче, быстрей и понятней. Поскольку я хочу писать код в стиле завтрашнего дня, на AS2 вчерашнего, я попробую разжевать для себя сам, поправьте меня... Создаем объекты с именами "tile1","tile2",..."tile900" для локации (карты) 30х30. Типа так: ---Создаем--- var counter=1;
var names=[];
for(var i=1;i<=30;i++){
names[i]=[];
for(var j=1;j<=30;j++){
counter++;
//[] - зло, но как создать "собранный" линк? set? eval?
set("tile"+counter,mc.attachMovie("tiles","anyname"+counter,someDepth,{x:i,y:j}))
//согласно совету iNils воодим масив для хранения имен, а по сути соответствий координаты - мувики.
names[i][j]="tile"+counter;
}
}
for(var i=1;i<=30;i++){
for(var j=1;j<=30;j++){
mc.attachMovie("tiles","tile"+i+"_"+j,someDepth,{x:i,y:j}))
}
}
function func(x,y){
// Как найти искомый тайл?
//по умному тут у нас должно быть что-то вида ссылка._alpha=100
//и мы даже знаем как эта ссылка обзывается - name[x][y]
// но что делать дальше, я честно говоря не знаю
// я могу записать в виде _root[name[x][y]].alpha=100
// но это опять те же квадратные скобки, мало того еще и с упоминанием рута.
}
Какие еще методы обращения к свойствам объектов существуют? Каким образом я могу реализовать ссылка._alpha=100 без квдратных скобок, где ссылка - сложносочиненный стринг. Зачем превращать квадратное, в длинное, для того чтобы затем сделать опять квадратным? |
![]() |
Часовой пояс GMT +4, время: 13:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|