unity斗地主洗牌發(fā)牌算法實(shí)現(xiàn)

? ? ? ?如果你要問游戲行業(yè)什么游戲開發(fā)起來難度小酬姆,周期短嗜桌?是RPG,MMORPG辞色,Moba骨宠?亦或是FPS,賽車游戲?其實(shí)都不是相满!棋牌游戲才是開發(fā)難度小层亿,周期短的游戲項(xiàng)目。是不是有人不服了立美?沒關(guān)系匿又,聽我說完。首先用unity開發(fā)棋牌游戲的話建蹄,諸如斗地主之類的碌更,難點(diǎn)就只有一個,那就是棋牌游戲游戲算法了洞慎,比如洗牌痛单,出牌邏輯,比牌邏輯劲腿,其他的就沒什么了旭绒。至少它邏輯沒有很復(fù)雜。像FPS,Moba谆棱,MMORPG等就不同了快压,有熟悉內(nèi)容多,難度大垃瞧。賽車游戲就更不用說了蔫劣,如果你要非常真實(shí)的,那么各種和物理相關(guān)的參數(shù)計(jì)算个从,你必須得會脉幢,不然做不出高質(zhì)量的賽車游戲歪沃。所以,棋牌游戲難度比較小嫌松。我做了一個斗地主的洗牌發(fā)牌算法的Demo沪曙,這個面試也是會問的。應(yīng)該有點(diǎn)用處萎羔。先上效果圖液走。

? ? ? ?OK,那么我們來看看怎么來實(shí)現(xiàn)這個功能贾陷!先來梳理下這個Demo具有的功能:創(chuàng)建牌缘眶,洗牌,發(fā)牌(連同發(fā)牌效果),排序髓废,就差打牌了巷懈,哈哈。好慌洪,首先我們來看看這幾步怎么搞定顶燕,首先是創(chuàng)建牌,這個的話呢冈爹,不是很難涌攻。但是我們先要有整體思維,牌的話犯助,我們有花色癣漆,大小(權(quán)值),等。然后它是很有規(guī)律的剂买,發(fā)現(xiàn)每月:四色牌各13張惠爽,然后大小王各一張。所以瞬哼,這個時候我們就可以用循環(huán)來做了婚肆。直接就是按順序創(chuàng)建就可以。黑紅梅方各13張坐慰,然后每13張牌就切換一下花色较性。這樣52張牌就出來了。大小王再另外寫邏輯就可以了(方法多種结胀,不一定要用我這種)赞咙。這里原理說的應(yīng)該比較清楚了,上代碼:


這是創(chuàng)建牌邏輯糟港。然后牌是創(chuàng)建好了攀操,但是它是按順序的,有規(guī)律的秸抚,我們不希望它是這樣的速和,我們希望它是無需的歹垫,隨機(jī)的。那么這個時候就需要洗牌了颠放。洗牌邏輯呢也很簡單排惨。原理就是:我們創(chuàng)建的牌是放在一個集合里面了。然后大家應(yīng)該知道我們打牌的時候碰凶,是一張一張的發(fā)暮芭,或者摸的。對吧痒留,所以我們就要有一個概念谴麦,那就是洗好的牌蠢沿,我們也需要放在一個集合里面伸头,這個集合的話,它比較特殊舷蟀,它應(yīng)該是這樣的恤磷,一張一張的出來拍,然后我們一張一張的摸野宜。那么在數(shù)據(jù)結(jié)構(gòu)里面就有這樣的一個集合扫步,它就是隊(duì)列,它的特點(diǎn)就是先進(jìn)先出匈子。所以我們把牌打亂洗好了就放它里面河胎,然后發(fā)牌就從這里發(fā)。好了虎敦,那么洗牌原理是什么呢游岳?我們新建一個臨時列表,然后我們就隨機(jī)打亂下標(biāo)其徙,再插入到它里面去胚迫。因?yàn)樾碌牧斜砦覀兊拇笮∈?,然后我們要不斷循環(huán)來把元素插入到這個新列表去唾那,那么它的大小就會不斷增加访锻,至于循環(huán)多少次,很明顯闹获,牌庫有多少牌期犬,就循環(huán)多少次。

最后再把這個臨時列表一齊賦值給隊(duì)列避诽,進(jìn)入下一步發(fā)牌龟虎。OK,上代碼:

