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

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

?? ddz2.cpp

?? EVC 下的斗地主源碼,有AI機器人,運行環境是模擬器5
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
// ddz2.cpp : Defines the entry point for the application.
//

#include "stdafx.h"
#include "ddz2.h"
#include <commctrl.h>
#include  <windows.h> 
#include  <string.h> 
#include  <time.h> 
#include  <math.h> 
#include <tchar.h>
#include <stdlib.h>
#include <Afxwin.h>

#define MAX_LOADSTRING 100

#define ADD 20
#define WIDTH 800//實際上窗口
#define HEIGHT 480
HINSTANCE g_hInstance  =  NULL ; 
int IsGameOver();

void AddToMemDC(HWND hWnd , int PicName , int x , int y ,int Width,int Height);
void DelDC(HDC hdc) ; 
void LoadCard(HWND hWnd , int n , int *x , int *y  , int A ,int B);
void LoadMem(HWND hWnd , HDC hDC) ; 
void SendOutCard() ; 
void IfStart(int x,int y);
void clear(HWND hWnd);

struct PLAYER
{
	int card[20] ; 
	int statics[20] ; //5表正常,1表選出 , 2表打出
} ; 
struct CARDTYPE
{
	int card;
	char type[10] ; 
	int num ; 
	int min ; 
} ; 
CARDTYPE CurrentOutCard;
PLAYER player1 ; 
PLAYER player2 ;//= {{15 , 10 , 11 , 11 , 12 , 12 , 12 , 13 , 13 , 13 , 14 , 14 , 14 , 9 , 9 , 8 , 7}} ; 
PLAYER player3 ; 
PLAYER player4 ; 
void SaveOutCard(int *temp , PLAYER player) ; 
void ShowDesktop(HWND hWnd ,PLAYER player) ; 
void sort(PLAYER *player) ; 
void InitStatic() ; 
void DelCard(PLAYER *player) ; 
void SelectCard(int x , int y) ; 
void GetLord(PLAYER *player);
void NotGetLord(HWND hWnd);
int GameMain(HWND hWnd);
int CheckCard(PLAYER player) ; 
int CardNum(PLAYER player , int n) ; 

int CardX , CardY , g_nCardX1 , g_nCardY1 ; 
int xPos , yPos ; //單擊到的位置
int g_nScreenX  =  0  ,  g_nScreenY  =  0 ;  // 屏幕寬度 , 屏幕高度
int g_nCardWidth  =  71  ,  g_nCardHeight  =  0 ; //牌的寬,高
int g_nTurnGetLord = 2;//剛開始時,到誰要牌
int g_nTurnOut;//到誰出牌
int g_nLastWhoOut;//上次是誰出的
int g_nWhoIsLord = 0;//誰是地主,1表左,2表我,3表右為地主
int g_nIfBegin = 1;//是不是剛開始,1 為是,
int g_nNotGetLord;
int g_nOutFlag;//右鍵改變其狀態為1時出牌
int g_nPlayer1NotGet , g_nPlayer3NotGet ;//不叫
int g_nPlayer1NotOut , g_nPlayer3NotOut ;//不出
int g_nLast;//連子的最后一個
int g_nLen;//連子的長度
int g_nPosition;//位置
int g_nShowStart = 1;//控制開始按鈕
int g_nShowNotOut;//控制不出按鈕
int g_nShow3f;//控制叫按鈕
int g_nShowNotGet;//控制不叫按鈕
int g_nCanNotOut;//控制提示
int CurrentCard1[20] = {0},CurrentCard2[20] = {0},CurrentCard3[20] = {0};
int OutTemp[200][20];
int analyse[15][2] = {0};
char *Name = "ddz" ; 
HDC g_hMemDC  =  NULL ;  // 緩沖DC

LRESULT CALLBACK WndProc(HWND hWnd ,  UINT message ,  WPARAM wParam ,  LPARAM lParam) ; 


// Global Variables:
HINSTANCE			hInst;			// The current instance
HWND				hwndCB;			// The command bar handle

// Forward declarations of functions included in this code module:
ATOM				MyRegisterClass	(HINSTANCE, LPTSTR);
BOOL				InitInstance	(HINSTANCE, int);
LRESULT CALLBACK	WndProc			(HWND, UINT, WPARAM, LPARAM);
LRESULT CALLBACK	About			(HWND, UINT, WPARAM, LPARAM);

