亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? snake.c.bak

?? a efi snake game
?? BAK
字號:
#include "efi.h"
#include "efilib.h"
#include"she.h"
#include "Bmp\Bmp.h"
#include "Hii\Hii.h"
#include"ConsoleControl\ConsoleControl.h"
#define Out  ST->ConOut
#define In   ST->ConIn
#define SCAN_CODE_UP    0x01
#define SCAN_CODE_DOWN  0x02
#define SCAN_CODE_RIGHT 0x03
#define SCAN_CODE_LEFT  0x04
#define SCAN_CODE_ESC   0x17
#define N 200

//EFI_GUID  gEfiHiiProtocolGuid = EFI_HII_PROTOCOL_GUID;
EFI_GUID  gEfiUgaDrawProtocolGuid = EFI_UGA_DRAW_PROTOCOL_GUID;
EFI_GUID gEfiConsoleControlProtocolGuid = EFI_CONSOLE_CONTROL_PROTOCOL_GUID;
EFI_UGA_DRAW_PROTOCOL                 *UgaDraw;
EFI_CONSOLE_CONTROL_PROTOCOL          *ConsoleControl;
EFI_HII_PROTOCOL                      *mHii; 
static EFI_UGA_PIXEL        EfiColors[16] = {

  0x00, 0x00, 0x00, 0x00,  // BLACK
  0x98, 0x00, 0x00, 0x00,  // BLUE
  0x00, 0x98, 0x00, 0x00,  // GREEN
  0x98, 0x98, 0x00, 0x00,  // CYAN
  0x00, 0x00, 0x98, 0x00,  // RED
  0x98, 0x00, 0x98, 0x00,  // MAGENTA
  0x00, 0x98, 0x98, 0x00,  // BROWN
  0x98, 0x98, 0x98, 0x00,  // LIGHTGRAY
  0x30, 0x30, 0x30, 0x00,  // DARKGRAY - BRIGHT BLACK
  0xff, 0x00, 0x00, 0x00,  // LIGHTBLUE - ?
  0x00, 0xff, 0x00, 0x00,  // LIGHTGREEN - ?
  0xff, 0xff, 0x00, 0x00,  // LIGHTCYAN
  0x00, 0x00, 0xff, 0x00,  // LIGHTRED
  0xff, 0x00, 0xff, 0x00,  // LIGHTMAGENTA
  0x00, 0xff, 0xff, 0x00,  // LIGHTBROWN
  0xff, 0xff, 0xff, 0x00,  // WHITE
};


UINTN Node;
EFI_INPUT_KEY Key;
UINTN Score=0;
UINT8 Barrier=1;
UINTN Gamespeed=100000;
struct Food
{
INTN x;
 INTN  y;
 UINTN  yes;
}food;

struct Snake
{
 INTN x[N];
 INTN y[N];
 UINTN node;
 UINTN direction;
 UINTN life;
}snake;

  
VOID 
DrawData(
IN UINT8               *ImageBuffer,
IN      UINTN                 Col,
IN   UINTN                    Row
);

EFI_STATUS
DrawWord(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable,
IN CHAR16 *Value,
IN UINT16 X,
IN UINT16 Y,
IN UINT16   Background,
IN UINT16 WordCount
);

UINT8
Rand(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
);
EFI_STATUS
Init(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
   );
EFI_STATUS
DrawK(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
);
VOID
PrintScore(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable)
{   
	CHAR16 Str1[50];
	UINT8  Count1;
	ValueToString(Str1,0,Score);
	Count1=(UINT8)StrLen(Str1);
	DrawWord(ImageHandle,SystemTable,Str1,160,65,3,Count1);
	return;
}
VOID
GameOver(VOID);

EFI_STATUS
GamePlay(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
);

