08 C++¿Î³ÌÉè¼Æ - µ¯µ¯Ìà - ͼÎÄ ÏÂÔØ±¾ÎÄ

ʵÑéÁù ÅÚµ¯·¢ÉäÍê³É

¡¾ÊµÑéÄÚÈÝ¡¿

²½ÖèÒ»¡¢ÖØÐ³õʼ»¯ÓÎÏ·Êý¾Ý ²½Öè¶þ¡¢ÖØÐ³õʼ»¯Ä¿±ê¾«ÁéλÖÃ

¡¾ÊµÑé˼·¡¿

Èç¹ûÒѾ­¿ªÅÚ£¬µÈ´ý»ØºÏʱ¼äµ½ÁËÖ®ºó£¬¿ªÊ¼ÏÂÒ»»ØºÏ¡£ÖØÐ³õʼ»¯ÓÎÏ·Êý¾Ý£¬Ëæ»ú¸Ä±äÈý¸öÄ¿±ê¾«ÁéµÄλÖá£

¡¾ÊµÑéÖ¸µ¼¡¿

1¡¢ ½øÈëLessonX.cppÖеÄGameRunº¯ÊýÀïÃæ£¬ÔÚif( 0 == m_iFireState )ºóÃæÌí¼ÓÒ»¸öelse

ifÅжϣº

else if( 1 == m_iFireState ) { }

2¡¢ Èç¹ûµÈ´ý»ØºÏʱ¼äµ½ÁË£¬¼´m_fRoundTimeµÄֵΪСÓÚ0£¬ÔòÖØÐ³õʼ»¯Êý¾Ý£¬Í¬Ê±

¸Ä±äÈý¸öÄ¿±ê¾«ÁéµÄλÖã¬Õⲿ·ÖºÍʵÑé¶þÖÐGameInit´úÂëÀàËÆ£¬ËùÒÔÕâÀï²»×÷·Ö²½Öè˵Ã÷£¬ÔÚÉÏÃæµÄelse if( 1 == m_iFireState )ÖÐÌí¼ÓÈçÏ´úÂ룺

m_fRoundTime -= fDeltaTime;

if( m_fRoundTime <= 0.f ) {

// ÖØÐ³õʼ»¯ m_iFireState = m_fGunRotation m_fGunStrength

0; = =

m_fMaxRotation; 0.f;

// Ä¿±êÿ»ØºÏË®Æ½ÒÆ¶¯Ò»´Î£º

// ÓÃÑ­»·±éÀúg_szTargetName£¬Èç¹û¸Ã¾«ÁéµÄ±»»÷ÖдÎÊý // g_iTargetHitСÓÚ3²ÅÐèÒª×ö

// ÐèÒª×öµÄ2¼þÊ£º0-45Ö®¼äËæ»úX×ø±ê£¬Y×ø±ê²»±ä¡£ // È»ºóʹÓÃdSpriteMoveToÒÆ¶¯¾«Áé¡£Çë²Î¿¼GameInitº¯Êý

}

int

iLoop = 0;

float fPosX = 0, fPosY = 0;

for( iLoop = 0; iLoop < TARGET_COUNT; iLoop++ ) { }

if( m_iTargetHit[iLoop] >= 3 )

continue;

= =

CSystem::RandomRange( 0, 45 ); m_pTarget[iLoop]->GetSpritePositionY();

// ÿ»ØºÏÔÚX·½ÏòÉÏ£¬Ä¿±êÔÚ0-45·¶Î§ÄÚËæ»úÒÆ¶¯Ò»´Î fPosX fPosY

m_pTarget[iLoop]->SpriteMoveTo(fPosX, fPosY, 40.f, 1);

ʵÑéÆß ÅжÏÓÎÏ·ÊÇ·ñʤÀû

¡¾ÊµÑéÄÚÈÝ¡¿

²½Öè¡¢ÅжÏÊÇ·ñʤÀû£¬ÊǵĻ°ÖØÐ¿ªÊ¼ÓÎÏ·

¡¾ÊµÑé˼·¡¿

±éÀúm_iTargetHitÊý×飬Èç¹ûÓÐֵСÓÚ3£¬Ôò·µ»Ø0£¬ÓÎϷδ½áÊø,·ñÔòÓÎϷʤÀû¡£

¡¾ÊµÑéÖ¸µ¼¡¿

1¡¢ ½øÈëLessonX.hÖÐÌí¼ÓÅжÏÊÇ·ñʤÀûµÄIsGameWinº¯ÊýÉùÃ÷£º

int IsGameWin();

2¡¢ ½øÈëLessonX.cppÖÐÌí¼Ó¸Ãº¯ÊýµÄ¶¨Ò壺

int CGameMain::IsGameWin() { }

3¡¢ ÅжÏÓÎÏ·ÊÇ·ñʤÀû£¬Ö»ÐèҪʹÓÃforÑ­»·£¬±éÀúm_iTargetHitÊý×飬Èç¹ûÓÐֵСÓÚ3£¬

Ôò·µ»Ø0£¬ÓÎϷδ½áÊø¡£·ñÔòÓÎϷʤÀû£¬·µ»Ø1¡£ÔÚÉÏÃæµÄº¯Êý¶¨ÒåÀïÃæÌí¼ÓÈçÏ´úÂ룺

int iLoop = 0;

for( iLoop = 0; iLoop < TARGET_COUNT; iLoop++ ) { }

return 1;

if( m_iTargetHit[iLoop] < 3 )

return 0;

4¡¢ ×îºóÔÚGameMainLoopº¯ÊýÀïÃæ½«case 2£ºÖеÄif£¨true£©¸ÄΪif£¨!IsGameWin()£©

¼´¿É¡£

5¡¢ Èç¹ûÓÎϷʤÀû£¬Ôò±¾¾ÖÓÎÏ·½áÊø£¬Òò´ËÐèÒªÔÚGameEndº¯ÊýÀïÃæÌí¼ÓÏÂÃæÒ»Ðдú

Â룬ʹÓÎÏ·½áÊøºóÓÐÖØÐ¿ªÊ¼ÐµÄÓÎÏ·¡£

// ÂíÉÏÓÖ¿ªÊ¼ÓÎÏ·£¬ËùÒÔÖ±½ÓÉèÖÃ״̬ m_iGameState = 1; ÖÁ´Ë£¬±¾ÊµÑé½áÊø¡£