CocosCreator之微信小游戏的抽奖转盘
许多小游戏里面都有涉及到抽奖环节,所以就可能会用到抽奖转盘的制作,今天分享一个自己左转盘的小小过程。
1、准备材料过程不多说,拼完界面之后大概是这样的:
2、给界面绑定脚本,在脚本的properties里面绑定转盘节点,不多说:
3、一般的,抽奖其实都是前面先假装转几圈,之后转向抽奖的结果就可以。我们先设定好各种所需要的变量:
onLoad () {//奖品份数 this.awardNum = 8;//转动时间this.rotateTime = 6.0;
},
4、写转盘转动的方法以及一个小小的效果(转到某区域,暂停之后转到该区域中央),不要忘记触发抽奖和重置的条件(我这里是按钮,重置也可以设置为抽完奖自动重置等):
/*** 点击抽奖 */
onClickLucky() { console.log("开始抽奖"); let random_jiangli = Math.floor(Math.random() * this.awardNum);console.log("random_jiangli ======>抽奖结果= ", random_jiangli);//多旋转的角度(最后转向抽奖结果所需要转的角度)this.rotationNum = (random_jiangli) * (360 / this.awardNum) + (360 / this.awardNum / 2);//左右的效果角度(效果所需)this.random_1 = Math.floor(Math.random() * 45 - 22.5);let action = this.DialRotateAction();this.ZhuanPan.runAction(action);let self = this;this.scheduleOnce(function () {let action_1 = cc.sequence(cc.rotateBy(0.2, 0), //停顿一下cc.rotateBy(1.5, self.random_1 / -1), //转到指向的分区的中央).easing(cc.easeInOut(3.0));self.ZhuanPan.runAction(action_1);}, this.rotateTime);
},/** * 转盘转动方法 */
DialRotateAction: function () { let self = this; //假定的假装转的圈数 let circleNum = 5; let action = cc.rotateBy(self.rotateTime, 360 * circleNum + self.rotationNum + self.random_1).easing(cc.easeInOut(3.0)); return action;
},/**
* 重置转盘方法
*/
onClickRefreshRotate(){console.log("重置转盘");if(this.ZhuanPan.rotation != 0){ this.ZhuanPan.rotation = 0; }
},
5、效果如下(简易gif图,有些卡):
有了tween之后,换了一种特别简洁的写,如下:
this.action = cc.tween(this.img_luckyspin_spin).then(cc.rotateBy(3.0, 360 * 6 + index * 45).easing(cc.easeInOut(3.0))).call(() => {console.log("将奖盘重置");this.scheduleOnce(() => {this.img_luckyspin_spin.rotation = 0;}, 2.0);}).start();
tween后边的括号里面是节点,call里面是回调,用来重置奖盘位置。
如有问题,欢迎指正,共同学习,谢谢。
CocosCreator之微信小游戏的抽奖转盘相关推荐
- cocos2dx 圆盘抽奖_cocoscreator之微信小游戏的抽奖转盘
许多小游戏里面都有涉及到抽奖环节,所以就可能会用到抽奖转盘的制作,今天分享一个自己左转盘的小小过程. 1.准备材料过程不多说,拼完界面之后大概是这样的: 2.给界面绑定脚本,在脚本的propertie ...
- 解决CocosCreator 在微信小游戏中使用Socket.io 报错的问题
解决CocosCreator 在微信小游戏中使用Socket.io 报错的问题 参考文章: (1)解决CocosCreator 在微信小游戏中使用Socket.io 报错的问题 (2)https:// ...
- CocosCreator接入微信小游戏
使用Creator接入微信小游戏 流程介绍 1:下载cocosCreator http://www.cocos.com/download 2:去微信公众平台注册账号账号 微信开发者平台和微信公众平台是 ...
- CocosCreator 打包微信小游戏
1. 下载微信开发者工具并安装,申请小游戏ID,在ccc的文件-->设置-->原生环境中,指定路径 2.发布平台选择微信小游戏,填入appid,这里要注意,小程序的id 和小游戏的id不同 ...
- CocosCreator之微信小游戏的聊天/提示气泡制作
有时候,我们会遇到一些需要气泡的地方,比如一些提示,即需要背景随着文本长度过长而换行之后进行自适应的情况.我之前是直接设置文本框的行高是可变的,即Overflow属性为RESIZE,然后根据文本长度来 ...
- CocosCreator微信小游戏入门实战《小猫钓鱼》(十一):总结以及源码分享
转载请保留原文链接:https://blog.csdn.net/zzx023/article/details/83068228 基本上到这里作为一个cocoscreator以及微信小游戏的开发者,我相 ...
- LayaAir 绘制微信小游戏开放数据域画面
LayaAir 绘制微信小游戏开放数据域画面 请大家关注我的微博:@NormanLin_BadPixel坏像素 之前写过用cocosCreator绘制微信小游戏子域的教程,保持整体思路不变,现在再写一 ...
- 微信小游戏开发零基础教程(一)-CocosCreator
微信小游戏零基础教程(一)-CocosCreator 最终效果预览 准备工作 创建工程 测试第一个场景 最终效果预览 本教程最后制作的游戏效果: 准备工作 下载 微信开发者工具 最新版->下载地 ...
- 微信小程序实现大转盘抽奖----踩坑之路
微信小程序实现大转盘抽奖----踩坑之路 需求:现在有一个小程序抽奖页面如下,此类抽奖方式为大转盘 思路:由服务端获取抽奖次数和奖品,根据服务端的中奖概率来决定是否中奖,最后利用小程序动画将转盘转起来 ...
最新文章
- pytorch 获取模型参数_锂电池P2D模型参数获取:平衡电势
- java 队列已满_java – ThreadPoolExecutor当队列已满时阻塞?
- FB 宕机,Telegram 用户疯涨,P**hub 流量猛增
- Ubuntu14.04安装ROS
- linux oracle bin目录在哪,linux 安装软件装完后在哪个目录
- CSDN博客积分规则
- 视频html5播放器代码实例
- Opencv学习笔记 超像素分割
- X-Cache和X-Pad
- 计算机毕业设计看这篇就够了(二)毕设流程
- php 各个版本,PHP各版本之间差异
- 关于删除安装ESXI里的VIB小记。
- mac怎么用u盘装系统?配备Apple T2 芯片的Mac电脑如何使用U盘装系统?
- 【指纹识别】基于模板匹配算法指纹识别匹配门禁系统matlab源码
- [高效学习]之1学习金字塔
- 从iOS 11看怎样设计APP图标
- 信号完整性之浅谈理解(七)
- 揭秘VR全景背后的商业价值
- 动手学深度学习笔记(一)——权重衰退
- 南京农业大学计算机考研资料汇总
热门文章
- 编译error: no acceptable C compiler found in $PATH
- 5G 学习笔记 - NSA - ENDC架构
- QT的Frame背景图片设置自学版
- 2019年1月1日起,国家推出新的个人所得税政策,起征点上调值5000元。也就是说税前工资扣除五险一金(五险一金数额假设是税前工资的10%) * 后如果不足5000元,则不交税。
- android手机进入fastboot,安卓手机进入Fastboot模式的多种操作方法
- Ghost 使用详解
- 汝州九峰山下自产自销的好蜂蜜
- 动态链接--打桩机制
- 视频教程-2020年软考网络规划设计师案例分析历年真题详解软考视频教程-软考
- 【扒开】关于赢驴准心劫持浏览器首页的病毒类行径