下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、# i n c l u d e < i o s t r e a m > usingnamespacestd;constcharMOUSE='*'constcharWAY=''constcharWALL=''constcharPASS='.'constcharIMPASS='X'classGamepublic:Game(size_tuWidth,size_tuHeight):m_uWidth(uWidth),m_uHeight(uHeight),m_ pcMaze(newcharuWidth*uHeigh
2、t),m_mouse(0,1)srand(time(NULL);char(*pcMaze)m_uWidth=reinterpret_cast<char(*)m_uWidth>(m_pcMaze);for(size_ti=0;i<m_uHeight;i+)for(size_tj=0;j<m_uWidth;j+) if(i=1&&j<4)|(i=m_uHeight-2&&j>m_uWidth-5) pcMazeij=WAY;elseif(i=0|i=m_uHeight-1|j=0|j=m_uWidth-1)pcMazeij=WAL
3、L;elsepcMazeij=rand()%4WAY:WALL;Game(void)if(m_pcMaze)deletem_pcMaze; m_pcMaze=NULL;voidRun(void)for(Show();!Quit()&&Step(););private:classMousepublic:Mouse(size_tx,size_ty):m_x(x),m_y(y) size_tGetX(void)returnm_x; size_tGetY(void)returnm_y; voidStepRight(void) m_x+; m_brain.Remember(EDIR_RI
4、GHT);voidStepDown(void)m_y+;m_brain.Remember(EDIR_DOWN); voidStepLeft(void)m_x-;m_brain.Remember(EDIR_LEFT);voidStepUp(void)m_y-;m_brain.Remember(EDIR_UP);voidStepBack(void)switch(m_brain.Recollect() caseEDIR_RIGHT: m_x-; break;caseEDIR_DOWN:m_y-;break;caseEDIR_LEFT:m_x+; break; caseEDIR_UP: m_y+; b
5、reak;private:typedefenumtag_DirectionEDIR_RIGHT,EDIR_DOWN,EDIR_LEFT,EDIR_UP,EDIR_STILLEDIR;classBrainpublic:Brain(void):m_pMemory(NULL)Brain(void) for(Step*pStep=m_pMemory,*pLast;pStep;pStep=pLast) pLast=pStep->m_pLast;deletepStep;voidRemember(EDIReDir) m_p Memory=n ewSte p( eDir,m_ pMemory);&quo
6、t; "EDIRRecollect(void) EDIReDir=EDIR_STILL; if(m_pMemory)Ste p*p Ste p=m_p Memory;m_p Memory=m _p Memory-m_p Last;eDir=p Ste p-> m_eDir; delete pSte p; returneDir;p rivate:classSte pp ublic:Ste p(EDIReDir,Ste p*p Last):m_eDir(eDir),m_pLast( pLast) EDIRm_eDir;Step*m_p Last; " Step*m_p M
7、emory; "size_tm_x;size_tm_y;Brai nm _brai n; "voidShow(void)char(* pcMaze)m_uWidth=rei nterpret_castvchar(*)m_uWidth>(m _p cMaze); for(size_ti=0;ivm_uHeight;i+)for(size_tj=0;jvm_uWidth;j+)cout< vp cMazeij;coutvve ndl;boolQuit(void)coutvv"鎸塓閫?鍑猴紝鍏朵粬閿戶緇"vvflush;in tch=getchar
8、();returnch=Q|ch='q'boolSte p(void)char(* pcMaze)m_uWidth=rei nterpret_castvchar(*)m_uWidth>(m _p cMaze);size_tx=m_mouse.GetX();size_ty=m_mouse.GetY(); if(x+1<=m_uWidth-1&&pcMazeyx+1=WAY)pcMazeyx=PASS;m_mouse.StepRight(); elseif(y+1<=m_uHeight-1&&pcMazey+1x=WAY) pcMa
9、zeyx=PASS;m_mouse.StepDown(); elseif(x-1>=0&&pcMazeyx-1=WAY) pcMazeyx=PASS; m_mouse.StepLeft();elseif(y-1>=0&&pcMazey-1x=WAY) pcMazeyx=PASS; m_mouse.StepUp();elsepcMazeyx=IMPASS; m_mouse.StepBack();x=m_mouse.GetX();y=m_mouse.GetY();pcMazeyx=MOUSE;Show();if(x=0&&y=1)cout<<"* 小老鼠贏了 *" returnfalse; if(x=m_uWidth-1&&y=m_uHeight-2) cout<<"* 小老鼠失敗了 *&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- BF2024年二手房交易協(xié)議范本版B版
- 2025年度數(shù)據(jù)中心機(jī)房裝修與網(wǎng)絡(luò)安全保障合同3篇
- 二零二五版生態(tài)循環(huán)農(nóng)業(yè)畜牧飼養(yǎng)權(quán)合作承包合同3篇
- 二零二五版集裝箱碼頭泊位轉(zhuǎn)租及裝卸服務(wù)合同4篇
- 早期教育中的環(huán)保意識(shí)培養(yǎng)與實(shí)踐
- 科技助力下的青少年視力保健新模式
- 校園生態(tài)與文化傳承學(xué)校圖書館的空間設(shè)計(jì)策略
- 教育領(lǐng)域科技發(fā)展的新趨勢與小學(xué)法治教育融合
- 二零二五版智慧醫(yī)療服務(wù)平臺(tái)建設(shè)合同3篇
- 2025年版高端酒店專業(yè)門衛(wèi)及安保團(tuán)隊(duì)招聘合同書4篇
- 電纜擠塑操作手冊(cè)
- 浙江寧波鄞州區(qū)市級(jí)名校2025屆中考生物全真模擬試卷含解析
- IATF16949基礎(chǔ)知識(shí)培訓(xùn)教材
- 【MOOC】大學(xué)生創(chuàng)新創(chuàng)業(yè)知能訓(xùn)練與指導(dǎo)-西北農(nóng)林科技大學(xué) 中國大學(xué)慕課MOOC答案
- 勞務(wù)派遣公司員工考核方案
- 基礎(chǔ)生態(tài)學(xué)-7種內(nèi)種間關(guān)系
- 2024年光伏農(nóng)田出租合同范本
- 《阻燃材料與技術(shù)》課件 第3講 阻燃基本理論
- 2024-2030年中國黃鱔市市場供需現(xiàn)狀與營銷渠道分析報(bào)告
- 招標(biāo)監(jiān)督報(bào)告
- 項(xiàng)目立項(xiàng)申請(qǐng)書
評(píng)論
0/150
提交評(píng)論