1.玩家按下准备按钮
void SceneGame::menuReadyCallback(Ref* pSender)
{
faPai();
_menuReady->setVisible(false);
}
2.faPai函数里先洗牌,然后调用callbackFaPai,callbackFaPai是一个递归链式调用函数,一次给每个成员发牌并且保留底牌,最后显示抢地主按钮
如果玩家抢到了地主,接着给他发底牌,并且设置他为地主,同时出牌按钮也会显示
void SceneGame::menuQiangCallback(Ref* pSender)
{
SimpleAudioEngine::getInstance()->playEffect("sound/Man/Order.ogg");
// 分发底牌
FaDiPai(_player1);
// 切换菜单可见
_menuQiangDiZhu->setVisible(false);
_menuChuPai->setVisible(true);
}
void SceneGame::callbackChuPai2(cocos2d::Node* node)
void SceneGame::callbackChuPai3(cocos2d::Node* node)
以上分别是两个机器人的出牌算法,3号机器人出玩牌设置我的出牌按钮显示
如果某个玩家调用chupai函数的过程中牌的列表数据为空,就会触发gameover函数,最终进入结算页面,至此整个流程进行完毕
唯一遗憾的是该程序没有做能否出牌的判断
本文详细解析了斗地主游戏中的关键逻辑实现,包括玩家准备、发牌、抢地主及出牌流程。通过递归链式调用确保每位玩家正确接收牌,展示抢地主按钮,并处理游戏结束条件,进入结算阶段。
2353

被折叠的 条评论
为什么被折叠?



