creator 跳跃弧线_(转)CocosCreator零基础制作游戏《极限跳跃》四、添加游戏主场景控制脚本...
CocosCreator零基础制作游戏《极限跳跃》四、添加游戏主场景控制脚本
前面简单的实现了主界面的UI设置,现在我们开始制作游戏的控制脚本。
在资源管理器的Script文件夹中,点击右键新建javascript文件,命名为GAME。
双击打开GAME脚本,在properties: 中添加属性代码。
01
//GAME.js
02
03
cc.Class({
04
extends: cc.Component,
05
properties: {
06
07
// player 节点,用于获取主角弹跳的高度,和控制主角行动开关
08
player: {
09
default:null,
10
type: cc.Node
11
},
12
// bgsprite1 节点,用于背景移动
13
bgsprite1: {
14
default:null,
15
type: cc.Node
16
},
17
// bgsprite2 节点,用于背景移动
18
bgsprite2: {
19
default:null,
20
type: cc.Node
21
},
22
// score label 的引用
23
scoreDisplay: {
24
default:null,
25
type: cc.Label
26
},
27
},
保存好后,我们双击MainScene打开场景,点击Canvas,在右侧的属性检查器最底部,点击[添加组件]=》[添加用户脚本组件]然后选择我们刚刚创建的脚本GAME.js。
添加好后就可以在属性检查器看到我们的属性组件来,然后我们把场景里的节点拖进对应的属性框即可实现节点绑定。不懂得可以多看看官方文档。
这样我门就可以在GAME脚本里来操作节点了。
二、创建HeroPlayer脚本用来操作玩家主角
01
//HeroPlayer.js
02
03
cc.Class({
04
extends: cc.Component,
05
properties: {
06
//主角跳跃高度
07
jumpHeight:0,
08
//主角跳跃持续时间
09
jumpTimes:0,
10
//掉落速度
11
maxMoveSpeed:0,
12
},
13
//跳跃
14
setJumpUpAction:function(){
15
// 跳跃上升
16
var jumpUp = cc.moveBy(this.jumpTimes, cc.p(0,this.jumpHeight));
17
//jumpUp.reverse();
18
return jumpUp;
19
},
20
//掉落
21
setJumpDownAction:function(){
22
//下落
23
var jumpDown = cc.moveBy(this.jumpTimes, cc.p(0, -this.maxMoveSpeed));
24
return jumpDown;
25
},
26
setJumpRunAction:function(){
27
// 初始化跳跃动作
28
this.jumpAction =this.setJumpUpAction();
29
//掉落动作
30
this.maxMoveSpeed =this.setJumpDownAction();
31
//包装动作
32
var seq = cc.sequence(this.jumpAction,this.maxMoveSpeed);
33
this.node.runAction(seq);
34
},
35
//玩家不操作时,角色进行下坠
36
heroDownMove:function(){
37
//下落
38
var heroDown = cc.moveBy(0.8, cc.p(0, -5));
39
return heroDown;
40
},
41
// use this for initialization
42
onLoad:function () {
43
44
this.setJumpRunAction();
45
46
},
47
48
// called every frame, uncomment this function to activate update callback
49
update:function (dt) {
50
this.node.runAction(this.heroDownMove());//精灵移动
51
}
52
53
54
});
角色有2种状态,一种是玩家点击屏幕会实现角色的跳跃,第二种就是角色会受到引力会自动下落。我们在update来实现自动下落。添加好方法后,我门在层级管理器中点击hero节点。然后在右侧属性检查器中绑定脚本。
我门可以在里面初始化值。跳跃高度值,跳跃持续时间,掉落速度等。
脚本里主要实现了跳跃动作,掉落动作等。
然后回到我们的游戏主脚本也就是GAME脚本。添加触摸事件监听,实现监听触摸来调用主角的跳跃动作。
首先在顶部添加脚本引用,然后创建事件监听的方法。
01
//GAME.js
02
var HeroPlayer = require("HeroPlayer");
03
//-----
04
//事件监听
05
setEventControl: function(){
06
var self =this;
07
var hero = self.player.getComponent(HeroPlayer);//角色绑定控件
08
09
cc.eventManager.addListener({
10
event: cc.EventListener.TOUCH_ONE_BY_ONE,
11
swallowTouches:true,
12
// 设置是否吞没事件,在 onTouchBegan 方法返回 true 时吞没
13
onTouchBegan: function (touch, event) {
14
//实现 onTouchBegan 事件回调函数
15
var target = event.getCurrentTarget();
16
// 获取事件所绑定的 target
17
18
var locationInNode = target.convertToNodeSpace(touch.getLocation());
19
cc.log("当前点击坐标"+locationInNode);
20
21
hero.node.runAction(hero.setJumpUpAction());//精灵移动
22
//cc.log("跳跃:--------");
23
24
25
26
return true;
27
},
28
onTouchMoved: function (touch, event) {// 触摸移动时触发
29
30
},
31
onTouchEnded: function (touch, event) {// 点击事件结束处理
32
33
// cc.log("跳跃后角色坐标:" + self.player.getPosition() );
34
}
35
36
}, self.node)
37
},
然后在onload方法实现初始化调用。
1
onLoad: function () {
2
//触摸监听
3
this.setEventControl();
4
// 初始化计分
5
this.score = 0;
6
7
},
我们可以来运行下,看下效果。
creator 跳跃弧线_(转)CocosCreator零基础制作游戏《极限跳跃》四、添加游戏主场景控制脚本...相关推荐
- creator 跳跃弧线_(转)CocosCreator零基础制作游戏《极限跳跃》七、制作游戏结束场景并实现场景切换...
CocosCreator零基础制作游戏<极限跳跃>七.制作游戏结束场景并实现场景切换 前面我们实现了游戏的碰撞检测,碰到障碍物我们的角色就会死掉并开始掉落,角色掉落到屏幕底部时候游戏结束, ...
- creator 跳跃弧线_(转)CocosCreator零基础制作游戏《极限跳跃》八、添加游戏积分系统...
CocosCreator零基础制作游戏<极限跳跃>八.添加游戏积分系统 前面我们实现了整个游戏的流程,下面我们来完善游戏的积分系统..先来分析下游戏的积分,第一次展示积分的地方就是我们的游 ...
- creator 跳跃弧线_(转)CocosCreator零基础制作游戏《极限跳跃》一、游戏分析
CocosCreator零基础制作游戏<极限跳跃>一.游戏分析 无意中发现了小游戏<极限跳跃>感觉挺有意思的,正好这段时间和朋友讨论准备用js还是unity做小游戏,初定用js ...
- python和cc哪个适合做游戏的背景音乐_(转)CocosCreator零基础制作游戏《极限跳跃》九、为游戏添加声音音效功能...
CocosCreator零基础制作游戏<极限跳跃>九.为游戏添加声音音效功能 游戏的声音很重要,我们在这个游戏中需要加2个音效,一个背景音乐...第一个音效在玩家与障碍物碰撞的地方加碰撞音 ...
- CocosCreator零基础制作游戏《极限跳跃》
转载闭眼就天黑专栏_个人博客_技术源于分享.一个完整的小游戏教程适合小白入手 一.思维导图 二.制作登录场景 首先,打开CocosCreator,新建HelloWorld项目.选择项目路径,输入项目名 ...
- (转)CocosCreator零基础制作游戏《极限跳跃》六、制作游戏障碍物实现碰撞检测...
CocosCreator零基础制作游戏<极限跳跃>六.制作游戏障碍物实现碰撞检测 前面我们实现了背景和主角的操作,下面我们开始添加游戏的障碍物以及碰撞检测的功能. 一.制作障碍物Prefa ...
- (转)CocosCreator零基础制作游戏《极限跳跃》二、制作游戏开始场景
CocosCreator零基础制作游戏<极限跳跃>二.制作游戏开始场景 我们刚刚分析了<极限跳跃>这款游戏,下面我们开始制作第一个游戏场景,也就是游戏的开始场景. 首先,打开C ...
- CocosCreator零基础制作游戏《极限跳跃》二、制作游戏开始场景
转自:http://www.byjth.com/CocosCreator/67.html CocosCreator零基础制作游戏<极限跳跃>二.制作游戏开始场景 我们刚刚分析了<极限 ...
- 如何零基础制作一款自己的游戏!(一)
如何零基础制作一款游戏(一) 文章目录 如何零基础制作一款游戏(一) 前言 一.软件下载以及创建工程 二.使用步骤 1.进入工程 2.设置更改 3.更改界面 4.脚本更改 5.下载插件 6.如何设置障 ...
最新文章
- cocos2d-x 2.0启用HD高清图片支持
- 零基础也可以实现“机器同传翻译”!
- objective-c(初始化)
- Oracle数据库修改用户密码
- 2019年上半年计算机水平,2019年上半年全国计算机等级考试通过秘诀分享
- 计算机图学图形裁剪,计算机图形学——裁剪
- LAMP兄弟连ThinkPHP笔记
- 《Machine Learning in Action》—— 女同学问Taoye,KNN应该怎么玩才能通关
- Talk预告 | 上海交通大学计算机系博士生李杰锋方浩树:多人场景,全身136关键点检测与跟踪框架AlphaPose技术讲解
- android设置头像同时设置模糊背景
- 关于QQ号的分发管理机制的基本方案的设计猜想和分析讨论
- 用友投资一亿现金成立医疗软件公司
- 2015年 android 白皮书
- SSL证书过期后怎么办?
- python 删除excel空行_Java 删除 Excel 中的空白行和列
- 新买的电脑,自带最新版的office家庭和学生版,激活教程
- 什么是EISA分区,如何删除
- 浅谈 React Fiber
- 考研高数背诵类知识点-张宇(不定期更新)
- STK 与Matlab 的连接