精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

HarmonyOS NEXT體驗(yàn)官#拼圖小游戲

系統(tǒng) OpenHarmony
自從我接觸到鴻蒙系統(tǒng),我就被它強(qiáng)大的性能和無(wú)限的可能性所吸引。作為一個(gè)熱愛(ài)編程和游戲開(kāi)發(fā)的我,決定嘗試在這個(gè)全新的系統(tǒng)上開(kāi)發(fā)一款手機(jī)拼圖游戲。這個(gè)過(guò)程充滿(mǎn)了挑戰(zhàn),但也讓我收獲頗豐。

想了解更多關(guān)于開(kāi)源的內(nèi)容,請(qǐng)?jiān)L問(wèn):

51CTO 鴻蒙開(kāi)發(fā)者社區(qū)

https://ost.51cto.com

用鴻蒙開(kāi)發(fā)工具寫(xiě)一個(gè)拼圖小游戲

想想就很激動(dòng),那就開(kāi)工吧。

一、游戲開(kāi)盤(pán)準(zhǔn)備

大體思路,先開(kāi)個(gè)游戲盤(pán)用來(lái)存放拼圖,然后動(dòng)態(tài)生成拼圖塊并且打亂它,再者編輯游戲邏輯,最后判斷輸贏,差不多了,真簡(jiǎn)單hh。

開(kāi)局就是個(gè)"Hello World",真是親切(?? 3(???c)

生成游戲盤(pán)前,我要先準(zhǔn)備點(diǎn)資料,一些配置參數(shù),方便我掌控全局。

/**
   * 游戲配置
   */
  @State gameConfig:config_message = {
    w: 800, // 寬高參數(shù),由圖片的像素尺寸決定
    h: 800,
    rows: 5, // 行數(shù)
    cols: 5, // 列數(shù)
    isOver: false, // 游戲是否結(jié)束
    imgUrl: $r("app.media._0") // 圖片路徑
  };

緊接著是完成游戲邏輯的。

/游戲luoji
 ├── 設(shè)置拼圖寬高
 │
 ├── 選擇自己喜歡的圖片
 │ 
 ├── 開(kāi)始游戲               
 │    ├── 生成拼圖          
 │    ├── 玩家扣件             
 │    └── 判斷輸贏
 │
 └── 結(jié)束游戲并重置

先是第一步設(shè)置寬高,我選擇使用Textinput組件,因?yàn)檫@樣可以讓使用者自定義任何寬高,理論上可以達(dá)到無(wú)窮大,不知道會(huì)不會(huì)有大佬愿意拿顯微鏡玩拼圖呢,哈哈哈~~

Row(){
  Text("拼圖的尺寸:")
  TextInput()
    .width("50vp")
    .height("40vp")
    .backgroundColor(Color.Grey)
    .fontColor(Color.White)
    .textAlign(TextAlign.Center)
    .maxLength(2)
    .onChange((val)=>{
      this.gameConfig.rows = parseInt(val);
    })
  Text("X")
  TextInput()
    .width("50vp")
    .height("40vp")
    .backgroundColor(Color.Grey)
    .fontColor(Color.White)
    .textAlign(TextAlign.Center)
    .maxLength(2)
    .onChange((val)=>{
      this.gameConfig.rows = parseInt(val);
    })
}

接下來(lái)就是選擇圖片了,我使用的是鴻蒙自帶的選擇框組件真的很高科技,我只要傳個(gè)數(shù)組進(jìn)去就完事了。

Button("選擇圖片")
 .width("100vp")
 .onClick(() => {
   TextPickerDialog.show({
     // 文檔:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-methods-textpicker-dialog-V5#%E7%A4%BA%E4%BE%8B1
     range: this.imgName,
     selected: this.select,
     disappearTextStyle: {color: Color.Red, font: {size: 15, weight: FontWeight.Lighter}},
    textStyle: {color: Color.Black, font: {size: 20, weight: FontWeight.Normal}},
                selectedTextStyle: {color: Color.Blue, font: {size: 30, weight: FontWeight.Bolder}},
     onAccept: (value: TextPickerResult) => {
       // 設(shè)置select為按下確定按鈕時(shí)候的選中項(xiàng)index,這樣當(dāng)彈窗再次彈出時(shí)顯示選中的是上一次確定的選項(xiàng)
       this.select = value.index;
       this.gameConfig.imgUrl = $r(`app.media._${this.select}`);
       console.log("我的配置:" + JSON.stringify(this.gameConfig.imgUrl));
       console.log(this.select + '')
       console.info("TextPickerDialog:onAccept()" + JSON.stringify(value))
     }
   })
 })

