CocosCreator零基础制作游戏《极限跳跃》七、制作游戏结束场景并实现场景切换
首页 > CocosCreator > 《极限跳跃》    作者:闭眼就天黑   2016年5月29日 15:56 星期日   热度:17192°   百度已收录  
时间:2016-5-29 15:56   热度:17192° 

CocosCreator零基础制作游戏《极限跳跃》七、制作游戏结束场景并实现场景切换


前面我们实现了游戏的碰撞检测,碰到障碍物我们的角色就会死掉并开始掉落,角色掉落到屏幕底部时候游戏结束,并跳到结束场景。

我们在资源管理器新建GameOver场景。双击打开场景,调整大小为480x800,添加界面需要的节点。如图。

QQ20160529-22@2x.png

这样我们的结束场景就制作好了。可以预览下。

制作好了,结束场景我们就需要把我们游戏的三个场景关联起来了。

首先我们双击打开我们的第一个场景WelcomeScene。然后在资源管理器创建playGo.js脚本。代码如下:

//playGo.js
cc.Class({
    extends: cc.Component,
    properties: {
        // foo: {
        //    default: null,
        //    url: cc.Texture2D,  // optional, default is typeof default
        //    serializable: true, // optional, default is true
        //    visible: true,      // optional, default is true
        //    displayName: 'Foo', // optional
        //    readonly: false,    // optional, default is false
        // },
        // ...
    },
    // use this for initialization
    onLoad: function () {
    },
    //切换场景
    toScene: function(){
        cc.director.loadScene("MainScene")
    }
    // called every frame, uncomment this function to activate update callback
    // update: function (dt) {
    // },
});


这个脚本就实现一个功能,就是切换场景到MainScene场景,也就是第二个场景我们游戏的主场景。

下面我们为开始按钮绑定脚本事件。

QQ20160529-24@2x.png

QQ20160529-25@2x.png

这样我们的切换场景功能就实现了,同样的方法我们给GameOver场景中的重新开始按钮绑定脚本事件。

QQ20160529-26@2x.png

给退出游戏按钮添加事件脚本,创建脚本ExitScene。代码如下:

//ExitScene.js
cc.Class({
    extends: cc.Component,
    properties: {
        // foo: {
        //    default: null,
        //    url: cc.Texture2D,  // optional, default is typeof default
        //    serializable: true, // optional, default is true
        //    visible: true,      // optional, default is true
        //    displayName: 'Foo', // optional
        //    readonly: false,    // optional, default is false
        // },
        // ...
    },
    // use this for initialization
    onLoad: function () {
    },
    
        //退出游戏
    ExitScene: function(){
        cc.director.end();
    },
    // called every frame, uncomment this function to activate update callback
    // update: function (dt) {
    // },
});

使用同样的方法,给退出游戏按钮绑定事件。

QQ20160529-27@2x.png


还剩下一个游戏结束的切换场景事件。打开GAME脚本。添加gameover方法,并在update添加判断和处理。

//GAME.js
//....省略..
    //gameover方法 然后在update实现gameover判断
    gameOver: function () {
        
        cc.eventManager.removeAllListeners();//移除所有事件监听
        this.player.stopAllActions(); //停止 player 节点的跳跃动作
        
        cc.director.loadScene("GameOver");//切换场景到结束场景
    },
        //加载时执行
        onLoad: function () {
        //触摸监听
        this.setEventControl();
        // 初始化计分
        this.score = 0;
         //添加判断
        this.isMoving = true;
        
    },
    //刷新update
    update: function (dt) {
            
        this.setBgMoveCreate();//检测背景
            
            //gameOver判断 玩家坠落到屏幕底部游戏结束
            if(this.player.getPositionY() <= -cc.view.getVisibleSize().height/2){
                this.unscheduleAllCallbacks();
                
                if(this.isMoving)
                {
                    this.gameOver();
                    this.isMoving = false;
                }
                
            }
        
     },
//......省略代码....

下面我们来测试下整个流程环节。双击WelcomeScene场景从第一个场景开始预览。

cocoscreatorceshi.gif

到此我们整个游戏流程以及完了,接下来完善积分系统,还有声音系统整个游戏就可以上线了。下面我们继续来做积分系统。。

二维码加载中...
本文作者:闭眼就天黑      文章标题: CocosCreator零基础制作游戏《极限跳跃》七、制作游戏结束场景并实现场景切换
本文地址:https://www.byjth.com/jixiantiaoyue/72.html
版权声明:若无注明,本文皆为“闭眼就天黑专栏_技术博客_个人学习总结”原创,转载请保留文章出处。
相关文章

版权所有:《闭眼就天黑专栏_技术博客_个人学习总结》 => 《CocosCreator零基础制作游戏《极限跳跃》七、制作游戏结束场景并实现场景切换
本文地址:https://www.byjth.com/jixiantiaoyue/72.html
除非注明,文章均为 《闭眼就天黑专栏_技术博客_个人学习总结》 原创,欢迎转载!转载请注明本文地址,谢谢。

结束页面的dialog是什么组件?
@TK:是用的普通节点放的图片,
恩, 是的!!!

返回顶部    首页    手机版本    版权所有:闭眼就天黑专栏_技术博客_个人学习总结
    站长: 闭眼就天黑    搜索cocos2dx主题 技术支持:闭眼就天黑   皖ICP备14007736号-1  

皖公网安备 34132102000107号

   sitemap