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

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



y-ob.radius-game.speed; 30 var cellx =Math.ceil(tempx/game.spacing); 31 var celly =Math.ceil(tempy/game.spacing); 32 var tempCell =game ["cell"+cellx+"_"+celly ]; 33 if (tempCell.type !=1){ 34 return; 35 }else { 36 ob.y -=game.speed; 37 ob.clip._y =ob.y; 38 } 39 }else if (dir =="down"){ 40 var tempx =ob.x; 41 var tempy =ob.y+ob.radius+game.speed; 42 var cellx =Math.ceil(tempx/game.spacing); 43 var celly =Math.ceil(tempy/game.spacing); 44 var tempCell =game ["cell"+cellx+"_"+celly ]; 45 if (tempCell.type !=1){ 46 return; 47 }else { 48 ob.y +=game.speed; 49 ob.clip._y =ob.y; 50 } 51 } 52 } Эта функция принимает параметр с именем dir. Он представляет строку, которая передается в функцию, сообщающую функции какая кнопка была нажата. В строке 2 функции мы устанавливаем ссылку на объект game.ball с именем ob. Создание временной ссылки не является абсолютной необходимостью, но это делает немного короче набор кода и реально немного ускоряет код ActionScript. Далее у нас идет оператор if, который проверяет, равно ли значение dir "right", "left", "up", или "down". Очень похожие действия повторяются для каждой из четырех частей этого условного оператора. Сначала давайте посмотрим на строки 3-14, условие "right". Первое действие в этом блоке кода, строка 4, устанавливает переменную tempx, которая представляет собой координату правой границы шара. Поскольку пользователь пытается передвинуть шар вправо, мы проверяем, будет ли правая граница шара по-прежнему находиться в допустимой ячейке, если мы передвинем его в этом направлении. Чтобы сделать это, мы используем нашу математическую уловку для определения ячейки с помощью переменных tempx и tempy. Затем мы проверяем объект, который представляет ячейку, на которой находился бы шар. Если переменная type этого объекта равна 1, то перемещение допустимо
Hosted by uCoz