二、游戲開(kāi)發(fā)環(huán)節(jié)

經(jīng)過(guò)上面的充分準(zhǔn)備,終于可以開(kāi)始寫(xiě)最激動(dòng)人心的游戲代碼了,同時(shí)也最麻煩的~~~~~~~~~~

1.生成游戲環(huán)境

Column(){
  /**
   * 初始化游戲面板
   */
  Flex({wrap:FlexWrap.Wrap}){

    /**
     * 渲染拼圖
     */
    ForEach(this.isShuffle?this.blocks: this.blocks, (item: Block, idx:number) => {
      setPiece({block: item, blocks: this.blocks, idx: idx, isShuffle: this.isShuffle, isShow: this.isWin})
    })

    /**
     * 贏的組件
     */
    Text("Win")
      .fontSize(80)
      .fontColor(Color.White)
      .position({x:70, y: 80})
      .visibility(this.isWin?Visibility.Visible:Visibility.Hidden)

 }
 .width(this.gameConfig.w + 4 + "px") // 4px的邊框
 .height(this.gameConfig.h + 4 + "px")
 .borderWidth("2px")
 .borderColor("#ccc")

2.初始化游戲的信息

/**
* 初始化生成信息
*/
aboutToAppear(): void {
  // 準(zhǔn)備數(shù)組
  this.initBlocksArray();
  // 數(shù)組洗牌
  this.shuffle();
}
initBlocksArray:Function = ()=>{

   for(let i = 0; i < this.gameConfig.rows; i ++ ){
     for(let j = 0; j < this.gameConfig.cols; j ++ ) {
       // i行號(hào) j列號(hào)
       this.blocks.push({
         x: j * this.blockWidth * -1, // 當(dāng)前背景圖的橫坐標(biāo)
         y: i * this.blockHeight * -1, // 當(dāng)前背景圖的縱坐標(biāo)
         currentX: j * this.blockWidth * -1, // 正確的背景圖的橫坐標(biāo)
         currentY: i * this.blockHeight * -1, // 正確的背景圖的縱坐標(biāo)
         w: this.blockWidth,
         h: this.blockHeight,
         imgUrl: this.gameConfig.imgUrl,
         isVisible: (i === this.gameConfig.rows - 1 && j === this.gameConfig.cols - 1 ? false : true) // 拼圖是否可見(jiàn)
       })
     }
   }
   return ;
 }
/**
 * 打亂拼圖
 */
shuffle:Function = ()=>{
  let len = this.blocks.length;
  for(let i = 0; i < len - 1; i ++ ) {
    let idx = Math.floor(Math.random() * len) % (len - 1);
    while(idx == i){
      idx = Math.floor(Math.random() * len) % (len - 1);
    }
    // 交換兩個(gè)拼圖塊
    this.blocks[i].x += this.blocks[idx].x;
    this.blocks[i].y += this.blocks[idx].y;
    this.blocks[idx].x = this.blocks[i].x - this.blocks[idx].x;
    this.blocks[idx].y = this.blocks[i].y - this.blocks[idx].y;
    this.blocks[i].x = this.blocks[i].x - this.blocks[idx].x;
    this.blocks[i].y = this.blocks[i].y - this.blocks[idx].y;
  }
}

3.生成拼圖塊

為了更加好的描繪出拼圖塊的細(xì)節(jié),我自定義了組件。

Flex()
      .width(this.block.w + "px") // 每塊拼圖的寬度
      .height(this.block.h + "px") // 每塊拼圖的高度
      .borderWidth("1px")
      .borderColor(Color.White)
      .backgroundImage(this.block.imgUrl)
      .backgroundImagePosition({x: this.block.x, y: this.block.y})
      .visibility(this.block.isVisible ? Visibility.Visible: Visibility.Hidden)
	  .onClick(()=>{....}) // 存放著移動(dòng)拼圖塊的邏輯

在做移動(dòng)時(shí),有著一個(gè)的細(xì)節(jié)處理,首先的浮點(diǎn)數(shù)比較大小,在計(jì)算過(guò)程中浮點(diǎn)數(shù)會(huì)產(chǎn)生精度問(wèn)題,也就是除不盡的情況,這個(gè)時(shí)候比較相等時(shí)會(huì)比較不出來(lái),為了避免這種情況可以用取整的方式進(jìn)行處理,當(dāng)然還其它很多方法我就不一一說(shuō)明了。

/**
 * 移動(dòng)拼圖塊
 */
if(!this.isShow && ((Math.floor(y1) === Math.floor(y2) && Math.floor(Math.abs(x1 - x2)) === w) || (Math.floor(x1) === Math.floor(x2) && Math.floor(Math.abs(y1 - y2)) === h))){
  	this.blocks[this.idx].x += inVisibleBlock.x;
  	this.blocks[this.idx].y += inVisibleBlock.y;
  	inVisibleBlock.x = this.blocks[this.idx].x - inVisibleBlock.x;
  	inVisibleBlock.y = this.blocks[this.idx].y - inVisibleBlock.y;
 	this.blocks[this.idx].x = this.blocks[this.idx].x - inVisibleBlock.x;
 	this.blocks[this.idx].y = this.blocks[this.idx].y - inVisibleBlock.y;
 	let temp = this.blocks[this.idx].isVisible;
 	this.blocks[this.idx].isVisible = inVisibleBlock.isVisible;
 	inVisibleBlock.isVisible = temp;
 	this.isShuffle = !this.isShuffle;
}

4.定乾坤

我這使用了數(shù)組自帶的方法來(lái)構(gòu)建數(shù)組(filter)。

/**
 * 判斷游戲輸贏
 */
let wrongs = this.blocks.filter((item)=>{
  // 找到所有不在正確位置上的拼圖塊
  return !this.isCorrect(item);
})

if(wrongs.length === 0) {
  this.isShow = true;
}

這里寫(xiě)了兩個(gè)輔助函數(shù),輔助判斷拼圖塊是否在正確的位置。

/**
 * 判斷兩值是否相等
 */
isEqual:Function = (x:number, y:number)=>{
  return Math.floor(x) === Math.floor(y);
}

/**
 * 判斷當(dāng)前拼圖塊是否在正確位置
 */
isCorrect:Function = (block: Block)=>{
  let flag1:boolean = this.isEqual(block.x, block.currentX);
  let flag2:boolean = this.isEqual(block.y, block.currentY);
  return flag1 && flag2;
}

到此游戲開(kāi)發(fā)就結(jié)束了。

三、游戲測(cè)試

 #HarmonyOS NEXT體驗(yàn)官#拼圖小游戲-鴻蒙開(kāi)發(fā)者社區(qū) #HarmonyOS NEXT體驗(yàn)官#拼圖小游戲-鴻蒙開(kāi)發(fā)者社區(qū)

 #HarmonyOS NEXT體驗(yàn)官#拼圖小游戲-鴻蒙開(kāi)發(fā)者社區(qū) #HarmonyOS NEXT體驗(yàn)官#拼圖小游戲-鴻蒙開(kāi)發(fā)者社區(qū)

 #HarmonyOS NEXT體驗(yàn)官#拼圖小游戲-鴻蒙開(kāi)發(fā)者社區(qū) #HarmonyOS NEXT體驗(yàn)官#拼圖小游戲-鴻蒙開(kāi)發(fā)者社區(qū)

領(lǐng)域展開(kāi)

空間移動(dòng)

時(shí)間回溯

測(cè)試非常順得,界面還算美觀哈。

四、總結(jié)一下

自從我接觸到鴻蒙系統(tǒng),我就被它強(qiáng)大的性能和無(wú)限的可能性所吸引。作為一個(gè)熱愛(ài)編程和游戲開(kāi)發(fā)的我,決定嘗試在這個(gè)全新的系統(tǒng)上開(kāi)發(fā)一款手機(jī)拼圖游戲。這個(gè)過(guò)程充滿(mǎn)了挑戰(zhàn),但也讓我收獲頗豐。

在開(kāi)始開(kāi)發(fā)之前,我首先對(duì)鴻蒙系統(tǒng)進(jìn)行了深入的研究,了解了它的架構(gòu)、開(kāi)發(fā)工具以及API等。我發(fā)現(xiàn),鴻蒙系統(tǒng)為開(kāi)發(fā)者提供了豐富的接口和工具,使得開(kāi)發(fā)過(guò)程變得更加高效和便捷。同時(shí),我也被它的分布式架構(gòu)所吸引,這讓我思考如何在游戲中實(shí)現(xiàn)跨設(shè)備的互動(dòng)體驗(yàn)。

在開(kāi)發(fā)過(guò)程中,我遇到了不少挑戰(zhàn)。其中最大的挑戰(zhàn)是如何實(shí)現(xiàn)拼圖的平滑移動(dòng)和旋轉(zhuǎn)效果。為了實(shí)現(xiàn)這一效果,我深入研究了鴻蒙系統(tǒng)的圖形渲染機(jī)制,并嘗試了各種算法和優(yōu)化方法。經(jīng)過(guò)不斷的嘗試和調(diào)整,我終于找到了一個(gè)既流暢又美觀的解決方案。

當(dāng)游戲終于開(kāi)發(fā)完成時(shí),我感到無(wú)比的自豪和滿(mǎn)足。

開(kāi)源:free_D/鴻蒙開(kāi)發(fā)拼圖游戲 (gitee.com)

想了解更多關(guān)于開(kāi)源的內(nèi)容,請(qǐng)?jiān)L問(wèn):

