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

正文內(nèi)容

c語言課程設(shè)計一迷你高爾夫(編輯修改稿)

2024-11-09 12:47 本頁面
 

【文章內(nèi)容簡介】 m_iControlStartY=6。memcpy(m_iGridData,m_iLevelData1,sizeof(int)*GRID_COUNT*GRID_COUNT)。}break。}。memcpy函數(shù)作用是從源src所指的內(nèi)存地址的起始位置開始拷貝n個字節(jié)到目標dest所指的內(nèi)存地址的起始位置中。因為二維數(shù)組在內(nèi)存中的存放方式是連續(xù)的,因此我們將源地址拷貝給m_iGridData的起始地址之后,系統(tǒng)后自動根據(jù)m_iGridData的下標來找到正確的值。5)最后在GameInit()中添加調(diào)用此函數(shù)的代碼:InitLevel()。至此,本實驗結(jié)束。實驗三初始化游戲精靈【實驗內(nèi)容】步驟一、創(chuàng)建精靈步驟二、初始化精靈位置【實驗思路】遍歷二維數(shù)組m_iGridData,根據(jù)數(shù)組值生成對應(yīng)的精靈實例:值為0的時候不用創(chuàng)建,需要創(chuàng)建的精靈名字前綴為(按照宏定義的1,2,3順序):RigidBlock,BlackHole,GolfExit。每創(chuàng)建一種精靈,將其總數(shù)加1:m_iRigidBlockCount,m_iBlackHoleCount,m_iGolfExitCount?!緦嶒炛笇А緾GameMain類中添加下面成員變量的聲明:CSprite*m_pControlBall。//控制球精靈CSprite*m_pGolfArrow。//指示箭頭精靈:m_pControlBall=newCSprite(“ControlBall“)。m_pGolfArrow=newCSprite(“GolfArrow“)。創(chuàng)建精靈之后需要將精靈移到特定位置,因此我們需要定義一個自定義的函數(shù)MoveSpriteToBlock來實現(xiàn)這個功能。6):voidMoveSpriteToBlock(CSprite*tmpSprite,constintiIndexX,constintiIndexY)。7):voidCGameMain::MoveSpriteToBlock(CSprite*tmpSprite,constintiIndexX,constintiIndexY){}8)傳入該函數(shù)的是精靈實體以及x,y坐標參數(shù)。再通過SetSpritePosition函數(shù)設(shè)置精靈位置,在該函數(shù)里面添加如下代碼:floatfPosX=m_fGridStartX+iIndexX*m_fGridSize。floatfPosY=m_fGridStartY+iIndexY*m_fGridSize。tmpSpriteSetSpritePosition(fPosX,fPosY)。這里定義一個函數(shù)CreateAllSprite()來創(chuàng)建控制球、方塊精靈、出口精靈和黑洞精靈。然后在函數(shù)內(nèi)部添加代碼創(chuàng)建精靈。原理是通過兩個for循環(huán)來,判斷m_iGridData的值,如果為0,則不創(chuàng)建,如果為RIGID_BLOCK則創(chuàng)建一個方塊精靈,為BLACK_HOLE則創(chuàng)建一個黑洞精靈,為GOLF_EXIT則創(chuàng)建一個出口精靈。由于我們預先在地圖中擺放了三個模板精靈,因此只需要使用CloneSprite函數(shù)即可創(chuàng)建新的精靈。然后再調(diào)用MoveSpriteToBlock函數(shù)將精靈移動到指定位置。最后每創(chuàng)建一個實現(xiàn)精靈,將它添加到相應(yīng)的精靈向量數(shù)組中。1):voidCreateAllSprite()。2):voidCGameMain::CreateAllSprite(){}3)在定義汗的函數(shù)中添加變量聲明:intiLoopX=0,iLoopY=0。CSprite*tmpSprite。char*szName=NULL。4)實現(xiàn)兩個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ù)下一個循環(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)。(tmpSprite)。m_iBlackHoleCount++。}如果是出口,則創(chuàng)建出口精靈:elseif(GOLF_EXIT==m_iGridData[iLoopY][iLoopX]){szName=CSystem::MakeSpriteName(“GolfExit“,m_iGolfExitCount)。tmpSprite=newCSprite(szName)。tmpSpriteCloneSprite(“GolfExitTemplate“)。MoveSpriteToBlock(tmpSprite,iLoopX,iLoopY)。(tmpSprite)。m_iGolfExitCount++。}6)將控制球和指示箭頭擺放到初始位置,此時球靜止,因此指示箭頭可見。在上面的兩個循環(huán)后面添加下面的代碼:m_pControlBallSetSpriteLinearVelocity(,)。MoveSpriteToBlock(m_pControlBall,m_iControlStartX,m_iControlStartY)。MoveSpriteToBlock(m_pGolfArrow,m_iControlStartX,m_iControlStartY)。
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1