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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cbctrl.h

?? 赤壁之戰(zhàn)的游戲源代碼
?? H
字號(hào):
/////////////////
// CBCtrl.h		:	《赤壁》全局控制數(shù)據(jù)結(jié)構(gòu)
// CBCtrl.h		:	<< chibi >> global contral data structure
//
// v0010		:	Oct.3.1996
// v0011		:	Oct.18.1996
// v0012		:	Jan.25.1997
// v0013		:	Feb.5.1997
// v0014		:	Feb.15.1997, add CTRL_UNIT_Create(), CTRL_UNIT_Destroy(), 
//								changed some TASK_List functions
// v0020		:	Mar.29.1997, add most controls
// v0021		:	Apr.2.1997, add deploy asserts
// v0030		:	May.16.1997, add Block(), OpenDoor(), etc. changed a lot
//
// 編寫			:	劉剛
// written by	:	Liu Gang
//
// 編譯器		:	Visual C++ 4.2
// Compiler		:	Visual C++ 4.2
//
// 版權(quán)			:	北京前導(dǎo)軟件有限公司	1996-1997
// Copyright	:	WayAhead Co.Ltd.		1996-1997
/////////////////
// 此文件包含游戲的控制結(jié)構(gòu)(命令,狀態(tài),步,幀)和對(duì)控制的處理。

#ifndef	__CBCTRL_H__
#define	__CBCTRL_H__

#define	CTRL_ERROR_ID	600

//- Tian Yue
#define NDBUG

/////////////////
// 任務(wù)和狀態(tài)
// 結(jié)束,堵塞,取消
// 攻擊,移動(dòng),防御,休息,計(jì)謀,
// 解散,運(yùn)送,建造,修理,陣型,
// 單挑,運(yùn)載,卸載,組建,加入,
// 生產(chǎn),提升,刪除,
// 建造中,生產(chǎn)中,提升中,
// 取消建造,取消生產(chǎn),取消提升
// 回送,開門,混亂,埋伏
enum	CTRL_TASK	{
	JIESHU=200,DUSE=255,QUXIAO=0,
	GONGJI,YIDONG,FANGYU,XIUXI,JIMOU,
	JIESAN,YUNSONG,JIANZAO,XIULI,ZHENXING,
	DANTIAO,YUNZAI,XIEZAI,ZUJIAN,JIARU,
	SHENGCHAN,TISHENG,SHANCHU,
	JIANZAOZHONG, SHENGCHANZHONG, TISHENGZHONG,
	QXJIANZAO, QXSHENGCHAN,QXTISHENG,
	HUISONG,KAIMEN,HLUAN,MFU
};
/////////////////

/////////////////
// 計(jì)謀
#define	CTRL_JIMOU_MAX	12
// 計(jì)謀取消,
// 激勵(lì),加速,減速,遠(yuǎn)視,混亂,
// 滾木,埋伏,恢復(fù),火攻,
// 沼澤
enum	CTRL_JIMOU	{
	JIMOUQUXIAO=0,
	JILI,JIASU,JIANSU,YUANSHI,HUNLUAN,
	GUNMU,MAIFU,HUIFU,HUOGONG,
	ZHAOZE,
};
/////////////////

/////////////////
//	提升種類
//	主帥帳——升級(jí)1,升級(jí)2,升級(jí)3
//	木材場(chǎng)——改造弓箭1,改造弓箭2,改造弓箭3
//	武器場(chǎng)——改造兵器1,改造兵器2,改造兵器3
//	     改造護(hù)甲1,改造護(hù)甲2,改造護(hù)甲3			
//	錢 莊——賣木材1,賣糧食1,賣鐵礦1
//	     賣木材2,賣糧食2,賣鐵礦2
//	車兵所——改造投石車1,改造投石車2
//	船 塢——改造小戰(zhàn)船,改造大戰(zhàn)船,改造船體
enum	CTRL_TISHENG	{
	TISHENGQUXIAO=255,
	SHENGJI1=0,SHENGJI2,SHENGJI3,
	GONGJIAN1,GONGJIAN2,GONGJIAN3,
	BINGQI1,BINGQI2,BINGQI3,
	HUJIA1,HUJIA2,HUJIA3,
	MUCAI1,LIANGSHI1,TIEKUANG1,
	MUCAI2,LIANGSHI2,TIEKUANG2,
	TOUSHICHE1,TOUSHICHE2,
	XIAOCHUAN,DACHUAN,CHUANTI
};
/////////////////