51CTO 鴻蒙開(kāi)發(fā)者社區(qū)

https://ost.51cto.com

責(zé)任編輯:jianghua 來(lái)源: 51CTO 鴻蒙開(kāi)發(fā)者社區(qū)
相關(guān)推薦

2022-02-17 20:18:27

JS鴻蒙操作系統(tǒng)

2024-07-26 16:17:22

2020-12-07 16:20:53

Python 開(kāi)發(fā)編程語(yǔ)言

2024-07-31 09:55:19

2021-08-15 22:52:30

前端H5拼圖

2023-08-07 15:18:29

游戲開(kāi)發(fā)鴻蒙Arkts

2022-07-29 14:47:34

數(shù)獨(dú)Sudoku鴻蒙

2022-10-19 15:19:53

數(shù)獨(dú)Sudoku鴻蒙

2022-10-19 15:27:36

數(shù)獨(dú)Sudoku鴻蒙

2022-10-18 15:45:17

數(shù)獨(dú)Sudoku鴻蒙

2022-08-25 21:41:43

ArkUI鴻蒙

2022-11-01 15:17:48

JS鴻蒙小游戲

2021-01-15 12:15:36

鴻蒙HarmonyOS游戲

2021-01-12 12:16:55

鴻蒙HarmonyOS游戲

