В моей последней сборки я создал редактор игровых уровня, на котором пользователи могут создавать свои собственные уровни и делиться ими с другими. Вот учебник, основанный на моей стене выключатель игру волновой физики
The Gong
.
Вот.capxTutorial capx
Отмечу, что данное учебное пособие не для абсолютных новичков, потому что она использует достаточно сложные функции и вы должны иметь некоторые знания и опыт о программировании в С2.
Подвижных панелей меню
Первое, что нужно в меню панели, где вы можете перетащить в спрайты и использовать различные действия, чтобы манипулировать с ними. В начале панели и спрайты, значки действий находятся за пределами экрана.
Для перемещения панели меню на экране у меня два слоя, один слой с 100 параллакса, а второй с нулевой параллакс.
Ищу переключения моей панели и кнопки, которые приносят меню на экране между слоями использованием логических переменных типа, испытаний в соответствии с таблицей истинности ли первая панель на экране, и второй не является и т.д. спрайты и значки прижат к панели каждый раз, когда меню нажатии кнопок заверив, что они не остались в стороне, когда панели переехал в другой слой.
Перемещение спрайтов в макет
Выберите, какие спрайты вы хотели бы использовать в своих уровнях и назначить им всем в семье и поместить их на панель.
В семье не без DragDrop поведения и переменные:
Меню - для спрайтов, которые возлагали на панели, так что они не могли быть втянуты.
Падение - При значении True спрайт перемещается нижний слой. Необходимые для перетаскивания, потому что на первый спрайт вы хотите добавить создается на том же слое, что и панель, на падение она переехала в нижнем слое. В противном случае спрайтов на экране начнет беспокоить вас.
Неймер - давать имена для ваших спрайтов, необходимых для сохранения функции
Функция - используется для определения действия выбирается из меню действия или нет. Когда функция = 0 DragDrop для спрайтов включена, в противном случае нет.
Я использовал перетаскивания для каждого спрайта отдельно, потому что, когда, используя семейство я начал получать случайные спрайтов.
Панели действий
Наведите иконки справа меню и назначить действия на них.
Вы можете использовать все виды действий в панели действий, вы просто должны определить их. Я использую два логических значений контролировать ли действия выбрано или нет.
Для просмотра, что все действия я определил делают, рассматривая помощью меню редактора.
Действия
Я объясню более сложные действия:
1) установки угла спрайта
Для установки угла спрайта я использую, когда ближайший к спрайт коснулся. Спрайт будет быть обращена в сторону touch.x, touch.y. Вы можете unchoose спрайт, нажав на заднем плане.
2) Сохранение
Для экономии мы используем функцию под названием Save, который я нашел на форумах. Спрайт имена, координаты и углы сохраняются в массив и массив затем сохраняются в Webstorage как JSON.
3) Загрузка
Редактор использует два способа загрузки предыдущего проекта. Во-первых, это из JSON, где вы вставляете JSON данные в текстовое поле и загрузить игру. Другой способ использует URL. Когда вы загрузили несколько файлов на удаленном месте, как Dropbox вы можете загрузить их из URL.
4) Скачивание файла JSON
Первая функции "Сохранить" называется, а затем ArrayData в массив является spriteLocations Скачать как. Файл JSON.
5) загрузкой JSON на удаленные базы данных MySQL
Это Probaly самая сложная часть этого урока, нам нужна база данных MySQL для этого. Я использовал сервис под названием freemysqldatabase.com, где вы получите единую базу данных для макс данных 5 Мб. Как один. JSON файл в моем случае о 1kb это более чем достаточно для меня.
Вам нужно 2 переменные типа текста для этого. Один для отображаемое имя и второй для данных JSON. Первое текстовое поле бросили, куда Вы вписываете отображаемое имя вашей игры. Тогда переменные загружены в базы данных MySQL Использование Ajax POST и файл PHP [Мой PHP файла] [2]
[2] [https://dl.dropboxusercontent.com/u/148544823/save.php]
Используйте другие учебники или поиск в сети для конфигурации базы данных MySQL, это не конкретные C2, я не буду обсуждать это в учебнике.
Одна странная вещь тоже с поста AJAX, она иногда дает ошибку при отправке, но когда я просматриваю свою базу данных, все в порядке. Это причина, почему Ajax полной и ошибки имеют те же действия assingned.
Спасибо за чтение, я надеюсь, что вы получили некоторые хорошие идеи для вашей игры. Перед тем как начать, чтобы создать свой собственный редактор, я рекомендую вам попробовать мою игру [Гун] The Gong
for better understanding of the functions of my editor.