freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

斗地主的制作與實現(報告完整源代碼論文)word格式-資料下載頁

2024-12-06 03:59本頁面

【導讀】完成一個網絡版的斗地主。1,能夠聯(lián)網對戰(zhàn),能及時出牌并能與主機一起更新游戲狀態(tài)。2,能正確判斷勝負和游戲的開始與結束。3,能認清地主和農民,能正確記分。4,整個游戲界面如下圖所示。上面中間是游戲地主最后拿的三張牌,左右分。別是玩家的牌,下面中間是自己的牌。在游戲的右下方有2個按鈕,分別。以單擊過牌選擇放棄,如果所有的玩家都選擇放棄,則重新發(fā)牌。Managers模塊:這是本游戲的核心模塊之一。voidCardsInfo;//用來得到牌的信。到底是炸彈,連牌,還是什么的。voidPlayS;//設置與發(fā)出聲音,用來通知玩家。所打的牌的大小與種類。CChat模塊:基本對話框的聊天模塊.NetControl模塊:用于設置網絡各方面的問題。boolMainComputer;//主機,是主機則是true不是則為false;

  

【正文】 construction/destruction CProgramView::CProgramView() { // TODO: add construction code here pControl= new NetControl(this)。//創(chuàng)建一個指向 NetControl 的指針 = this。 isgoon = true。 isMsOpen = true。 = pControl。 srand(time(NULL))。 PlayerName[0]=。 PlayerName[1]=。 PlayerName[2]=。 cardleft=NULL。 cardright=NULL。 cardmiddle=NULL。 m_isReady=false。 isDrawed =false。//畫發(fā)牌了沒有,發(fā)牌完成了沒有 } CProgramView::~CProgramView() { if(!pControlm_Isserver) pControlSendMsg(pControlm_pSocket,退出游戲 )。 else pControlBroadcast(退出游戲 )。 delete pControl。 } 第 30 頁 共 59 頁 BOOL CProgramView::PreCreateWindow(CREATESTRUCTamp。 cs) { // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs //加載位圖 (IDB_BACKGROUND)。 (IDB_CARD)。 return CView::PreCreateWindow(cs)。 } ///////////////////////////////////////////////////////////////////////////// // CProgramView drawing void CProgramView::OnDraw(CDC* pDC) { CProgramDoc* pDoc = GetDocument()。 ASSERT_VALID(pDoc)。 // TODO: add draw code for native data here //初始化 CDC static bool st=TRUE。 if(st) { (pDC)。 (m_background)。 (pDC)。 (m_card)。 st=FALSE。 } PrintAll()。 } ///////////////////////////////////////////////////////////////////////////// // CProgramView printing BOOL CProgramView::OnPreparePrinting(CPrintInfo* pInfo) { // default preparation return DoPreparePrinting(pInfo)。 } void CProgramView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { // TODO: add extra initialization before printing 第 31 頁 共 59 頁 } void CProgramView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) { // TODO: add cleanup after printing } ///////////////////////////////////////////////////////////////////////////// // CProgramView diagnostics ifdef _DEBUG void CProgramView::AssertValid() const { CView::AssertValid()。 } void CProgramView::Dump(CDumpContextamp。 dc) const { CView::Dump(dc)。 } CProgramDoc* CProgramView::GetDocument() // nondebug version is inline { ASSERT(m_pDocumentIsKindOf(RUNTIME_CLASS(CProgramDoc)))。 return (CProgramDoc*)m_pDocument。 } endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CProgramView message handlers int CProgramView::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CView::OnCreate(lpCreateStruct) == 1) return 1。 // TODO: Add your specialized creation code here /////////////////////////////////////////////////////////////////////// /* 第 32 頁 共 59 頁 *函數名稱: (_T(確定 ),//按鈕的 caption 屬性,按鈕的顯示 WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, // 按鈕也是一種窗體,同樣有不同 //風格,通過對常量或運算進行組合 ,達到一定的效果 ,這些常量的含義可以參考 MSDN CRect(660,410,765,450), //這個參數指出按鈕在視圖中左上角和右下角坐標,在 //確定了按鈕位置的同時也確定了其大小 this,//這個指針指向按鈕這個窗體的父窗體 ID_OK)。//這 是剛才為按鈕定義的常量,按鈕的控制 ID *函數介紹:創(chuàng)建按鈕 *輸入參數:見上 *輸出參數:無 *返回值 :無 */ //創(chuàng)建按鈕 OK /*(_T(準備 ), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(660,420,765,460), this, ID_OK)。*/ (_T(準備 ), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(420,500,490,525), this, ID_OK)。 //創(chuàng)建按鈕 CANCEL /*(_T(退出 ), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(660,502,765,542), this, ID_CANCEL)。 */ //出牌 /*(_T(出牌 ), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(533,387,637,427), this, ID_SENDCARD)。*/ (_T(出牌 ), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(506,500,576,525), this, ID_SENDCARD)。 //過牌 /* (_T(過牌 ),WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(533,460,638,500),this,ID_PASS)。 */ (_T(過牌 ),WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON, CRect(592,500,662,525),this,ID_PASS)。 // (IDB_BITMAP1)。 // (m_callBitmap)。 // ///////////////////////////////////////////////////////////////////// 第 33 頁 共 59 頁 ///// /* *函數名稱: (SW_SHOW) *函數介紹:按鈕的顯示控制 *輸入參數:當輸入參數為 SW_SHOW 表示顯示按鈕,當為 SW_HIDE 表示隱藏按鈕 *輸出參數:無 *返回值 :無 */ //顯示按鈕 (SW_HIDE)。 // (SW_HIDE)。 (SW_HIDE)。 (SW_HIDE)。 //mciSendString(res\\,NULL,NULL,NULL)。 CString str = play res\\ 。 mciSendString(str, 0, 0, 0)。 //PlaySound(res\\,NULL,SND_ASYNC |SND_NODEFAULT )。 SetTimer(3,35000,NULL)。 return 0。 } void CProgramView::OnMouseMove(UINT nFlags, CPoint point) { // TODO: Add your message handler code here and/or call default //跟蹤光標坐標 int mx=。 int my=。 CString st。 CDC *pdc=GetDC()。 (%d ,%d ,)。 // pdcSetBkMode(TRANSPARENT)。 // pDCSetTextColor(RGB(255,255,255))。 pdcTextOut(400,5,st)。 ReleaseDC(pdc)。 CView::OnMouseMove(nFlags, point)。 } ////////////////////////////////////////////////////////////////// /* 函數名稱: OnOk() 函數介紹:響應確定按鈕的點擊 第 34 頁 共 59 頁 輸入參數:無 輸出參數:無 返回值 :無 */ void CProgramView::OnOK() { // MessageBox(你點擊了確定按鈕 )。//改變 m_isReady = true。 if(!pControlm_Isserver)pControlm_ready[1] = true。 if(!pControlm_Isserver amp。amp。 pControlm_ready[0] amp。amp。 pControlm_ready[1] amp。amp。pControlm_ready[2]) { pControlm_ready[0] = false。 pControlm_ready[1] = false。 pControlm_ready[2] = false。 } if(=0 amp。amp。 3) return。 if(=3 ) { =2。 isgoon=true。 } if(isgoon) { OutCards[0][0].Num=16。 OutCards[1][0].Num=16。 OutCards[2][0].Num=16。 PrintAll()。 if(!pControlm_Isserver) { pControlSendGetReady()。 } else { pControlm_ready[1]=true。 if(pControlm_ready[0] amp。amp。 pControlm_ready[1] amp。amp。 pControlm_ready[2]) { pControlm_ready[0]=false。 pControlm_ready[1]=false。 pControlm_ready[2]=false。 ()。 第 35 頁 共 59 頁 pControlStartCards()。 PlayerPos()。 PrintAll(1)。 // CString str。 (%d,)。MessageBox(str)。 } } CDC *pdc=G
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1