cocos2dx 圆盘抽奖_cocoscreator之微信小游戏的抽奖转盘
許多小游戲里面都有涉及到抽獎(jiǎng)環(huán)節(jié),所以就可能會(huì)用到抽獎(jiǎng)轉(zhuǎn)盤的制作,今天分享一個(gè)自己左轉(zhuǎn)盤的小小過程。
1、準(zhǔn)備材料過程不多說,拼完界面之后大概是這樣的:
2、給界面綁定腳本,在腳本的properties里面綁定轉(zhuǎn)盤節(jié)點(diǎn),不多說:
3、一般的,抽獎(jiǎng)其實(shí)都是前面先假裝轉(zhuǎn)幾圈,之后轉(zhuǎn)向抽獎(jiǎng)的結(jié)果就可以。我們先設(shè)定好各種所需要的變量:
onLoad () {
//獎(jiǎng)品份數(shù)
this.awardNum = 8;
//轉(zhuǎn)動(dòng)時(shí)間
this.rotateTime = 6.0;
},
4、寫轉(zhuǎn)盤轉(zhuǎn)動(dòng)的方法以及一個(gè)小小的效果(轉(zhuǎn)到某區(qū)域,暫停之后轉(zhuǎn)到該區(qū)域中央),不要忘記觸發(fā)抽獎(jiǎng)和重置的條件(我這里是按鈕,重置也可以設(shè)置為抽完獎(jiǎng)自動(dòng)重置等):
/**
* 點(diǎn)擊抽獎(jiǎng)
*/
onClickLucky() {
console.log("開始抽獎(jiǎng)");
let random_jiangli = Math.floor(Math.random() * this.awardNum);
console.log("random_jiangli ======>抽獎(jiǎng)結(jié)果= ", random_jiangli);
//多旋轉(zhuǎn)的角度(最后轉(zhuǎn)向抽獎(jiǎng)結(jié)果所需要轉(zhuǎn)的角度)
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),? //轉(zhuǎn)到指向的分區(qū)的中央
).easing(cc.easeInOut(3.0));
self.ZhuanPan.runAction(action_1);
}, this.rotateTime);
},
/**
* 轉(zhuǎn)盤轉(zhuǎn)動(dòng)方法
*/
DialRotateAction: function () {
let self = this;
//假定的假裝轉(zhuǎn)的圈數(shù)
let circleNum = 5;
let action = cc.rotateBy(
self.rotateTime, 360 * circleNum + self.rotationNum + self.random_1
).easing(cc.easeInOut(3.0));
return action;
},
/**
* 重置轉(zhuǎn)盤方法
*/
onClickRefreshRotate(){
console.log("重置轉(zhuǎn)盤");
if(this.ZhuanPan.rotation != 0){
this.ZhuanPan.rotation = 0;
}
},
5、效果如下(簡(jiǎn)易gif圖,有些卡):
下一篇為大家展示跑馬燈式的抽獎(jiǎng)。
如有問題,歡迎指正,共同學(xué)習(xí),謝謝。
總結(jié)
以上是生活随笔為你收集整理的cocos2dx 圆盘抽奖_cocoscreator之微信小游戏的抽奖转盘的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: java服务器向客户端发消息_socke
 - 下一篇: winForm获取内嵌浏览器网页源代码