void GameModule::SendCurRoomPokersTo(const unsigned int &playerID) { using face2wind::PokerVo; using face2wind::RoomManager; using face2wind::PlayerManager; using face2wind::GameManager; PlayerManager *playerMgr = PlayerManager::GetInstance(); RoomManager *roomMgr = RoomManager::GetInstance(); GameManager *gameMgr = GameManager::GetInstance(); unsigned int roomID = roomMgr->GetRoomID(playerID); if(0 == roomID) return; std::vector<unsigned int> *roomPlist = gameMgr->GetPlayerList(roomID); SC10202 *sc2 = new SC10202(); sc2->nextTurnIndex = gameMgr->GetCurrentTurnIndex(roomID); unsigned int index = 0; for(std::vector<unsigned int>::iterator pid = roomPlist->begin(); pid != roomPlist->end(); ++pid){ std::vector<PokerVo*> *pokerList = gameMgr->GetPlayerPokerList(*pid); SC10202_pokerNumList num; if(NULL != pokerList) num.pokerNum = pokerList->size(); else num.pokerNum = 0; sc2->pokerNumList.push_back(num); if(playerID == *pid && NULL != pokerList){ sc2->roleIndex = index; for(std::vector<PokerVo*>::iterator pvo = pokerList->begin(); pvo != pokerList->end(); ++pvo){ PokerInfo info; info.color = (*pvo)->color; info.value = (*pvo)->value; sc2->pokerList.push_back(info); } } ++index; } unsigned int roomPlayerSocketID = playerMgr->GetSocketFDWithPlayerID(playerID); networkMgr->SendMessage(10202,sc2,roomPlayerSocketID); }