English Version            Русская версия

 [ Разделы сервера ]  [ Карта сервера ]  [ Новости сервера ] [ Обратная связь ]



Этот объект будет хранить все остальные объекты, которые мы создаем. Единственная причина для создания этого контейнерного объекта game, состоит в предохранении сцены от заполнения ненужными данными. Мы можем хранить все, что нам нужно о шарах в объекте game. Во второй строке мы устанавливаем переменную объекта game, которая хранит число шаров, которое мы используем. Далее, мы делаем цикл для каждого шара, создавая для него объект, и сохраняя информацию об этом шаре в его объекте. Обратите внимание, что мы не даем шарам никаких начальных скоростей. В строках 13-15 мы назначаем шарам начальные векторные скорости. Приходим к следующему коду ActionScript: 1 function moveBalls(){ 2 for (var i=1;i<=game.numBalls;++i){ 3 var ob =game ["ball"+i ]; 4 ob.tempx =ob.xpos+ob.xmov; 5 ob.tempy =ob.ypos+ob.ymov; 6 } 7 } Эта функция проходит в цикле по списку шаров (в данном случае лишь два шара) и обновляет их временные позиции в памяти в их текущие позиции плюс их скорость. Мы еще не обновляем позицию реального клипа в сцене. Я советую вам взять в привычку создание временного положения клипа в памяти, потому что когда мы начинаем работать с реакциями на столкновения, мы будем обновлять временное положение клипа (как результат многочисленных реакций или сил) возможно несколько раз, прежде чем мы действительно изменим положение клипа в сцене. Давайте проанализируем пример. Представьте, что вы кодируете игру, в которой шар отскакивает от стены. Этот шар может перемещаться очень быстро. Теперь представьте, что в одном кадре шар не сталкивается со стеной, а в следующем кадре вы обнаруживаете, что половина шара пересеклась со стеной. Когда это происходит, вы не хотите обновлять положение шара в сцене для демонстрации этого. Пожалуй, хорошей мыслью будет обновление положения шара в памяти для отражения того, где шар должен быть и затем рисовать шар на экране. Таким образом, если обнаружено, что шар сталкивается со стеной (не имеет значения, как далеко он проник в стену), то мы должны обновить положение шара в памяти, так что шар лишь едва коснется стены
Hosted by uCoz