大海教你学手游2015CocosLua第一季_02场景跳转和用户触摸

课程地址:http://ke.qq.com/cgi-bin/courseDetail?course_id=78017

cocos2d-x直播课交流群: 461039382(发布每节课视频和资料)

网盘资料下载:http://pan.baidu.com/s/1dDvZvAp ( 密码要进群才有)

习大大在澳门的演讲,引用了一句经典的话:“以利相交,利尽则散;以势相交,势败则倾;以权相交,权失则弃;以情相交,情断则伤;唯以心相交,方能成其久远。”经营企业也好,合伙做事也好,人际交往也好,都应珍惜缘分,珍惜时光;以善为念,学会感恩;以诚相待,以心相交!与高者为伍,与德者同行,必得善果!感悟:心存至善,你的人生必有一块祥云!    ——共勉

本届课主要介绍如何切换场景,已经如何实现游戏中的用户交互,首先看下导演类中的主要函数:

1.      游戏中的导演类Director

+(Director)getinstance

获取单例

-(void)runWithScene:(Scene*)scene

将场景对象压入栈中,并激活(此时不能有已经激活的场景,因此该方法常用于刚进游戏时)。

-(void)pushScene:(Scene+)scene

添加新的场景进栈,并将其激活

-(void)popScene

当前激活的场景出栈,激活上一个场景。

-(void)pause

暂停

-(void)resume

恢复

下面看一下Node类的基本功能:具体是使用请查看网盘课程

2.      节点类Node

绘图节点

父子关系

锚点

变换

属性

计划任务

标记

动作


3.       本课程主要说明了如何实现Node的计划任务

  Local  function logic()

……

end

  node:scheduleUpdateWithPriorityLua(logic,1)

-------------------------------------------

注意:每1/60秒执行一次

node一定是显示在当前屏幕

计划任务会在每一帧里面由Director统一执行,汇总所有的游戏逻辑,因此,不要创建子线程,会出错。

4.       我们介绍了如何处理屏幕触摸事件

--1定义事件回调函数

local function touchBegan(t,e)

        return true

end

local function touchMoved(t,e)

        end

local function touchEnded(t,e)

        print("touchEnded")

end

--2.定义事件侦听对象

locallistener=cc.EventListenerTouchOneByOne:create()

   listener:registerScriptHandler(touchBegan,cc.Handler.EVENT_TOUCH_BEGAN)

   listener:registerScriptHandler(touchMoved,cc.Handler.EVENT_TOUCH_MOVED)

   listener:registerScriptHandler(touchEnded,cc.Handler.EVENT_TOUCH_ENDED)

   --3.讲侦听器绑定事件源添加到事件分发器

  cc.Director:getInstance():getEventDispatcher()

    :addEventListenerWithSceneGraphPriority(listener,layer)

你可能感兴趣的:(lua,cocos2d-x,手游)