読者です 読者をやめる 読者になる 読者になる

ChinoDuino(Chino × Arduino)

自発性のないプログラマーがArduinoと出会って悪戦苦闘する様を綴っていく⇒今はいろいろ(^^;

Swiftris(Swift×Tetris)

先輩から試してほしいと依頼があり試してみた。

https://www.bloc.io/swiftris-build-your-first-ios-game-with-swift

Swiftris is a free tutorial that teaches the basics of Swift as you build a 2D puzzle game.

Swiftrisは、2Dパズル・ゲームを構築しながら、スウィフトの基本を教える無料のチュートリアル

オンラインのプログラミング学習サイトBLOCがつくったテトリスを作りながらSwiftを学べるサイト。

チュートリアルは11ある。まずは試してみよう!の意気込みで試したので、ソースはチュートリアルをコピペしただけ(^^; チュートリアルはすべて英語で翻訳しながら進めた。時間は多少かかったが、ちゃんと最後にはTetrisが完成!ちなみに僕は、Objective-CSwiftともにド素人。英語も中学生レベルに達しているかいないか(恥ずかしい。。。)。なので、一番、翻訳が大変だった。すべての処理を理解していないが、順々に説明してくれているので初心者向けだと思う。

f:id:chinoppy:20140816202849p:plain

 

早速、メールアドレスを入力して試してみよう!LEARN MORE!

f:id:chinoppy:20140816203212p:plain

 1 Introduction to Swiftris

プログラム初心者でもできる。Swift、SpriteKit、Xcodeを使用しているとのこと。

2 Creating a New Game Project

チュートリアル通りに新規プロジェクトを作成し実行してみたらこんなゲームができた。

f:id:chinoppy:20140816203614p:plain

3 Adding Assets

これもチュートリアル通りに進めて、追加ファイル(swiftris-assets.zip)をダウンロードしてプロジェクトに反映。 

追加ファイルをダウンロード(swiftris-assets.zip

f:id:chinoppy:20140816210248p:plain

「Sounds」「Sprites.atlas」フォルダを追加f:id:chinoppy:20140816205641p:plain

イメージファイルを追加

 

f:id:chinoppy:20140816205658p:plain

アイコンを追加

f:id:chinoppy:20140816205809p:plain

↓結果↓↓

f:id:chinoppy:20140816205834p:plain

最後に「GameScene.swift」と「GameViewController.swift」をチュートリアル通りに変更し実行!ちなみにXcode6Beta5でないと「GameScene.swift」でコンパイルエラーが発生する。

ダウンロードサイト:https://developer.apple.com/jp/xcode/downloads/

f:id:chinoppy:20140816223339p:plain

4 And Array We Go

ブロックの有無を保持する配列の作成と解説。

5 A Ticking Clock

時間を管理する処理の追加と解説。

6 Block Party

ブロックを管理するclassの追加と解説。

7 Shaping Up

各ブロックのクラスを追加。

8 Let Them Fall

 ブロックが落ちる処理を追加。でも、無限に落ちていく(^^;

f:id:chinoppy:20140817175649p:plain

            ↓

f:id:chinoppy:20140817175659p:plain

9 Playing by the Rules

 ブロックを動かせないけど、フィールド内で積み上がるようになった!

f:id:chinoppy:20140817185742p:plain

10 Touch Me, Move Me

 クリックするとブロックがまわった!!!

f:id:chinoppy:20140817193803p:plain

       

f:id:chinoppy:20140817193811p:plain

 今度はドラッグでブロックが移動するようになった!

f:id:chinoppy:20140818004250p:plain

       ↓

f:id:chinoppy:20140818004302p:plain

ちなみに、ドラッグのオブジェクトは以下を追加する

f:id:chinoppy:20140818004532p:plain

最後にSwipeのオブジェクトを追加したら、下方向へのドラッグでブロックの落ちる速度が早くなった!

11 Adding Flare

 SCORE、LEVELラベル、音楽を追加・・・おっ!すごい!完成した!

f:id:chinoppy:20140818023651p:plain

ソースはこちら

https://github.com/peacemaker07/Swift.git