/////////////////
// 陣型
#define	CTRL_ZHENXING_MAX	10
// 陣型取消
// 一字長蛇陣,二龍出水陣,三才天地陣,四象奇門陣,五行梅花陣,
// 六合連環(huán)陣,七星北斗陣,八門金鎖陣,九宮八卦陣,十面埋伏陣
enum	CTRL_ZHENXING	{
	ZHENXINGQUXIAO=0,
	YIZI, ERLONG, SANCAI, SIXIANG, WUXING, 
	LIUHE, QIXING, BAMEN, JIUGONG, SHIMIAN
};
/////////////////

/////////////////
// 命令目的地類型
// 將領(lǐng),士兵,建筑,地形,
// 將領(lǐng)種類,士兵種類,建筑種類,
// 計(jì)謀種類,陣型種類,提升種類
enum	CTRL_TASKEX	{
	JIANGLING, SHBING, JIANZHU, DIXING, 
	JIANGLINGZL, SHIBINGZL, JIANZHUZL, 
	JIMOUZL, ZHENXINGZL, TISHENGZL
};
/////////////////

/////////////////
// 運(yùn)送的資源類型
// 資源取消,
// 樹林,麥田,鐵礦,民居,糧倉,
// 所有資源
enum	CTRL_RESOURCE {
	QXZIYUAN=65535,
	SHULIN=0, MAITIAN, TIEKUANG, MINJU, LIANGCANG, 
	SUOYOUZY
};
/////////////////

/////////////////
// 幀F(xiàn)rame
//#define	CTRL_FRAME_MAX	16
#define	CTRL_FRAME_NONE	65535
// 無效時(shí),nPlayer的值為CTRL_FRAME_NONE
struct	CTRL_FRAME_STRUCT
{
	// flag
	WORD	bUpdate;	// TRUE時(shí)為可以顯示本單元

	// nearly same as MAP_UNIT_CODE_STRUCT
	WORD	nPlayer;	// 游戲者
	WORD	nFile;		// 文件號(hào)
	WORD	nLayer;		// 所在圖層
	WORD	nFrame;		// 當(dāng)前幀
	WORD	nState;		// 當(dāng)前狀態(tài)
	WORD	nDir;		// 當(dāng)前方向
	WORD	nX;			// 在原始地圖中的位置(行、列)
	WORD	nY;
	WORD	nDrawX;			// 在原始地圖中的顯示位置(行、列)
	WORD	nDrawY;

	// for animation
	WORD	nCol;	// 在圖素庫中的位置(行、列)
	WORD	nRow;
//	WORD	nMaxFrame;				// 最大幀
	int		nLocationSize;			// 單元圖素的大小,與CTRL_ptLocations配合使用
	POINT	ptOff;					// 相對(duì)于格子的位置(點(diǎn))

//由于行軍算法需要的變量	
	int		nOff_Z;					// 用于當(dāng)上山時(shí),Y軸的偏移量
	int		Status;
/////////////////////////

	// saved values
	WORD	nXLast;		// 在原始地圖中的上一個(gè)位置(行、列)
	WORD	nYLast;
	POINT	ptOffLast;	// 相對(duì)于格子的上一個(gè)位置(點(diǎn))

	//計(jì)謀
	WORD  wSTGCounter[CTRL_JIMOU_MAX];	// 計(jì)謀的記時(shí)器
	BYTE  nSTG[CTRL_JIMOU_MAX];			// 計(jì)謀變量,某位為1時(shí)為中某計(jì)

	// 在沼澤地移動(dòng)速度要減慢
};
/////////////////

/////////////////
// 任務(wù)Task
// 任務(wù)隊(duì)列的大小,實(shí)際只能存儲(chǔ) n-1個(gè)內(nèi)容
// size of Task List
#define		CTRL_TASK_LIST_MAX			65

struct CTRL_TASK_STRUCT
{
	BOOL	bDone;			// 在產(chǎn)生任務(wù)時(shí),當(dāng)該結(jié)構(gòu)所有內(nèi)容都合法時(shí),為真
							// 在執(zhí)行任務(wù)時(shí),完成任務(wù)為真
	WORD	nID;			// 發(fā)出命令的單元ID
	WORD	nLevel;			// 該命令的級(jí)別,0 is the highest, 5 is the lowest
	BOOL	bIRQ;			// 是否可以被中斷

