亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

基于C語言實現的貪吃蛇游戲完整實例代碼

2020-01-26 15:26:12
字體:
來源:轉載
供稿:網友

本文以實例的形式講述了基于C語言實現的貪吃蛇游戲代碼,這是一個比較常見的游戲,代碼備有比較詳細的注釋,對于讀者理解有一定的幫助。

貪吃蛇完整實現代碼如下:

#include <graphics.h>#include <conio.h>#include <stdlib.h>#include <dos.h>#define NULL 0#define UP  18432#define DOWN 20480#define LEFT 19200#define RIGHT 19712#define ESC  283#define ENTER 7181 struct snake{int centerx; int centery; int newx; int newy; struct snake *next;};struct snake *head;int grade=60;                     /*控制速度的*******/int a,b;                        /* 背靜遮的 位置*/void *far1,*far2,*far3,*far4;             /* 蛇身指針 背靜遮的指針 蟲子*/int size1,size2,size3,size4;              /* **全局變量**/int ch=RIGHT;                     /**************存按鍵 開始蛇的方向為RIGHT***********/int chy=RIGHT; int flag=0;                       /*********判斷是否退出游戲**************/int control=4;                     /***********判斷上次方向和下次方向不沖突***/int nextshow=1;                     /*******控制下次蛇身是否顯示***************/int scenterx;                      /***************隨即矩形中心坐標***************/int scentery;int sx;                         /*******在a b 未改變前 得到他們的值 保證隨機矩形也不在此出現*******/int sy;                 /************************蛇身初始化**************************/ void snakede(){ struct snake *p1,*p2; head=p1=p2=(struct snake *)malloc(sizeof(struct snake));  p1->centerx=80; p1->newx=80; p1->centery=58; p1->newy=58; p1=(struct snake *)malloc(sizeof(struct snake)); p2->next=p1; p1->centerx=58; p1->newx=58; p1->centery=58; p1->newy=58; p1->next=NULL;}/*******************end*******************/ void welcome()            /*************游戲開始界面 ,可以選擇 速度**********/                {  int key; int size; int x=240; int y=300; int f; void *buf;  setfillstyle(SOLID_FILL,BLUE); bar(98,100,112,125); setfillstyle(SOLID_FILL,RED); bar(98,112,112,114); setfillstyle(SOLID_FILL,GREEN); bar(100,100,110,125); size=imagesize(98,100,112,125); buf=malloc(size); getimage(98,100,112,125,buf); cleardevice(); setfillstyle(SOLID_FILL,BLUE); bar(240,300,390,325); outtextxy(193,310,"speed:"); setfillstyle(SOLID_FILL,RED); bar(240,312,390,314); setcolor(YELLOW); outtextxy(240,330,"DOWN"); outtextxy(390,330,"UP"); outtextxy(240,360,"ENTER to start..." );  outtextxy(270,200,"SNAKE"); fei(220,220); feiyang(280,220); yang(340,220);  putimage(x,y,buf,COPY_PUT);  setcolor(RED); rectangle(170,190,410,410); while(1) { if(bioskey(1))                      /********8選擇速度部分************/  key=bioskey(0);  switch(key)  {      case ENTER:   f=1;   break;    case DOWN:    if(x>=240)    { putimage(x-=2,y,buf,COPY_PUT);   grade++;   key=0;   break;    } case UP:    if(x<=375)    { putimage(x+=2,y,buf,COPY_PUT);   grade--;    key=0;   break;    }    }      if (f==1)   break;  }                           /********** end  ****************/   free(buf); }  /*************************隨即矩形*****************/ /***********當nextshow 為1的時候才調用此函數**********/void ran(){ int nx; int ny; int show;         /**********控制是否顯示***********/ int jump=0; struct snake *p; p=head; if(nextshow==1)      /***********是否開始隨機產生***************/  while(1)  {show=1;  randomize();  nx=random(14);  ny=random(14);  scenterx=nx*22+58;  scentery=ny*22+58;   while(p!=NULL)   {    if(scenterx==p->centerx&&scentery==p->centery||scenterx==sx&&scentery==sy)  {show=0;  jump=1;  break;  }    else  p=p->next;    if(jump==1)  break;  } if(show==1)  {putimage(scenterx-11,scentery-11,far3,COPY_PUT);  nextshow=0;  break;  } }}/***********過關動畫**************/ void donghua(){ int i; cleardevice(); setbkcolor(BLACK); randomize(); while(1) {for(i=0;i<=5;i++) {putpixel(random(640),random(80),13);   putpixel(random(640),random(80)+80,2);   putpixel(random(640),random(80)+160,3);   putpixel(random(640),random(80)+240,4);  putpixel(random(640),random(80)+320,1);  putpixel(random(640),random(80)+400,14); }   setcolor(YELLOW);  settextstyle(0,0,4);  outtextxy(130,200,"Wonderful!!");  setfillstyle(SOLID_FILL,10);  bar(240,398,375,420);  feiyang(300,400);  fei(250,400);  yang(350,400);  if(bioskey(1))  if(bioskey(0)==ESC) {      flag=1;  break; } }}/*************************end************************//***********************初始化圖形系統*********************/void init(){int a=DETECT,b; int i,j; initgraph(&a,&b,"");}/***************************end****************************/  /***畫立體邊框效果函數******/void tline(int x1,int y1,int x2,int y2,int white,int black){ setcolor(white); line(x1,y1,x2,y1); line(x1,y1,x1,y2); setcolor(black); line(x2,y1,x2,y2); line(x1,y2,x2,y2); } /****end*********//*************飛洋標志**********/ int feiyang(int x,int y) {int feiyang[18][18]={ {0,0,0,0,0,0,1,1,1,1,1,1,0,1,1,0,0,0}, {0,0,0,0,0,1,1,1,0,0,1,1,1,1,1,0,0,0}, {0,0,0,0,1,1,1,0,0,0,0,0,1,1,1,0,0,0}, {0,0,0,1,1,1,0,0,0,0,0,0,0,1,1,0,0,0}, {0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,0}, {0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,0}, {0,0,1,1,0,1,1,1,1,1,1,0,0,0,0,0,0,0}, {0,0,1,1,1,1,1,0,0,1,0,0,1,1,0,0,0,0}, {0,0,1,1,1,0,0,0,0,1,0,1,1,1,0,0,0,0}, {0,0,1,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0}, {0,0,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0}, {0,0,1,1,0,0,0,1,1,0,0,1,1,0,0,1,0,0}, {0,0,1,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0}, {0,0,1,1,1,1,0,1,1,1,1,1,1,0,1,1,0,0}, {0,0,0,1,1,1,0,1,1,1,1,1,0,0,1,0,0,0}, {0,0,0,0,1,1,1,0,0,0,0,0,0,1,1,0,0,0}, {0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0}, {0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0}}; int i,j;for(i=0;i<=17;i++) for(j=0;j<=17;j++) {if (feiyang[i][j]==1) putpixel(j+x,i+y,RED); }}/********"飛"字*************/ int fei(int x,int y){int fei[18][18]={{1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0}, {0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0}, {0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0}, {0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0,0,0}, {0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0}, {0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0}, {0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0}, {0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1}, {0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1}, {0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0}};int i,j;for(i=0;i<=17;i++)  for(j=0;j<=17;j++)  {if (fei[i][j]==1)    putpixel(j+x,i+y,BLUE);  }}  /*********"洋"字**************/  int yang(int x,int y){int yang[18][18]={{0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0},{1,1,0,0,0,0,1,1,1,0,0,0,1,1,0,0,0,0},{0,1,1,1,0,0,0,1,1,1,0,1,1,0,0,0,0,0},{0,0,1,1,0,0,0,0,0,1,1,1,0,0,0,1,0,0},{0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,0},{0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0},{1,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},{0,1,1,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0},{0,0,1,1,0,0,0,1,1,1,1,1,1,1,1,0,0,0},{0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0},{0,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0},{0,0,0,0,0,1,1,0,0,0,1,0,0,0,0,1,1,0},{0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1},{0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0},{1,1,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0},{0,1,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0},{0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},{0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0}}; int i,j;  for(i=0;i<=17;i++)    for(j=0;j<=17;j++)      {if (yang[i][j]==1)         putpixel(j+x,i+y,BLUE);       }  }  /******************主場景**********************/int bort(){ int a; setfillstyle(SOLID_FILL,15); bar(49,49,71,71); setfillstyle(SOLID_FILL,BLUE); bar(50,50,70,70); size1=imagesize(49,49,71,71); far1=(void *)malloc(size1); getimage(49,49,71,71,far1); cleardevice();  setfillstyle(SOLID_FILL,12); bar(49,49,71,71); size2=imagesize(49,49,71,71); far2=(void *)malloc(size2); getimage(49,49,71,71,far2); setfillstyle(SOLID_FILL,12); bar(49,49,71,71); setfillstyle(SOLID_FILL,GREEN); bar(50,50,70,70); size3=imagesize(49,49,71,71); far3=(void *)malloc(size3); getimage(49,49,71,71,far3); cleardevice();                    /*取蛇身節點  背景節點 蟲子節點end*/ setbkcolor(8); setfillstyle(SOLID_FILL,GREEN); bar(21,23,600,450); tline(21,23,600,450,15,8);              /***開始游戲場景邊框 立體效果*******/ tline(23,25,598,448,15,8); tline(45,45,379,379,8,15); tline(43,43,381,381,8,15); tline(390,43,580,430,8,15); tline(392,45,578,428,8,15); tline(412,65,462,85,15,8); tline(410,63,464,87,15,8); tline(410,92,555,390,15,8); tline(412,94,553,388,15,8); tline(431,397,540,420,15,8); tline(429,395,542,422,15,8); tline(46,386,377,428,8,15); tline(44,384,379,430,8,15);  setcolor(8); outtextxy(429,109,"press ENTER "); outtextxy(429,129,"---to start");     /*鍵盤控制說明*/ outtextxy(429,169,"press ESC "); outtextxy(429,189,"---to quiet"); outtextxy(469,249,"UP"); outtextxy(429,289,"LEFT"); outtextxy(465,329,"DOWN"); outtextxy(509,289,"RIGHT"); setcolor(15); outtextxy(425,105,"press ENTER "); outtextxy(425,125,"---to start"); outtextxy(425,165,"press ESC "); outtextxy(425,185,"---to quiet"); outtextxy(465,245,"UP"); outtextxy(425,285,"LEFT"); outtextxy(461,325,"DOWN"); outtextxy(505,285,"RIGHT");       /*******end*************/   setcolor(8); outtextxy(411,52,"score"); outtextxy(514,52,"left"); setcolor(15); outtextxy(407,48,"score"); outtextxy(510,48,"left"); size4=imagesize(409,62,465,88);       /****分數框放到內存********/ far4=(void *)malloc(size4); getimage(409,62,465,88,far4); putimage(500,62,far4,COPY_PUT);      /*******輸出生命框***********/ setfillstyle(SOLID_FILL,12); setcolor(RED); outtextxy(415,70,"0");         /***************輸入分數為零**********/  outtextxy(512,70,"20");          /*************顯示還要吃 的蟲子的數目*********/  bar(46,46,378,378);  feiyang(475,400);  fei(450,400);  yang(500,400);  outtextxy(58,390,"mailto:jiangzhiliang002@tom.com");  outtextxy(58,410,"snake game");  outtextxy(200,410,"made by yefeng"); while(1) { if(bioskey(1))  a=bioskey(0);  if(a==ENTER) break; }}/******************gameover()******************/ void gameover(){ char *p="GAME OVER"; int cha;  setcolor(YELLOW); settextstyle(0,0,6); outtextxy(100,200,p);  while(1) {if(bioskey(1))  cha=bioskey(0);  if(cha==ESC)  {flag=1;  break;  } }    }/***********顯示蛇身**********************/void snakepaint(){struct snake *p1;  p1=head; putimage(a-11,b-11,far2,COPY_PUT); while(p1!=NULL)  {putimage(p1->newx-11,p1->newy-11,far1,COPY_PUT); p1=p1->next; } }/****************end**********************/ /*********************蛇身刷新變化 游戲關鍵部分 *******************/ void snakechange(){struct snake *p1,*p2,*p3,*p4,*p5; int i,j;  static int n=0; static int score; static int left=20; char sscore[5]; char sleft[1]; p2=p1=head; while(p1!=NULL) { p1=p1->next;  if(p1->next==NULL)  {a=p1->newx;  b=p1->newy;           /************記錄最后節點的坐標************/  sx=a;  sy=b;  }  p1->newx=p2->centerx;  p1->newy=p2->centery;  p2=p1; }p1=head;while(p1!=NULL){p1->centerx=p1->newx; p1->centery=p1->newy; p1=p1->next;}/********判斷按鍵方向*******/ if(bioskey(1)) { ch=bioskey(0);   if(ch!=RIGHT&&ch!=LEFT&&ch!=UP&&ch!=DOWN&&ch!=ESC)   /********chy為上一次的方向*********/   ch=chy; }  switch(ch) {  case LEFT: if(control!=4) {head->newx=head->newx-22;         head->centerx=head->newx;  control=2;  if(head->newx<47)         gameover();      }        else     { head->newx=head->newx+22;          head->centerx=head->newx;   control=4;   if(head->newx>377)   gameover();     }  chy=ch;  break;   case DOWN:        if(control!=1)     { head->newy=head->newy+22;          head->centery=head->newy;   control=3;   if(head->newy>377)   gameover();         }         else       { head->newy=head->newy-22;    head->centery=head->newy;           control=1;    if(head->newy<47)    gameover();          }         chy=ch;         break;   case RIGHT: if(control!=2)  { head->newx=head->newx+22;          head->centerx=head->newx;          control=4;   if(head->newx>377)      gameover();         }         else      { head->newx=head->newx-22;          head->centerx=head->newx;          control=2;   if(head->newx<47)   gameover();  }         chy=ch;         break;  case UP: if(control!=3)    { head->newy=head->newy-22;        head->centery=head->newy;        control=1;    if(head->newy<47)    gameover();       }       else    { head->newy=head->newy+22;        head->centery=head->newy;        control=3; if(head->newy>377)        gameover();        }        chy=ch;        break;    case ESC:       flag=1;       break; }  /* if 判斷是否吃蛇*/ if(flag!=1){ if(head->newx==scenterx&&head->newy==scentery) { p3=head;   while(p3!=NULL)   { p4=p3; p3=p3->next;   }  p3=(struct snake *)malloc(sizeof(struct snake));  p4->next=p3;  p3->centerx=a;  p3->newx=a;  p3->centery=b;  p3->newy=b;  p3->next=NULL;   a=500;  b=500;  putimage(409,62,far4,COPY_PUT);  /********** 分數框擋住**************/  putimage(500,62,far4,COPY_PUT);  /*********把以前的剩下蟲子的框擋住********/  score=(++n)*100;  left--;  itoa(score,sscore,10);  itoa(left,sleft,10);  setcolor(RED);  outtextxy(415,70,sscore);  outtextxy(512,70,sleft);  nextshow=1;  if(left==0)           /************判斷是否過關**********/  donghua();             /*******如果過關,播放過關動畫*********************/  } p5=head;       /*********************判斷是否自殺***************************/ p5=p5->next; p5=p5->next; p5=p5->next; p5=p5->next;      /****從第五個節點判斷是否自殺************/ while(p5!=NULL) {if(head->newx==p5->centerx&&head->newy==p5->centery)  { gameover();    break;  }   else  p5=p5->next; } }} /************snakechange()函數結束*******************/    /*****************************主函數******************************************/int main(){ int i; init();       /**********初始化圖形系統**********/ welcome();      /*********8歡迎界面**************/ bort();       /*********主場景***************/ snakede();      /**********連表初始化**********/ while(1) { snakechange();  if(flag==1)  break;  snakepaint();  ran();  for(i=0;i<=grade;i++)  delay(3000);  } free(far1); free(far2); free(far3); free(far4); closegraph(); return 0; }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品2018| 欧美精品成人91久久久久久久| 中文字幕v亚洲ⅴv天堂| 国产精品自产拍在线观看中文| 一区二区三区www| 亚洲国产精品va在线看黑人动漫| 一夜七次郎国产精品亚洲| 久久成人免费视频| 欧美精品久久久久久久久久| 丁香五六月婷婷久久激情| 午夜精品蜜臀一区二区三区免费| 国产欧美精品一区二区三区-老狼| 久久免费视频在线观看| 亚洲精品日韩激情在线电影| 成人激情电影一区二区| 欧美激情女人20p| 国产精品手机播放| 日本不卡高字幕在线2019| 亚洲男女自偷自拍图片另类| 亚洲天堂av综合网| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲精品ady| 色悠久久久久综合先锋影音下载| 欧美精品免费播放| 91在线视频免费| 国产精品免费视频久久久| 日韩欧美精品网址| 日韩欧美亚洲国产一区| 国产精品久久久久久久久久| 国产美女精品视频| 国产91ⅴ在线精品免费观看| 91成人免费观看网站| 欧美日韩免费区域视频在线观看| 国产精品入口免费视频一| 欧美不卡视频一区发布| 欧洲精品毛片网站| 精品女厕一区二区三区| 欧美午夜激情在线| 亚洲天堂av综合网| 精品国产一区二区三区久久| 国产视频精品va久久久久久| 一区二区三区无码高清视频| 国产精品小说在线| 国产香蕉一区二区三区在线视频| 亚洲一级一级97网| 日韩中文第一页| 国产成人精品久久二区二区| 亚洲一区美女视频在线观看免费| 亚洲自拍偷拍一区| 不卡av电影在线观看| 精品成人在线视频| 亚洲成人精品视频在线观看| 欧美国产日产韩国视频| 亚洲精品国产免费| 国产主播喷水一区二区| 久久久噜久噜久久综合| 国产在线不卡精品| 国产精品日韩电影| 欧美乱大交做爰xxxⅹ性3| 亚洲欧美国产精品久久久久久久| 国产午夜精品麻豆| 深夜福利亚洲导航| 欧美理论电影网| 久久久久久久影院| 日韩一区二区三区国产| 亚洲自拍欧美另类| 57pao成人国产永久免费| 日韩av成人在线观看| 欧美日韩国内自拍| 91久久精品国产91久久性色| 中文字幕亚洲第一| 国产视频自拍一区| 日韩av网站导航| 久久综合伊人77777| 欧美成人中文字幕在线| 国产欧美中文字幕| 日韩在线中文字| 国产不卡av在线免费观看| 色婷婷av一区二区三区在线观看| 成人黄色激情网| 黄色精品在线看| 夜夜嗨av色综合久久久综合网| 亚洲第一综合天堂另类专| 国内精品久久久久久| 国产成人精品在线视频| 理论片在线不卡免费观看| 精品网站999www| 国产精品亚洲网站| 亚洲国产精品国自产拍av秋霞| 亚洲欧洲偷拍精品| 欧洲成人在线视频| 日韩国产欧美精品一区二区三区| 国产日本欧美视频| 久久久久亚洲精品成人网小说| 国产精品久久久久7777婷婷| 亚洲精品有码在线| 国内精品美女av在线播放| 中文字幕日韩av综合精品| 91丨九色丨国产在线| 国产精品电影网站| 日韩欧美aaa| 琪琪亚洲精品午夜在线| 久久91精品国产| 国产视频欧美视频| 久久夜精品va视频免费观看| 国产精品视频久久久久| 国产精品情侣自拍| 日本久久久久久久久| 久久久免费av| 亚洲精品国产综合久久| 色悠久久久久综合先锋影音下载| 性欧美暴力猛交69hd| 97涩涩爰在线观看亚洲| 久久久伊人日本| 欧美国产日韩中文字幕在线| 亚洲一区中文字幕在线观看| 国产aⅴ夜夜欢一区二区三区| 按摩亚洲人久久| 久久亚洲一区二区三区四区五区高| 色www亚洲国产张柏芝| 最新亚洲国产精品| 日韩av综合中文字幕| 91精品国产色综合久久不卡98口| 亲子乱一区二区三区电影| 日韩欧美精品在线观看| 亚洲精品国产精品国自产在线| 久久久免费高清电视剧观看| 91精品免费久久久久久久久| 精品国内产的精品视频在线观看| 日韩av色综合| 51精品在线观看| 成人字幕网zmw| 亚洲综合小说区| 亚洲已满18点击进入在线看片| 久久久久日韩精品久久久男男| 午夜剧场成人观在线视频免费观看| 亚洲精品欧美日韩| 欧美一级免费视频| 国产成人一区二区三区小说| 日韩经典第一页| 亚洲色无码播放| 欧美久久精品一级黑人c片| 高清欧美性猛交xxxx黑人猛交| 色噜噜亚洲精品中文字幕| 亚洲一区二区三区视频播放| 精品国内产的精品视频在线观看| 色在人av网站天堂精品| 免费97视频在线精品国自产拍| 国产亚洲人成a一在线v站| 北条麻妃在线一区二区| 欧美极品欧美精品欧美视频| 欧美午夜精品久久久久久人妖| 日韩成人在线免费观看| 91久久精品美女| 国产97色在线|日韩| 欧美国产激情18| 在线国产精品视频| 欧美激情亚洲自拍| 国产日韩在线看| 精品亚洲一区二区| 亚洲第五色综合网| 亚洲美女免费精品视频在线观看| 精品国产一区二区三区久久久狼| 亲爱的老师9免费观看全集电视剧|