cocos2d:アクションメソッド一覧(作成中)  2010年7月25日

量が増えてきたのでページを分離しました。

サンプルプログラムの勉強をしながら更新しているのでまだまだ網羅されていません。

アクションメソッド

runActionメソッドを利用して適用できる各種アクションメソッド

CCAnimate

useage: [CCAnimate actionWithDuration:? animation:? restoreOriginalFrame:?]

画像を切替えてアニメーションする

  • actionWithDuration: アニメーション時間
  • animation: CCAnimationクラス
  • restoreOriginalFrame: 実行後最初のフレームへ戻るか?: 例)NO

CCAnimationクラスは以下のように定義する。

// アニメーション名と共にクラスのインスタンス化
CCAnimation* animation = [CCAnimation animationWithName:@"アニメーション名"];

// フレーム数分画像ファイルを追加(フレーム数分実行する)
[animation addFrameWithFilename: @"ファイル名"];

CCBezierBy

useage: [CCBezierBy actionWithDuration:? bezier:?]

ベジェ曲線のアニメーション

  • actionWithDuration: 移動に要する時間
  • bezier: ベジェ曲線の定義用のccBezierConfig構造体

bezier曲線定義用の構造体は以下のように設定する。

bezier2.controlPoint_1 = ccp(100, s.height/2);
 bezier2.controlPoint_2 = ccp(200, -s.height/2);
 bezier2.endPosition = ccp(240,160);

CCBlink

useage: [CCBlink actionWithDuration:2 blinks:10]

指定時間、指定回数点滅するアニメーション

  • actionWithDuration: 実行時間
  • blinks: 時間内の点滅回数

CCCallFunc

useage: [CCCallFunc actionWithTarget:? selector:?]

指定したメソッドを実行

  • actionWithTarget: 関数のクラス: 例)self
  • selector: 関数: 例)@selector(hogehogeMethod:)

CCCallFuncN

useage: [CCCallFuncN actionWithTarget:? selector:?]

指定したメソッドを実行

  • actionWithTarget: 関数のクラス: 例)self
  • selector: 関数: 例)@selector(hogehogeMethod:)

※CCallFuncとほぼ同じ挙動だが、呼び出されるメソッドの引数にsender(呼び出したスプライト)がつく

受ける関数では以下のように受け取る

-(void) 関数名:(id)sender
// senderは任意の変数名

CCCallFuncND

useage: [CCCallFuncND actionWithTarget:? selector:? data:?]

指 定したメソッドを実行

  • actionWithTarget: 関数のクラス: 例)self
  • selector: 関数: 例)@selector(hogehogeMethod:)
  • data: 引数となるデータ

※ CCallFuncNとほぼ同じ挙動だが、呼び出されるメソッドの引数に任意の引数を付けられる

受ける関数では以下のように受け取る

-(void) 関数名:(id)sender data:(void*)data
// senderとdataは任意の変数名

CCDelayTime

useage: [CCDelayTime actionWithDuration:?]

指定時間待機

  • actionWithDuration: 待機時間(秒): 例)1.1f

CCFadeIn

useage: [CCFadeIn actionWithDuration:?]

対象をフェードイン

  • actionWithDuration: フェードインに要する時間(秒): 例)1.5f

CCFadeOut

useage: [CCFadeOut actionWithDuration:?]

対象をフェードアウト

  • actionWithDuration: フェードアウトに要する時間(秒) 例)1.1f

CCHide

useage: [CCHide action]

対象を非表示にする。

CCJumpTo

useage: [CCJumpTo actionWithDuration:? position:? height:? jumps:?]

指定した相対位置へジャンプしながら移動するアニメーション

  • actionWithDuration: ジャンプする時間
  • position: 移動先: 例)ccp(300,300)
  • height: ジャンプの高さ
  • jumps: ジャンプの回数

CCJumpBy

useage: [CCJumpBy actionWithDuration:2 position:ccp(300,0) height:50 jumps:4];

指定した方向へジャンプしながら移動するアニメーション

  • actionWithDuration: ジャンプする時間
  • position: 移動方向: 例)ccp(300,300)
  • height: ジャンプの高さ
  • jumps: ジャンプの回数

CCMoveBy

useage: [CCMoveBy actionWithDuration:? position:?]

指定方向へ指定した時間をかけて移動(CCMoveToと異なり速さを指定している)

  • actionWithDuration: 移動時間(秒): 例)1.1f
  • position: 位置: 例)ccp(80,0)

CCMoveTo

useage: [CCMoveTo actionWithDuration:? position:?]

指定位置へ指定した時間をかけて移動(CCMoveByと異なり到着地点を指定している)

  • actionWithDuration: 移動時間(秒): 例)1.1f
  • position: 位置: 例)ccp(150,0)

CCOrbitCamera

useage: [CCOrbitCamera actionWithDuration:? radius:? deltaRadius:? angleZ:? deltaAngleZ:? angleX:? deltaAngleX:?]

カメラ位置を変更する

  • actionWithDuration: 変化にかかる時間(秒)
  • radius:
  • deltaRadius:
  • angleZ:
  • deltaAngleZ:
  • angleX:
  • deltaAngleX:

うーん、3Dをちょっと勉強して、何を示しているか後で書きます。

CCPlace

useage: [CCPlace actionWithPosition:?]

指定した座標へ瞬間移動する

actionWithPosition: 移動先座標:例)ccp(60,60)

※ccpは座標を示すCGPointクラスを返す関数

CCShow

useage: [CCShow action]

対象を表示にする。

CCScaleTo

useage: [CCScaleTo actionWithDuration: scale:? scale:?]

useage2: [CCScaleTo actionWithDuration: ? scaleX:? scaleY:?]

指定したサイズへ指定した時間をかけてサイズ変更する

  • actionWithDuration: 変化に係る時間(秒): 例)1.1f
  • scale: サイズ(倍数): 例)0.5f
  • scaleX: 横方向倍率: 例)0.5f
  • scaleY: 縦方向倍率: 例)0.5f

CCTintTo

useage: [CCTintTo actionWithDuration:? red:? green:? blue:?]

色合いを変化させる

  • actionWithDuration: 変化に要する時間
  • red: 赤の色の変化(0-255): 例)255
  • green: 緑の色の変化(0-255): 例)127
  • blue: 青色の変化(0-255): 例)-127

CCToggleVisibility

useage: [CCToggleVisibility action]

呼び出されるたびに表示非表示を切り替えるアクション

このエントリをはてなブックマークに登録 このエントリをBuzzurlにブックマーク Yahoo!ブックマークに登録 このエントリをlivedoorクリップに登録 Deliciousにブックマーク

コメントを投稿