	CTRL_TASK	nTaskID;	// 任務(wù)
	DWORD	nTaskIDEx;		// 任務(wù)的類型,多為存放目的單元或事物的ID
	DWORD	nTaskIDEx2;		// 任務(wù)的類型的附加型,YUNSONG和HUISONG時(shí)使用

	WORD	nParam1;		// 因?yàn)槿蝿?wù)的不同有不同的意義
	WORD	nParam2;
	WORD	nParam3;
	WORD	nParam4;		// 只有YUNSONG和HUISONG任務(wù)時(shí)有效
};

struct CTRL_TASK_SAVE_CMDUNIT
{
	DWORD Cmd;
	DWORD Ex;
	DWORD Busy;
};
/////////////////

#ifndef	TNEBUG

/////////////////
// 構(gòu)造命令,命令的產(chǎn)生

// clear assembling parameters
// 清除CTRL_hitSrc的內(nèi)容
// bForce	:	強(qiáng)迫清除所有內(nèi)容
void CTRL_TASK_ClearAssembleSrc( BOOL bForce = FALSE );
// 清除CTRL_hitDest的內(nèi)容,并且重新設(shè)置命令組
void CTRL_TASK_ClearAssembleDest();

// 檢測(cè)鼠標(biāo)拖出的框內(nèi)是否包含單元(命令主體)
// 只設(shè)置CTRL_hitSrc的內(nèi)容nID, nLevel
// 檢測(cè)步驟:
// 1:是否是自己的部隊(duì)
// 2:該部隊(duì)是否還活著
// 3:如果選中將領(lǐng),則該將領(lǐng)的所有下屬士兵都被選中
// 4:如果有未整編的部隊(duì),則只有未整編的部隊(duì)被選中
// 5:如果都是整編的部隊(duì),則被選中
// 6:如果是建筑,則最后一個(gè)建筑被選中
// detect if mouse dragging rectangle contains units
// prcHit		:	rectangle mouse dragging
// wParam		:	當(dāng)響應(yīng)時(shí),用來查看是否Ctrl或Shift鍵被按下了
// return value	:	TRUE if hit something
BOOL CTRL_TASK_AssembleSrc( CONST RECT *prcHit, WORD wParam );

// 檢測(cè)鼠標(biāo)發(fā)出的命令
// 只設(shè)置CTRL_hitDest的內(nèi)容nTaskID, nTaskIDEx, (nParam1)
// detect command message
// dwMessage	:	message ID
// return value	:	TRUE if detect it, and it is valid
BOOL CTRL_TASK_AssembleCmd( DWORD dwMessage, UINT lParam );

// 檢測(cè)鼠標(biāo)點(diǎn)擊的目的單元(命令客體)
// detect single unit to be target
// nPosX, nPosY	:	mouse hit position in pixel
// return value	:	TRUE if detected, FALSE if cancel the command, -1 if need try again
int CTRL_TASK_AssembleDest( int nPosX, int nPosY );

// 當(dāng)鼠標(biāo)右鍵按下時(shí),根據(jù)當(dāng)前選中的單元組,制定相應(yīng)的命令,選中目標(biāo)
// nPosX, nPosY :	mouse hit position in pixel
// return value	:	TRUE if detected, FALSE if cancel the command, -1 if need try again
// 具體步驟:
// 1,如果已經(jīng)有了命令,取消該命令
// 2.1,如果主體是建筑則退出
// 2.2,如果主體不是自己人則退出
// 3,檢測(cè)鼠標(biāo)點(diǎn)擊位置
// 4,如果目標(biāo)是地形,
//		4.1,主體是工人部隊(duì),而且目標(biāo)是地形型資源,為運(yùn)送,目標(biāo)為地形類型
//		4.2,為移動(dòng),目標(biāo)為地形類型
// 6,如果目標(biāo)是建筑單元,主體是工人部隊(duì),
//		6.1,目標(biāo)為資源建筑,為運(yùn)送,目標(biāo)為單元類型
//		6.2,為修理
// 5,如果目標(biāo)是敵人的單元,
//		5.1,主體是攻擊部隊(duì),為攻擊
//		5.2,退出
// 7,為移動(dòng),目標(biāo)為單元類型
BOOL CTRL_TASK_AssembleCmdDest( int nPosX, int nPosY );

// 如果鼠標(biāo)點(diǎn)擊屏幕左方的部隊(duì)按鈕
BOOL CTRL_TASK_NumberButton( WORD wParam, UINT lParam );

