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

HTML 5開發(fā)RPG游戲之一(地圖人物實現(xiàn))

開發(fā) 前端
在游戲的世界里,我們可以看到各種地圖,各種游戲人物,看到人物在地圖上行走,對話等,無論是地圖還是人物,其實都是圖片的處理與顯示,把不同的圖片顯示到屏幕上。

本篇將以零基礎(chǔ)的視點,來講解如何開發(fā)一款RPG游戲。

在游戲的世界里,我們可以看到各種地圖,各種游戲人物,看到人物在地圖上行走,對話等,無論是地圖還是人物,其實都是圖片的處理與顯示,把不同的圖片顯示到屏幕上,我們就看到不同的游戲界面,要想讓這些圖片同時顯示到界面上,我們就需要處理好層次,讓他們來分層顯示,我們可以想象,如果游戲人物顯示在地圖的下層的話,顯然會被地圖遮擋住。

一款RPG游戲,我簡單把它分為地圖層,人物層,效果層(一些法術(shù)效果等),對話層,控制層(按鈕菜單等)。

如下圖

我們只要依次將圖片畫在屏幕上,游戲人物將站在地圖上,如果有對話,對話將出現(xiàn)在人物和地圖的上面,而按鈕等控件會出現(xiàn)在游戲的最外層

下面,我們一步步來實現(xiàn)一個簡單的RPG游戲的開發(fā)

準(zhǔn)備工作

一,庫件下載

本游戲開發(fā),需要用到開源庫件:LegendForHtml5Programming

請到這里下載***版的LegendForHtml5Programming,本次開發(fā)需要1.2版以上

http://code.google.com/p/legendforhtml5programming/downloads/list

庫件的開發(fā)過程請看這里

http://bbs.html5cn.org/thread-2712-1-1.html

二,庫件配置

首先建立一個文件夾rpg(你也可以起其他的名字)

然后將下載的庫件解壓,解壓后將legend文件夾放到與rpg文件夾同目錄

然后,在rpg文件夾里建一個index.html文件和一個js文件夾,在js文件夾里建一個Main.js文件

***,在index.html里加入下面的代碼

  1. <!DOCTYPE html> 
  2. <html>   
  3. <head>   
  4. <meta charset="UTF-8">   
  5. <title>rpg</title>   
  6. </head>   
  7. <body>   
  8. <div id="mylegend">loading……</div>   
  9. <!-- 引入LegendForHtml5Programming庫件 -->   
  10. <script type="text/javascript" src="../legend/legend.js"></script>    
  11. <script type="text/javascript" src="./js/Main.js"></script>    
  12. </body></html>   

當(dāng)然,你也可以將legend文件夾放到其他地方,但是你需要修改legend文件夾下的legend.js文件中的LEGEND_PATH的值,來配置庫件的路徑

游戲地圖的實現(xiàn)

接下來,我們先來畫***層的地圖層,

地圖當(dāng)然就是是由圖片來組成的,如何在畫面上顯示一張圖片,我之前已經(jīng)寫過專門的文章,代碼如下

  1. var loader;    
  2. function main(){     
  3.     loader = new LLoader();     
  4.     loader.addEventListener(LEvent.COMPLETE,loadBitmapdata);     
  5.     loader.load("map.jpg","bitmapData");     
  6. }     
  7. function loadBitmapdata(event){     
  8.     var bitmapdata = new LBitmapData(loader.content);     
  9.     var bitmap = new LBitmap(bitmapdata);     
  10.     addChild(bitmap);     
  11. }     

如果想更詳細(xì)了解的話,看下面的帖子

用仿ActionScript的語法來編寫html5——***篇,顯示一張圖片http://bbs.html5cn.org/thread-2700-1-1.html

游戲中的地圖可以是一張比較大的圖片,即整個圖片就是游戲的地圖,當(dāng)人物或者地圖移動的時候,改變圖片顯示的區(qū)域范圍,從而實現(xiàn)地圖的滾動和顯示等,這樣的話,必須為每個場景準(zhǔn)備一張地圖。

