cocos2d Beginners' Guide Lesson2 まとめ
公式サイトのBeginners' Guide Lesson2について、まとめを書きました。
cocos2d公式 プログラミングガイドより
http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:index
| ■Creating the Sprites スプライトをつくる |
ページにのつているUFOみたいなアイコン seeker.png
ダウンロードする
resorseフォルダーの中に入れたあと
プログラミングを開始する
#importのしたに
|
CCSprite *seeker1; プログラムのいろんな場所で使うためメソッドの外に記述。 |
をいれる
-(id) init の
if( (self=[super init])) {
}
のなかに書かれているハローワールドの記述を消す
※消した状態でビルドするとハローワールドの文字が消える
消した後下記のものを記入する
// UFOみたいなアイコン seeker.pngを画面に表示する seeker1 = [CCSprite spriteWithFile: @"seeker.png"]; seeker1.position = ccp( 50, 100 ); [self addChild:seeker1]; // もともと入っているアイコンを画面に表示する cocosGuy = [CCSprite spriteWithFile: @"Icon.png"]; cocosGuy.position = ccp( 200, 300 ); [self addChild:cocosGuy]; |
すると Icon.pngとseeker.pngのアイコンが表示される。
| ■Making Things Move 動くアクションを作る |
スプライトを動かすには2つの方法がある
1 アクションを使って動かす
2 ゲームの間 定期的にメソッドをよびだして動かす
initメソッドの
”[self addChild: cocosGuy];”
のあとに下記のものを入れて下さい
[self schedule:@selector(nextFrame:)]; //定期的にメソッド nextFrameを呼び出すコマンド いわゆるタイマー |
つぎにdeallocメソッドの前に下記の nextFrame メソッドを入れる
- (void) nextFrame:(ccTime)dt { seeker1.position = ccp( seeker1.position.x + 100*dt, seeker1.position.y ); if (seeker1.position.x > 480+32) { seeker1.position = ccp( -32, seeker1.position.y ); } } //タイマーがくるたび、seeker.pngの位置をかえる。ここては左から右に動くアクションをする。 |
そうするとcocosGuyのアイコンが動き出す
| ■Responding to Touch タッチに反応させる |
この解説ではタッチした場所にcocosguyが動くアニメを作る
#import "HelloWorldLayer.h"のあとに
#import "CCTouchDispatcher.h" |
をいれる
initメソッドの後に
-(void) registerWithTouchDispatcher { [[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:0 swallowsTouches:YES]; } |
をいれる
initの中に
self.isTouchEnabled = YES;
をいれる
あとは2つのメソッドをいれる
- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event { return YES; } - (void)ccTouchEnded:(UITouch *)touch withEvent:(UIEvent *)event {
|