int WINAPI WinMain(	HINSTANCE hInstance,
					HINSTANCE hPrevInstance,
					LPTSTR    lpCmdLine,
					int       nCmdShow)
{
	g_hInstance  =  hInstance ; 

	// 第一步:注冊窗口類
	WNDCLASS wndcls ; 
	wndcls.cbClsExtra  =  0 ; 
//	wndcls.cbSize  =  sizeof(WNDCLASSEX) ; 
	wndcls.cbWndExtra  =  0 ; 
	wndcls.hbrBackground  =  (HBRUSH)(COLOR_BACKGROUND) ; 
//	wndcls.hCursor  =  ::LoadCursor(hInstance ,  IDC_ARROW) ; 
	wndcls.hIcon  =  0 ; 
//	wndcls.hIconSm  =  0 ; 
	wndcls.hInstance  =  hInstance ; 
	wndcls.lpfnWndProc  =  WndProc ; 	// 重要!
	wndcls.lpszClassName  =  (unsigned short*)Name ;  // 重要!
	wndcls.lpszMenuName  =  0 ; 
	wndcls.style  =  CS_HREDRAW | CS_VREDRAW ; 
	::RegisterClass(&wndcls) ; 

	// 第二步:創建窗口
	HWND hWnd  =  ::CreateWindow(
					(unsigned short*)Name ,  
					_T("徐超的斗地主" ),   
					WS_VISIBLE ,  /* 普通窗口 */
					//WS_OVERLAPPED | WS_SYSMENU | WS_VISIBLE ,  /* 對話框 */
					0 ,  0 ,  WIDTH ,  HEIGHT ,  
					NULL ,  
					NULL ,  
					hInstance ,  
					0) ; 

	// 第三步:顯示窗口
	::ShowWindow(hWnd ,  SW_SHOW) ; 
	::UpdateWindow(hWnd) ; 


	g_nTurnGetLord = rand() % 3 + 1;

	// 第四步:消息循環
	MSG msg ; 
	while (GetMessage(&msg ,  NULL ,  0 ,  0)) 
	{
		GameMain(hWnd);
		//InvalidateRect (hWnd ,  NULL ,  0)  ; 
		DispatchMessage(&msg) ;

		
	}
		
	return msg.wParam;
}

//
//  FUNCTION: MyRegisterClass()
//
//  PURPOSE: Registers the window class.
//
//  COMMENTS:
//
//    It is important to call this function so that the application 
//    will get 'well formed' small icons associated with it.
//
ATOM MyRegisterClass(HINSTANCE hInstance, LPTSTR szWindowClass)
{
	WNDCLASS	wc;

    wc.style			= CS_HREDRAW | CS_VREDRAW;
    wc.lpfnWndProc		= (WNDPROC) WndProc;
    wc.cbClsExtra		= 0;
    wc.cbWndExtra		= 0;
    wc.hInstance		= hInstance;
    wc.hIcon			= LoadIcon(hInstance, MAKEINTRESOURCE(IDI_DDZ2));
    wc.hCursor			= 0;
    wc.hbrBackground	= (HBRUSH) GetStockObject(WHITE_BRUSH);
    wc.lpszMenuName		= 0;
    wc.lpszClassName	= szWindowClass;

	return RegisterClass(&wc);
}

//
//  FUNCTION: InitInstance(HANDLE, int)
//
//  PURPOSE: Saves instance handle and creates main window
//
//  COMMENTS:
//
//    In this function, we save the instance handle in a global variable and
//    create and display the main program window.
//
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
	HWND	hWnd;
	TCHAR	szTitle[MAX_LOADSTRING];			// The title bar text
	TCHAR	szWindowClass[MAX_LOADSTRING];		// The window class name

	hInst = hInstance;		// Store instance handle in our global variable
	// Initialize global strings
	LoadString(hInstance, IDC_DDZ2, szWindowClass, MAX_LOADSTRING);
	MyRegisterClass(hInstance, szWindowClass);

	LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
	hWnd = CreateWindow(szWindowClass, szTitle, WS_VISIBLE,
		CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);

	if (!hWnd)
	{	
		return FALSE;
	}

	ShowWindow(hWnd, nCmdShow);
	UpdateWindow(hWnd);
	if (hwndCB)
		CommandBar_Show(hwndCB, TRUE);

	return TRUE;
}

