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

正文內(nèi)容

王爽語(yǔ)言課程設(shè)計(jì)一代碼-資料下載頁(yè)

2024-11-09 22:32本頁(yè)面
  

【正文】 ameMain::m_fGridSize=。constintCGameMain::m_iLevelData1[GRID_COUNT][GRID_COUNT]={{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,0,0},{0,0,0,RIGID_BLOCK,0,0,0,0,RIGID_BLOCK,0,0,0},{0,0,0,RIGID_BLOCK,0,0,0,0,RIGID_BLOCK,0,0,0},{0,0,0,RIGID_BLOCK,0,0,0,0,BLACK_HOLE,0,0,0},{0,0,0,0,0,0,0,GOLF_EXIT,RIGID_BLOCK,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0}}。constintCGameMain::m_iLevelData2[GRID_COUNT][GRID_COUNT]={{0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,RIGID_BLOCK,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,GOLF_EXIT,RIGID_BLOCK,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,0,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,RIGID_BLOCK,0}}。constintCGameMain::m_iLevelData3[GRID_COUNT][GRID_COUNT]={{0,0,0,0,0,0,0,0,RIGID_BLOCK,RIGID_BLOCK,0,0},{0,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,0,0,0,0,0,RIGID_BLOCK},{RIGID_BLOCK,0,0,0,0,0,0,0,0,0,0,RIGID_BLOCK},{0,0,0,0,0,0,0,0,0,0,0,RIGID_BLOCK},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,GOLF_EXIT,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,RIGID_BLOCK,RIGID_BLOCK,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,0,0,RIGID_BLOCK,0,0,0,0,0,0,RIGID_BLOCK,0},{0,0,0,0,BLACK_HOLE,RIGID_BLOCK,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0}}。二維數(shù)組中0表示該位置不創(chuàng)建精靈,否則根據(jù)不同的值創(chuàng)建不同精靈,RIGID_BLOCK(值為1)表示創(chuàng)建一個(gè)方塊精靈,BLACK_HOLE(值為2)表示創(chuàng)建一個(gè)黑洞精靈,GOLF_EXIT(值為3)表示創(chuàng)建一個(gè)出口精靈。4)進(jìn)入GameInit函數(shù)里面,將球的運(yùn)動(dòng)狀態(tài)初始化為靜止,添加下面代碼:m_iMoveState=0。游戲初始化的時(shí)候,首先我們需要將前邊添加的精靈全部刪除掉,因此需要自定義的創(chuàng)建清除所有精靈函數(shù)ClearAllSprite()來(lái)實(shí)現(xiàn)這個(gè)功能。1):voidClearAllSprite()。2):voidCGameMain::ClearAllSprite(){}3)再使用3個(gè)循環(huán),分別將上一關(guān)卡創(chuàng)建的3種精靈刪除掉。在上邊定義的函數(shù)中添加如下代碼:intiLoop=0。for(iLoop=0。iLoop()。iLoop++){m_vRigidBlock[iLoop]DeleteSprite()。}for(iLoop=0。iLoop()。iLoop++){m_vBlackHole[iLoop]DeleteSprite()。}for(iLoop=0。iLoop()。iLoop++){m_vGolfExit[iLoop]DeleteSprite()。}其中m_vRigidBlock、m_vBlackHole、m_vGolfExit是存儲(chǔ)三種精靈的向量數(shù)組,每一個(gè)循環(huán)都遍歷一遍向量數(shù)組并調(diào)用數(shù)組中每個(gè)精靈的DeleteSprite函數(shù)即可。()、()、()表示每種精靈的總數(shù)。4)最后在GameInit()中添加調(diào)用此函數(shù)的代碼:ClearAllSprite()。在GameInit()中,我們也需要對(duì)關(guān)卡進(jìn)行選擇初始化。因此我們需要自定義一個(gè)初始化關(guān)卡函數(shù)InitLevel()來(lái)實(shí)現(xiàn)這個(gè)功能。1):voidInitLevel()。2):voidCGameMain::InitLevel(){}3)初始化關(guān)卡,要根據(jù)當(dāng)前關(guān)卡,選擇關(guān)卡的數(shù)據(jù),即將代表關(guān)卡的二維數(shù)組中的數(shù)據(jù)拷貝到m_iGridData中,同時(shí)設(shè)置控制球在每個(gè)數(shù)組中的起始位置。首先把需要的數(shù)據(jù)初始化為0,代碼如下://總數(shù)置0,重新創(chuàng)建m_iRigidBlockCount=0。m_iBlackHoleCount=0。m_iGolfExitCount=0。4)選擇關(guān)卡我們使用了switchcase結(jié)構(gòu),程序通過(guò)判斷switch中的參數(shù)進(jìn)入到不同的case中去,每個(gè)case就是一種情況的實(shí)現(xiàn)。代碼如下://根據(jù)當(dāng)前關(guān)卡,選擇關(guān)卡數(shù)據(jù)switch(m_iCurLevel){case2:{m_iControlStartX=5。m_iControlStartY=9。memcpy(m_iGridData,m_iLevelData2,sizeof(int)*GRID_COUNT*GRID_COUNT)。}break。case3:{m_iControlStartX=3。m_iControlStartY=6。memcpy(m_iGridData,m_iLevelData3,sizeof(int)*GRID_COUNT*GRID_COUNT)。}break。//Level1或者g_iCurLevel錯(cuò)誤case1:default:{m_iControlStartX=5。m_iControlStartY=6。memcpy(m_iGridData,m_iLevelData1,sizeof(int)*GRID_COUNT*GRID_COUNT)。}break。}。memcpy函數(shù)作用是從源src所指的內(nèi)存地址的起始位置開始拷貝n個(gè)字節(jié)到目標(biāo)dest所指的內(nèi)存地址的起始位置中。因?yàn)槎S數(shù)組在內(nèi)存中的存放方式是連續(xù)的,因此我們將源地址拷貝給m_iGridData的起始地址之后,系統(tǒng)后自動(dòng)根據(jù)m_iGridData的下標(biāo)來(lái)找到正確的值。5)最后在GameInit()中添加調(diào)用此函數(shù)的代碼:InitLevel()。至此,本實(shí)驗(yàn)結(jié)束。實(shí)驗(yàn)三初始化游戲精靈【實(shí)驗(yàn)內(nèi)容】步驟一、創(chuàng)建精靈步驟二、初始化精靈位置【實(shí)驗(yàn)思路】遍歷二維數(shù)組m_iGridData,根據(jù)數(shù)組值生成對(duì)應(yīng)的精靈實(shí)例:值為0的時(shí)候不用創(chuàng)建,需要?jiǎng)?chuàng)建的精靈名字前綴為(按照宏定義的1,2,3順序):RigidBlock,BlackHole,GolfExit。每創(chuàng)建一種精靈,將其總數(shù)加1:m_iRigidBlockCount,m_iBlackHoleCount,m_iGolfExitCount?!緦?shí)驗(yàn)指導(dǎo)】CGameMain類中添加下面成員變量的聲明:CSprite*m_pControlBall。//控制球精靈CSprite*m_pGolfArrow。//指示箭頭精靈:m_pControlBall=newCSprite(“ControlBall“)。m_pGolfArrow=newCSprite(“GolfArrow“)。創(chuàng)建精靈之后需要將精靈移到特定位置,因此我們需要定義一個(gè)自定義的函數(shù)MoveSpriteToBlock來(lái)實(shí)現(xiàn)這個(gè)功能。6):voidMoveSpriteToBlock(CSprite*tmpSprite,constintiIndexX,constintiIndexY)。7):voidCGameMain::MoveSpriteToBlock(CSprite*tmpSprite,constintiIndexX,constintiIndexY){}8)傳入該函數(shù)的是精靈實(shí)體以及x,y坐標(biāo)參數(shù)。再通過(guò)SetSpritePosition函數(shù)設(shè)置精靈位置,在該函數(shù)里面添加如下代碼:floatfPosX=m_fGridStartX+iIndexX*m_fGridSize。floatfPosY=m_fGridStartY+iIndexY*m_fGridSize。tmpSpriteSetSpritePosition(fPosX,fPosY)。這里定義一個(gè)函數(shù)CreateAllSprite()來(lái)創(chuàng)建控制球、方塊精靈、出口精靈和黑洞精靈。然后在函數(shù)內(nèi)部添加代碼創(chuàng)建精靈。原理是通過(guò)兩個(gè)for循環(huán)來(lái),判斷m_iGridData的值,如果為0,則不創(chuàng)建,如果為RIGID_BLOCK則創(chuàng)建一個(gè)方塊精靈,為BLACK_HOLE則創(chuàng)建一個(gè)黑洞精靈,為GOLF_EXIT則創(chuàng)建一個(gè)出口精靈。由于我們預(yù)先在地圖中擺放了三個(gè)模板精靈,因此只需要使用CloneSprite函數(shù)即可創(chuàng)建新的精靈。然后再調(diào)用MoveSpriteToBlock函數(shù)將精靈移動(dòng)到指定位置。最后每創(chuàng)建一個(gè)實(shí)現(xiàn)精靈,將它添加到相應(yīng)的精靈向量數(shù)組中。1):voidCreateAllSprite()。2):voidCGameMain::CreateAllSprite(){}3)在定義汗的函數(shù)中添加變量聲明:intiLoopX=0,iLoopY=0。CSprite*tmpSprite。char*szName=NULL。4)實(shí)現(xiàn)兩個(gè)for循環(huán):for(iLoopY=0。iLoopYGRID_COUNT。iLoopY++){for(intiLoopX=0。iLoopXGRID_COUNT。iLoopX++){}}5)在里面的循環(huán)添加判斷代碼:如果是0,則不創(chuàng)建精靈,continue表示跳出本次循環(huán),繼續(xù)下一個(gè)循環(huán)。if(0==m_iGridData[iLoopY][iLoopX])continue。如果是方塊,則創(chuàng)建方塊精靈:if(RIGID_BLOCK==m_iGridData[iLoopY][iLoopX]){szName=CSystem::MakeSpriteName(“RigidBlock“,m_iRigidBlockCount)。tmpSprite=newCSprite(szName)。tmpSpriteCloneSprite(“RigidBlockTemplate“)。MoveSpriteToBlock(tmpSprite,iLoopX,iLoopY)。(tmpSprite)。m_iRigidBlockCount++。}如果是黑洞,則創(chuàng)建黑洞精靈:elseif(BLACK_HOLE==m_iGridData[iLoopY][iLoopX]){szName=CSystem::MakeSpriteName(“BlackHole“,m_iBlackHoleCount)。tmpSprite=newCSprite(szName)。tmpSpriteCloneSprite(“BlackHoleTemplate“)。MoveSpriteToBlock(tmpSprite,iLoopX,iLoopY)。(tm
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1