Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > ActionScript 1,2 > Глюк при изменении скорости


Автор: Alex103 20.8.2009, 19:13
Добрый вечер. Помогите пожалуйста разобраться в следующем.
mas_speed=(2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.6,1.6,1.6,1.6,1.6,1.6,1.6, 1.6,1.6,1.6,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.2,1.2,1.2,1.2,1.2,1.2,1.2,1,1,1,1,1,1,1,0.8,0.8,0.8,0.8,0.8,0.8,0.6,0.6,0.6,0.6,0.6,0.6, 0.4,0.4,0.4,0.4,0.4,0.4,0.2,0.2,0.2,0.2,0.2,0.2,0,0,0,0,0,0.2,0.2,0.2,0.2,0.2,0.2,0.4,0.4,0.4,0.4,0.4,0.4,0.6,0.6,0.6,0.6,0.6,0.6,0.8,0.8,0.8, 0.8,0.8,0.8,1,1,1,1,1,1,1,1.2,1.2,1.2,1.2,1.2,1.2,1.2,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.4,1.6,1.6,1.6,1.6,1.6,1.6,1.6,1.6,1.6,1.6,1.8,1.8,1.8,1.8, 1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,1.8,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2);
Код

for (i=0; i<=count-1; i++) {
        if (flowerthumb_mc._x+flowerthumb_mc["img"+(i+1)]._x>=330 && flowerthumb_mc._x+flowerthumb_mc["img"+(i+1)]._x<=510 
&& (flowerthumb_mc._x+flowerthumb_mc["img"+(i+1)]._x)%2 == 0) {
            var item_coords=(flowerthumb_mc._x+flowerthumb_mc["img"+(i+1)]._x)-330;
            speed=mas_speed[item_coords];
            trace("Coords: "+item_coords+" Speed: "+speed);
        }
    }


Этот цикл запускается функцией с таким интервалом:
Код

var temp_int = setInterval(this, "dynamics_fun", 30);

смысл этого в том чтобы при движении элементов когда они попадают в центр они должны замедляться и ускоряться на определенном интервале.

вот что выводит trace когда закомментировано://speed=mas_speed[item_coords];:
Coords: 180 Speed: 2
Coords: 178 Speed: 2
Coords: 176 Speed: 2
Coords: 174 Speed: 2
Coords: 172 Speed: 2
Coords: 170 Speed: 2
Coords: 168 Speed: 2
Coords: 166 Speed: 2
Coords: 164 Speed: 2
Coords: 162 Speed: 2
Coords: 160 Speed: 2
Coords: 158 Speed: 2
Coords: 156 Speed: 2
Coords: 154 Speed: 2
Coords: 152 Speed: 2
Coords: 150 Speed: 2
Coords: 148 Speed: 2
Coords: 146 Speed: 2
Coords: 144 Speed: 2
Coords: 142 Speed: 2
Coords: 140 Speed: 2
Coords: 138 Speed: 2
Coords: 136 Speed: 2
Coords: 134 Speed: 2
Coords: 132 Speed: 2
Coords: 130 Speed: 2
Coords: 128 Speed: 2
Coords: 126 Speed: 2
Coords: 124 Speed: 2
Coords: 122 Speed: 2
Coords: 120 Speed: 2
Coords: 118 Speed: 2
Coords: 116 Speed: 2
Coords: 114 Speed: 2
Coords: 112 Speed: 2
Coords: 110 Speed: 2
Coords: 108 Speed: 2
Coords: 106 Speed: 2
Coords: 104 Speed: 2
Coords: 102 Speed: 2
Coords: 100 Speed: 2
Coords: 98 Speed: 2
Coords: 96 Speed: 2
Coords: 94 Speed: 2
Coords: 92 Speed: 2
Coords: 90 Speed: 2
Coords: 88 Speed: 2
Coords: 86 Speed: 2
Coords: 84 Speed: 2
Coords: 82 Speed: 2
Coords: 80 Speed: 2
Coords: 78 Speed: 2
Coords: 76 Speed: 2
Coords: 74 Speed: 2
Coords: 72 Speed: 2
Coords: 70 Speed: 2
Coords: 68 Speed: 2
Coords: 66 Speed: 2
Coords: 64 Speed: 2
Coords: 62 Speed: 2
Coords: 60 Speed: 2
Coords: 58 Speed: 2
Coords: 56 Speed: 2
Coords: 54 Speed: 2
Coords: 52 Speed: 2
Coords: 50 Speed: 2
Coords: 48 Speed: 2
Coords: 46 Speed: 2
Coords: 44 Speed: 2
Coords: 42 Speed: 2
Coords: 40 Speed: 2
Coords: 38 Speed: 2
Coords: 36 Speed: 2
Coords: 34 Speed: 2
Coords: 32 Speed: 2
Coords: 30 Speed: 2
Coords: 28 Speed: 2
Coords: 26 Speed: 2
Coords: 24 Speed: 2
Coords: 22 Speed: 2
Coords: 20 Speed: 2
Coords: 18 Speed: 2
Coords: 16 Speed: 2
Coords: 14 Speed: 2
Coords: 12 Speed: 2
Coords: 10 Speed: 2
Coords: 8 Speed: 2
Coords: 6 Speed: 2
Coords: 4 Speed: 2
Coords: 2 Speed: 2
Coords: 0 Speed: 2
А это в другом случае:
Coords: 180 Speed: 2
Coords: 178 Speed: 2
Coords: 176 Speed: 2
Coords: 174 Speed: 2
Coords: 172 Speed: 2
Coords: 170 Speed: 2
Coords: 168 Speed: 2
Coords: 166 Speed: 2
Coords: 164 Speed: 2
Coords: 162 Speed: 2
Coords: 160 Speed: 1.8
Coords: 142 Speed: 1.6
Coords: 108 Speed: 0.6
Coords: 78 Speed: 0.4
Coords: 76 Speed: 0.4
Coords: 74 Speed: 0.6
Coords: 68 Speed: 0.8
Coords: 64 Speed: 0.8
Coords: 60 Speed: 1
Coords: 58 Speed: 1
Coords: 56 Speed: 1.2
Coords: 50 Speed: 1.2
Coords: 44 Speed: 1.4

тоесть возникает непонятный скачек после 160 да и еще до конца не доходит.

flowerthumb_mc._x -= speed; - bcgjkmpetncz в этой же функции с этом же setInterval

Помогите понять в чем дело или обойти.  smile 


Автор: szz 20.8.2009, 19:32
что за хрень, можешь пожалста на ентер нажимать меж строк? У меня горизонтальный скролл сломался!

Автор: Alex103 20.8.2009, 20:20
Может дело в дробных числах которые попадают в переменную speed. Можно передвигать элемент меньше чем на 1 пиксел?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)