// send the whole command set to TASK Current List
// also send this command to all the players over the network
// 下達(dá)命令,重新設(shè)置命令組
// must be send by human player, computer uses another function
void CTRL_TASK_DeployByHuman();

// send the whole command set to TASK List
// do not spread this command to other computers
// only used by computer
// nPlayer		:	player's ID, 0-4 are player  0-4
// pTask		:	the Task you want to send
// return vlaue	:	TRUE if there is room for the Task
void CTRL_TASK_DeployByComputer( int nPlayer, CONST struct CTRL_TASK_STRUCT *pTask );
/////////////////


/////////////////
//命令的執(zhí)行
/////////////////

// 初始化
// initialize
void CTRL_InitCtrl();

// copy from source task to destination task
// pTo		:	Task to be copied to
// pFrom	:	Task to copying from
extern void CTRL_TASK_Copy( struct CTRL_TASK_STRUCT *pTo, CONST struct CTRL_TASK_STRUCT *pFrom );

// clear Task
// pTask	:	Task to be cleared
extern void CTRL_TASK_Clear( struct CTRL_TASK_STRUCT *pTask );

// read Task from Task List, and set it to unit
// 從任務(wù)隊(duì)列中讀取命令,并下達(dá)給相應(yīng)單元
extern void CTRL_TASK_Main();
/////////////////


/////////////////
// 以下函數(shù)定義在CBCTRLS.cpp中
// defined in CBCTRLS.cpp
/////////////////
// 狀態(tài)處理
// check each unit if should change Status
void CTRL_STATUS_Main();

// change the Status of the unit
// pUnit	:	the unit to be changed to
extern void CTRL_STATUS_Change( struct UNIT_STRUCT *pUnit );
/////////////////

/////////////////
// basic functions
// 基本函數(shù)

// 產(chǎn)生單元,對(duì)陰影有特殊處理
// codeU		:	unit code to identifies the type of the unit
// nZ, nX, nY	:	position to locate,產(chǎn)生的位置
// return		:	unit ID extended code if successful,
//					MAP_DATA_NONE if failed
WORD CTRL_UNIT_Create( int nZ, int nX, int nY, DWORD codeU, BOOL bFind = TRUE );

// 刪除單元,對(duì)陰影有特殊處理
// pUnit	:	unit pointer to be destroyed
// return	:	TRUE if successful
BOOL CTRL_UNIT_Destroy( struct UNIT_STRUCT *pUnit );

// 移動(dòng)單元
// pDraw	:	unit to be moved
// nType	:	type of unit
// 返回	0,被堵住;1,可以走;2,沼澤;>2,遇到城門,返回城門的ID
int CTRL_UNIT_Move( struct CTRL_FRAME_STRUCT *pDraw, int nType );

// only used by CTRL_UNIT_Move()
void CTRL_UNIT_MoveShadow( struct CTRL_FRAME_STRUCT *pDraw );

// 判斷是否該將領(lǐng)應(yīng)該撤離戰(zhàn)場(chǎng),在解散部隊(duì)后發(fā)生
//BOOL CTRL_UNIT_ToDisapear( struct UNIT_STRUCT *pUnitG );
/////////////////

/////////////////
// 部隊(duì)函數(shù)
// 根據(jù)將領(lǐng)的編號(hào)產(chǎn)生部隊(duì)
// nZ, nX, nY	:	position to locate,產(chǎn)生的位置
// nGenNum		:	general index number in DATA_Lib
// nPlayer		:	player to be added to
// nType		:	troop type
// return		:	general ID extended code if successful,
//					MAP_DATA_NONE if failed
WORD CTRL_GROUP_Create( int nZ, int nX, int nY, DWORD nGenNum, int nPlayer, int nType );

// 刪除部隊(duì):解散部隊(duì),并刪除將領(lǐng)單元
// pUnit	:	unit pointer to be destroyed
// return	:	TRUE if successful
BOOL CTRL_GROUP_Destroy( struct UNIT_STRUCT *pUnit );

// 通過將領(lǐng)的編號(hào)尋找將領(lǐng)的ID
// nPlayer	:	player to search in
// nGenNum	:	Index number of general in DATA_Lib,將領(lǐng)的編號(hào)
// return	:	general ID extended code if successful,
//				MAP_DATA_NONE if failed
WORD CTRL_GROUP_Find( int nPlayer, WORD nGenNum );

// 把單元直接加入到部隊(duì)中
// pUnitG	:	pointer of the general to be added to
// pUnit	:	unit pointer to be added
// return	:	TRUE if successful
BOOL CTRL_GROUP_Add( struct UNIT_STRUCT *pUnitG, struct UNIT_STRUCT *pUnit );