發(fā)牌就更簡單了茎用。直接瘋狂出隊(duì)列就對了遣总。我就不多說睬罗,沒得什么難度,唯一一個點(diǎn)旭斥,就是發(fā)牌的動畫(其實(shí)也算不算是動畫容达,或者可以叫它效果),我這里呢,是用的協(xié)程來做的垂券。直接上代碼:

OK花盐,最后一個就是牌發(fā)完需要排序,這個需要用到排序算法菇爪,排序算法很多種:諸如冒泡算芯,快牌,插入凳宙,選擇...等熙揍。這些算法我們都可以用。效果一樣氏涩,我這里就直接用冒泡届囚,因?yàn)樗詈唵危瑢Τ鯇W(xué)者最友好是尖。也最容易理解意系。話不多說,上代碼:

好了饺汹,四個模塊都已經(jīng)搞定蛔添,當(dāng)然這是四個核心的部分,并不是全的兜辞。還有一些其他的不是很重要的東西迎瞧,同時又比較簡單的,我就沒說弦疮。所以如果大家對這個demo感興趣的話夹攒,你可以聯(lián)系我,我給你整個Demo胁塞。

好了咏尝,這節(jié)就到這里了,發(fā)文不易啸罢,不喜勿噴哦编检!點(diǎn)擊鏈接加入群聊【Unity/Cocos交流群】

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市扰才,隨后出現(xiàn)的幾起案子允懂,更是在濱河造成了極大的恐慌,老刑警劉巖衩匣,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蕾总,死亡現(xiàn)場離奇詭異粥航,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)生百,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門递雀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人蚀浆,你說我怎么就攤上這事缀程。” “怎么了市俊?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵杨凑,是天一觀的道長。 經(jīng)常有香客問我摆昧,道長撩满,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任据忘,我火速辦了婚禮鹦牛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘勇吊。我一直安慰自己,他們只是感情好窍仰,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布汉规。 她就那樣靜靜地躺著,像睡著了一般驹吮。 火紅的嫁衣襯著肌膚如雪针史。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天碟狞,我揣著相機(jī)與錄音啄枕,去河邊找鬼。 笑死族沃,一個胖子當(dāng)著我的面吹牛频祝,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播脆淹,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼常空,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了盖溺?” 一聲冷哼從身側(cè)響起漓糙,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎烘嘱,沒想到半個月后昆禽,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝗蛙,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年醉鳖,在試婚紗的時候發(fā)現(xiàn)自己被綠了歼郭。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡辐棒,死狀恐怖病曾,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情漾根,我是刑警寧澤泰涂,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站辐怕,受9級特大地震影響逼蒙,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜寄疏,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一是牢、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧陕截,春花似錦驳棱、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至乳规,卻和暖如春形葬,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背暮的。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工笙以, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人冻辩。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓猖腕,卻偏偏與公主長得像,于是被迫代替她去往敵國和親微猖。 傳聞我的和親對象是個殘疾皇子谈息,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 逢年過節(jié),回到老家凛剥,玩的最多的就是打麻將侠仇、斗地主。今天要說的,就是這個經(jīng)典游戲——斗地主逻炊。 一互亮、斗地主牌面分析 斗...
    tomcat_pikaqiu閱讀 5,831評論 2 15
  • 本篇基于國外區(qū)塊鏈游戲Virtue Poker(虛擬撲克)的白皮書翻譯整理而成。面對國內(nèi)各種魚龍混雜的白皮書余素,Vi...
    yuyangray閱讀 4,881評論 0 3
  • 斗地主是起源于湖北的一項(xiàng)棋牌休閑游戲豹休,游戲是根據(jù)湖北當(dāng)?shù)厥至餍械钠迮仆娣ㄅ艿每熳兓倪M(jìn)創(chuàng)造出來的。 斗地主是根據(jù)...
    JunChow520閱讀 3,045評論 0 1
  • 白光升騰時桨吊,我的腦中一片空白威根。 白光散去,我發(fā)現(xiàn)自己站在一個桌子旁邊视乐。 昨晚低質(zhì)量的睡眠洛搀,讓我甚至無法想起我的身份...
    深海方碑閱讀 175評論 0 0
  • 一、入園活動:搖搖椅 二:字寶寶活動:兩只羊 今日任務(wù):鞏固復(fù)習(xí)字寶寶 兩只羊 周末大小朋友注意用電 外出 交通等...
    Stop_e50f閱讀 57評論 0 0