Egret社区

[微信游戏] [h5游戏]Jump吧少年,不要停歇

2014-8-27 14:27
1080463
本帖最后由 pyed 于 2014-8-27 15:40 编辑

qrcode.png PC请点击这里试玩
---------------------------------------------------
powered by egret framework

感谢egret的诸位,你们使得开发游戏十分惬意~
感谢论坛里的开发者朋友们,你们给了我莫大的帮助
不知道以后会是什么样子呢

参与人数 1贡献 +1 收起 理由
houhou + 1

查看全部评分

分享到 :
0 人收藏

63 个回复

倒序浏览
pyed  登堂入室 | 2014-8-27 14:29:09
大家普遍反映难度有点大…
对不住各位
pplboy  斑竹 | 2014-8-27 15:32:49 来自手机
给个链接撒,二维码扫不动啊
pyed  登堂入室 | 2014-8-27 15:39:23
pplboy 发表于 2014-8-27 15:32
给个链接撒,二维码扫不动啊
请点击这里试玩

对哦,sorry sorry,你是三星的机子
pplboy  斑竹 | 2014-8-27 15:46:53
太棒了,做的非常好啊~~ 就是难度果然有点高~~
7yue  官方团队 | 2014-8-27 17:16:04
做的非常赞!!!
pyed  登堂入室 | 2014-8-27 17:23:33
7yue 发表于 2014-8-27 17:16
做的非常赞!!!

7yue桑多谢
所谓瓜瓜  登堂入室 | 2014-8-27 19:47:40
大哥,抠脚大汉一只求抱走
所谓瓜瓜  登堂入室 | 2014-8-28 11:10:03
首先赞一个,有几个问题还烦请指点~
1.之前看到过一个关于模拟重力跳跃的帖子,好像也是你发的....效果类似是flappy bird,可以一只点击多段跳跃,但是请问怎么实现只能连续跳跃两次?
2.请问跑酷里面的所有复杂的动画比如跑步,翻转跳跃,都是用movieclip吗?貌似gif图在egret里没用……
3.请问这些道路上的物品,比如鸡腿鱼刺还有障碍物是怎么随机出现的?通过Math.random设置出现的时间吗?
pyed  登堂入室 | 2014-8-28 12:29:06
本帖最后由 pyed 于 2014-8-28 12:30 编辑
所谓瓜瓜 发表于 2014-8-28 11:10
首先赞一个,有几个问题还烦请指点~
1.之前看到过一个关于模拟重力跳跃的帖子,好像也是你发的....效果类似 ...

1.参考那篇帖子里最新更新的方法,使用Tween和Ease类来做重力跳跃。首先跳跃效果是正常的重力跳跃,属于s ~ t^2即距离正比于时间的平方,而flappy bird目测应该是s ~ t^3 或 s ~ t^4之类,但这仅仅是猜测。第二,如何实现只能跳跃两次。 因为我还有其他的逻辑要实现,所以专门写了一个类来给主角类的跳跃以及其他动作计数。如果只是简单实现跳跃的话,可以就在主角类里面写一个跳跃次数的变量,跳跃时判断该变量是否为0,不为0的话跳跃,并且跳跃次数-1。在跳跃完成后再吧跳跃数量置为2。例如如下写法
private leftJumpTime:number = 2;

private resetJumpTime():void {
    this.leftJumpTime:number = 2;
}


public jump():void {
    if(this.leftJumpTime != 0) {
    /*跳跃代码*/
    this.leftJumpTime--;
    }
}
在跳跃代码中,核心的部分是egret.Tween.get(this).to({y:height}, time, egret.Ease.quartOut).to({ground}, time, egret.Ease.quartIn)修改为
egret.Tween.get(this).to({y:height}, time, egret.Ease.quartOut).to({ground}, time, egret.Ease.quartIn).call(resetJumpTime, this, null);即可,即在跳跃完成后恢复一下跳跃次数。


2.是的,都是movieclip,还比较好使用。可以参考官方文档,先下载flash cs6,并且弄好moveclip plug-in,然后把静帧导入做成元件,然后导出,接下来按照官方文档中的事例使用即可。播放和暂停参考api文档中注明的方法,gotoAndPlay(frameName:string)用来播放,这里frameName是json文件中的frames后面的名字,如下图所示。 还有一点需要注意的是MovieClip的锚点不同于其他空间的锚点在左上角,MovieClip的锚点在其中心
QQ截图20140828121848.png

3.随机出现时采用了计时器,egret.Timer。思路为1s生成一个,位置随机。用法如下:
private gameItemTimer:egret.Timer = new egret.Timer(1000); //一秒钟生成一个

/*给timer加上监听器
*省略若干代码
*/

this.gameItemTimer.addEventListener(egret.TimerEvent.TIMER, this.createGameItem, this);

/*
*省略若干代码
*/

private createGameItem(event:egret.TimerEvent):void {
    if(event.target == this.gameItemTimer) {
    /*
     *添加生成代码,例如生成了obj,并且已经addChild
    */
        obj.y = -obj.height - Math.random() * RANGE; //这里RANGE自己设定多少
    }
}
直接手敲的,可能会有错误,如果有没有办法解决的,请留言给我

另外,如果游戏你觉得好玩,请帮忙分享朋友圈哟,谢咯

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部