Создание игры для IOS

После множественных попыток и экспериментов я все-таки решил написать свою  полноценную iOS-игру. В этом блоге будет рассказана поэтапная история ее создания. Скажу сразу, до этого момента я пробовал разные проекты, набивал шишки, но приложения, прошедшего путь от самого начала и до логического завершения, ещё не делал. Так что в последующих постах я расскажу вам именно первый опыт разработки полноценного продукта.

Немного об идее.

Играли когда-нибудь в Цивилизацию? Скорее всего да, но, если вдруг не довелось - протестируйте, это одна из тех немногих игр, в которые поиграть разок-другой абсолютно не зазорно. Однако, нужно сказать, что времени она требует очень много.
Идея в том, чтобы переосмыслить ее и адаптировать под мобильные устройства. Играть в неё можно будет, как с ИИ, так и с другими пользователями.

Что необходимо.

1. Разработка под iOS возможна только на macOS, есть два варианта - использовать компьютер Mac или установить macOS на виртуальную машину.
2. Так как мы разрабатываем приложение под iOS, то нам никак не обойтись без замечательного инструмента для разработчиков - Xcode (https://itunes.apple.com/ru/app/xcode/id497799835?mt=12), он бесплатный.
3. Нам нужен иснтрумент, в котором мы будем создавать облик наших объектов, в качестве графического редактора подойдут Sketch, Adobe Illustrator, Photoshop, Gimp.
4. Желательно, но не обязательно иметь усройство для тестирования.

Первые шаги.

Итак, мы разобрались с тем, что мы примерно хотим создать, обзавелись всем необходимым и уже готовы ринуться в бой. Что ж, давайте творить. Начнем с создания проекта в Xcode.

1. Открываем Xcode, нажимаем создать новый проект, выбираем платформу iOS и тип Game.
2. В появившемся окне даем имя нашему приложению, выбираем язык, на котором писать и технологию, в данном случае название - Grasp, язык - Swift, тезнология - SpriteKit.
3. Выбираем директорию, в которую мы сохраним наш проект - готово, проект создан! Однако, нужно провести первый этап настройки.
4. В открывшемся проекте в разделе Deployment Info выбираем минимальную версию iOS, на которой можно будет испоьзовать наше приложение, ориентацию экрана, которая бдует поддерживаться в приложении. В данном случае iOS 8 и только Portrait orientation.

Начало

Теперь давайте сделаем несколько первых шагов, которые помогут нам двигаться быстрее в будущем. Для этого создадим файл Useful.swift, в котором напишем несколько полезностей. Для этого в файловом меню нажмите правой кнопкой мыши -> Новый файл, затем выберите swift file.

Открываем только что созданный файл, для начала добавим сокращений, во-первых, это повышает скорость написания кода, а во-вторых сильно сокращают длину строчек, тем самым повышают читаемость кода, с той оговоркой, что их не должно быть слишком много и они должны быть интуитивно понятными. Для этого импортируем несколько полезных библиотек после строчки import Foundation:

import SpriteKit
import UIKit
import Darwin

А теперь, собственно сами сокращения:

typealias SKSN = SKSpriteNode
typealias SKA = SKAction
typealias CGF = CGFloat
typealias UIC = UIColor
typealias CGC = CGColor
typealias UITF = UITextField
typealias NSRE = NSRegularExpression

Теперь файл должен выглядеть примерно так:

 

 

В следующих частях блога будем добавлять сюда еще всяких полезных фишечек.

 

А теперь давайте наведем порядок в нашем проекте.

Откроем файл GameScene.swift и удалим содержимое класса - творить лучше на чистом холсте. После этой несложной манипуляци файл должен выглядеть примерно так:

Аналогичную процедуру проделываем с файлом GameViewController.swift

2) Удаляем файлы Actions.sks и GameScene.sks
3) Давайте теперь настроим иерархию, создадим папки Main, Design, Scenes.

В папку Main поместим файлы AppDelegate.swift, Info.plist, Main.storyboard, LaunchScreen.storyboard и GameViewController.swift
В папку Design поместим файл Assets.xcassets
А в папку Scenes GameScene.swift

После проделанных процедур наш проект должен выглядеть примерно вот так:

(Фото)

Ну что ж, все подготовительные работы проделаны, ждите следующий пост 21 сентября