Затем, в строке 7 условный оператор проверяет, есть ли объект в той плитке, которой касается щупальце. Если есть, то мы перескакиваем к блоку else кода ActionScript, который останавливает персонажа, используя то же код, что мы применяли в функции moveCharacter(). Если в этой плитке нет объекта, то мы проходим по первой ветви оператора if. Мы определяем глубину плитки, на которой сейчас находится персонаж, и затем добавляем 1 к этой глубине. Затем мы перемещаем персонажа на эту глубину, применяя оператор swapDepths().
Мы рассмотрели все функции, использованные в этом файле. Давайте посмотрим, когда эти функции вызываются. Ниже приведены 17 строк кода ActionScript из этого кадра:
1 maxx =10;
2 maxz =10;
3 iso =new isometricAS(maxx,maxz);
4 buildWorld(maxx,maxz);
5 _root.onEnterFrame =function(){
6 moveCharacter();
7 detectObjects();
8 positionCharacter();
9 };
10 makeObject(2,8,"plant");
11 makeObject(5,4,"plant");
12 makeObject(6,9,"block");
13 makeObject(5,9,"block");
14 makeObject(5,8,"block");
15 changeManyGroundTiles(2,5,3,1,"concrete");
16 changeManyGroundTiles(6,1,3,5,"concrete");
17 changeManyGroundTiles(6,5,8,1,"concrete");
В строках 1 и 2 мы устанавливаем число ячеек, которые использованы для построения мира в направлениях x и z. Затем мы создаем экземпляр объекта isometricAS, передавая в него границы x и z. Они используются объектом isometricAS для вычисления глубины. Далее, в строке 4, мы вызываем функцию buildWorld(), передавая в нее границы x и z. Функция buildWorld() сохраняет информацию в объекте world и, в свою очередь, вызывает функцию buildFloor(), которая использует эти значения. Далее мы настраиваем событие onEnterFrame. Оно вызывает функции moveCharacter(), detectObjects(), и positionCharacter() в каждом кадре. Завершающие восемь строк кода ActionScript размещают объекты на экране и создают бетонные плитки