![]() |
Создание клеточной доски
Доброго времени суток. Вопрос: как создать карту (размером 64*64 одинаковых клеток, к примеру) используя ActionScript 3.0? Чтобы в каждой клетке возможно было размещать какой-либо объект. Буду благодарен за любой намёк на реализацию такой вещи. Спасибо.
|
Хотите намек? Пожалуйста: циклы и остаток от деления на размер строки.
И в шахматах 8*8, а не 64*64, но так, между прочим |
arkadattx спасибо за намёк, по-поводу шахмат, я не говорил, что это шахматная доска! Кто ещё какие варианты скажет?
|
наверное давно в шахматы не играл :)
а чем этот вариант не устраивает dataGrid еще возможен, но я с ним еще не работал... |
ну вот еще парочка намеков: for, addChild, array
|
это классический двумерный массив
arr[i][j] где i это ряд а j это столбец |
Спасибо большое, буду делать!
|
Вот подробное руководство:
Создай класс "Ячейка" наследуя от визуального класса (extends Sprite). Графическую часть можно либо нарисовать динамически в graphics, либо прикрепить к классу из редактора (в свойстве linked (CS3) или properties (CS4)) Создай массив, в котором будут храниться все созданные тобой ячейки, чтобы потом с помощью него обращаться к ним. Код AS3:
Потом создай два цикла for. В первом перебирай строки, во втором столбцы. Чтобы получить двумерный массив, при переборе строк пиши Код AS3:
Код AS3:
Добавляй ячейку в список отображения (addChild(ячейка)) и в массив (массивЯчеек[строка].push(ячейка)). Чтобы поместить яблоко в 3-ую ячейку 4-го столбца, пиши Код AS3:
|
Ого, спасибо, буду ковыряться, разбираться!
|
Фрагмент из класса шахматной доски, которую я когда-то делал.
Код AS3:
|
| Часовой пояс GMT +4, время: 00:04. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.