int Draw_Missile(void) { // this function draws the missile // test if missile is alive if (missile_state==1) { // lock secondary buffer DDraw_Lock_Back_Surface(); // draw the missile in green Draw_Clip_Line(missile_x, missile_y, missile_x, missile_y+6, 250,back_buffer, back_lpitch); // unlock surface DDraw_Unlock_Back_Surface(); // return success return(1); } // end if // return failure return(0); } // end Draw_Missle
int Draw_Polygon2D(POLYGON2D_PTR poly, UCHAR *vbuffer, int lpitch) { // this function draws a POLYGON2D based on // test if the polygon is visible if (poly->state) { // loop thru and draw a line from vertices 1 to n int index = 0; for (index=0; index < poly->num_verts-1; index++) { // draw line from ith to ith+1 vertex Draw_Clip_Line(poly->vlist[index].x+poly->x0, poly->vlist[index].y+poly->y0, poly->vlist[index+1].x+poly->x0, poly->vlist[index+1].y+poly->y0, poly->color, vbuffer, lpitch); } // end for // now close up polygon // draw line from last vertex to 0th Draw_Clip_Line(poly->vlist[0].x+poly->x0, poly->vlist[0].y+poly->y0, poly->vlist[index].x+poly->x0, poly->vlist[index].y+poly->y0, poly->color, vbuffer, lpitch); // return success return(1); } // end if else return(0); } // end Draw_Polygon2D