*

LevelHelperで配置してないLHSpriteをSpriteHelperから読み込んで配置とか

公開日: : Cocos2d, iOS, LevelHelper, SpriteHelper , ,

Fullscreen-1

前に、SpriteHelperだけのスプライト表示
http://marchenterprise.net/2013/06/16/
でBatchNodeに登録する方法で作ってたんだけど、LHSpriteのAnimationさせられないじゃんーって。調べたらLHSpriteに追加することができたー。なんだこっちのほーが簡単や。。

参考 : LHSprite Classリファレンス


    //
    //LHSpriteの配置とアニメと移動
    //

    //スクリーンサイズ取得
    CGSize screenSize = [[CCDirector sharedDirector] winSize];

    //新しいLHSpriteつくるぞ
    LHSprite *itemObj;
    //LevelHelperLoaderのcreateSpriteWithName使って、SpriteHelperのSpriteName, SheetName, pshsファイルを指定
    //createしたらmainLHLayerにすぐ配置されるみたい
    itemObj = [loader createSpriteWithName:@"item_scroll_propeller1"
                                        fromSheet:@"item"
                                        fromSHFile:@"PiyoUP.pshs"];
    //SpriteHelperで作ったAnimationのAnimationNameとpshsファイルを指定
    [itemObj prepareAnimationNamed:@"item_scroll_propeller" fromSHScene:@"PiyoUP.pshs"];
    //アニメーションもすぐ開始しちゃう
    [itemObj playAnimation];
    //消すときのためにタグ指定
    [itemObj setTag:TAG_ITEM];
    //表示位置を画面上に
    [itemObj setPosition:ccp((itemObj.textureRect.size.width/2)+(CCRANDOM_0_1()*(screenSize.width-itemObj.textureRect.size.width)),screenSize.height+(itemObj.textureRect.size.height/2))];
    
    //移動アクション
    //画面下に5秒でツーーってうごく
    CCMoveTo *itemMove = [CCMoveTo actionWithDuration:5 position:ccp(itemObj.position.x,-itemObj.textureRect.size.height/2)];

    //アクション終わったら自分でremoveSelfするようにする
    //CCSendMessage参考 : http://blog.seasons.cc/entry/20110604/1307180765
    CCSendMessages *itemRemove = [CCSendMessages actionWithTarget:itemObj];
    [[itemRemove addMessage] removeSelf];
    //移動して削除するアクション行列に登録
    CCSequence *itemSeq = [CCSequence actions:itemMove,itemRemove, nil];
    //アクション開始
    [itemObj runAction:itemSeq];

アクションが終わったりしたときを知りたかったり、該当のLHSpriteが画面にいるのかどうか調べるときは、
メインレイヤーからタグで呼び出してnilがどうかでお調べしてます。


            //
            //アイテムオブジェクトをクリア
            //

            //メインレイヤー呼び出し
            LHLayer *mainLayer = [loader layerWithUniqueName:@"MAIN_LAYER"];
            //メインレイヤーに配置されてるモノをタグで呼び出し
            CCNode *node = [mainLayer getChildByTag:TAG_ITEM];
            //nilでない=存在するかチェック
            if (node != nil) {
                //存在してたら削除
                [(LHSprite *)node removeSelf];
            }


Author Profile

ま〜ち
ま〜ち
フリーランスのiPhone/iPadアプリ開発者、2児を保育園の送り迎えしながら日々ノマド創作生活をしています。
代表作 : 「コンプガチャ」(AppStore無料総合5位/無料ゲーム総合1位)、「美少女ブラ外しPutti!」(AppStore有料総合6位/エンターテインメント有料1位)、「星空時景」(AppStore有料総合3位/ライフスタイル有料1位)、「パワースポット写真集」(AppStore有料総合3位/ライフスタイル有料1位)、「ゆるゆりシェイクユー」、「ガリガリアイス」「ケントくんのiマニュアル」「パチスロアプリ全紹介」など。

関連記事

Fullscreen-1

SpriteHelperだけのスプライト表示

LevelHelperで配置してないやつはBatchNodeでCCSpriteしなきゃいけないみたい

記事を読む

build

Easy APNSとEasyAPNSPanel

Core Pushってゆーサービスを導入してみるけどバッヂの指定もできないしいろいろ融通が効かなすぎ

記事を読む

Fullscreen-1

Cocos2d – LevelHelper – LHSprite – Touch Detect

  Cocos2d - Touch Events http://www.levelhe

記事を読む

pr800x475_width_text

『i立ち食いそば』がAppStore/GooglePlayにて登場いたしました

兵士達を率いて駅そばへ駆け込め! 命を賭して通勤ラッシュに挑むFPS(※First Perso

記事を読む

bg

UIView Animation suddenly become very fastで困った。

たった一行で3日もハマッた。もうだめぽな ま〜ちさんです。 iOS App‘s UIView

記事を読む

build

PHPをバージョンアップしたらMySQLに登録されるUTF-8文字列がエスケープされちゃって困った。

ニッチな話Easy APNSとEasyAPNSPanelってゆーのを使ってiOSアプリのPush通知

記事を読む

p3

GameCenterで友達のハイスコアでゲーム中にアイコン画像と名前を表示するやつ

あんまりゲームセンター流行ってないのよね。友達申請とかめったにしないでしょ? きっと同じことやるな

記事を読む

ogp1200x630

Unity習作の第2弾『あみみとパズルとゾンビとドラゴンズ』がめでたくリリースとなりました

3月末に「アニメマンガゲームエンタメ親睦会」というのがFacebookイベントでありまして、その会が

記事を読む

build

iOS7.1にしたらAdhocのOTAインストールできなくなって困った。

「証明書が有効でないため、Appをダウンロードできません。」AdhocのOTAインストールできなくな

記事を読む

icon1024_rected

22年の時を超えてiPhoneゲームに復活したよ『MigmO』のご紹介

昔々、1992年頃大学1年生のま〜ちさんはコンピュータークラブとかいうのに入って学園祭の展示向けにゲ

記事を読む

Ads

Ads

no image
UnityのAppleTV対応つまづいたメモ

音が鳴らない Unity tvos AudioClipとかでググって

ogp1200x630
Unity習作の第2弾『あみみとパズルとゾンビとドラゴンズ』がめでたくリリースとなりました

3月末に「アニメマンガゲームエンタメ親睦会」というのがFacebook

pr_1024x500
なんかどうもうまくいかないUnity5メモ

前回までのメモ i立ち食いそばカテゴリ: ゲーム現在の価格: 無

pr800x475_width_text
『i立ち食いそば』がAppStore/GooglePlayにて登場いたしました

兵士達を率いて駅そばへ駆け込め! 命を賭して通勤ラッシュに挑むF

Icon1024x1024
MIKA・RIKA・TOUCH

つくりました、よろしくお願いします!! MIKA・RIKA・TO

→もっと見る

PAGE TOP ↑