2022-02-11 14:02:09

游戲JS鴻蒙

2022-02-11 14:39:11

游戲JS鴻蒙

2022-10-28 16:20:10

JS鴻蒙小游戲

2015-09-29 09:38:50

Java程序猜大小

2022-07-08 14:53:46

掃雷小游戲鴻蒙
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

成人香蕉社区| 第九色区av在线| 亚洲网站啪啪| 亚洲男人天堂网站| 无码日韩人妻精品久久蜜桃| 北条麻妃在线| 国产麻豆精品95视频| 久久久久久久香蕉网| 少妇特黄一区二区三区| 久久天堂av| 亚洲精品国产精华液| 狠狠色综合色区| 在线免费观看视频网站| 狠狠爱成人网| 日韩视频第一页| yy1111111| 91成人在线网站| 日韩欧美主播在线| www.国产二区| av黄色在线观看| 成人午夜毛片| 亚洲猫色日本管| 欧美日本国产精品| 国产香蕉在线观看| 麻豆精品久久精品色综合| 国产69精品久久久久9| 免费在线观看黄色小视频| 偷拍亚洲精品| 精品国产不卡一区二区三区| 三级一区二区三区| 色老太综合网| 精品国产福利视频| 欧美狂野激情性xxxx在线观| jizz亚洲| 久久久不卡网国产精品二区| 国产高清自拍99| 国产视频手机在线| 三级欧美韩日大片在线看| 久久久中文字幕| 久久久精品视频免费观看| 手机亚洲手机国产手机日韩| 亚洲欧美在线一区二区| 亚洲男女在线观看| 亚洲专区**| 亚洲精品日韩综合观看成人91| 日本一区二区精品| 亚洲日本在线播放| av不卡一区二区三区| 国产精品久久波多野结衣| 国产成a人亚洲精v品无码| 韩国欧美一区二区| 成人亚洲激情网| 96亚洲精品久久久蜜桃| 蜜臀va亚洲va欧美va天堂| 日韩暖暖在线视频| 免费观看日批视频| 日韩不卡免费视频| 国产精品丝袜视频| 国产又爽又黄又嫩又猛又粗| 精品一区二区在线免费观看| 91精品国产综合久久久久久蜜臀| 中文字字幕在线中文乱码| 免费不卡在线视频| 国产日韩欧美综合| 国产伦精品一区二区三区免.费 | 一道本在线免费视频| 亚洲国产尤物| 欧美日韩视频第一区| 国产成年人视频网站| 国产成人视屏| 欧美sm美女调教| 久久久国产精品无码| 亚洲最大在线| 日韩中文字幕视频在线观看| 中日韩一级黄色片| 1024成人| 国产成人a亚洲精品| 中文无码精品一区二区三区| 青青草国产成人av片免费| 国产在线视频一区| 亚洲国产视频一区二区三区| 99re6这里只有精品视频在线观看| 看高清中日韩色视频| 日韩美女网站| 一区二区三区四区高清精品免费观看| 国产日韩欧美精品在线观看| 欧美精品日日操| 欧美美女喷水视频| 人妻激情偷乱频一区二区三区| 欧美人妖在线观看| 中文国产成人精品久久一| 一区视频免费观看| 男女精品视频| 成人激情视频小说免费下载| 人成网站在线观看| 中文字幕第一区| av无码久久久久久不卡网站| jizz内谢中国亚洲jizz| 7777精品伊人久久久大香线蕉完整版| avtt中文字幕| 欧州一区二区| 欧美极品在线播放| 毛片在线免费播放| 国产91精品免费| 婷婷五月色综合| 不卡av免费观看| 精品视频免费在线| 艳妇乳肉亭妇荡乳av| 国产精品久久久久久久| 68精品久久久久久欧美| 97超碰人人草| 久久久久久久精| 激情六月天婷婷| 韩国理伦片久久电影网| 亚洲国产成人精品久久久国产成人一区 | 四虎国产精品永久在线国在线 | 亚洲一区二区中文| 国产黄在线观看免费观看不卡| 亚洲国产一区二区三区青草影视| 超碰在线公开97| 日韩精品a在线观看91| 久久亚洲成人精品| 中国一级片黄色一级片黄| 波多野结衣精品在线| 性欧美18一19内谢| 成人黄色免费观看| 亚洲色图国产精品| 国产a∨精品一区二区三区仙踪林| 国产美女在线观看一区| 亚州欧美一区三区三区在线| 高清不卡亚洲| 日韩精品免费在线播放| 国产一级做a爰片在线看免费| 精品一区二区在线播放| 视频一区二区在线观看| 欧美大片免费观看网址| 国产偷国产偷亚洲清高网站| 久久久一二三区| 国产精品18久久久久久久久| 日韩视频在线观看视频| 欧美男男gaygay1069| 中文字幕在线亚洲| 中文字幕+乱码+中文| 国产亚洲美州欧州综合国| 久久久久狠狠高潮亚洲精品| 日韩在线麻豆| 欧美在线视频播放| 青草久久伊人| 99久久99精品久久久久久| 国产精品一区在线免费观看| 91视频成人| 久久天天躁日日躁| 性中国xxx极品hd| 亚洲一区在线视频观看| aaa黄色大片| 亚洲精品国产日韩| 久久久久久艹| 欧美粗大gay| 一本色道久久88亚洲综合88| 国产偷人爽久久久久久老妇app| 欧美国产精品一区二区| 一区二区xxx| 亚洲国产一成人久久精品| 成人综合网网址| 美女91在线| 日韩精品在线观看网站| 免费黄色小视频在线观看| 国产日产欧美一区二区三区| 日韩不卡一二三| 亚洲一级淫片| 狠狠色综合色区| 日本在线精品| 久久久国产精彩视频美女艺术照福利 | 波多野结衣一本| 蜜桃视频在线观看一区二区| 国产奶头好大揉着好爽视频| 白白在线精品| 青青久久aⅴ北条麻妃| 91在线品视觉盛宴免费| 日韩手机在线导航| 毛片基地在线观看| 国产精品久久免费看| 又黄又爽又色的视频| 亚洲美女网站| 亚洲精品日韩在线观看| 欧美片网站免费| 青青草原一区二区| 九色porny在线| 欧美日韩美女在线| 91精品国自产在线| 国产精品一二三四| 337p粉嫩大胆噜噜噜鲁| 91中文字幕精品永久在线| 99re资源| 日本精品网站| 久久久久久久亚洲精品| 91porn在线观看| 欧美va日韩va| 一级特黄录像免费看| 偷拍日韩校园综合在线| 青青操在线播放| 国产欧美精品久久| 亚洲午夜精品一区二区| 开心激情综合| 亚洲影院在线看| 欧美www.| 97色在线观看免费视频| 韩国中文字幕在线| 亚洲欧洲第一视频| 六月婷婷中文字幕| 欧美日韩国产欧美日美国产精品| 日本熟妇色xxxxx日本免费看| 中文字幕第一区| 最新中文字幕视频| 高清国产一区二区三区| 91高清国产视频| 国产亚洲精品bv在线观看| 五月天激情图片| 第一社区sis001原创亚洲| 狠狠色狠狠色综合人人| 中文字幕一区二区三区四区久久 | 中文字幕在线播| 亚洲午夜久久久久久久久电影院| 日日操免费视频| 久久久国产精品午夜一区ai换脸| 亚洲天堂2024| 国产成人免费视| 欧美又黄又嫩大片a级| 秋霞影院一区二区| 凹凸日日摸日日碰夜夜爽1| 亚洲激情一区| 久久av高潮av| 欧美国产三区| 男女h黄动漫啪啪无遮挡软件| 欧美精选视频在线观看| 欧美12av| 亚洲精品一级二级三级| 精品蜜桃传媒| 人人网欧美视频| 国产精品免费一区二区三区观看 | 免费在线观看91| 九色丨蝌蚪丨成人| 好吊色欧美一区二区三区视频| 亚洲精品在线播放| 风间由美久久久| 538任你躁精品视频网免费| 亚洲www视频| 日本精品视频| http;//www.99re视频| 涩涩屋成人免费视频软件| 91亚洲精品视频| av一级久久| 91福利入口| swag国产精品一区二区| 国产福利久久精品| 日韩大片在线免费观看| 欧美在线一区二区三区四区| 精品一区二区三区在线 | 不卡视频一区二区三区| 欧美第一在线视频| 国产精品av一区| 老司机aⅴ在线精品导航| 好看的日韩精品视频在线| 校园春色另类视频| 婷婷久久五月天| 亚洲欧美一区在线| 久草热视频在线观看| 久久久国产亚洲精品| the porn av| 国产盗摄精品一区二区三区在线| 亚洲精品国产成人av在线| 91久色porny| 日本美女bbw| 亚洲欧美日韩电影| 久草国产精品视频| 欧美在线你懂得| 国产视频在线观看免费| 精品国产sm最大网站免费看| 日韩美女一级视频| 丝袜美腿精品国产二区| caoporm免费视频在线| 97在线看免费观看视频在线观看| 不卡av播放| 成人国产在线视频| 欧美电影在线观看免费| 亚洲美女网站18| 黄色精品免费| 妓院一钑片免看黄大片| 国产精品一区二区三区四区| 人妻熟女aⅴ一区二区三区汇编| 国产精品三级电影| 国产一级aa大片毛片| 欧美综合在线视频| 欧美一级做性受免费大片免费| 亚洲色图av在线| 伦理av在线| 国产精品丝袜一区二区三区| 国产劲爆久久| 一区二区在线观| 国产毛片一区| 免费黄色av网址| 中文字幕乱码久久午夜不卡 | 久久久久久久高潮| 欧美人与性动交α欧美精品| 久久久综合激的五月天| 国产女片a归国片aa| 91黄色免费版| 日韩一区免费视频| 久久精品视频在线| 写真福利精品福利在线观看| 国产传媒一区二区三区| 91精品蜜臀一区二区三区在线| 久久久精品在线视频| 国产.欧美.日韩| www.xxxx日本| 欧美在线不卡视频| 视频午夜在线| 久久久久久久久91| 国产精品亚洲四区在线观看| 日韩电影免费观看在| 国产欧美91| av无码一区二区三区| 亚洲一区二区在线免费观看视频| 91在线观看喷潮| 中文字幕欧美日韩在线| 亚洲同志男男gay1069网站| 国产精品18毛片一区二区| 欧美黄在线观看| 91亚洲一区二区| 成人欧美一区二区三区小说 | 精品人伦一区二区色婷婷| 麻豆传媒在线观看| 91久久精品久久国产性色也91| 色喇叭免费久久综合网| 91n.com在线观看| 久久久久国产精品人| 九一国产在线观看| 亚洲国产精品久久| 9765激情中文在线| 国产欧美韩日| 日韩视频二区| 欧美成人三级伦在线观看| 午夜精品一区在线观看| 好吊色视频一区二区| 久久久人成影片一区二区三区| 亚洲视频国产精品| 999一区二区三区| 成a人片国产精品| 日韩xxxxxxxxx| 亚洲精品国产美女| 小h片在线观看| 日本10禁啪啪无遮挡免费一区二区| 先锋影音久久| 婷婷综合在线视频| 6080yy午夜一二三区久久| 国产人成网在线播放va免费| 97人人干人人| 亚洲午夜av| 一区二区三区免费在线观看视频 | 少妇高清精品毛片在线视频| 久久久国产精品麻豆| 一级特黄aaa大片在线观看| 欧美精品在线第一页| 91成人福利| 国产性xxxx18免费观看视频| 久久精品综合网| 伊人久久一区二区| 欧美成人精品在线| 国产伦精品一区二区三区在线播放 | 天堂蜜桃91精品| 黄色激情小视频| 欧美本精品男人aⅴ天堂| 狠狠躁少妇一区二区三区| 欧美影视一区二区| 国产九色精品成人porny| 亚洲一区二区91| 亚洲性视频网址| 日日夜夜精品| 日日摸日日碰夜夜爽无码| 国产日韩v精品一区二区| 99国产精品99| 91av成人在线| 97精品在线| 在线视频 日韩| 欧美日韩国产大片| 成年人国产在线观看| 亚洲成人网上| 懂色一区二区三区免费观看| 日韩精品一区二区亚洲av观看| 久久精品中文字幕免费mv| 五月国产精品| 亚洲一区二区中文字幕在线观看| 欧美日韩国产综合视频在线观看中文| 黄上黄在线观看| 99国产在线视频| 奇米四色…亚洲| 成年人午夜视频| 久久精品人人爽| 国产精品一区二区99| 97超碰免费在线观看|