//
//  FUNCTION: WndProc(HWND, unsigned, WORD, LONG)
//
//  PURPOSE:  Processes messages for the main window.
//
//  WM_COMMAND	- process the application menu
//  WM_PAINT	- Paint the main window
//  WM_DESTROY	- post a quit message and return
//
//
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
	switch (message)
	{
	case WM_CREATE:
		{
			// 創建緩沖DC
			HDC hWndDC  =  ::GetDC(hWnd) ; 
			HBITMAP hBitmap  =  NULL ; 
			g_hMemDC  =  ::CreateCompatibleDC(hWndDC) ; 
			g_nScreenX  =  ::GetSystemMetrics(SM_CXSCREEN) ; 
			g_nScreenY  =  ::GetSystemMetrics(SM_CYSCREEN) ; 
			hBitmap  =  ::CreateCompatibleBitmap(hWndDC ,  g_nScreenX ,  g_nScreenY) ; 
			::SelectObject (g_hMemDC ,  hBitmap) ; 
			::DeleteObject(hBitmap) ;  // 可以釋放了!
			::ReleaseDC(hWnd ,  hWndDC) ;  // 與GetDC()配套!			
			// 填充緩沖DC為白色
			//::BitBlt(g_hMemDC ,  0 ,  0 ,  g_nScreenX ,  g_nScreenY ,  g_hMemDC ,  0 ,  0 ,  WHITENESS) ; 
			
			SendOutCard() ; //發牌
			sort(&player2) ; //排序
			//::SetTimer(hWnd, 1, 1000, NULL); // 創建定時器
			::SetTimer(hWnd,1,500,NULL);
			//
			clear(hWnd);
			AddToMemDC(hWnd,IDB_BMP_QUIT,150,250,g_nScreenX,g_nScreenY);
		}
		break ; 

	case WM_TIMER:
		{
			
		}
        break;

	case WM_LBUTTONDOWN:
		{
			if(xPos>150 && xPos<250  && yPos>150 && yPos<180)
			{
				MessageBox(NULL, _T("BTN EXIT DOWN"), _T("SYS EXIT"), MB_OK);
				PostQuitMessage(0) ; 
				break;
			}
			xPos  =  LOWORD (lParam) ; 
			yPos  =  HIWORD (lParam) ; 
			if(g_nTurnOut == 2)
				SelectCard(xPos , yPos) ; //選出要打的牌
			IfStart(xPos , yPos);
			//不出
			if(xPos>380 && xPos<441  && yPos<226 && yPos>200 && g_nShowNotOut == 1)
			{
				g_nTurnOut++;
				g_nTurnOut %= 3 ;
				if(g_nTurnOut == 0) g_nTurnOut = 3 ;
				g_nShowNotOut = 0;
			}
			//叫
			if(xPos>340 && xPos<400  && yPos<226 && yPos>200 && g_nShow3f == 1)
			{
				GetLord(&player2);//叫
				g_nLastWhoOut = 2;
				g_nWhoIsLord = 2;
				g_nTurnOut = 2;
				g_nPlayer3NotGet = 0;
				g_nPlayer1NotGet = 0;
				g_nShow3f = 0;
				g_nShowNotGet = 0;
			}
			//不叫
			if(xPos>410 && xPos<470  && yPos<226 && yPos>200 && g_nShowNotGet == 1)
			{
				NotGetLord(hWnd);//不叫
				if(g_nNotGetLord >=3)
				{
					g_nNotGetLord = 0;
					g_nTurnGetLord = rand() % 3 + 1;
					g_nIfBegin = 1;
					MessageBox(hWnd , _T("都不叫,重新發牌!") , _T("提示信息") , MB_OK);
					SendOutCard();
					g_nShowNotGet = 0;
					g_nShow3f = 0;
				}
				g_nShowNotGet = 0;
				g_nShow3f = 0;
			}
			//添加的出牌方式
			if(xPos >300 && xPos < 360 && yPos>200 && yPos< 220)
			{
				g_nOutFlag = 1;//出牌標志
			}
		}
		break ; 
	
	case WM_RBUTTONDOWN:
		{
			//g_nOutFlag = 1;//出牌標志
		}	
		break ; 

	case WM_MOUSEMOVE:
		{
			//DelCard(&player1) ; 
			//InvalidateRect (hWnd ,  NULL ,  0)  ; 
		}
		break ; 

	case WM_PAINT:
		{			
			PAINTSTRUCT paint ; 
			HDC hDC  =  ::BeginPaint(hWnd ,  &paint) ; 
			ShowDesktop(hWnd , player1) ; //顯示手中的牌

			RECT rcClient ; 
			::GetClientRect(hWnd ,  &rcClient) ;  // 取得客戶區大小
			::BitBlt(hDC ,  // 目的DC
				     0 ,  0 , 
					 rcClient.right ,  rcClient.bottom ,  
					 g_hMemDC ,  // 源DC
					 0 , 0 , 
					 SRCCOPY) ;  // 復制緩沖DC到屏幕		
			::EndPaint(hWnd ,  &paint) ; 
		}
		break ; 

	case WM_COMMAND:
		{
			int wNotifyCode = HIWORD(wParam);
			if(wNotifyCode == BN_CLICKED)
			{
				switch(LOWORD(wParam))
				{
				case 5://不出
					break;
				}
			}
		}
		break;

	case WM_DESTROY:
	    DeleteDC(g_hMemDC) ; 
		PostQuitMessage(0) ; 
		break ; 

	default:
		return DefWindowProc(hWnd ,  message ,  wParam ,  lParam) ; 
	}

	return 0 ; 
	/*
	HDC hdc;
	int wmId, wmEvent;
	PAINTSTRUCT ps;
	TCHAR szHello[MAX_LOADSTRING];

	switch (message) 
	{
		case WM_COMMAND:
			wmId    = LOWORD(wParam); 
			wmEvent = HIWORD(wParam); 
			// Parse the menu selections:
			switch (wmId)
			{
				case IDM_HELP_ABOUT:
				   DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About);
				   break;
				case IDM_FILE_EXIT:
				   DestroyWindow(hWnd);
				   break;
				default:
				   return DefWindowProc(hWnd, message, wParam, lParam);
			}
			break;
		case WM_CREATE:
			hwndCB = CommandBar_Create(hInst, hWnd, 1);			
			CommandBar_InsertMenubar(hwndCB, hInst, IDM_MENU, 0);
			CommandBar_AddAdornments(hwndCB, 0, 0);
			break;
		case WM_PAINT:
			RECT rt;
			hdc = BeginPaint(hWnd, &ps);
			GetClientRect(hWnd, &rt);
			LoadString(hInst, IDS_HELLO, szHello, MAX_LOADSTRING);
			DrawText(hdc, szHello, _tcslen(szHello), &rt, 
				DT_SINGLELINE | DT_VCENTER | DT_CENTER);
			EndPaint(hWnd, &ps);
			break;
		case WM_DESTROY:
			CommandBar_Destroy(hwndCB);
			PostQuitMessage(0);
			break;
		default:
			return DefWindowProc(hWnd, message, wParam, lParam);
   }
   return 0;
   */
}

