目前只是画地图,和根据当前时间随机生成蘑菇
下一步:
(1)实现类似于top的刷新方法
(2)实现蛇的行走
(3)实现蛇吃蘑菇的合并及新蘑菇的生成
(4)实现架构的修改和优化
root@ubuntu:/mnt/shared/appbox/snake# cat snake.c
#include
#include
#include
#include
#include
#define GAME_WIDTH 50
#define GAME_HIGTH 25
int up_line_create()
{
int i;
for(i=0; i
{
printf("-");
}
printf("\n");
return 0;
}
int bottom_line_create()
{
int i;
for(i=0; i
{
printf("-");
}
printf("\n");
return 0;
}
int middle_line_create(int x_site, int y_site)
{
int i, j;
for(j=0;j
{
for(i=0;i
{
if(i == x_site && j == y_site)
{
printf("*");
}
else if(0 == i)
{
printf("|");
}
else if(i== (GAME_WIDTH-1))
{
printf("|\n");
}
else
{
printf(" ");
}
}
}
return 0;
}
int target_create(int *x_site, int *y_site)
{
int seconds= time((time_t*)NULL);
*y_site = abs(seconds*random())%GAME_HIGTH;
*x_site = abs(seconds*random())%GAME_WIDTH;
return 0;
}
int frame_create(void)
{
int i, j;
int x_site, y_site;
target_create(&x_site, &y_site);
printf("x:%d, y:%d\n", x_site, y_site);
while(1)
{
up_line_create();
middle_line_create(x_site, y_site);
bottom_line_create();
sleep(1);
}
return 0;
}
int main(int argc, char *argv[])
{
frame_create();
return 0;
}