【Unity之类】单机斗地主游戏开发流程
【Unity之类】单机⽃地主游戏开发流程
⼀、⽃地主规则说明:
⽃地主出牌类型(牌数范围):
单牌(1)、对⼦、顺⼦(除2之外的连续5~12张牌凑成,例如:345678、最⼤是345678910JQKA)、双顺(牌数范围
[6,8,10,12,14,16,18,20,22,24] 最⼩:334455,最⼤:334455667788991010JJQQKKAA)、飞机([6,9,12,15,18,]
如:222333)、三带(3)、三带⼀(4)、三带⼆(5)、(4)、王炸(2)
⼆、流程:
准备54张牌、洗牌、发牌每⼈17张、抢地主、将剩余3张牌给地主、地主出牌、轮转下⼀位玩家出牌、不断地
循环、直⾄某玩家牌出完、结束⼀轮游戏。
具体实现套路:
1、准备54张牌
⽤队列或栈存,⽅便发牌,卡牌类{卡名、牌号、花⾊、持有者},利⽤卡名从Resources加载图⽚,牌号*4+花⾊=权值,持有者可知道这张牌属于谁。(废话)
2、洗牌
新建⼀个List或数组,从原本按着顺序排放的牌抽⼀张放⼊List,利⽤插⼊⽅式放⼊,插⼊索引值为Random.Range(0,list.Count+1),⼀张张牌随机插⼊List后就得到54张 乱序的牌了,然后再将这些牌⼀张张放回到原来保存着牌的栈或队列中。
3、发牌每⼈17张
将牌⼀张张地实例化到各个对应的点上,玩家看到的牌是降序排序的。
4、抢地主
如何下载单机游戏
5、将剩余3张牌发给地主
6、地主出牌(必须出牌,不能不出哦!(废话))
创建 ⼀个Model保存最⼤出牌者是谁(当前牌者就是最⼤出牌者(废话!)),出牌类型,牌长度,牌权值!
7、轮转下⼀位玩家出牌
对了,出牌之前必须要验证将要出的牌是不是 正常的(写⼀个类专门验证)
接着再判断将要出的牌是否⽐最⼤出牌者的牌要⼤!如何 判断?⾃⼰想想,当然单纯⼤肯定不⾏, 如果不是、王炸,这种牌,还得长度⼀样,出牌类型⼀样才允许出牌哦。
8、 出牌完判断是否结束。。。然后不断地循环这个过程。完事。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。