// Mesage handler for the About box.
LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
	RECT rt, rt1;
	int DlgWidth, DlgHeight;	// dialog width and height in pixel units
	int NewPosX, NewPosY;

	switch (message)
	{
		case WM_INITDIALOG:
			// trying to center the About dialog
			if (GetWindowRect(hDlg, &rt1)) {
				GetClientRect(GetParent(hDlg), &rt);
				DlgWidth	= rt1.right - rt1.left;
				DlgHeight	= rt1.bottom - rt1.top ;
				NewPosX		= (rt.right - rt.left - DlgWidth)/2;
				NewPosY		= (rt.bottom - rt.top - DlgHeight)/2;
				
				// if the About box is larger than the physical screen 
				if (NewPosX < 0) NewPosX = 0;
				if (NewPosY < 0) NewPosY = 0;
				SetWindowPos(hDlg, 0, NewPosX, NewPosY,
					0, 0, SWP_NOZORDER | SWP_NOSIZE);
			}
			return TRUE;

		case WM_COMMAND:
			if ((LOWORD(wParam) == IDOK) || (LOWORD(wParam) == IDCANCEL))
			{
				EndDialog(hDlg, LOWORD(wParam));
				return TRUE;
			}
			break;
	}
    return FALSE;
}

////////////////////////////////////////////////////////////////////////////////
// 時間控制
////////////////////////////////////////////////////////////////////////////////
void delay(DWORD dwTime)
{
	DWORD dwStart = GetTickCount();
	while (GetTickCount() - dwStart < dwTime)
	{
		MSG msg ; 
		if (GetMessage(&msg,  NULL,  0,  0))
			DispatchMessage(&msg); 
	}
}