另外,地圖也可以是由許多小的地圖塊兒來組成,比如,我們熟悉的《吞食天地》,《勇者斗惡龍》等經(jīng)典小型rpg游戲,這樣的地圖,我們需要準(zhǔn)備一張或幾張地圖塊兒,把這些地圖塊組合成地圖來顯示,比如下圖

0_13238754463fxE.gif

在地圖顯示的時候,首先把圖片切割,然后在根據(jù)預(yù)先設(shè)定好的位置顯示到地圖層上,這樣我們就看到了一張完整的地圖了

接下來,打開Main.js

在里面加入

  1. init(50,"mylegend",480,320,main); 

在legendForHtml5Progarmming中,用init這個函數(shù)來初始化canvas,上面的代碼表示,初始化一個速度為50,名字為mylegend,大小為480*320的游戲界面,初始化完成后調(diào)用main(),這個速度值是說每個多少毫秒游戲循環(huán)一次,所以這個值設(shè)定的越小,游戲運行的速度就越快

因為要調(diào)用main方法,所以我們要寫一個main方法,main方法里做一些簡單的準(zhǔn)備工作。

雖說讀取圖片只需要一個

  1. loader.load("map.jpg","bitmapData");    

但是游戲中往往用到很多張圖片,你可以用到哪一張再加載哪一張,也可以一次性全部加載完,然后再開始顯示游戲

為了一次性把圖片加載完,我的做法是,將需要的圖片放到一個數(shù)組里,然后設(shè)定一個索引,每加載一個圖片,讓這個索引加1,當(dāng)這個索引小于數(shù)組的長度,則繼續(xù)加載,直到將數(shù)組中的圖片全部加載完,然后開始進(jìn)行下一步的工作

#p#

具體實現(xiàn)看下面的代碼 

  1. //圖片path數(shù)組  
  2.  
  3. var imgData = new Array();   
  4. //讀取完的圖片數(shù)組   
  5. var imglist = {};   
  6. function main(){   
  7.         //準(zhǔn)備讀取圖片   
  8.         imgData.push({name:"map",path:"./image/map.jpg"});   
  9.         imgData.push({name:"mingren",path:"./image/mingren.png"});   
  10.         imgData.push({name:"e1",path:"./image/e1.png"});   
  11.         imgData.push({name:"e2",path:"./image/e2.png"});   
  12.         //實例化進(jìn)度條層   
  13.         loadingLayer = new LSprite();   
  14.         loadingLayer.graphics.drawRect(1,"black",[50, 200, 200, 20],true,"#ffffff");   
  15.         addChild(loadingLayer);   
  16.         //開始讀取圖片   
  17.         loadImage();   
  18. }   
  19. function loadImage(){   
  20.         //圖片全部讀取完成,開始初始化游戲   
  21.         if(loadIndex >= imgData.length){   
  22.                 removeChild(loadingLayer);   
  23.                 legendLoadOver();   
  24.                 gameInit();   
  25.                 return;   
  26.         }   
  27.         //開始讀取圖片   
  28.         loader = new LLoader();   
  29.         loader.addEventListener(LEvent.COMPLETE,loadComplete);   
  30.         loader.load(imgData[loadIndex].path,"bitmapData");   
  31. }   
  32. function loadComplete(event){   
  33.         //進(jìn)度條顯示   
  34.         loadingLayer.graphics.clear();   
  35.         loadingLayer.graphics.drawRect(1,"black",[50, 200, 200, 20],true,"#ffffff");   
  36.         loadingLayer.graphics.drawRect(1,"black",[50, 203, 200*(loadIndex/imgData.length), 14],true,"#000000");   
  37.         //儲存圖片數(shù)據(jù)   
  38.         imglist[imgData[loadIndex].name] = loader.content;   
  39.         //讀取下一張圖片   
  40.         loadIndex++;   
  41.         loadImage();   
  42. }   

上面的代碼不難明白,當(dāng)圖片沒有讀取完之前,會不斷循環(huán)loadImage和loadComplete兩個方法,當(dāng)讀取完之后,移除進(jìn)度條,用legendLoadOver告訴游戲已經(jīng)讀取完成,然后調(diào)用gameInit方法,進(jìn)行游戲的初始化工作。

