วันอังคารที่ 15 กุมภาพันธ์ พ.ศ. 2554

WP 3


ในตอนที่ส่งนั้นได้มีการเพิ่มศัตรูเข้าไปแล้วแต่เวลายิงแล้วศัตรูยังคงอยู่ในจอแต่มองไม่เห็นและ ทำให้กระสุนหายไปทั้งๆ ที่ไม่มีอะไร แต่ในส่วยนี้ได้รับการแก้ไขแล้วดังนี้

จะอธิบายเฉพาะส่วนที่เพิ่มจากของเดิมนะครับ




CDXSprite *jet2;
POINT pos2;

สร้างตัวแปร CDXSprite jet2 ขึ้นมาใช้รองรับศัตรู


if(mlist[i]->missile->SpriteHit(่ำjet2) )
 {
  score += 100;
   
  SAFEDELETE( mlist[i]->missile );
  SAFEDELETE( mlist[i] );
  mlist.erase( i );
  --i;
  continue;
  }

เพิ่มคำสั่งนี้เข้าไปใน void RemoveMis(void) โดยคำส่ังนี้จะเป็นการสั่งลบ


jet2 = new CDXSprite( );
jet2->Create( "me2.png", 1 );

pos2.x = 200;
pos2.y = -20;

สั่งโหลด ภาพของศัตรูเข้ามา และกำหนดตำแหน่งให้อยู่ที่อยู่ x = 200 y = -20 เพื่อให้เกิดอยู่นอกจอ

SAFEDELETE( jet2 );

เพิ่มเข้าไปใน void cdx_DeInit( void )

jet2->SetPos( pos2.x, pos2.y );
jet2->Draw( Screen->GetBack(), 0, 0, CDXBLT_TRANS );
pos2.y += 5;

if(pos2.y > 470)
{
       pos2.y  = -20;
}


เพิ่มเข้าไปใน void cdx_DoFrame() โดยจะเป็นการสั่งวาดตัวศตรู พร้ิอมทั้งให้ศัตรูให้ศัตรูขยับลงไปเลื่อยๆ และถ้าพ้นจอก็ให้กลับไปอยู่ที่ตำแหน่ง y = -20

ไม่มีความคิดเห็น:

แสดงความคิดเห็น