製造手順を分析します。1. リソースを準備してシーンを構築するオンラインでリソースを探すか、私のリソースを使用できます。フォルダーを作成し、リソースを res フォルダーに配置します。 シーンを構築する: ステップ 2: ステップ 3: 同じ方法でプレイヤー、弾丸、敵機をシーンに追加し、スコアを表示するラベル ノードを作成し、位置を調整します。 2. コードがゲームを制御するステップ 1: ステップ 2: コードを編集し、 ステップ 3: プレイヤー、弾丸、敵の初期化、監視イベントの登録、アクション関数の記述、スコアリング判定などを含むロジック制御をコーディングします。 完全なコード: cc.クラス({ 拡張: cc.Component、 プロパティ: プレイヤーノード: cc.Node, 敵ノード: cc.Node, ファイアノード: cc.Node, スコアノード: cc.Label、 }, オンロード(){ これを再生ロードします。 this.fireLoad(); this.enemyLoad(); this.node.on("touchstart",this.fire,this); }, 更新 (dt) { (Math.abs(this.fireNode.y-this.enemyNode.y)<(this.fireNode.height/3+this.enemyNode.height/3) の場合 &&Math.abs(this.fireNode.x-this.enemyNode.x)<(this.fireNode.width/3+this.enemyNode.width/3)){ console.log("敵機を撃破"); this.scoreNode.string= ++this.score; // ヒットスコア this.fireNode.stopAction(this.fireAction); this.enemyNode.stopAction(this.enemyAction); this.enemyNode.active=false; this.fireNode.active=false; this.fireLoad();//弾丸を初期化します this.enemyLoad();//敵機を初期化します} }, // イベントリスニングを閉じる onDestroy(){ this.node.off("touchstart",this.fire,this); }, // 初期プレーヤー playLoad(){ this.score=0; this.playerNode.y=-cc.winSize.height/4; }, //弾丸を初期化する fireLoad(){ アクティブノードを true に設定します。 this.isFire=false; this.fireNode.x = this.playerNode.x; this.fireNode.y=this.playerNode.y+this.playerNode.height; }, // 敵を初期化するenemyLoad(){ this.enemyNode.active=true; this.enemyNode.x=Math.random()* cc.winSize.width; this.enemyNode.y=cc.winSize.height/3; x = cc.winSize.width/2 - this.enemyNode.width/2 とします。 y=Math.random()* cc.winSize.height/4 とします。 seq=cc.repeatForever(cc.sequence(cc.moveTo(1.5,cc.v2(-x,y)),cc.moveTo(1.5,cc.v2(x,y)))); とします。 this.enemyAction = this.enemyNode.runAction (seq); }, // 死んだらゲームをリロードする dear(){ console.log("死"); cc.director.loadScene("ゲームシーン"); }, // 弾丸を発射する fire(){ if(this.isFire) 戻り値: this.isFire=true; console.log("起動を開始します"); var fireaction = cc.sequence( cc.moveTo(1,cc.v2(this.playerNode.x,cc.winSize.height/2))、 cc.callFunc(()=>{ this.dear(); })); this.fireAction は this.fireNode.runAction(fireaction); console.log("起動終了"); } }); 最終結果上記は、CocosCreatorを使用してシューティングゲームを実現する方法の詳細です。CocosCreatorを使用してシューティングゲームを実現する方法の詳細については、123WORDPRESS.COMの他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Nginx try_files ディレクティブの使用例
>>: MySQL で URL タイムゾーンの罠を回避する方法
EXPLAIN は、MySQL がインデックスを使用して選択ステートメントを処理し、テーブルを結合す...
原因docker スクリプトを実行すると、コンテナを作成できないというエラーが発生します。以下のよう...
1. シナリオ表示Tomcat ログに次の例外情報が時々報告されます。何が起こっているのでしょうか...
この関数の効果はvue的provide/injectに似ています。 contextを通じて反応できる...
この記事では、Docker で構築された Laravel および Vue プロジェクトの開発環境を紹...
この記事は共有および集約することを歓迎します。全文を転載する必要はありません。著作権を尊重してくださ...
オンラインで多くの記事を検索しましたが、解決策は見つかりませんでした。次のように、tomcat7-m...
MySQL には多くのデータベース管理ツールがあります。作業効率の向上に役立つ優れた GUI ツール...
メモリストレージエンジンに関する知識ポイントメモリ ストレージ エンジンは日常業務ではほとんど使用さ...
目次Object.defineProperty メソッドのレビューデータブローカーとは何ですか? V...
1. 文書化ルール1. 大文字と小文字が区別されます。 2. 属性値は引用符(一重引用符または二重引...
ユーザーを作成します: 'oukele' によって識別されるユーザー 'ou...
Docker プライベートイメージライブラリDockerプライベートイメージライブラリとAlibab...
以下のコードをDreamweaverのコードエリアにコピーすると、プレビュー時に以下の画像が表示され...
MySQL 8.0.12のダウンロードとインストールのチュートリアルは参考までに、具体的な内容は次の...