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

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

?? battle.c

?? 最新的仙鏡傳說服務器C語言源碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
}
int battle_get_atk2(struct block_list *bl)
{
	if(bl->type==BL_PC)
		return ((struct map_session_data*)bl)->watk2;
	else {
		struct status_change *sc_data=battle_get_sc_data(bl);
		int atk2=0;
		if(bl->type==BL_MOB)
			atk2 = mob_db[((struct mob_data*)bl)->class].atk2;
		else if(bl->type==BL_PET)
			atk2 = mob_db[((struct pet_data*)bl)->class].atk2;
		if(sc_data) {
			if( sc_data[SC_IMPOSITIO].timer!=-1)
				atk2 += sc_data[SC_IMPOSITIO].val1*5;
			if( sc_data[SC_PROVOKE].timer!=-1 )
				atk2 = atk2*(100+2*sc_data[SC_PROVOKE].val1)/100;
			if( sc_data[SC_CURSE].timer!=-1 )
				atk2 -= atk2*25/100;
			if(sc_data[SC_DRUMBATTLE].timer!=-1)
				atk2 += sc_data[SC_DRUMBATTLE].val2;
			if(sc_data[SC_NIBELUNGEN].timer!=-1 && (battle_get_element(bl)/10) >= 8 )
				atk2 += sc_data[SC_NIBELUNGEN].val2;
			if(sc_data[SC_STRIPWEAPON].timer!=-1)
				atk2 -= atk2*90/100;
		}
		if(atk2 < 0) atk2 = 0;
		return atk2;
	}
	return 0;
}
int battle_get_atk_2(struct block_list *bl)
{
	if(bl->type==BL_PC)
		return ((struct map_session_data*)bl)->watk_2;
	else
		return 0;
}
int battle_get_matk1(struct block_list *bl)
{
	if(bl->type==BL_MOB){
		int matk,int_=battle_get_int(bl);
		matk = int_+(int_/5)*(int_/5);
		return matk;
	}
	else if(bl->type==BL_PC)
		return ((struct map_session_data *)bl)->matk1;
	else if(bl->type==BL_PET){
		int matk,int_=battle_get_int(bl);
		matk = int_+(int_/5)*(int_/5);
		return matk;
	}
	else
		return 0;
}
int battle_get_matk2(struct block_list *bl)
{
	if(bl->type==BL_MOB){
		int matk,int_=battle_get_int(bl);
		matk = int_+(int_/7)*(int_/7);
		return matk;
	}
	else if(bl->type==BL_PC)
		return ((struct map_session_data *)bl)->matk2;
	else if(bl->type==BL_PET){
		int matk,int_=battle_get_int(bl);
		matk = int_+(int_/7)*(int_/7);
		return matk;
	}
	else
		return 0;
}
int battle_get_def(struct block_list *bl)
{
	struct status_change *sc_data=battle_get_sc_data(bl);
	int def=0,skilltimer=-1,skillid=0;

	if(bl->type==BL_PC) {
		def = ((struct map_session_data *)bl)->def;
		skilltimer = ((struct map_session_data *)bl)->skilltimer;
		skillid = ((struct map_session_data *)bl)->skillid;
	}
	else if(bl->type==BL_MOB) {
		def = mob_db[((struct mob_data *)bl)->class].def;
		skilltimer = ((struct mob_data *)bl)->skilltimer;
		skillid = ((struct mob_data *)bl)->skillid;
	}
	else if(bl->type==BL_PET)
		def = mob_db[((struct pet_data *)bl)->class].def;

	if(def < 1000000) {
		if(sc_data) {
			if( sc_data[SC_KEEPING].timer!=-1)
				def = 100;
			if( sc_data[SC_PROVOKE].timer!=-1 && bl->type != BL_PC)
				def = (def*(100 - 6*sc_data[SC_PROVOKE].val1)+50)/100;
			if( sc_data[SC_DRUMBATTLE].timer!=-1 && bl->type != BL_PC)
				def += sc_data[SC_DRUMBATTLE].val3;
			if(sc_data[SC_POISON].timer!=-1 && bl->type != BL_PC)
				def = def*75/100;
			if(sc_data[SC_STRIPSHIELD].timer!=-1 && bl->type != BL_PC)
				def = def*85/100;
			if(sc_data[SC_SIGNUMCRUCIS].timer!=-1 && bl->type != BL_PC)
				def = def * (100 - sc_data[SC_SIGNUMCRUCIS].val2)/100;
			if(sc_data[SC_ETERNALCHAOS].timer!=-1 && bl->type != BL_PC)
				def = 0;
			if(sc_data[SC_FREEZE].timer != -1 || (sc_data[SC_STONE].timer != -1 && sc_data[SC_STONE].val2 == 0))
				def >>= 1;
		}
		if(skilltimer != -1) {
			int def_rate = skill_get_castdef(skillid);
			if(def_rate != 0)
				def = (def * (100 - def_rate))/100;
		}
	}
	if(def < 0) def = 0;
	return def;
}
int battle_get_mdef(struct block_list *bl)
{
	struct status_change *sc_data=battle_get_sc_data(bl);
	int mdef=0;

	if(bl->type==BL_PC)
		mdef = ((struct map_session_data *)bl)->mdef;
	else if(bl->type==BL_MOB)
		mdef = mob_db[((struct mob_data *)bl)->class].mdef;
	else if(bl->type==BL_PET)
		mdef = mob_db[((struct pet_data *)bl)->class].mdef;

	if(mdef < 1000000) {
		if(sc_data) {
			if(sc_data[SC_BARRIER].timer != -1)
				mdef = 100;
			if(sc_data[SC_FREEZE].timer != -1 || (sc_data[SC_STONE].timer != -1 && sc_data[SC_STONE].val2 == 0))
				mdef = mdef*125/100;
		}
	}
	if(mdef < 0) mdef = 0;
	return mdef;
}
int battle_get_def2(struct block_list *bl)
{
	struct status_change *sc_data=battle_get_sc_data(bl);
	int def2=1;

	if(bl->type==BL_PC)
		def2 = ((struct map_session_data *)bl)->def2;
	else if(bl->type==BL_MOB)
		def2 = mob_db[((struct mob_data *)bl)->class].vit;
	else if(bl->type==BL_PET)
		def2 = mob_db[((struct pet_data *)bl)->class].vit;

	if(sc_data) {
		if( sc_data[SC_ANGELUS].timer!=-1 && bl->type != BL_PC)
			def2 = def2*(110+5*sc_data[SC_ANGELUS].val1)/100;
		if( sc_data[SC_PROVOKE].timer!=-1 && bl->type != BL_PC)
			def2 = (def2*(100 - 6*sc_data[SC_PROVOKE].val1)+50)/100;
		if(sc_data[SC_POISON].timer!=-1 && bl->type != BL_PC)
			def2 = def2*75/100;
	}
	if(def2 < 1) def2 = 1;
	return def2;
}
int battle_get_mdef2(struct block_list *bl)
{
	if(bl->type==BL_MOB)
		return mob_db[((struct mob_data *)bl)->class].int_ + (mob_db[((struct mob_data *)bl)->class].vit>>1);
	else if(bl->type==BL_PC)
		return ((struct map_session_data *)bl)->mdef2 + (((struct map_session_data *)bl)->paramc[2]>>1);
	else if(bl->type==BL_PET)
		return mob_db[((struct pet_data *)bl)->class].int_ + (mob_db[((struct pet_data *)bl)->class].vit>>1);
	else
		return 0;
}
int battle_get_speed(struct block_list *bl)
{
	if(bl->type == BL_PC)
		return ((struct map_session_data *)bl)->speed;
	else {
		struct status_change *sc_data=battle_get_sc_data(bl);
		int speed = 1000;
		if(bl->type == BL_MOB)
			speed = mob_db[((struct mob_data *)bl)->class].speed;
		else if(bl->type == BL_PET)
			speed = ((struct pet_data *)bl)->msd->petDB->speed;

		if(sc_data) {
			if(sc_data[SC_INCREASEAGI].timer!=-1 && sc_data[SC_DONTFORGETME].timer == -1)
				speed -= speed*25/100;
			if(sc_data[SC_DECREASEAGI].timer!=-1)
				speed = speed*125/100;
			if(sc_data[SC_QUAGMIRE].timer!=-1)
				speed = speed*3/2;
			if(sc_data[SC_DONTFORGETME].timer!=-1)
				speed = speed*(100+sc_data[SC_DONTFORGETME].val1*2 + sc_data[SC_DONTFORGETME].val2 + (sc_data[SC_DONTFORGETME].val3&0xffff))/100;
			if(sc_data[SC_STEELBODY].timer!=-1)
				speed = speed*125/100;
			if(sc_data[SC_DEFENDER].timer!=-1)
				speed = (speed * (155 - sc_data[SC_DEFENDER].val1*5)) / 100;
			if(sc_data[SC_DANCING].timer!=-1 )
				speed*=4;
			if(sc_data[SC_CURSE].timer!=-1)
				speed = speed + 450;
		}
		if(speed < 1) speed = 1;
		return speed;
	}

	return 1000;
}
int battle_get_adelay(struct block_list *bl)
{
	if(bl->type == BL_PC)
		return (((struct map_session_data *)bl)->aspd<<1);
	else {
		struct status_change *sc_data=battle_get_sc_data(bl);
		int adelay=4000,aspd_rate = 100,i;
		if(bl->type == BL_MOB)
			adelay = mob_db[((struct mob_data *)bl)->class].adelay;
		else if(bl->type == BL_PET)
			adelay = mob_db[((struct pet_data *)bl)->class].adelay;

		if(sc_data) {
			if(sc_data[SC_TWOHANDQUICKEN].timer != -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1)	// 2HQ
				aspd_rate -= 30;
			if(sc_data[SC_ADRENALINE].timer != -1 && sc_data[SC_TWOHANDQUICKEN].timer == -1 &&
				sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) {	// 傾僪儗僫儕儞儔僢僔儏
				if(sc_data[SC_ADRENALINE].val2 || !battle_config.party_skill_penaly)
					aspd_rate -= 30;
				else
					aspd_rate -= 25;
			}
			if(sc_data[SC_SPEARSQUICKEN].timer != -1 && sc_data[SC_ADRENALINE].timer == -1 &&
				sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1)	// 僗僺傾僋傿僢働儞
				aspd_rate -= sc_data[SC_SPEARSQUICKEN].val2;
			if(sc_data[SC_ASSNCROS].timer!=-1 && // 梉梲偺傾僒僔儞僋儘僗
				sc_data[SC_TWOHANDQUICKEN].timer==-1 && sc_data[SC_ADRENALINE].timer==-1 && sc_data[SC_SPEARSQUICKEN].timer==-1 &&
				sc_data[SC_DONTFORGETME].timer == -1)
				aspd_rate -= 5+sc_data[SC_ASSNCROS].val1+sc_data[SC_ASSNCROS].val2+sc_data[SC_ASSNCROS].val3;
			if(sc_data[SC_DONTFORGETME].timer!=-1)		// 巹傪朰傟側偄偱
				aspd_rate += sc_data[SC_DONTFORGETME].val1*3 + sc_data[SC_DONTFORGETME].val2 + (sc_data[SC_DONTFORGETME].val3>>16);
			if(sc_data[SC_STEELBODY].timer!=-1)	// 嬥崉
				aspd_rate += 25;
			if(	sc_data[i=SC_SPEEDPOTION2].timer!=-1 || sc_data[i=SC_SPEEDPOTION1].timer!=-1 || sc_data[i=SC_SPEEDPOTION0].timer!=-1)
				aspd_rate -= sc_data[i].val2;
			if(sc_data[SC_DEFENDER].timer != -1)
				adelay += (1100 - sc_data[SC_DEFENDER].val1*100);
		}
		if(aspd_rate != 100)
			adelay = adelay*aspd_rate/100;
		if(adelay < battle_config.monster_max_aspd<<1) adelay = battle_config.monster_max_aspd<<1;
		return adelay;
	}
	return 4000;
}
int battle_get_amotion(struct block_list *bl)
{
	if(bl->type==BL_PC)
		return ((struct map_session_data *)bl)->amotion;
	else {
		struct status_change *sc_data=battle_get_sc_data(bl);
		int amotion=2000,aspd_rate = 100,i;
		if(bl->type == BL_MOB)
			amotion = mob_db[((struct mob_data *)bl)->class].amotion;
		else if(bl->type == BL_PET)
			amotion = mob_db[((struct pet_data *)bl)->class].amotion;

		if(sc_data) {
			if(sc_data[SC_TWOHANDQUICKEN].timer != -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1)	// 2HQ
				aspd_rate -= 30;
			if(sc_data[SC_ADRENALINE].timer != -1 && sc_data[SC_TWOHANDQUICKEN].timer == -1 &&
				sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1) {	// 傾僪儗僫儕儞儔僢僔儏
				if(sc_data[SC_ADRENALINE].val2 || !battle_config.party_skill_penaly)
					aspd_rate -= 30;
				else
					aspd_rate -= 25;
			}
			if(sc_data[SC_SPEARSQUICKEN].timer != -1 && sc_data[SC_ADRENALINE].timer == -1 &&
				sc_data[SC_TWOHANDQUICKEN].timer == -1 && sc_data[SC_QUAGMIRE].timer == -1 && sc_data[SC_DONTFORGETME].timer == -1)	// 僗僺傾僋傿僢働儞
				aspd_rate -= sc_data[SC_SPEARSQUICKEN].val2;
			if(sc_data[SC_ASSNCROS].timer!=-1 && // 梉梲偺傾僒僔儞僋儘僗
				sc_data[SC_TWOHANDQUICKEN].timer==-1 && sc_data[SC_ADRENALINE].timer==-1 && sc_data[SC_SPEARSQUICKEN].timer==-1 &&
				sc_data[SC_DONTFORGETME].timer == -1)
				aspd_rate -= 5+sc_data[SC_ASSNCROS].val1+sc_data[SC_ASSNCROS].val2+sc_data[SC_ASSNCROS].val3;
			if(sc_data[SC_DONTFORGETME].timer!=-1)		// 巹傪朰傟側偄偱
				aspd_rate += sc_data[SC_DONTFORGETME].val1*3 + sc_data[SC_DONTFORGETME].val2 + (sc_data[SC_DONTFORGETME].val3>>16);
			if(sc_data[SC_STEELBODY].timer!=-1)	// 嬥崉
				aspd_rate += 25;
			if(	sc_data[i=SC_SPEEDPOTION2].timer!=-1 || sc_data[i=SC_SPEEDPOTION1].timer!=-1 || sc_data[i=SC_SPEEDPOTION0].timer!=-1)
				aspd_rate -= sc_data[i].val2;
			if(sc_data[SC_DEFENDER].timer != -1)
				amotion += (550 - sc_data[SC_DEFENDER].val1*50);
		}
		if(aspd_rate != 100)
			amotion = amotion*aspd_rate/100;
		if(amotion < battle_config.monster_max_aspd) amotion = battle_config.monster_max_aspd;
		return amotion;
	}
	return 2000;
}
int battle_get_dmotion(struct block_list *bl)
{
	int ret;
	struct status_change *sc_data=battle_get_sc_data(bl);
	if(bl->type==BL_MOB) {
		ret=mob_db[((struct mob_data *)bl)->class].dmotion;
		if(battle_config.monster_damage_delay_rate != 100)
			ret = ret*battle_config.monster_damage_delay_rate/100;
	}
	else if(bl->type==BL_PC) {
		ret=((struct map_session_data *)bl)->dmotion;
		if(battle_config.pc_damage_delay_rate != 100)
			ret = ret*battle_config.pc_damage_delay_rate/100;
	}
	else if(bl->type==BL_PET)
		ret=mob_db[((struct pet_data *)bl)->class].dmotion;
	else
		return 2000;

	if((sc_data && sc_data[SC_ENDURE].timer!=-1) ||
		(bl->type == BL_PC && ((struct map_session_data *)bl)->special_state.infinite_endure))
		ret=0;

	return ret;
}
int battle_get_element(struct block_list *bl)
{
	int ret = 20;
	struct status_change *sc_data=battle_get_sc_data(bl);

	if(bl->type==BL_MOB)	// 10偺埵亖Lv*2丄侾偺埵亖懏惈
		ret=((struct mob_data *)bl)->def_ele;
	else if(bl->type==BL_PC)
		ret=20+((struct map_session_data *)bl)->def_ele;	// 杊屼懏惈Lv1
	else if(bl->type==BL_PET)
		ret = mob_db[((struct pet_data *)bl)->class].element;

	if(sc_data) {
		if( sc_data[SC_BENEDICTIO].timer!=-1 )	// 惞懱崀暉
			ret=26;
		if( sc_data[SC_FREEZE].timer!=-1 )	// 搥寢
			ret=21;
		if( sc_data[SC_STONE].timer!=-1 && sc_data[SC_STONE].val2==0)
			ret=22;
	}

	return ret;
}
int battle_get_attack_element(struct block_list *bl)
{
	int ret = 0;
	struct status_change *sc_data=battle_get_sc_data(bl);

	if(bl->type==BL_MOB)
		ret=0;
	else if(bl->type==BL_PC)
		ret=((struct map_session_data *)bl)->atk_ele;
	else if(bl->type==BL_PET)
		ret=0;

	if(sc_data) {
		if( sc_data[SC_FROSTWEAPON].timer!=-1)	// 僼儘僗僩僂僃億儞
			ret=1;
		if( sc_data[SC_SEISMICWEAPON].timer!=-1)	// 僒僀僘儈僢僋僂僃億儞
			ret=2;
		if( sc_data[SC_FLAMELAUNCHER].timer!=-1)	// 僼儗乕儉儔儞僠儍乕
			ret=3;
		if( sc_data[SC_LIGHTNINGLOADER].timer!=-1)	// 儔僀僩僯儞僌儘乕僟乕
			ret=4;
		if( sc_data[SC_ENCPOISON].timer!=-1)	// 僄儞僠儍儞僩億僀僘儞
			ret=5;
		if( sc_data[SC_ASPERSIO].timer!=-1)		// 傾僗儁儖僔僆
			ret=6;
	}

	return ret;
}
int battle_get_attack_element2(struct block_list *bl)
{
	if(bl->type==BL_PC) {
		int ret = ((struct map_session_data *)bl)->atk_ele_;
		struct status_change *sc_data = ((struct map_session_data *)bl)->sc_data;

		if(sc_data) {
			if( sc_data[SC_FROSTWEAPON].timer!=-1)	// 僼儘僗僩僂僃億儞
				ret=1;
			if( sc_data[SC_SEISMICWEAPON].timer!=-1)	// 僒僀僘儈僢僋僂僃億儞
				ret=2;
			if( sc_data[SC_FLAMELAUNCHER].timer!=-1)	// 僼儗乕儉儔儞僠儍乕
				ret=3;
			if( sc_data[SC_LIGHTNINGLOADER].timer!=-1)	// 儔僀僩僯儞僌儘乕僟乕
				ret=4;
			if( sc_data[SC_ENCPOISON].timer!=-1)	// 僄儞僠儍儞僩億僀僘儞
				ret=5;
			if( sc_data[SC_ASPERSIO].timer!=-1)		// 傾僗儁儖僔僆
				ret=6;
		}
		return ret;
	}
	return 0;
}
int battle_get_party_id(struct block_list *bl)
{
	if( bl->type == BL_PC )
		return ((struct map_session_data *)bl)->status.party_id;
	else if( bl->type==BL_MOB ){
		struct mob_data *md=(struct mob_data *)bl;
		if( md->master_id>0 )
			return -md->master_id;
		return -md->bl.id;
	}
	else if( bl->type==BL_SKILL )

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩女优电影在线观看| 懂色av一区二区夜夜嗨| 精品一区中文字幕| 99精品视频在线免费观看| 91精品国产色综合久久不卡蜜臀 | 极品美女销魂一区二区三区| av电影在线观看不卡 | 91黄色免费版| 久久久影视传媒| 天堂在线一区二区| 91一区二区三区在线观看| 欧美精品一区二区三区一线天视频 | 欧美午夜理伦三级在线观看| 国产婷婷一区二区| 精品一区二区三区视频在线观看| 欧美性猛交一区二区三区精品| 欧美激情一区二区三区在线| 久久成人免费网站| 欧美一区二区三区成人| 亚洲在线观看免费视频| 91亚洲男人天堂| 亚洲欧洲成人精品av97| 国产高清不卡一区| 久久九九99视频| 激情综合网激情| 日韩欧美色电影| 另类小说欧美激情| 日韩精品在线网站| 另类人妖一区二区av| 欧美一区日韩一区| 免费视频最近日韩| 精品少妇一区二区三区在线视频| 蜜臀久久99精品久久久久久9| 在线播放日韩导航| 日本欧美在线观看| 日韩欧美国产麻豆| 国产一区在线观看视频| 久久精品一区二区三区不卡牛牛 | 91亚洲国产成人精品一区二区三| 欧美韩日一区二区三区四区| 国产一级精品在线| 国产精品情趣视频| 日本韩国精品一区二区在线观看| 亚洲另类春色校园小说| 在线观看国产日韩| 日韩福利电影在线观看| 精品国产污网站| 成人综合婷婷国产精品久久蜜臀 | 久久久不卡网国产精品一区| 国产成人午夜片在线观看高清观看| 国产日韩欧美一区二区三区乱码| 国产aⅴ精品一区二区三区色成熟| 国产女人aaa级久久久级| 99视频一区二区| 亚洲bt欧美bt精品| 精品第一国产综合精品aⅴ| 国产一二三精品| 一区二区三区小说| 日韩你懂的在线播放| 成人免费视频caoporn| 亚洲人精品午夜| 在线电影院国产精品| 久久99国产精品久久| 国产精品第五页| 欧美日韩高清一区| 国产91露脸合集magnet| 亚洲在线视频网站| 国产亚洲成aⅴ人片在线观看| 972aa.com艺术欧美| 日精品一区二区三区| 国产无一区二区| 欧美男女性生活在线直播观看| 国产在线不卡一区| 亚洲成人中文在线| 亚洲国产精品高清| 日韩一区二区在线播放| jvid福利写真一区二区三区| 日本美女视频一区二区| 综合久久给合久久狠狠狠97色 | 中文字幕一区二区三区蜜月| 欧美欧美欧美欧美| 99久久精品国产麻豆演员表| 久久精品理论片| 一级中文字幕一区二区| 国产无人区一区二区三区| 欧美日韩高清一区二区不卡 | 亚洲一区二区视频在线观看| 欧美精品一区二区三区在线播放| 欧美午夜寂寞影院| 91欧美激情一区二区三区成人| 久久99久久99小草精品免视看| 亚洲一区二区三区爽爽爽爽爽| 国产亚洲美州欧州综合国| 51精品秘密在线观看| 91激情在线视频| 波多野结衣亚洲| 国产成人在线网站| 老汉av免费一区二区三区| 日欧美一区二区| 天天综合色天天综合| 亚洲国产一区二区在线播放| 亚洲欧洲美洲综合色网| 欧美激情艳妇裸体舞| 国产亚洲精品7777| 久久亚洲一区二区三区明星换脸| 在线播放中文一区| 欧美丰满少妇xxxxx高潮对白| 欧美性一二三区| 欧美在线视频全部完| 色噜噜狠狠一区二区三区果冻| 91视频一区二区| 91在线视频官网| 99精品视频在线观看免费| 高清国产一区二区| 懂色av噜噜一区二区三区av| 国产成人小视频| av中文字幕不卡| 97se亚洲国产综合在线| 色呦呦国产精品| 91国偷自产一区二区三区观看| 91片在线免费观看| 91成人免费电影| 欧美人妖巨大在线| 欧美一级久久久| 欧美va日韩va| 国产亚洲欧美中文| 亚洲欧美色图小说| 亚洲一区二三区| 久久精品久久综合| 国产成人三级在线观看| 波多野结衣在线一区| 色综合久久综合网97色综合| 色94色欧美sute亚洲13| 7777女厕盗摄久久久| 欧美精品一区二区三区蜜桃| 国产清纯在线一区二区www| 综合久久综合久久| 五月激情丁香一区二区三区| 精品一区免费av| 成人av影院在线| 欧美日韩久久一区| 欧美精品一区二区在线观看| 中文字幕一区二区三区不卡| 亚洲国产欧美在线人成| 精品在线观看视频| 色综合久久中文综合久久牛| 欧美精品久久99久久在免费线| www国产亚洲精品久久麻豆| ㊣最新国产の精品bt伙计久久| 亚洲综合999| 国产成人精品免费视频网站| 欧美综合色免费| 久久久高清一区二区三区| 亚洲一区二区三区精品在线| 韩国成人在线视频| 欧美在线free| 国产日韩欧美精品一区| 亚洲午夜视频在线观看| 豆国产96在线|亚洲| 欧美日韩成人综合天天影院| 国产欧美精品一区二区三区四区 | 2021国产精品久久精品| 亚洲女性喷水在线观看一区| 激情综合亚洲精品| 91精品国产手机| 亚洲黄一区二区三区| 国产精品一二三四| 制服视频三区第一页精品| 综合网在线视频| 国产一本一道久久香蕉| 538在线一区二区精品国产| 亚洲人成亚洲人成在线观看图片| 久久精品国产亚洲一区二区三区 | 日本网站在线观看一区二区三区| 成人免费黄色大片| 精品国产免费一区二区三区香蕉| 亚洲自拍都市欧美小说| 91免费国产在线| 久久精品综合网| 国产制服丝袜一区| 日韩一区二区三区在线| 亚洲无线码一区二区三区| 波多野结衣91| 国产精品狼人久久影院观看方式| 精品一区二区三区免费观看| 欧美日本国产视频| 亚洲一区二区在线免费看| 91久久线看在观草草青青| 国产精品视频你懂的| 国产福利精品导航| 久久老女人爱爱| 精品一区二区在线观看| 欧美一级xxx| 青青青伊人色综合久久| 69p69国产精品| 日韩精品成人一区二区在线| 9191国产精品| 免费看欧美女人艹b| 欧美成人激情免费网| 久久99热国产|