看gameInit方法

  1. function gameInit(event){  
  2.         //游戲?qū)语@示初始化   
  3.         layerInit();   
  4.         //添加地圖   
  5.         addMap();   
  6.         //添加人物   
  7.         addChara();   
  8. }   

在gameInit方法中,首先進(jìn)行游戲?qū)拥某跏蓟缓筇砑佑螒虻貓D,然后添加人物

游戲?qū)语@示初始化,按照我們一開始所說,我們一次來初始化地圖層,人物層,效果層,對話層,控制層

  1. //游戲?qū)语@示初始化  
  2. function layerInit(){   
  3.         //游戲底層添加   
  4.         backLayer = new LSprite();   
  5.         addChild(backLayer);   
  6.         //地圖層添加   
  7.         mapLayer = new LSprite();   
  8.         backLayer.addChild(mapLayer);   
  9.         //人物層添加   
  10.         charaLayer = new LSprite();   
  11.         backLayer.addChild(charaLayer);   
  12.         //效果層添加   
  13.         effectLayer = new LSprite();   
  14.         backLayer.addChild(effectLayer);   
  15.         //對話層添加   
  16.         talkLayer = new LSprite();   
  17.         backLayer.addChild(talkLayer);   
  18.         //控制層添加   
  19.         ctrlLayer = new LSprite();   
  20.         backLayer.addChild(ctrlLayer);   
  21. }  

有了游戲?qū)哟蔚膭澐郑覀冊谔砑佑螒驅(qū)ο蟮臅r候,將地圖添加到地圖層,人物添加到人物層,他們就會依次顯示在游戲的界面

下面開始添加地圖

首先我們需要準(zhǔn)備好顯示地圖的數(shù)組

  1. //地圖圖片數(shù)組  
  2. var map = [   
  3. [18,18,18,18,18,18,18,18,18,18,18,18,55,55,18],   
  4. [18,18,18,17,17,17,17,17,17,17,17,17,55,55,18],   
  5. [18,18,17,17,17,17,18,18,17,17,17,17,55,55,18],   
  6. [18,17,17,17,18,18,18,18,18,17,17,55,55,17,18],   
  7. [18,17,17,18,22,23,23,23,24,18,17,55,55,17,18],   
  8. [18,17,17,18,25,28,26,79,27,18,55,55,17,17,18],   
  9. [18,17,17,17,17,10,11,12,18,18,55,55,17,17,18],   
  10. [18,18,17,17,10,16,16,16,11,55,55,17,17,17,18],   
  11. [18,18,17,17,77,16,16,16,16,21,21,17,17,17,18],   
  12. [18,18,18,18,18,18,18,18,18,55,55,18,18,18,18]   
  13. ];   

這些數(shù)字分別對應(yīng)著圖中如下位置

0_13238754743Gp2.gif

然后看下面代碼

  1. //添加地圖  
  2. function addMap(){   
  3.         var i,j,index,indexX,indexY;   
  4.         var bitmapdata,bitmap;   
  5.         //地圖圖片數(shù)據(jù)   
  6.         bitmapdata = new LBitmapData(imglist["map"]);   
  7.         //將地圖圖片拆分,得到拆分后的各個小圖片的坐標(biāo)數(shù)組   
  8.         imageArray = LGlobal.divideCoordinate(bitmapdata.image.width,bitmapdata.image.height,10,10);   
  9.  
  10.         //在地圖層上,畫出15*10的小圖片   
  11.         for(i=0;i<10;i++){   
  12.                 for(j=0;j<15;j++){   
  13.                         //從地圖數(shù)組中得到相應(yīng)位置的圖片坐標(biāo)   
  14.                         index = map[i][j];   
  15.                         //小圖片的豎坐標(biāo)   
  16.                         indexY = Math.floor(index /10);   
  17.                         //小圖片的橫坐標(biāo)   
  18.                         indexindexX = index - indexY*10;   
  19.                         //得到小圖片   
  20.                         bitmapdata = new LBitmapData(imglist["map"],indexX*32,indexY*32,32,32);   
  21.                         bitmap = new LBitmap(bitmapdata);   
  22.                         //設(shè)置小圖片的顯示位置   
  23.                         bitmap.x = j*32;   
  24.                         bitmap.y = i*32;   
  25.                         //將小圖片顯示到地圖層   
  26.                         mapLayer.addChild(bitmap);   
  27.                 }   
  28.         }   
  29. }   