Main(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{  
	UINT8     Count,Countsize;

	UINTN      i,j,k;
	CHAR16   *Str=L"Start Load";
	CHAR16   *Str2=L"JJDD";
	Count=11;
	if(Barrier==1)
	{
	Init(ImageHandle,SystemTable);
	ConsoleControl->SetMode (ConsoleControl, EfiConsoleControlScreenGraphics);
	UgaDraw->Blt(UgaDraw,  &EfiColors[0], EfiUgaVideoFill,0,0,0,0,800,600,0);
    DrawData(sheData,350,250); 
	DrawWord(ImageHandle,SystemTable,Str,340,520,0,Count);
	k=0;
	for(j=0;j<14;j++)
	{
	for(i=0;i<6;i++)
		{
    UgaDraw->Blt(UgaDraw,&EfiColors[15], EfiUgaVideoFill,0,0,k,565,8,16,0);
	k=k+9;
		}
	BS->Stall(500000);
	}
	}
	DrawK(ImageHandle,SystemTable);	
	if(Barrier==1)
	Str2=L"The First Barrier" ;
	else if(Barrier==2)
		Str2=L"The Second Barrier" ;
	else if(Barrier==3)
		Str2=L"The Third Barrier" ;
    Countsize=(UINT8)StrLen(Str2);

	DrawWord(ImageHandle,SystemTable,Str2,300,45,3,Countsize);
	GamePlay(ImageHandle,SystemTable);
	ConsoleControl->SetMode(ConsoleControl, EfiConsoleControlScreenText);
	return EFI_SUCCESS;
}

EFI_STATUS
Init(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{  
       EFI_HANDLE  Handle;
       UINTN       Size;
       EFI_STATUS  Status;
     
      UINTN                       UgaDrawProtocolCount;
      EFI_HANDLE                  *UgaDrawHandles;
      ConsoleControl = NULL;
	  InitializeLib(ImageHandle,SystemTable);
	  Size = sizeof (EFI_HANDLE);
      Status = BS->LocateHandle (
                  ByProtocol,
                  &gEfiHiiProtocolGuid,
                  NULL,
                  &Size,
                  &Handle
                  );

  if (EFI_ERROR (Status)) {
    return Status;
  }

  Status = BS->HandleProtocol (
                  Handle,
                  &gEfiHiiProtocolGuid,
                  &mHii
);	
 Status = BS->LocateProtocol (
               &gEfiConsoleControlProtocolGuid,
               NULL,
                 (VOID **)&ConsoleControl
                 );
if(EFI_ERROR(Status))
	{
	Print(L"error");
	}
	Status=LibLocateHandle (
            ByProtocol,
            &gEfiUgaDrawProtocolGuid, 
            NULL, 
            &UgaDrawProtocolCount,
            &UgaDrawHandles
            );
	if(EFI_ERROR(Status))
	{
	Print(L"error");
	}
   BS->HandleProtocol (
                UgaDrawHandles[0],
                &gEfiUgaDrawProtocolGuid,
                &UgaDraw
                );
   return EFI_SUCCESS;
}

EFI_STATUS
DrawK(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{    
	  CHAR16 *Value=L"SCORE:";
	  UINT16                    Count,i=100,j;
      UINT16                    GlyphWidth=19;
      UINT32                    GlyphStatus=0;
      UINT8                     *Glyph;      
      EFI_UGA_PIXEL              *Buffer;
	  EFI_STATUS                  Status;
	InitializeLib(ImageHandle,SystemTable);
	  ConsoleControl->SetMode (ConsoleControl, EfiConsoleControlScreenGraphics);
      UgaDraw->Blt(UgaDraw,  &EfiColors[0], EfiUgaVideoFill,0,0,0,0,800,600,0);
	  UgaDraw->Blt(UgaDraw,  &EfiColors[3], EfiUgaVideoFill,0,0,0,0,800,100,0);
	  UgaDraw->Blt(UgaDraw,  &EfiColors[3], EfiUgaVideoFill,0,0,0,500,800,100,0);
	  UgaDraw->Blt(UgaDraw,  &EfiColors[3], EfiUgaVideoFill,0,0,0,0,100,600,0);
      UgaDraw->Blt(UgaDraw,  &EfiColors[3], EfiUgaVideoFill,0,0,700,0,100,600,0);
 for(j=0;j<7;j++)
	{
	 Count=0;
     Status= mHii->GetGlyph(mHii,&Value[j],&Count,&Glyph, &GlyphWidth,&GlyphStatus);
     Buffer = AllocateZeroPool (8*19* sizeof (EFI_UGA_PIXEL));
	  Status=mHii->GlyphToBlt( mHii, Glyph, EfiColors[15],EfiColors[5],1,8,19, Buffer);
              
    Status=UgaDraw->Blt(
		    UgaDraw, Buffer,
            EfiUgaBltBufferToVideo,
            0, 0,
            i,65,
            8,19, 0
            );  
	i=i+8;
	}
   return EFI_SUCCESS;           
}

UINT8
Rand(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{   
    UINT8          ValueTime;
	EFI_TIME       Time;
	EFI_STATUS     Status;

  // EFI_SHELL_APP_INIT (ImageHandle, SystemTable);
	Status=RT->GetTime(&Time,NULL);
	if(EFI_ERROR(Status))
	{
		Print(L"error");
		return EFI_SUCCESS;
	}
 ValueTime=Time.Second;
 return ValueTime;
}


EFI_STATUS
GamePlay(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{
	
	EFI_STATUS Status;
	UINT8    flag;
	food.yes=1;//需要出現食物
	snake.life=0;//活著
	snake.direction=1;//方向向右
	snake.x[0]=110;//蛇頭
	snake.y[0]=110;//
	snake.x[1]=120;//
	snake.y[1]=110;//
	snake.node=2;//蛇的節點數
	PrintScore(ImageHandle,SystemTable);
	flag=0;
	
	while(1)
	{  
        Status= In->ReadKeyStroke(In,&Key);
		while(Status==EFI_NOT_READY)//在沒有按鍵的情況下蛇自己移動
		{ 
			Status= In->ReadKeyStroke(In,&Key);
			if(food.yes==1)//需要出現新食物
			{
				food.x=Rand(ImageHandle,SystemTable)*10+100;
				food.y=Rand(ImageHandle,SystemTable)*6+110;
				while(food.x%10!=0)
					food.x++;
				while(food.y%10!=0)
					food.y++;
				food.yes=0;
			}
			if(food.yes==0);//畫面上有食物就要顯示
			{
			
			UgaDraw->Blt(UgaDraw,&EfiColors[4], EfiUgaVideoFill,0,0,food.x,food.y,10,10,0);
			}

			for(Node=snake.node-1;Node>0;Node--)
			{
				snake.x[Node]=snake.x[Node-1];
				snake.y[Node]=snake.y[Node-1];
			}
			switch(snake.direction)
			{
				case 1:snake.x[0]+=10;break;//右
				case 2:snake.x[0]-=10;break;//左
				case 3:snake.y[0]-=10;break;//上
				case 4:snake.y[0]+=10;break;//下
			}
			
			for(Node=3;Node<snake.node;Node++)//從蛇的第四節開始判斷是否撞到了自己,蛇頭為二節,第三節不可能拐過來
			{
				if(snake.x[Node]==snake.x[0]&&snake.y[Node]==snake.y[0])
				{
					GameOver();
					snake.life=1;
					break;
				}
			}

			if(snake.x[0]<100||snake.x[0]>690||snake.y[0]<100||snake.y[0]>490)
			{
				GameOver();
				snake.life=1;
			}
			if(snake.life==1)
				break;
			if(snake.x[0]==food.x&&snake.y[0]==food.y)//吃到食物
			{
			  
				UgaDraw->Blt(UgaDraw,&EfiColors[0], EfiUgaVideoFill,0,0,food.x,food.y,10,10,0);//把食物去掉
				
				snake.x[snake.node]=-20;//jacke
				snake.y[snake.node]=-20;//jacke
				food.yes=1;
				snake.node++;
				Score+=10;
				if(Score==100)
			       {
					Barrier=2;
					Main(ImageHandle,SystemTable);
					return EFI_SUCCESS;
				   }

				else if(Score==200)
					   {
					Barrier=3;
					Main(ImageHandle,SystemTable);
					return EFI_SUCCESS;
					   }
					 else if(Score==400)
				{
						  ConsoleControl->SetMode (ConsoleControl, EfiConsoleControlScreenText); 
						  Print(L"You Win");
						  return EFI_SUCCESS;
				}
			PrintScore(ImageHandle,SystemTable);	
			}
			 for(Node=0;Node<snake.node;Node++)//花出蛇
	         UgaDraw->Blt(UgaDraw,&EfiColors[2], EfiUgaVideoFill,0,0,snake.x[Node],snake.y[Node],10,10,0);
		     BS->Stall(Gamespeed);
			//用黑色去除蛇的最后一節
			UgaDraw->Blt(UgaDraw,&EfiColors[0], EfiUgaVideoFill,0,0,snake.x[Node-1],snake.y[Node-1],10,10,0);
		}//結束(In->ReadKeyStroke(In,&Key)
		  
			if(snake.life==1)
				break;
		 // flag=1;
		//	WaitForSingleEvent(In->WaitForKey,0);
		//	Status=In->ReadKeyStroke(In, &Key);//接受按鍵
			if(Key.ScanCode==SCAN_CODE_ESC)
				goto Done;
	   	else if(Key.ScanCode==SCAN_CODE_UP&&snake.direction!=4)
			snake.direction=3;
		else if(Key.ScanCode==SCAN_CODE_RIGHT&&snake.direction!=2)
			snake.direction=1;
		else if(Key.ScanCode==SCAN_CODE_LEFT&&snake.direction!=1)
		{
			snake.direction=2;

            
		}
		else if(Key.ScanCode==SCAN_CODE_DOWN&&snake.direction!=3)
		{
			// Str1=L"JAKD";
			snake.direction=4;
		}
       
              }//結束while(1);
	 Done:  
		 GameOver();
		 return EFI_SUCCESS;
		
		}

		    VOID 
			GameOver(VOID)
			
		   {
		   ConsoleControl->SetMode(ConsoleControl,EfiConsoleControlScreenText);
		   Out->ClearScreen(Out);
		   PrintAt(1,0,L"Game Over");
		   return;
		};

VOID 
DrawData(
//IN EFI_UGA_DRAW_PROTOCOL *UgaDraw,
IN UINT8               *ImageBuffer,
IN      UINTN                 Col,
IN   UINTN                    Row
)
{
  
  BMP_IMAGE_HEADER        *BmpHeader;
  UINTN                   Height, Width;
  EFI_UGA_PIXEL           *BltBuffer, *Blt;
  UINT8                   *Image;
  UINT32                 SizeOfX, SizeOfY,ImageIndex;         
  UINT32                  ColorDepth;
  UINT32                  RefreshRate;       
  UINT32                  BltBufferSize;
  BmpHeader = (BMP_IMAGE_HEADER *)ImageBuffer;
  Image = ImageBuffer + BmpHeader->ImageOffset;
  BltBufferSize = BmpHeader->PixelWidth * BmpHeader->PixelHeight;
  BltBuffer = AllocateZeroPool (BltBufferSize * sizeof (EFI_UGA_PIXEL));
  if (BltBuffer == NULL) 
	  {
    Print (L"UgaDraw: Out of memory for Blt Buffer\n");
    goto Done;
  }

UgaDraw->GetMode (UgaDraw, &SizeOfX, &SizeOfY, &ColorDepth, &RefreshRate);
  for (Height = 0; Height < BmpHeader->PixelHeight; Height++) {
    Blt = &BltBuffer[(BmpHeader->PixelHeight - Height - 1) * BmpHeader->PixelWidth];
    for (Width = 0; Width < BmpHeader->PixelWidth; Width++, Image++, Blt++) {
        Blt->Blue = *Image++;
        Blt->Green = *Image++;
        Blt->Red = *Image;
	}

    ImageIndex = (UINTN)(Image - BmpHeader->ImageOffset);
    if ((ImageIndex % 4) != 0) 
		{
      Image = Image + (4 - (ImageIndex % 4));
    }
  
  }
     UgaDraw->Blt (
                  UgaDraw, 
                  BltBuffer,              EfiUgaBltBufferToVideo, 
                  0,                      0, 
				  Col,Row,
                  BmpHeader->PixelWidth,  BmpHeader->PixelHeight,
                  BmpHeader->PixelWidth * sizeof (EFI_UGA_PIXEL)
                  );

Done:
	if (BltBuffer != NULL) {
    BS->FreePool (BltBuffer);
}
}
EFI_STATUS
DrawWord(
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable,
IN CHAR16 *Value,
IN UINT16 X,
IN UINT16 Y,
IN UINT16 Background,
IN UINT16 WordCount

)
{
	  UINT16                    Count,j;
      UINT16                    GlyphWidth=19;
      UINT32                    GlyphStatus=0;
      UINT8                     *Glyph;      
      EFI_UGA_PIXEL             *Buffer;
	  EFI_STATUS                 Status;
	//  LibInitializeShellApplication (ImageHandle, SystemTable);
	InitializeLib(ImageHandle,SystemTable);
	  ConsoleControl->SetMode (ConsoleControl, EfiConsoleControlScreenGraphics); 
 for(j=0;j<WordCount;j++)
	{
	 Count=0;
     Status= mHii->GetGlyph(mHii,&Value[j],&Count,&Glyph, &GlyphWidth,&GlyphStatus);
     Buffer = AllocateZeroPool (8*19* sizeof (EFI_UGA_PIXEL));
	 Status=mHii->GlyphToBlt( mHii, Glyph, EfiColors[15],EfiColors[Background],1,8,19, Buffer);
              
    Status=UgaDraw->Blt(
		    UgaDraw, Buffer,
            EfiUgaBltBufferToVideo,
            0, 0,
            X,Y,
            8,19, 0
            );  
	X=X+8;
	}
   return EFI_SUCCESS;           
}










?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美性猛交xxxxxxxx| 国产精品少妇自拍| 亚洲电影在线免费观看| 91官网在线免费观看| 亚洲欧美一区二区不卡| 色婷婷久久99综合精品jk白丝| 综合久久综合久久| 日本国产一区二区| 午夜精品一区二区三区三上悠亚| 欧美日本乱大交xxxxx| 日韩精品三区四区| 欧美成人精品二区三区99精品| 另类专区欧美蜜桃臀第一页| 国产女主播一区| 欧洲精品在线观看| 日韩和的一区二区| 久久久久99精品国产片| 99re在线视频这里只有精品| 亚洲成人自拍偷拍| 久久综合久久综合九色| 不卡av免费在线观看| 亚洲国产美女搞黄色| 欧美精品一区二区三区蜜桃视频| 国产高清亚洲一区| 一个色综合网站| 亚洲精品一区二区在线观看| 成人国产精品免费观看动漫 | 岛国精品在线观看| 亚洲午夜免费电影| 国产午夜精品久久久久久免费视| 欧美综合亚洲图片综合区| 六月丁香婷婷色狠狠久久| 中文字幕一区二区视频| 欧美一区二区精品在线| 成人a级免费电影| 男人操女人的视频在线观看欧美| 国产精品视频yy9299一区| 欧美日韩国产大片| 菠萝蜜视频在线观看一区| 日韩av午夜在线观看| 中文字幕一区不卡| 国产亚洲欧美一区在线观看| 欧美三级电影在线观看| 国产不卡一区视频| 日本不卡视频在线观看| 亚洲免费视频中文字幕| 中文字幕免费观看一区| 欧美一级二级三级蜜桃| 色菇凉天天综合网| 国产精品99久久久久久久女警 | 精品精品欲导航| 色呦呦日韩精品| 激情六月婷婷久久| 婷婷国产v国产偷v亚洲高清| 综合久久久久综合| 国产性做久久久久久| 日韩视频123| 欧美日韩中文一区| 91丨九色丨蝌蚪丨老版| 国产成人啪免费观看软件| 日韩高清在线电影| 五月综合激情网| 亚洲一区二区在线免费观看视频| 国产精品夫妻自拍| 国产精品色一区二区三区| 精品国产乱码久久久久久1区2区| 777奇米四色成人影色区| 欧美性猛交xxxx黑人交| 欧美性猛交xxxxxx富婆| 欧美图区在线视频| 日本乱人伦一区| 欧洲日韩一区二区三区| 在线观看日产精品| 色素色在线综合| 91老司机福利 在线| a在线播放不卡| 99久久精品99国产精品| 91在线高清观看| 91在线免费看| 欧洲在线/亚洲| 欧美性猛交xxxx乱大交退制版| 在线免费观看日韩欧美| 在线观看成人免费视频| 欧美精品第1页| 日韩三级免费观看| 精品乱人伦小说| 久久久精品免费网站| 国产三级精品三级| 亚洲丝袜美腿综合| 亚洲丰满少妇videoshd| 日韩精品亚洲一区| 麻豆国产欧美一区二区三区| 美女精品一区二区| 国产真实乱子伦精品视频| 国产成人综合在线观看| 99国产欧美另类久久久精品| 一本色道久久综合精品竹菊| 欧美性猛交一区二区三区精品 | 69堂国产成人免费视频| 欧美成人精品高清在线播放| 国产午夜精品一区二区| 亚洲欧美国产77777| 亚洲成a人片在线不卡一二三区 | 国产日韩欧美精品在线| 亚洲视频你懂的| 丝袜a∨在线一区二区三区不卡| 免费高清不卡av| 成人国产亚洲欧美成人综合网| 97se亚洲国产综合在线| 欧美理论在线播放| 久久久综合精品| 亚洲欧美福利一区二区| 久久草av在线| 在线亚洲一区二区| 日韩你懂的电影在线观看| 国产精品你懂的在线欣赏| 亚洲国产美女搞黄色| 国产成人精品免费在线| 欧美日韩在线不卡| 国产欧美一区二区精品性| 一区二区三区精品在线观看| 蜜桃视频第一区免费观看| 激情综合网天天干| 欧美自拍偷拍午夜视频| 久久网站热最新地址| 亚洲成av人在线观看| 成人免费毛片片v| 这里只有精品99re| 亚洲丝袜美腿综合| 国产精品亚洲专一区二区三区 | 26uuu色噜噜精品一区| 亚洲精品少妇30p| 国产精品综合二区| 91精品婷婷国产综合久久性色| 国产精品久久精品日日| 精品一区二区三区av| 欧美性感一区二区三区| 欧美国产一区二区在线观看 | 亚洲四区在线观看| 国产高清精品在线| 欧美日韩国产综合视频在线观看| 欧美—级在线免费片| 免费观看久久久4p| 在线播放91灌醉迷j高跟美女| 国产精品成人一区二区艾草| 国产综合久久久久久久久久久久| 337p亚洲精品色噜噜| 亚洲午夜免费福利视频| 91麻豆产精品久久久久久| 国产精品看片你懂得| 国产成人免费av在线| 久久久久国产精品麻豆| 久久国产综合精品| 欧美一级黄色大片| 日韩国产精品91| 666欧美在线视频| 香蕉av福利精品导航| 色婷婷av一区二区三区软件| 国产精品国产三级国产有无不卡 | 亚洲成人午夜电影| 欧洲精品视频在线观看| 一区二区视频免费在线观看| 成年人国产精品| 国产精品成人一区二区艾草| 成人晚上爱看视频| 国产精品美女视频| 成人动漫一区二区在线| 日本一区二区三区视频视频| 国产精品一级黄| 国产精品你懂的在线欣赏| 成人毛片老司机大片| 自拍偷拍国产亚洲| 欧美性生活影院| 亚洲6080在线| 欧美一区二区三区在| 精品一区二区精品| 国产视频一区二区在线| 国产91精品在线观看| 最近中文字幕一区二区三区| 一本久久a久久精品亚洲| 亚洲天堂中文字幕| 欧美日韩一级黄| 日本不卡不码高清免费观看| 日韩一级在线观看| 国产福利精品一区| 亚洲视频香蕉人妖| 91精品综合久久久久久| 久久99九九99精品| 国产精品五月天| 在线一区二区三区四区五区| 喷水一区二区三区| 国产欧美va欧美不卡在线| 色综合咪咪久久| 免费成人在线视频观看| 亚洲国产高清aⅴ视频| 色婷婷国产精品综合在线观看| 日韩精品欧美精品| 欧美国产欧美亚州国产日韩mv天天看完整| voyeur盗摄精品| 日韩黄色片在线观看|