斗地主游戏制作流程(1)
来源:互联网 发布:蜂窝移动网络数据漫游 编辑:程序博客网 时间:2024/06/04 19:40
1.创建牌的预制件,利用利用for循序 吊用创建预制件方法,将i值传入创建预制件中作为牌的id属性 并将其传入预制件绑定的脚本,
//------------------------------------------
onLoad: function () { this._loadedCards = 0 this._totalNum = 52 for(var i=1;i<=this._totalNum;i++){ this._loadPic(i) }},_loadPic:function(num){ var that = this cc.loader.loadRes("pokerPrefab", function (err, prefab) { if(err) cc.log(err) var newNode = cc.instantiate(prefab); cc.find('Canvas/cards').addChild(newNode); newNode.setPosition(0,0) newNode.scale = 0.3 newNode.getComponent('card').pub_setNum(num) that._cardsArr.push(newNode) that._checkLoadFinish() });},
_checkLoadFinish:function(){ this._loadedCards++ if(this._loadedCards == this._totalNum){ this._splitCards() }},
//------------------------------------
2.创建一个脚本绑定在预制件上,创建一个cardArr全局数组,在创建预制件的方法中将其node 节点push进入数组中,利用cardArr 数组创建for循环,创建一个变量 var random= parseInt(Math.random()*this._cardsArr.length)
//创建随机下标,在for循环中创建一个变量temp = this.cardArr[i] 再讲将temp 和 this._cardsArr[random] 进行交换
/---------------------------------
_splitCards:function(){ for(var i = 0;i<this._cardsArr.length;i++){ var random = parseInt(Math.random()*this._cardsArr.length) var temp = this._cardsArr[i] this._cardsArr[i] = this._cardsArr[random] this._cardsArr[random] = temp }
/-----------------------------------------------------------------
3. 将打乱的数组移动到 3个位置 创建 3个玩家数组 将其打算数组的下标push进玩家数组 ,将其移动到3个位置
发牌结束后 进入排序方法 将 在 预制件脚本创建一个新的变量 cardNum将 id =cardNum,利用判断将cardNum大小分为1- 13,之后在game脚本中获取预制件脚本中cardNum的大小,并且进行排序。
/-------------------------------------------------------------------
_sortsort: function(arr){ for(var i = 0; i < arr.length; i++) { for(var j = 0; j < arr.length; j++) { if(arr[i].getComponent("Num").value < arr[j].getComponent("Num").value) { var temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } }},_sorting:function(){ this._sortsort(this._GamePlayer1); this._sortsort(this._GamePlayer2); this._sortsort(this._GamePlayer3); for(var i = 0; i < this._GamePlayer1.length;i++){ this._GamePlayer1[i].setPosition(-463, 211 - (25*i)) this._GamePlayer1[i].setLocalZOrder(i+100); } for(var i = 0; i < this._GamePlayer2.length;i++){ this._GamePlayer2[i].setPosition(-320+(25*i), -310) this._GamePlayer2[i].setLocalZOrder(i+100); } for(var i = 0; i < this._GamePlayer3.length;i++){ this._GamePlayer3[i].setPosition(450, -235+(25*i)) this._GamePlayer3[i].setLocalZOrder(i+100); } },
/-------------------------------------------------------------- 0 0
- 斗地主游戏制作流程(1)
- unity制作斗地主游戏大致流程
- unity制作斗地主游戏大致流程
- 斗地主游戏源码
- 斗地主游戏准备工作.
- 斗地主游戏算法
- 斗地主游戏
- Android斗地主游戏源码
- Html5 Canvas斗地主游戏
- 扑克游戏斗地主算法
- 斗地主游戏-应用程序-01
- 棋牌斗地主游戏开发
- 模仿斗地主游戏发牌
- 斗地主算法1
- 斗地主(1)
- 6603斗地主看牌制作原理
- [cocos2dx]斗地主制作之洗牌算法
- [cocos2dx]斗地主制作之"排序”算法
- shell脚本监控系统负载、CPU和内存使用情况
- 视频会议系统——多分屏
- safari 中jQuery 第一次show没有显示
- CTEX初学一
- Android入门笔记之安卓布局常用属性
- 斗地主游戏制作流程(1)
- Oracle -- Set NS_NCHAR_CHARACTEREST
- Poj 3069 Saruman's Army【贪心】
- navigationBar 滑动 隐藏与显示 功能
- BZOJ3440 传球游戏
- Spring中applicationContext.xml位置问题
- 给定一个字符串,求出最长的连续配对括号子串的长度
- java wait和notify 简单理解
- [Leetcode] Lowest Common Ancestor of a Binary Tree