這樣,我們就把預(yù)先設(shè)置好的圖片顯示到了游戲界面上,形成了地圖

先把a(bǔ)ddChara方法加上

  1. //添加人物  
  2. function addChara(){   
  3. }   

然后運行游戲,可以得到下面畫面

0_1323875497G8BG.gif

游戲人物的實現(xiàn)

為了更好的實現(xiàn)游戲人物的控制,我們新建一個游戲人物類Character.js

里面代碼如下

  1. function Character(data,row,col,speed){  
  2.         base(this,LSprite,[]);   
  3.         var self = this;   
  4.         //設(shè)定人物動作速度   
  5.         self.speed = speed==null?3:speed;   
  6.         self.speedIndex = 0;   
  7.         //設(shè)定人物大小   
  8.         data.setProperties(0,0,data.image.width/col,data.image.height/row);   
  9.         //得到人物圖片拆分?jǐn)?shù)組   
  10.         var list = LGlobal.divideCoordinate(data.image.width,data.image.height,row,col);   
  11.         //設(shè)定人物動畫   
  12.         self.anime = new LAnimation(this,data,list);   
  13. };   
  14. Character.prototype.onframe = function (){   
  15.         var self = this;   
  16.         if(self.speedIndex++ < self.speed)return;   
  17.         self.speedIndex = 0;   
  18.         self.anime.onframe();   
  19. };   

在legendForHtml5Programming里,有一個LAnimation類,用來實現(xiàn)圖片數(shù)組順序播放,形成動畫。使用LAnimation類需要三個參數(shù),一個是顯示動畫的層,一個是圖片,一個是圖片的坐標(biāo)數(shù)組

然后,調(diào)用LAnimation類的onframe方法,就可以實現(xiàn)動畫的播放了

在index.html中引入Character類,然后修改addChara方法

  1. //添加人物  
  2. function addChara(){   
  3.         bitmapdata = new LBitmapData(imglist["mingren"]);   
  4.         player = new Character(bitmapdata,4,4);   
  5.         player.x = 32*5;   
  6.         player.y = 32*6;   
  7.         charaLayer.addChild(player);   
  8.            
  9. }   

在gameInit的末尾添加循環(huán)事件

  1. //添加貞事件,開始游戲循環(huán)  
  2.         backLayer.addEventListener(LEvent.ENTER_FRAME,onframe);   

***,添加onframe方法

  1. function onframe(){   
  2.         player.onframe();   
  3. }   

運行代碼,看到了嗎

一個會動的鳴人出現(xiàn)在游戲的地圖上了

責(zé)任編輯:張偉 來源: HTML5中國的博客
相關(guān)推薦

2012-05-15 13:57:41

HTML5

2012-05-15 13:44:00

HTML5中國

2012-05-15 13:29:20

HTML5

2012-01-06 14:10:13

HTML 5

2012-05-15 10:35:35

HTML5

2012-09-24 11:11:32

HTML5游戲開發(fā)JavaScript

2015-07-08 16:38:10

Cocos游戲引擎

2012-09-17 09:32:16

JavaScriptJSHTML5

2012-05-09 09:41:58

HTML5

2012-03-06 10:56:32

HTML 5

2012-05-10 09:45:14

HTML5

2013-06-21 13:33:46

HTML 5游戲

2011-12-21 09:38:31

HTML 5

2013-05-20 16:53:55

Android游戲開發(fā)長按事件

2012-06-06 14:46:52

HTML5

2013-06-26 10:14:40

2014-11-12 16:00:12

火舞游戲

2016-01-05 09:39:32

HTML5游戲開發(fā)工具

2012-09-10 09:46:19

JavaScriptJSHTML5

2015-10-23 13:44:14

巴巴獵
點贊
收藏

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

