2012年1月4日水曜日

cocos2dでタワーディフェンス その1


ここは、このページを参考にしてcocos2dを使ってタワーディフェンスゲームを作成していく備忘録です。

このチュートリアルでは、まず以下の事からやっていくようです。

■ waypointの作り方
■ タイルマップを読み込んで、オブジェクトとして扱う方法
■ Creeps/Bad Guys/Enemies (要は侵入者ですか) の作り方
■ 決められた軌道に沿って移動を行う方法
■ iphone上でスムーズに移動を行う方法

これらの事無くしてタワーディフェンスとは言えないらしいですな。
まぁ、第一回目は基本の敵がタイルマップ上の決められたパスに従って移動させる方法の紹介のようですね。

これから解説するソースコードは以下からDLできます。
http://www.iphonegametutorials.com/wp-content/uploads/2011/04/TowerDefensePart1.zip


ここではタイルマップの作成に「Tiles」というツールを使うので以下からインストールします
http://www.mapeditor.org/

あと、cocos2dは必須なんでDLしときましょ。設定の仕方はググッてくだされ。
http://www.cocos2d-iphone.org/


それではDLしたソースの重要なクラスの機能を簡単に紹介

■ TowerDefenseTutorialAppDelegate
このクラスはWindowをつくって、CCDirectorをロードして、最初のシーンを作成するクラスとなります。

■ RootViewController
UIViewControllerを継承してるから、画面の向きを簡単に変えられるますとのこと。
まぁ、ここで画面を横向きにしているんでしょね。多分。

■ GameConfig
この時点では画面の向きに関する基本的な定数しか定義してないですね。
後々いろいろとここで定義するんでしょうな。

■ TutorialScene
一番メインのクラス(色々やってるクラス)みたいですね。
ここではマップを読み込んで「creep」(敵ですね。あとで説明します)をパスにセットするみたいですね。

■ DataModel
簡易検索のためのメインデータの配列を格納しておくシンプルなModelインターフェースらしいです。

■ Creep
敵クラスです。はじめは2種類ですが、後々増えてくるみたいです。

■ Waypoint
タイルマップエディタと組み合わせて使用する単純なクラス。
このクラスで「Tiles」と連携するんでしょうかね。

■ Wave
「creep(敵)」の順番を制御するクラスですね。

とりあえずこんな感じのようです。
説明で、「creep」って出てきたと思いますが、タワーディフェンス(以下 TD)には色々用語があります。

覚えておくとクラス名とかから、何をしているのか想像しやすくなるので解説しておきます。

■ wave
敵の隊列。TD系のゲームではwave=ステージやレベルとなることが多いです。

■ creep、bad guy
敵ですね。

■ range
砲台の射程距離です。

■ upgrade
砲台を強化することです。
3段階まで強化できるのをよく見かけます。

■ waypoint
敵が通る順路です。
たいての場合、敵がどこを通るかが何らかの方法で示されています(道が光ったり)。

あと色々あったと思うんですが、思い出し次第書いていこうかと思います。

とりあえず今回はここまで。
次回から実装の方に入っていきたいと思います。

0 件のコメント:

コメントを投稿