SwiftUI + SpriteKit でミニゲームを実行 その2

iOS

大好評の「SwiftUI + SpriteKit でミニゲームを実行」第2回です。

第1回
https://nomad.office-aship.info/swiftui-spritekit-game

第2回は、2015年2月に発行された以下の本です。Xcode 6, iOS 8 向けに書かれているので、やはりそのまま実行しようとしてもコンパイルエラーで動きません。

SpriteKitではじめる2Dゲームプログラミング

現代の環境でも動くように書き換えました。

・Xcode 12.1
・iOS 14.1
・UIViewController を使わずに SwiftUI を使用
・SKView をつかわずに iOS14から使える SpriteView を使用

SpriteView | Apple Developer Documentation
https://developer.apple.com/documentation/spritekit/spriteview

コードは以下に置いてあります

GitHub - aship/test_swift
Contribute to aship/test_swift development by creating an account on GitHub.

修正したポイントは以下です。

・スプライトの表示位置調整

・タイマー処理で落ちるのを修正
Timer.scheduledTimer の selector 部分を修正
呼び出される側のメソッドに @objc func fallNagoyaSpecialty() のように @objc を追加

・didBeginContact が Swift3 から didBegin に変わっていたので修正

名古屋を救え

ブランチ名: github/spritekit_nagoya

落ちてくる名古屋の名物を皿を移動して上手く受け止めろ!
皿から落としたらGAME OVERだ!

泳げエビ君

タップしながら、珊瑚や地面にあたらないように
突き進め!

ブランチ名 github/spritekit_shrimp_swim

ピンポン騎士

勇者自らピンポン球になってドラゴンから世界を救え!

ブランチ名 github/spritekit_pinball

第6章 芭蕉で成層圏!

ジャンプする強者どもが夢の跡

ブランチ名 github/spritekit_jump

第7章 赤頭巾ドットイート

2匹の狼から逃げて!赤ずきんちゃん

ブランチ名 github/spritekit_doteat

第8章 アップルリバーシ

アップルマークを用いてリバーシ

ブランチ名 github/spritekit_reversi

SwiftUIを学ぶのにおすすめの本

SwiftUI 徹底入門

SwiftUIではじめるiPhoneアプリプログラミング入門

iOS/macOS UIフレームワーク SwiftUIプログラミング

コメント

タイトルとURLをコピーしました