彗星
彗星结构如下:
彗星的外形
下面这段代码以原点为参照画出彗星:
al_draw_line(-20, 20, -25, 5, a->color, 2.0f);
al_draw_line(-25, 5, -25, -10, a->color, 2.0f);
al_draw_line(-25, -10, -5, -10, a->color, 2.0f);
al_draw_line(-5, -10, -10, -20, a->color, 2.0f);
al_draw_line(-10, -20, 5, -20, a->color, 2.0f);
al_draw_line(5, -20, 20, -10, a->color, 2.0f);
al_draw_line(20, -10, 20, -5, a->color, 2.0f);
al_draw_line(20, -5, 0, 0, a->color, 2.0f);
al_draw_line(0, 0, 20, 10, a->color, 2.0f);
al_draw_line(20, 10, 10, 20, a->color, 2.0f);
al_draw_line(10, 20, 0, 15, a->color, 2.0f);
al_draw_line(0, 15, -20, 20, a->color, 2.0f);
彗星
彗星在屏幕中沿直线移动,并绕着中心不断旋转。如果彗星从屏幕一侧飞出,马上会在屏幕另一侧出现。
命中彗星
如果加农炮发出的炮弹打中彗星,彗星就马上分成两瓣,每一瓣的大小是原来的二分之一。多次命中后彗星就会从屏幕上消失。每次命中彗星,玩家可以加100分。你认为应该用哪种数据结构保存屏幕上的彗星,一个很大的数组还是链表?