国产精品久久久久久久久借妻| 欧美成人性战久久| 欧美一区二区福利| 在线观看毛片av| 欧美成人首页| 亚洲精品国产精品自产a区红杏吧 亚洲精品国产精品乱码不99按摩 亚洲精品国产精品久久清纯直播 亚洲精品国产精品国自产在线 | 国产成人精品免高潮在线观看| 肉丝美足丝袜一区二区三区四| 久热这里只有精品6| 日韩成人动漫在线观看| 欧洲一区在线电影| 91传媒免费视频| 日本韩国一区| 极品美女销魂一区二区三区免费| 欧美精品18videos性欧| avhd101老司机| 国产精品2023| 欧美日韩国产另类一区| 久激情内射婷内射蜜桃| 日韩毛片久久久| 99久久国产综合精品色伊 | 91看片在线播放| 国产精品成人一区二区不卡| 日韩电视剧免费观看网站| 欧美性受xxxxxx黑人xyx性爽| 天堂√中文最新版在线| 亚洲男同1069视频| 手机看片福利永久国产日韩| 空姐吹箫视频大全| 精品一区二区国语对白| 欧美在线一级va免费观看| 麻豆91精品91久久久| 日韩久久精品| 亚洲色图美腿丝袜| jizz日本免费| 国产精品zjzjzj在线观看| 欧美日韩国产另类一区| 亚洲视频在线观看一区二区三区| av在线网页| 一区二区三区成人| 穿情趣内衣被c到高潮视频| 成人av毛片| 久久精品一级爱片| 欧美精品一区二区三区在线看午夜| 精品国产无码一区二区| 久久av老司机精品网站导航| 国产精品久久久久久久久免费看| 91九色丨porny丨肉丝| 影音先锋中文字幕一区| 欧美情侣性视频| 高h视频免费观看| 天天插综合网| 久久国产精品首页| 日韩成人短视频| 亚洲精品国产首次亮相| xvideos国产精品| 中文字幕在线观看免费高清| 一区二区导航| 亚洲人成网站免费播放| 美女洗澡无遮挡| 久久成人av| 国产一区二区三区中文| 国产精品国产三级国产专业不| 伊人成综合网yiren22| 亚洲人精品午夜在线观看| 国产美女精品久久| 成人3d动漫在线观看| 在线观看日韩www视频免费| 国产午夜精品福利视频| 天天精品视频| 久久久久久亚洲精品不卡| 亚洲精品www久久久久久| 国产精品美女| 国产精品久久久久秋霞鲁丝| 亚洲综合精品视频| 国产91露脸合集magnet| 好吊色欧美一区二区三区四区| 天天操天天干天天爱| 久久综合色8888| 亚洲精品第一区二区三区| 国产一二区在线观看| 亚洲一区影音先锋| 麻豆av免费在线| 激情久久一区二区| 精品乱人伦小说| 自拍偷拍中文字幕| 国产精品久久久乱弄| 97热精品视频官网| 中文字幕av片| 成人黄色a**站在线观看| 美国av一区二区三区| 9色在线视频网站| 亚洲一区视频在线观看视频| 国产97色在线 | 日韩| 国产精品xnxxcom| 日韩禁在线播放| 免费黄色国产视频| 国产视频一区免费看| 成人国产在线视频| 视频一区二区在线播放| 亚洲欧洲色图综合| 又粗又黑又大的吊av| 亚洲毛片在线免费| 国产视频精品一区二区三区| 三级av在线免费观看| 国产视频一区在线观看一区免费| 成人av番号网| 日本福利片在线| 一区二区三区蜜桃网| 欧美日韩在线免费播放| 北条麻妃一区二区三区在线| 三级精品视频久久久久| av资源免费观看| 国产自产视频一区二区三区| 欧美三级电影在线播放| 国产后进白嫩翘臀在线观看视频| 精品视频1区2区| 极品人妻一区二区三区| 午夜天堂精品久久久久| 国产精品亚洲美女av网站| 成人毛片在线免费观看| 亚洲欧美在线视频| 欧美国产日韩在线播放| 日韩激情啪啪| 韩国美女主播一区| 精品人妻伦一二三区久久| 国产精品天美传媒沈樵| 韩国日本在线视频| 久久综合另类图片小说| 欧美日韩xxxxx| 国产精品女同一区二区| 中文字幕国产精品一区二区| 九九九九免费视频| 久草在线综合| 久久男人的天堂| 亚洲AV无码精品色毛片浪潮| 亚洲天堂免费在线观看视频| 啊啊啊一区二区| 欧美黄色录像| 6080yy精品一区二区三区| www.黄色国产| 夜夜揉揉日日人人青青一国产精品| www激情五月| 亚洲乱码电影| 国产欧洲精品视频| 五月香视频在线观看| 欧美色精品在线视频| 超碰97av在线| 久久电影网站中文字幕| 手机在线观看国产精品| 国产伊人久久| 久久久精品视频成人| 国产精品一区二区免费视频| 1区2区3区精品视频| 在线免费看污网站| 欧美黄色aaaa| 国产精品一区二区av| 国产拍在线视频| 亚洲精品97久久| 中文字幕激情小说| 久久久久久久av麻豆果冻| aaa毛片在线观看| 激情综合网五月| 国产日韩欧美中文在线播放| 国产在线观看a视频| 欧美一区二区啪啪| 国产精品第九页| www国产精品av| 天天影视综合色| 91精品成人| 国产欧美日韩一区| 日韩毛片免费观看| 色视频www在线播放国产成人| 国产美女明星三级做爰| 亚洲一区二区三区激情| 鲁大师私人影院在线观看| 国产精品一区毛片| 亚洲一区二区三区免费看| 精品中文字幕一区二区三区四区 | 欧美三级免费看| 成人网在线播放| 精品国产成人av在线免| 亚洲xxx拳头交| 国产高清精品一区二区三区| 国产精品粉嫩| 成人444kkkk在线观看| 天堂在线视频观看| 色香色香欲天天天影视综合网| 激情高潮到大叫狂喷水| 成人禁用看黄a在线| www.日日操| 影音先锋久久| 色姑娘综合av| 成人av婷婷| 国产精品一二三视频| 欧美aaaaaaa| 一区二区三区 在线观看视| 99热在线只有精品| 日本黄色一区二区| 久久久久久久久久久网| 中文字幕乱码亚洲精品一区 | 亚洲国产欧美在线观看| 97人洗澡人人免费公开视频碰碰碰| av在线电影观看| 亚洲第一av在线| 国产一区二区在线播放视频| 黑人巨大精品欧美一区免费视频 | 亚洲r级在线视频| 欧美巨胸大乳hitomi| 26uuu国产一区二区三区 | 91免费看`日韩一区二区| 中文字幕免费高清在线| 久久国产一二区| 欧美国产视频一区| 91精品91| 影音先锋欧美资源| 少妇精品久久久一区二区| 国产精品av一区| 综合久久av| 国产精品久久久久久亚洲调教| 国内精彩免费自拍视频在线观看网址| www亚洲欧美| 午夜伦全在线观看| 国产视频精品va久久久久久| 成人免费观看在线视频| 91精品国产一区二区| 欧美性受xxx黑人xyx性爽| 欧美色播在线播放| 国产网站在线看| 亚洲福利视频导航| 久热这里有精品| 亚洲视频一二区| 国产真人做爰视频免费| xf在线a精品一区二区视频网站| 久久久久久婷婷| 国产高清一区日本| 杨幂一区二区国产精品| 精品一区二区三区在线播放| 一道本视频在线观看| 老司机午夜免费精品视频| 日本成年人网址| 久久不射中文字幕| 国产网站免费在线观看| 国产欧美一区二区三区国产幕精品| 黄色一级片国产| 欧美成人有码| 国产情侣第一页| 亚洲人成在线影院| 青青草国产精品视频| 日韩五码在线| 日日碰狠狠添天天爽超碰97| 国产欧美日韩一区二区三区在线| 男女高潮又爽又黄又无遮挡| 久久久久91| 丰满少妇在线观看| 久久精品国产精品亚洲精品| 色噜噜狠狠一区二区三区狼国成人| 极品美女销魂一区二区三区 | 欧美狂野激情性xxxx在线观| 午夜视频精品| 国产原创popny丨九色| 亚洲综合电影一区二区三区| 黄色片久久久久| 美洲天堂一区二卡三卡四卡视频 | av高清久久久| 久久精品国产亚洲av久| 国产精品对白交换视频| 朝桐光av在线| 亚洲妇女屁股眼交7| 丁香六月婷婷综合| 欧美日韩精品一区视频| 国产精品无码久久久久成人app| 欧美日韩久久一区二区| www.亚洲天堂.com| 亚洲乱码一区二区| 日本激情在线观看| 欧美激情一区二区三级高清视频| 国产在线精彩视频| 国产美女精彩久久| 国产成人精品亚洲线观看| 久久精品日产第一区二区三区| 成人在线免费观看91| 国产一二三四区在线观看| 一区二区91| 尤物国产在线观看| 北条麻妃国产九九精品视频| 日韩人妻无码精品综合区| 亚洲精品国产一区二区精华液| 欧美三级韩国三级日本三斤在线观看 | 综合网五月天| 亚洲久久视频| 国产美女18xxxx免费视频| 国产成人免费xxxxxxxx| 亚洲午夜福利在线观看| 亚洲人成亚洲人成在线观看图片| 国产高潮久久久| 欧美日韩国产精品成人| 色屁屁草草影院ccyycom| 亚洲天堂一区二区三区| 日本三级在线观看网站| 国产精品久久久久久久久久久久久久 | bl动漫在线观看| 国产精品美女久久久久久久| 日本天堂网在线观看| 欧美无人高清视频在线观看| 亚洲免费不卡视频| 精品国产美女在线| 欧美aa视频| 国产精品一区二区三区观看| 日韩伦理一区| 能在线观看的av| 国产99精品在线观看| 日韩一区二区三区四区视频| 午夜精品视频在线观看| 国产女人18毛片18精品| 亚洲午夜激情免费视频| 91在线三级| 99精彩视频在线观看免费| 成人在线亚洲| 久久久精品在线视频| 成人午夜视频网站| www.av视频| 在线电影国产精品| www.亚洲资源| 国产成人在线一区| 亚欧日韩另类中文欧美| 波多野结衣av一区二区全免费观看| 久久草av在线| 超薄肉色丝袜一二三| 在线精品国精品国产尤物884a| 神马久久久久久久久久| 欧美国产日韩中文字幕在线| 国产精久久一区二区| 亚洲一区二区在| 喷水一区二区三区| 极品人妻videosss人妻| 91激情在线视频| 日本亚洲一区| 欧美专区在线视频| 亚洲区小说区图片区qvod| 激情深爱综合网| 99久久久国产精品| 成年免费在线观看| 日韩av在线一区| brazzers在线观看| 精品综合在线| 久久永久免费| 国产视频不卡在线| 欧美三级三级三级爽爽爽| 自拍视频在线网| 国产精品永久免费| 国产精品成人av| 日韩大尺度视频| 亚洲mv在线观看| 巨骚激情综合| 国产精品日韩av| 大片网站久久| 韩国一区二区在线播放| 亚洲综合成人在线视频| 欧美一区二不卡视频| 91豆花精品一区| 国产中文精品久高清在线不| 一级片视频免费观看| 综合欧美一区二区三区| www黄色网址| 91精品国产99| 成人av国产| 操人视频免费看| 亚洲成人av在线电影| 欧美日韩国产综合视频| 国产精品爽黄69| 欧美国产高清| 国产男女猛烈无遮挡a片漫画| 欧美午夜精品一区二区三区| 菠萝菠萝蜜在线观看| 粉嫩av一区二区三区免费观看| 亚洲综合精品| 国产三级精品三级观看| 精品剧情v国产在线观看在线| 天堂网在线最新版www中文网| 亚洲成人av动漫| 国产91露脸合集magnet| 一级黄色在线视频| 欧美成人亚洲成人日韩成人| 久久久久97| 亚洲综合欧美在线| 亚洲h在线观看| 无遮挡动作视频在线观看免费入口| 国产精品毛片va一区二区三区| 免费日韩av片| 国产这里有精品| 亚洲性视频网址| 第四色在线一区二区| 日日躁夜夜躁aaaabbbb| 亚洲一区二区视频在线| 高清毛片在线看| 国产日韩二区| 国产一区高清在线| 波多野结衣激情视频| 欧美国产激情18|