Analysieren Sie die Produktionsschritte:1. Ressourcen vorbereiten und Szene erstellenSie können Ressourcen online finden oder meine verwenden. Erstellen Sie einen Ordner und legen Sie die Ressourcen im Ordner „res“ ab. Erstellen Sie die Szene: Schritt 2: Erstellen Sie Schritt 3: Fügen Sie der Szene auf die gleiche Weise Spieler, Kugeln und feindliche Flugzeuge hinzu, erstellen Sie einen Label-Knoten zur Anzeige des Punktestands und passen Sie die Position an; 2. Code steuert das Spiel Schritt 1: Erstellen Sie ein Schritt 2: Bearbeiten Sie den Code und fügen Sie in Schritt 3: Steuerung der Codelogik, einschließlich Initialisierung von Spielern, Kugeln, Feinden; Registrieren von Überwachungsereignissen; Schreiben von Aktionsfunktionen; Wertungsbeurteilung usw.; Vollständiger Code: cc.Klasse({ erweitert: cc.Component, Eigenschaften: Spielerknoten: cc.Node, Feindknoten: cc.Node, Feuerknoten: cc.Node, Punktestand: cc.Label, }, beim Laden () { dies.playLoad(); dies.fireLoad(); dies.enemyLoad(); dies.node.on("touchstart",dieses.fire,dieses); }, update (dt) { wenn (Math.abs(this.fireNode.y-this.enemyNode.y)<(this.fireNode.height/3+this.enemyNode.height/3) &&Math.abs(dieser.fireNode.x-dieser.enemyNode.x)<(dieser.fireNode.width/3+dieser.enemyNode.width/3)){ console.log("Besiege das feindliche Flugzeug"); this.scoreNode.string= ++this.score; //Trefferpunktzahl this.fireNode.stopAction(this.fireAction); dieser.enemyNode.stopAction(diese.enemyAction); dies.enemyNode.active=false; dies.fireNode.active=false; this.fireLoad();//Kugeln initialisieren this.enemyLoad();//Feindliche Flugzeuge initialisieren} }, // Ereignisüberwachung schließen onDestroy(){ dies.node.off("touchstart",dieses.fire,dieses); }, // Anfänglicher Spieler playLoad(){ dies.score=0; dieser.playerNode.y=-cc.winSize.height/4; }, //Bullet fireLoad() initialisieren{ dies.fireNode.active=true; dies.isFire=false; dieser.fireNode.x=dieser.playerNode.x; dieser.Feuerknoten.y=dieser.Spielerknoten.y+dieser.Spielerknoten.Höhe; }, // Initialisiere den Feind enemyLoad(){ dieser.enemyNode.active=true; this.enemyNode.x=Math.random()* cc.winSize.width; dieser.Feindknoten.y=cc.winSize.height/3; sei x = cc.winSize.width/2-this.enemyNode.width/2; sei y=Math.random()* cc.winSize.height/4; Lassen Sie seq = cc.repeatForever (cc.sequence (cc.moveTo (1,5, cc.v2 (-x, y)), cc.moveTo (1,5, cc.v2 (x, y)))); diese.enemyAction = diese.enemyNode.runAction (seq); }, //Lade das Spiel bei Tod neu, Dear(){ console.log("Tod"); cc.director.loadScene("Spielszenen"); }, // Feuer, Kugel, Feuer(){ wenn(dies.istFeuer) return; dies.isFire=true; console.log("Starten"); var Feueraktion = cc.sequence( cc.moveTo(1,cc.v2(dieser.playerNode.x,cc.winSize.height/2)), cc.callFunc(()=>{ dies.lieb(); })); diese.fireAction = diese.fireNode.runAction(fireaction); console.log("Ende des Starts"); } }); EndergebnisOben finden Sie Einzelheiten zur Verwendung von CocosCreator zur Realisierung von Schießspielen. Weitere Informationen zur Realisierung von Schießspielen mit CocosCreator finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Anwendungsbeispiele für die try_files-Direktive von Nginx
>>: So vermeiden Sie die URL-Zeitzonenfalle in MySQL
Wirkung: CSS-Stil: <style type="text/css&...
Inhaltsverzeichnis 1.kvm-Bereitstellung 1.1 KVM-I...
Ein Kollege fragte mich, was N und M im MySQL-Dat...
Die wesentlichen Inhalte dieses Artikels sind wie...
In diesem Artikelbeispiel wird der spezifische Ja...
Was sind XHTML-Tags? XHTML-Tag-Elemente sind die ...
Fragen zu Select-Elementen in HTML wurden an viel...
Baidu Cloud-Festplatte: Link: https://pan.baidu.c...
In diesem Artikel wird der spezifische JavaScript...
Sophie Hardach Kai von Clyde Quay 37 Ost Seifenkis...
In MySQL liest die Funktion LOAD_FILE() eine Date...
Inhaltsverzeichnis Natives JS So senden Sie eine ...
Da die Kollegen im Unternehmen die Standardausgab...
Inhaltsverzeichnis Makefile Makefile-Benennung un...
Inhaltsverzeichnis 1.parseInt(Zeichenfolge, Basis...