[Cocos Creator]横スクロールしてみる15 -ふっとばす-

Android

前回までに無敵状態(ハエたたきモード)の準備をしました。

ゲージを溜めるところまでしたので、今回はハエを倒したいと思います。

友達が、ハエがピューって飛んで行く感じはどうかというので、そんな感じにしてみようと思います。

まずは少しロジックを考えてみましょう。今までは

・衝突する
1.敵か
2.アイテムか

・敵なら死亡
・アイテムなら取得

でした。今回は
・衝突する
1.敵
1.無敵状態か
2.普通の状態か

・無敵状態ならハエ倒す
・普通状態なら死去

という流れになります。なにが言いたいかって、衝突判定のところでif文を増やしてやりゃいいってだけで、簡単ですね、ってことです笑

では、Player.jsに衝突判定を書いていたので追記していきます。

        switch (other.tag) {
            // 敵と当たった時
            case 1:
      // 無敵状態かチェック
                if (this._GMScript._isSwatter) {
      // 敵を倒したら少しスコアが上がる
                    this._GMScript.scoreIncrement(10);
                    other.getComponent(cc.BoxCollider).enabled = false;
      // 敵を倒した時のSE再生
                    cc.audioEngine.play(this.thrustSound,false,0.3),
      // 敵をぶっ飛ばすアクションを引数の順番に実行
                    other.node.runAction(cc.sequence(
      // 0.5秒で横に1500,縦にランダム×500移動させる
                    cc.moveBy(0.5,1500,cc.randomMinus1To1() * 500),
      // 画面外までぶっとばしたらノード削除
                    cc.callFunc(function() {
                        other.node.destroy();
                    },this)));
                    
            }else{
    // ここより下が今までの死亡パターン
                // タッチを無効にする
                this.enableTouch(false);
                // アニメーションの停止
                this.node.stopAllActions();
                this.enableTouch(false);
                this.node.destroy();
                this._GMScript.exeGameOver();
}

てな感じにしてみました。

こんな感じになります。(動画は開発中のものです)
はえたたき

コメント

タイトルとURLをコピーしました