////////////////////////////////////////////////////////////////////////////////
// 開不開始
////////////////////////////////////////////////////////////////////////////////
void IfStart(int x,int y)
{
	if(x>650 && x<710  && y<277 && y>250 && g_nShowStart == 1)
	{
		InitStatic();
		g_nShowStart = 0;
	}
}
////////////////////////////////////////////////////////////////////////////////
// 叫不叫
////////////////////////////////////////////////////////////////////////////////
int IfGetLord(PLAYER player)
{
	int num = 0;
	for(int i = 0;i < 20;i++)
	{
		if(player.card [i] >14)
			num++;
	}
	if(num >= 2)
		return 1;
	return 0;
}
////////////////////////////////////////////////////////////////////////////////
// 叫
////////////////////////////////////////////////////////////////////////////////
void GetLord(PLAYER *player)
{
	for(int i = 17;i < 20;i++)//加入另三張
	{
		player->card [i] = player4.card[i-17];
		player->statics [i] = 5;
		player->card [i] = player4.card[i-17];
		player->statics [i] = 5;
		player->card [i] = player4.card[i-17];
		player->statics [i] = 5;
	}
	sort(player);
	//g_nLastWhoOut = g_nTurnOut = g_nWhoIsLord = 1;
	g_nIfBegin = 0;
	g_nNotGetLord = 0;
	g_nTurnGetLord = rand() % 3 + 1;
}
////////////////////////////////////////////////////////////////////////////////
// 不叫
////////////////////////////////////////////////////////////////////////////////
void NotGetLord(HWND hWnd)
{
	g_nNotGetLord ++;
	g_nTurnGetLord ++;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕av资源一区| 精品国内二区三区| 欧美综合天天夜夜久久| 97se亚洲国产综合自在线观| 国产精品一级在线| 成人不卡免费av| 欧美在线综合视频| 中国av一区二区三区| 久久综合狠狠综合久久激情 | 综合av第一页| 国产精品私人影院| 欧美一级爆毛片| 欧美成人性战久久| 中文字幕av资源一区| 亚洲欧美视频一区| 免费观看30秒视频久久| 国产高清在线精品| 欧美性色aⅴ视频一区日韩精品| 欧美色综合影院| 精品国产一区二区三区四区四 | 在线不卡免费av| 色婷婷国产精品| 久久久久久一级片| 午夜久久电影网| 国产精品影视在线| 欧美性感一区二区三区| 国产丝袜美腿一区二区三区| 亚洲一卡二卡三卡四卡无卡久久| 国产一区二区伦理| 91麻豆精品国产综合久久久久久| 欧美激情一区不卡| 精品中文字幕一区二区| 欧美日高清视频| 偷拍自拍另类欧美| 97久久精品人人澡人人爽| 精品嫩草影院久久| 另类欧美日韩国产在线| 欧美美女bb生活片| 丝袜亚洲精品中文字幕一区| 色欧美88888久久久久久影院| 久久久另类综合| 国产91精品免费| 国产精品福利在线播放| 99精品久久只有精品| 国产精品久久久久桃色tv| 国产成人亚洲综合a∨婷婷图片| 精品日韩欧美在线| 国产一区中文字幕| 亚洲欧洲日本在线| 欧美系列一区二区| 午夜电影久久久| 日韩欧美三级在线| 高清不卡一区二区| 亚洲女与黑人做爰| 欧美日韩精品欧美日韩精品一综合| 亚洲福利一二三区| 久久亚洲影视婷婷| 91伊人久久大香线蕉| 日日夜夜精品视频免费| 久久久www成人免费毛片麻豆| 国产成人h网站| 亚洲一二三四区不卡| 久久久久久9999| 欧美性高清videossexo| 国产一区二区三区观看| 亚洲欧美日韩中文播放| 日韩精品影音先锋| 不卡的看片网站| 麻豆91在线播放| 亚洲欧美二区三区| 欧美不卡一区二区三区| 一本高清dvd不卡在线观看 | 99天天综合性| 久久99精品国产| 亚洲大片精品永久免费| 国产精品久久久久永久免费观看| 777色狠狠一区二区三区| 99在线精品免费| 成人高清视频在线观看| 国产一区日韩二区欧美三区| 亚洲国产日韩一区二区| 中文在线资源观看网站视频免费不卡 | 蜜臀av性久久久久蜜臀aⅴ四虎| 中文字幕亚洲一区二区va在线| 久久午夜色播影院免费高清| 精品动漫一区二区三区在线观看| 欧美日免费三级在线| 欧美视频一区在线| 欧美日韩视频一区二区| 精品视频一区 二区 三区| 欧美性色黄大片手机版| zzijzzij亚洲日本少妇熟睡| 中文字幕二三区不卡| 精品国产一区二区三区久久久蜜月 | 欧美成人bangbros| 久久久精品天堂| 中文字幕一区三区| 亚洲美女一区二区三区| 日韩高清一级片| 久久99久久精品| 99久久久无码国产精品| 欧洲亚洲精品在线| 日韩一区二区在线看| 国产欧美1区2区3区| 日韩美女啊v在线免费观看| 性做久久久久久免费观看欧美| 日韩1区2区日韩1区2区| 国产白丝精品91爽爽久久 | 中文字幕av不卡| 亚洲r级在线视频| www.亚洲人| 国产日本一区二区| 日韩高清国产一区在线| 97se亚洲国产综合在线| 91精品国产综合久久精品麻豆 | 国产成人综合网站| 欧美一卡二卡三卡四卡| 一区二区三区在线观看国产| 国产精品18久久久| 欧美草草影院在线视频| 亚洲成人动漫精品| 欧美亚洲尤物久久| 亚洲一区二区欧美| 欧洲生活片亚洲生活在线观看| 国产日韩欧美a| 国产精品一二二区| 久久久久国产免费免费| 精品在线观看免费| 精品国产凹凸成av人导航| 偷拍日韩校园综合在线| 欧美一区二区三区思思人| 亚洲成人资源网| 91麻豆精品国产91久久久久| 一区二区三区欧美日| 欧美色综合网站| 婷婷亚洲久悠悠色悠在线播放| 欧美视频一区二区| 美女脱光内衣内裤视频久久网站| 欧美色视频一区| 精品综合免费视频观看| 国产日产欧美一区二区视频| 成人国产视频在线观看| 亚洲品质自拍视频网站| 欧美精品视频www在线观看| 免费看欧美美女黄的网站| 国产亚洲污的网站| 91福利区一区二区三区| 免费视频最近日韩| 国产精品不卡一区二区三区| 91久久一区二区| 国产一区二区三区黄视频| 亚洲人妖av一区二区| 欧美一区二区三区公司| 成人午夜电影久久影院| 日韩精品电影在线| 亚洲视频小说图片| 久久精品水蜜桃av综合天堂| 日本伦理一区二区| 成人午夜视频在线| 日本三级亚洲精品| 一区二区三区中文在线| 国产欧美在线观看一区| 欧美一区二区三区播放老司机| 国产精品一区二区x88av| 日韩精品一二区| 亚洲欧洲成人精品av97| 久久久久久久久一| 91精品国产色综合久久ai换脸| 91在线云播放| 成人精品视频.| 成人网男人的天堂| 国产伦精品一区二区三区免费| 三级一区在线视频先锋 | 欧美乱妇15p| 欧美日韩美女一区二区| 在线观看视频一区二区| 91免费看`日韩一区二区| 91蜜桃免费观看视频| va亚洲va日韩不卡在线观看| 成人午夜免费av| 91最新地址在线播放| 欧美在线观看你懂的| 欧美日本精品一区二区三区| 在线观看日韩毛片| 欧美精品国产精品| 日韩欧美激情四射| 欧美国产日韩在线观看| 国产精品卡一卡二卡三| 亚洲国产综合在线| 免费人成黄页网站在线一区二区 | 精品动漫一区二区三区在线观看 | 免费成人在线观看| 国产suv一区二区三区88区| 成人av电影在线播放| 欧美放荡的少妇| 国产欧美一二三区| 午夜日韩在线电影| 国内精品伊人久久久久av影院 | 五月天激情综合| 成人av网站大全|