// 從部隊(duì)中刪除單元
// 從部隊(duì)中直接解散單元
// pUnit	:	unit pointer to be subed
// return	:	TRUE if successful
BOOL CTRL_GROUP_Sub( struct UNIT_STRUCT *pUnit );

// 從部隊(duì)中解散手下的所有士兵
// pUnit	:	general pointer to sub soldiers from
// return	:	TRUE if successful
void CTRL_GROUP_ToSubAll( struct UNIT_STRUCT *pUnit );
/////////////////

// 其它
/////////////////
// 一個(gè)單元走進(jìn)建筑或上船
// bCheck	:	為真時(shí),要檢測(cè)地面上是否有自己,否則,直接把地面清干凈
void CTRL_UNIT_InUnit( struct UNIT_STRUCT *pUnit, BOOL bCheck = FALSE );

// 一個(gè)單元從建筑或船中走出來
// return	:	TRUE if successful
BOOL CTRL_UNIT_OutUnit( struct UNIT_STRUCT *pUnit );

// get soldier number that focus on 
// 得到處于焦點(diǎn)狀態(tài)的士兵的數(shù)量
// return	:	soldier number, in person
int CTRL_GetFocusSoldierNumber();
//////////////////////

//////////////////////
// 計(jì)謀用
// 對(duì)某個(gè)單元設(shè)置計(jì)謀值,使該單元中計(jì)
// pDraw	:	單元的控制結(jié)構(gòu)
// JiMou	:	計(jì)謀ID
// bSet		:	TRUE為設(shè)置,F(xiàn)ALSE為清除
extern void CTRL_SetSTG( CTRL_FRAME_STRUCT *pDraw, CTRL_JIMOU JiMou, BOOL bSet=TRUE );
// 取得某個(gè)單元是否中某個(gè)計(jì)謀
// pDraw	:	單元的控制結(jié)構(gòu)
// JiMou	:	計(jì)謀ID
extern BOOL CTRL_GetSTG( CTRL_FRAME_STRUCT *pDraw, CTRL_JIMOU JiMou );
/////////////////
#endif	// TNEBUG
#endif	// __CBCTRL_H__

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品水蜜桃av综合天堂| 宅男在线国产精品| 日韩亚洲欧美综合| 中文字幕一区二区不卡| 青青草国产成人99久久| 91一区一区三区| 久久久91精品国产一区二区精品 | 久久久不卡网国产精品一区| 亚洲午夜久久久久中文字幕久| 国产精品综合二区| 91精品国产综合久久婷婷香蕉| 亚洲精品日日夜夜| 丁香桃色午夜亚洲一区二区三区| 91精品麻豆日日躁夜夜躁| 亚洲欧美激情在线| 成人一区二区三区在线观看 | 色八戒一区二区三区| 欧美精品一区二区久久久| 五月天久久比比资源色| 色网站国产精品| 中文字幕亚洲成人| 国产成人自拍高清视频在线免费播放| 欧美一区二区三区思思人| 亚洲一区二区欧美日韩| 91在线观看美女| 自拍偷拍欧美激情| 国产成人av资源| 久久久精品免费免费| 蜜桃视频一区二区三区在线观看| 欧美精品色综合| 亚洲永久精品大片| 欧美体内she精视频| 亚洲精品国产无天堂网2021| 99久久精品免费看| 中文字幕亚洲成人| 97se亚洲国产综合自在线不卡| 亚洲国产精品精华液2区45| 国产在线精品一区二区 | a级精品国产片在线观看| 久久天堂av综合合色蜜桃网 | 亚洲女爱视频在线| fc2成人免费人成在线观看播放| 国产日产精品一区| 粗大黑人巨茎大战欧美成人| 国产精品久久一卡二卡| 成人sese在线| 日韩一区欧美小说| 在线视频中文字幕一区二区| 一区二区三区av电影| 色婷婷综合久久久久中文| 一区二区三区中文在线| 欧美亚洲国产怡红院影院| 亚洲成av人片观看| 91精品婷婷国产综合久久性色| 免费观看一级特黄欧美大片| 日韩欧美三级在线| 国产麻豆一精品一av一免费 | 欧美一区二区在线不卡| 美女一区二区三区在线观看| 日韩欧美成人一区| 国产一级精品在线| 中文字幕中文字幕在线一区 | 色综合久久久久| 夜夜精品视频一区二区| 欧美日韩视频在线观看一区二区三区| 日韩精品久久理论片| 欧美电影免费观看高清完整版在线观看 | 欧美亚洲国产一区二区三区 | 亚洲精品国久久99热| 精品视频一区 二区 三区| 日本aⅴ免费视频一区二区三区| 欧美电视剧在线观看完整版| 国产麻豆成人精品| 中文字幕一区二区日韩精品绯色| 欧美无人高清视频在线观看| 秋霞电影网一区二区| 久久这里只有精品6| av亚洲精华国产精华| 亚洲妇熟xx妇色黄| 精品日韩一区二区三区免费视频| 成人美女视频在线看| 亚洲国产日韩在线一区模特| 日韩欧美成人激情| 99久久久无码国产精品| 日日嗨av一区二区三区四区| 久久久精品一品道一区| 在线观看免费视频综合| 美女网站在线免费欧美精品| 国产精品久久久久一区二区三区共| 91精品办公室少妇高潮对白| 七七婷婷婷婷精品国产| 国产精品午夜久久| 在线观看网站黄不卡| 国产制服丝袜一区| 一个色在线综合| 欧美成人精品高清在线播放 | 毛片一区二区三区| 国产精品动漫网站| 日韩欧美一级二级三级| 91蜜桃在线观看| 九九精品视频在线看| 亚洲色图在线看| 国产欧美精品一区二区三区四区| av一区二区三区四区| 亚洲成人av电影| 国产欧美视频一区二区| 欧美三级韩国三级日本三斤| 国产麻豆精品久久一二三| 午夜精品一区在线观看| 中文字幕一区在线观看视频| 欧美一级日韩不卡播放免费| 99久久久久免费精品国产| 久久99久久99精品免视看婷婷| 亚洲综合激情网| 国产日产欧美一区| 日韩视频一区二区三区| 91在线看国产| 国产精品一级黄| 麻豆精品新av中文字幕| 亚洲综合成人网| 中文字幕制服丝袜一区二区三区| 欧美α欧美αv大片| 欧美视频一区在线| 成人自拍视频在线| 久久99精品久久久久久动态图| 亚洲成人免费视| 亚洲四区在线观看| 欧美激情一区在线| 日韩精品在线一区| 欧美日韩激情一区| 91丨porny丨最新| 成人午夜视频福利| 国产毛片精品视频| 麻豆精品久久久| 日本不卡的三区四区五区| 亚洲高清免费在线| 一区二区三区丝袜| 国产精品白丝在线| 欧美经典三级视频一区二区三区| 欧美va亚洲va| 欧美一级夜夜爽| 91麻豆精品国产自产在线观看一区 | 国产亚洲视频系列| 欧美一区二区视频网站| 精品视频免费在线| 在线观看网站黄不卡| 色猫猫国产区一区二在线视频| 不卡电影一区二区三区| 国产成人在线观看| 国产一区美女在线| 黄网站免费久久| 极品少妇一区二区| 国产在线国偷精品产拍免费yy| 精品在线播放免费| 精品写真视频在线观看| 激情文学综合丁香| 韩国一区二区视频| 国产精品一区二区久久精品爱涩| 国产自产v一区二区三区c| 国产在线播精品第三| 国产精品综合二区| 成人中文字幕在线| 99久久夜色精品国产网站| 波多野结衣91| 色综合视频一区二区三区高清| 色综合网色综合| 一本色道a无线码一区v| 欧美视频在线一区| 这里只有精品电影| 精品国免费一区二区三区| 久久久美女毛片| 欧美韩日一区二区三区| 综合电影一区二区三区 | 一区二区三区av电影| 亚洲二区在线观看| 日韩国产精品久久| 久久99精品国产| 成人午夜在线免费| 91黄色激情网站| 欧美日韩激情一区二区三区| 欧美在线|欧美| 欧美一区三区四区| 精品嫩草影院久久| 中文字幕第一区二区| 亚洲黄一区二区三区| 亚洲综合一区二区精品导航| 蜜桃精品在线观看| 国产精一区二区三区| 成人av电影免费观看| 欧美亚洲综合色| 在线不卡的av| 久久久不卡网国产精品一区| 亚洲欧美日韩国产综合在线| 一区二区三区四区精品在线视频| 日本不卡123| 国产精品456| 在线精品视频免费播放| 精品国产免费一区二区三区四区 | 欧美性色aⅴ视频一区日韩精品| 欧美主播一区二区三区美女|