Добро пожаловать в финальное руководство из серии игр «Азбука супа»! В этом уроке мы рассмотрим выбор слов и шаги, необходимые для создания окончательного приложения.
Шаг 1: Нажмите кнопку «Проверка объектов»
Мы будем использовать отличную и полезную функцию для обнаружения столкновений без физики. Вы можете найти оригинальный пример и исходный код на веб-сайте Ansca Code Exchange .
1
2
3
4
5
6
7
8
|
— by jhocking
function hitTestObjects(obj1, obj2)
local left = obj1.contentBounds.xMin <= obj2.contentBounds.xMin and obj1.contentBounds.xMax >= obj2.contentBounds.xMin
local right = obj1.contentBounds.xMin >= obj2.contentBounds.xMin and obj1.contentBounds.xMin <= obj2.contentBounds.xMax
local up = obj1.contentBounds.yMin <= obj2.contentBounds.yMin and obj1.contentBounds.yMax >= obj2.contentBounds.yMin
local down = obj1.contentBounds.yMin >= obj2.contentBounds.yMin and obj1.contentBounds.yMin <= obj2.contentBounds.yMax
return (left or right) and (up or down)
end
|
Шаг 2: Обнаружение писем
Следующая функция будет запущена, когда пользователь поднимает палец, используемый для выбора слова. Он рассчитает выбранные буквы, используя функцию, созданную на предыдущем шаге.
1
2
3
|
function detectLetters:touch(e)
— Code…
end
|
Шаг 3: Получите выбранные письма
Строковая переменная создается для хранения букв, выделенных строкой.
1
2
3
4
5
6
7
8
9
|
— Get selected letters
local selectedWord = »
for i = 1, tfs.numChildren do
if(hitTestObjects(lines[lines.numChildren], tfs[i])) then
selectedWord = selectedWord .. tfs[i].text
end
end
|
Шаг 4. Проверьте, есть ли слово в списке
Этот код проверяет сгенерированную строку и сравнивает ее с элементами таблицы слов. Если слово найдено, звучит звук и счетчик поднимается.
01
02
03
04
05
06
07
08
09
10
11
12
|
— Check if word is on list
for j = 0, 5 do
if(selectedWord == L1[j]) then
audio.play(bell)
currentWords.text = currentWords.text .. ‘ ‘ .. selectedWord
currentWords:setReferencePoint(display.TopLeftReferencePoint)
currentWords.x = 5
correct = correct + 1
end
end
end
|
Шаг 5: Проверка на окончание игры
Когда счетчик достигает того же количества слов в таблице, вызывается предупреждение.
1
2
3
|
if(correct == #L1) then
alert()
end
|
Шаг 6: оповещение
Функция оповещения останавливает игру, удаляет слушателей и отображает сообщение о состоянии игры.
1
2
3
4
5
|
function alert()
gameListeners(‘rm’)
alert = display.newImage(‘alert.png’)
end
|
Шаг 7: вызов основной функции
Чтобы изначально запустить игру, нужно вызвать функцию Main . С помощью приведенного выше кода мы сделаем это здесь:
1
|
Main()
|
Шаг 8: Экран загрузки
Файл Default.png — это изображение, которое будет отображаться сразу после запуска приложения, пока iOS загружает основные данные для отображения главного экрана. Добавьте это изображение в исходную папку вашего проекта, оно будет автоматически добавлено компилятором Corona.
Шаг 9: Иконка
Используя графику, созданную ранее, теперь вы можете создать красивый и красивый значок. Размер значка для iPhone без использования сетчатки составляет 57x57px, но для версии с сетчаткой — 114x114px, а для магазина iTunes требуется версия 512x512px. Я предлагаю сначала создать версию 512×512, а затем уменьшить ее для других размеров.
Для этого не нужно иметь закругленные углы или прозрачные блики, iTunes и iPhone сделают это за вас.
Шаг 10: Тестирование в симуляторе
Пришло время сделать финальный тест. Откройте Corona Simulator, перейдите в папку вашего проекта и нажмите «Открыть». Если все работает, как ожидалось, вы готовы к последнему шагу!
Шаг 11: Сборка
В симуляторе Corona зайдите в File> Build и выберите ваше целевое устройство. Заполните необходимые данные и нажмите кнопку « Создать» . Подождите несколько секунд, и ваше приложение будет готово для тестирования устройства и / или отправки для распространения!
Вывод
Поэкспериментируйте с конечным результатом и попробуйте сделать свою собственную версию игры!
Надеюсь, вам понравился этот урок, и вы нашли его полезным. Спасибо за чтение!