日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JavaScript | 益智类数字棋牌小游戏,无游戏框架,浏览器直接运行JavaScript(js)小游戏【源码+解析】

發布時間:2024/3/24 javascript 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript | 益智类数字棋牌小游戏,无游戏框架,浏览器直接运行JavaScript(js)小游戏【源码+解析】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

游戲界面

????????曾幾何時想有一款自己編寫的游戲,通過不斷學習,終于掌握了一點JavaScript基礎,搗鼓了一個益智類的數字棋牌游戲,沒有使用任何游戲框架,就簡單使用HTML做布局,CSS做動畫,JavaScript做事件響應,有興趣的童鞋可以拿去玩一下。


目錄

一、游戲效果展示

二、游戲邏輯與交互設計

二、游戲制作過程

三、完整JavaScript源代碼


一、游戲效果展示

二、游戲邏輯與交互設計

? ? ? ?由于技術有限不能做太復雜的游戲,所以做個休閑數字游戲是比較合適的,下手之前做了挺多準備,包括思考游戲邏輯、收集和制作游戲圖片、音樂素材等,最后確定要完成一下幾個游戲必備的內容。

? ? ? ?(一)游戲邏輯,游戲玩法就是在原來“井字過三關”游戲的基礎上加上數字計算,三連子后同時計算個位數大小,誰大就誰贏。

???????(二)人機交互,游戲為雙人游戲,分為藍方(AI)紅方(玩家),雙方一開始各自獲得5個隨機分配的棋子,棋子包含個位數字。拋骰子后,玩家按先后順序拖動棋子放入棋盤中。每次游戲都可實時計算得分,每盤游戲結束后記錄得分,具有歷史排行榜功能。

? ? ? ?(三)游戲界面設計,游戲以卡通為主,收集制作素材盡量為可愛風格。支持英語、日語、簡體中文、繁體中文。

? ? ? ?(四)游戲音樂設計,游戲要有背景音樂、下棋聲音、勝負聲音、并可以按需關閉聲音。

二、游戲制作過程

? ? ? ? (一)游戲資源收集和制作,先在紙上畫出草圖,然后網上收集素材制作棋盤、棋子等貼圖,最后全部放在一個img文件夾并命名編號,用于后續JavaScript調用。

?????????(二)游戲布局,使用HTML+CSS代碼,將Img文件夾中的貼圖元素按設計的布局放置在對應的位置中,并設置z-index屬性,用于控制元素的顯示與隱藏。HTML代碼如下:

<!DOCTYPE html><html><head><meta charset="utf-8"/><meta name="format-detection"content="telephone=no"/><meta name="msapplication-tap-highlight"content="no"/><meta name="viewport"content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"/><meta http-equiv="Content-Security-Policy"content="default-src * 'unsafe-inline'; style-src 'self' 'unsafe-inline'; media-src *"/> <link href="css/gamepage.css"rel="stylesheet"type="text/css"/> <script src="js/jquery.js"type="text/javascript"></script> <script src="js/gamepage.js"type="text/javascript"></script> <title>開心連連算【#9】</title> </head><body><div id="tool" ><div id="allCandy" ></div><div id="allCandy_text"></div><div id="sound"class="sound"onClick="pauseAudio()"></div><div id="rank"onClick="showRank()"></div></div><div id="info_c"></div><div id="info"><div id="block"><div id="block0"class="info_block_style"><div id="block0_text"></div></div><div id="block1"class="info_block_style"><div id="block1_img"class="info_img_style"></div><div id="block1_text"></div></div><div id="block2"class="info_block_style"><div id="block2_img"class="info_img_style"></div><div id="block2_text"></div></div> <div id="block3"class="info_block_style"><div id="block3_img"class="info_img_style"></div><div id="block3_text"></div></div> <div id="block4"class="info_block_style"><div id="block4_img"class="info_img_style"></div><div id="block4_text"></div></div><div id="info_close"onClick="closeInfo()"></div></div></div><div id="rankPage"><div id="rank0"></div><div id="rank1"></div><div id="rank2"></div><div id="rank3"></div><div id="rankClose"onClick="closeRank()"></div></div><div id="bg1"><button id="desktopTest" onclick="desktopTest()">使用瀏覽器調試點擊這里</button><div id="mainpage1"><div id="icon6"class="bo1"><div id="gamehead" ></div></div></div><div id="choosepage1"><div id="start"class="btn_font"onClick="initGame()"></div><div id="help"class="btn_font"onClick="showInfo()"></div><div id="language" class="btn_font"><select id="select1" class="select_language btn_font" name="select1" onchange="switchLanguage()"><option value="en-US">English</option><option value="zh-CN">中文(簡體)</option><option value="zh-TW">中文(繁體)</option><option value="ja-JP">日本語</option></select></div></div></div><div id="bg2"><div id="mainpage"><div id="gamepage"data-role="content"><div id="ai"></div><div id="qipan"><div id="qp_1"><div id="1qp"class="qp"></div></div><div id="qp_2"><div id="2qp"class="qp"></div></div><div id="qp_3"><div id="3qp"class="qp"></div></div><div id="qp_4"><div id="4qp"class="qp"></div></div><div id="qp_5"><div id="5qp"class="qp"></div></div><div id="qp_6"><div id="6qp"class="qp"></div></div><div id="qp_7"><div id="7qp"class="qp"></div></div><div id="qp_8"><div id="8qp"class="qp"></div></div><div id="qp_9"><div id="9qp"class="qp"></div></div><div id="h1_1"><div id="1a"class="ha1" ></div></div><div id="h1_2"><div id="2a"class="ha1"></div></div><div id="h1_3"><div id="3a"class="ha1"></div></div><div id="h1_4"><div id="4a"class="ha1"></div></div><div id="h1_5"><div id="5a"class="ha1"></div></div><div id="h2_1" ><div id="1p"class="ha2"></div></div><div id="h2_2" ><div id="2p"class="ha2"></div></div><div id="h2_3" ><div id="3p"class="ha2"></div></div><div id="h2_4" ><div id="4p"class="ha2"></div></div><div id="h2_5" ><div id="5p"class="ha2"></div></div></div><!--BUG--><div id='result'><div id="candy"class="co1">0</div><div id="trophy"class="co2">0</div><div id="result_text"></div><div id="result_close" onClick="closeResult()"></div><div id="result_head"></div></div><div id='scorepanel'><div id="scorepanel_c"></div><div id="scorepanel_text"></div><div id="player1_score">0</div><div id="vs">vs</div><div id="player2_score">0</div></div><div id="finger"></div><div id="finger_frame"></div><div id="nextStep" onclick="nextStep()"></div><div id="neverShow" onclick="neverShow()"></div><div id="tutorial"></div><div id="destiny_panel"></div><div id="destiny"><div id="destiny_text"></div></div></div><div id="choosepage"><div id="restart" class="btn_font" onClick="initGame()"></div><div id="comeback" class="btn_font" onClick="comeBack()"></div></div></div></div><div id="tips"><div id="tips_c"></div><div id="tips_icon"></div><div id="tips_text"></div></div><div id="share_page"><div id="share_page_c"></div><div id="share_friend" onclick="shareScore(1)"></div><div id="share_friends" onclick="shareScore(2)"></div><div id="share_text"></div></div> </body> </html>

? ? ? ? CSS的代碼如下,主要用于設置共同的樣式屬性和部分元素的移動、彈出、消失動畫。

* { -webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* make transparent link selection, adjust last value opacity 0 to 1.0 */ } body { -webkit-touch-callout: none; /* prevent callout to copy image, etc when tap to hold */ -webkit-text-size-adjust: none; /* prevent webkit from resizing text to fit */ -webkit-user-select: none; /* prevent copy paste, to allow, change 'none' to 'text' */ overflow: hidden; }/*主頁css--------------------------------------------*/ #icon6 { background-image: url(../img/icon6.png); position: absolute; top: 110px; left: 50%; margin-left: -100px; width: 201px; height: 130px; } #gamehead { text-align: center; line-height: 130px; font-weight: bolder; font-size: 20px; color: #fff; text-shadow: 0px 0px 10px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #select1 { appearance: none; -webkit-appearance: none; background: no-repeat; border: none; }/*主頁游戲按鈕*/ #choosepage1 { bottom: 250px; width: 143px; left: 50%; margin-left: -71px; position: absolute; } #start { top: 0px; position: absolute; background-image: url(../img/bt_1.png); width: 143px; height: 55px; } #help { top: 60px; position: absolute; background-image: url(../img/bt_2.png); width: 143px; height: 55px; } #language { top: 120px; position: absolute; background-image: url(../img/bt_3.png); width: 143px; height: 55px; } .btn_font { text-align: center; line-height: 55px; color: #FFFFFF; text-shadow: 0 0 5px #000; font-size: 15px; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; }/*游戲背景*/ #bg1 { background-size: 100% 100%; position: absolute; top: 0px; left: 0px; background-image: url(../img/bg_2.png); width: 100%; height: 100%; z-index: 999; } #bg2 { background-size: 100% 100%; position: absolute; top: 0px; left: 0px; background-image: url(../img/bg_2.png); width: 100%; height: 100%; }/*游戲簡介*/ #info { top: 0px; left: 0px; width: 100%; height: 100%; position: absolute; z-index: 1000; font-size: 13px; visibility: hidden; } #info_c { top: 0px; left: 0px; width: 100%; height: 100%; position: absolute; z-index: 1000; background-color: #666; opacity: 0.9; visibility: hidden; } #info_text { color: #FFF; } #info_close { background-image: url(../img/close.png); position: absolute; width: 50px; height: 50px; bottom: 0px; right: 0px; } .info_block_style { color: #FFFFFF; text-shadow: 0px 0px 2px #000; font-size: 13px; font-weight: bold; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } .info_img_style { border-radius: 30px; } .block_font { color: #FFF; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #block { position: absolute; width: 300px; height: 420px; top: 30px; left: 50%; margin-left: -150px; text-align: center; } #block0 { position: absolute; width: 300px; height: 40px; top: 0px; left: 50%; margin-left: -150px; font-size: 15px; text-align: center; } #block1 { position: absolute; width: 300px; height: 40px; top: 50px; left: 50%; margin-left: -150px; text-align: left; } #block2 { position: absolute; width: 300px; height: 40px; top: 140px; left: 50%; margin-left: -150px; text-align: left; } #block3 { position: absolute; width: 300px; height: 40px; top: 230px; left: 50%; margin-left: -150px; text-align: left; } #block4 { position: absolute; width: 300px; height: 40px; top: 320px; left: 50%; margin-left: -150px; text-align: left; } #block1_img { position: absolute; top: 40px; width: 160px; height: 50px; right: 5px; background-image: url(../img/tips1.png); } #block2_img { position: absolute; top: 40px; width: 160px; height: 50px; right: 5px; background-image: url(../img/tips2.png); } #block3_img { position: absolute; top: 40px; width: 160px; height: 50px; right: 5px; background-image: url(../img/tips3.png); } #block4_img { position: absolute; top: 40px; width: 160px; height: 50px; right: 5px; background-image: url(../img/tips4.png); }/*游戲css----------------------------------------------------------*/#gameheader { height: 50px; }/*電腦樣式*/ #ai { position: absolute; top: 0px; left: 0px; width: 60px; height: 91px; z-index: 996; }/*提示樣式*/ #tips { position: absolute; top: 230px; left: 0px; width: 100%; height: 69px; z-index: 1000; visibility: hidden; } #tips_c { position: absolute; bottom: 0px; left: 0px; width: 100%; height: 69px; z-index: 996; background-color: #999; opacity: 0.6; } #tips_icon { position: absolute; bottom: 0px; right: 0px; width: 69px; height: 69px; z-index: 1001; background-image: url(../img/tips_2.png); } #tips_text { top: 20px; position: absolute; width: 250px; left: 50%; margin-left: -125px; height: 49px; text-align: center; color: #ffffff; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; z-index: 999; } #destiny_panel { top: 0px; left: 0px; position: absolute; width: 100%; height: 100%; background-color: #000; opacity: 0.5; z-index: 995;visibility: hidden;} #tutorial{ top: 0px; left: 0px; position: absolute; width: 100%; height: 100%; background-color: #000; opacity: 0.5; z-index: 995;visibility: hidden;} /*先后手樣式*/ #destiny { background-image: url(../img/coin_2.png); left: 50%; margin-left: -55px; position: absolute; width: 109px; height: 112px; top: 200px; color: #000; text-align: center; font-weight: bolder; line-height: 112px; z-index: 997; } #destiny_text { color: #FFFFFF; text-shadow: 0 0 5px #000; font-size: 20px; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #finger{background-image: url(../img/finger.png);background-repeat:no-repeat;position: absolute;width: 200px;height: 110px;z-index: 996;font-size: 13px; color: #FFFFFF;font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;visibility: hidden;} #finger_frame{z-index: 996;top: 180px; width: 300px; left: 50%; margin-left: -150px;position:absolute;width:300px;height: 130px;border:4px solid;border-radius:15px;font-size: 12px;color: #fff;font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;visibility: hidden;text-indent:20px;} #nextStep{ bottom:70px;right:20px; position:absolute;width:100px;height: 40px;z-index: 996;font-size: 15px;text-align: center; color: #FFFFFF;background-color: #999;border-radius:10px;font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;} #neverShow{bottom:70px;right:130px; position:absolute;width:100px;height: 40px;z-index: 996;font-size: 15px;text-align: center; color: #FFFFFF;background-color: #999;border-radius:10px;font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;} /*狀態欄樣式*/ #tool { width: 100%; height: 35px; top: 0px; left: 0px; position: absolute; z-index: 1000; } #scorepanel { position: absolute; top: 0px; left: 0px; width: 90px; height: 40px;left: 50%; margin-left: -45px; z-index: 997; } #scorepanel_c { position: absolute; top: 0px; left: 0px; width: 90px; height: 40px;background-color: #999;border-radius:0px 0px 5px 5px;opacity: 0.6;} #scorepanel_text{text-align: center; position: absolute; top: 0px; width: 90px; height: 12px; left: 50%; margin-left: -45px; color: #ffffff; font-size: 12px; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;} #player1_score { text-align: center; position: absolute; bottom: 0px; width: 30px; height: 18px; left: 50%; margin-left: -45px; background-color: #6CF; color: #ffffff; font-size: 15px; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;border-radius:0px 0px 0px 5px;} #vs { text-align: center; position: absolute; bottom: 0px; width: 30px; height: 18px; left: 50%; margin-left: -15px; color: #ffffff; font-size: 15px; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #player2_score { text-align: center; position: absolute; bottom: 0px; width: 30px; height: 18px; left: 50%; margin-left: 15px; color: #ffffff; background-color: #F33; font-size: 15px; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;border-radius:0px 0px 5px 0px;} #rank { background-image: url(../img/rank.png); position: absolute; width: 44px; height: 30px; top: 2px; right: 47px; } #allCandy {line-height: 30px; background-repeat: no-repeat; background-image: url(../img/candy_mini.png); position: absolute; width: 80px; height: 30px; top: 2px; left: 0px;text-align: right; font-size: 15px; color: #fff; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;} #allCandy_text { line-height: 30px; position: absolute; width: 60px; height: 30px; top: 2px; left: 80px; font-size: 15px; color: #fff; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;} #winner { background-color: #00FA9A; color: #FFF; font-weight: lighter; } .sound { background-image: url(../img/sound.png); position: absolute; top: 2px; width: 30px; height: 30px; right: 10px; } .sound_shutdown { background-image: url(../img/sound_shutdown.png); position: absolute; top: 2px; width: 30px; height: 30px; right: 10px; }/*游戲結果*/ #result { background-repeat: no-repeat; background-image: url(../img/rankPage2.png); top: 90px; left: 50%; width: 184px; height: 390px; position: absolute; margin-left: -92px; z-index: 996; text-align: center; } #result_head{background-color: #fff; position: absolute; right: 0px; width: 100px;height: 30px;color: #FF0000; font-size: 20px;font-weight: bolder; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif;border:5px solid;border-radius:25px;} #candy { position: absolute; width: 172px; height: 68px; top: 40px; left: 50px; line-height: 68px; color: #FFF; text-indent: 50px; background-image: url(../img/rankp4.png); font-size: 15px; color: #FFFFFF; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #trophy { position: absolute; width: 172px; height: 68px; top: 110px; left: 50px; line-height: 68px; color: #FFF; text-indent: 50px; background-image: url(../img/rankp5.png); font-size: 15px; color: #FFFFFF; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #result_text { position: absolute; top: 178px; margin-left: 10px; text-align: left; color: #FFFFFF; text-shadow: 0 0 5px #000; font-size: 15px; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #result_close { background-image: url(../img/close.png); position: absolute; width: 50px; height: 50px; bottom: 75px; right: 0px; } #share_page { position: absolute; bottom: 70px; height: 70px; left: 50%; width: 120px; margin-left: -60px;z-index: 999;visibility: hidden; } #share_page_c { background-color: #999; position: absolute; bottom: 0px; height: 70px; left: 0px; width: 120px;border-radius: 10px; opacity: 0.6;} #share_friend { background-image: url(../img/friend.png); position: absolute; top: 20px; left: 5px; width: 50px; height: 50px; } #share_friends { background-image: url(../img/friends.png); position: absolute; top: 20px; right: 5px; width: 50px; height: 50px; } #share_text { position: absolute; top: 0px; left: 0px; width: 120px; height: 20px; text-align: center; color: #FFFFFF; text-shadow: 0 0 5px #000; font-size: 10px; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; }/*游戲選項*/ #restart { position: absolute; top: 0px; left: 0px; width: 143px; background-image: url(../img/bt_1.png); height: 55px; } #comeback { position: absolute; top: 60px; left: 0px; width: 143px; background-image: url(../img/bt_3.png); height: 55px; } .comeback { color: #ffffff; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #choosepage { top: 230px; width: 143px; left: 50%; margin-left: -71px; position: absolute; text-align: center; height: 55px; z-index: 998; visibility: hidden; } .choosepage_btn { position: absolute; right: 20px; line-height: 55px; font-size: large; text-decoration: none; }/*游戲棋盤*/ #gamepage { color: #FFFFFF; visibility: hidden; } #qipan { position: absolute; top: 50px; width: 300px; left: 50%; margin-left: -150px; text-align: center; line-height: 30px; height: 450px; } .qp { position: absolute; width: 100px; height: 113px; } .qp_w { position: absolute; width: 80px; height: 90px; background-image: url(../img/qp_w_mini.png); } #qp_1 { background-image: url(../img/qp_mini.png); position: absolute; top: 50px; left: 10px; width: 80px; height: 90px; } #qp_2 { background-image: url(../img/qp_mini.png); position: absolute; top: 50px; left: 110px; width: 80px; height: 90px; } #qp_3 { background-image: url(../img/qp_mini.png); position: absolute; top: 50px; left: 210px; width: 80px; height: 90px; } #qp_4 { background-image: url(../img/qp_mini.png); position: absolute; top: 163px; left: 10px; width: 80px; height: 90px; } #qp_5 { background-image: url(../img/qp_mini.png); position: absolute; top: 163px; left: 110px; width: 80px; height: 90px; } #qp_6 { background-image: url(../img/qp_mini.png); position: absolute; top: 163px; left: 210px; width: 80px; height: 90px; } #qp_7 { background-image: url(../img/qp_mini.png); position: absolute; top: 276px; left: 10px; width: 80px; height: 90px; } #qp_8 { background-image: url(../img/qp_mini.png); position: absolute; top: 276px; left: 110px; width: 80px; height: 90px; } #qp_9 { background-image: url(../img/qp_mini.png); position: absolute; top: 276px; left: 210px; width: 80px; height: 90px; }/*手牌樣式*/ .ha1 { line-height: 50px; color: #FFFFFF; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; font-size: 28px;text-align: center;width: 70px; height: 62px;} .ha2 { line-height: 50px; color: #FFFFFF; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; font-size: 28px;text-align: center;width: 70px; height: 62px;} #h2_1 { background-image: url(../img/hand_p1.png); position: absolute; bottom: 15px; left: 5px; width: 70px; height: 62px; } #h2_2 { background-image: url(../img/hand_p1.png); position: absolute; bottom: 15px; left: 60px; width: 70px; height: 62px; } #h2_3 { background-image: url(../img/hand_p1.png); position: absolute; bottom: 15px; left: 115px; width: 70px; height: 62px; } #h2_4 { background-image: url(../img/hand_p1.png); position: absolute; bottom: 15px; left: 170px; width: 70px; height: 62px; } #h2_5 { background-image: url(../img/hand_p1.png); position: absolute; bottom: 15px; left: 225px; width: 70px; height: 62px; } #h1_1 { background-image: url(../img/hand_a1.png); position: absolute; top: 0px; left: 5px; width: 70px; height: 62px; } #h1_2 { background-image: url(../img/hand_a1.png); position: absolute; top: 0px; left: 60px; width: 70px; height: 62px; } #h1_3 { background-image: url(../img/hand_a1.png); position: absolute; top: 0px; left: 115px; width: 70px; height: 62px; } #h1_4 { background-image: url(../img/hand_a1.png); position: absolute; top: 0px; left: 170px; width: 70px; height: 62px; } #h1_5 { background-image: url(../img/hand_a1.png); position: absolute; top: 0px; left: 225px; width: 70px; height: 62px; }.hand_p1_class{background-image: url(../img/hand_p1.png); position: absolute;top:0px;left:0px;width: 70px; height: 62px;z-index: 996;} .hand_a1_class{background-image: url(../img/hand_a1.png); position: absolute;top:0px;left:0px;width: 70px; height: 62px;z-index: 996;} /*游戲排行榜*/ #rankPage { background-image: url(../img/rankPage2.png); top: 100px; left: 50%; width: 184px; height: 290px; position: absolute; margin-left: -92px; z-index: 1000; visibility: hidden; } #rankClose { background-image: url(../img/close.png); position: absolute; width: 50px; height: 50px; bottom: 0px; right: 0px; } #rank0{position: absolute; width: 100px; height: 68px; top: 5px; margin-left: -50px;left: 50%; text-align: center;font-size: 16px; color: #FFFFFF; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #rank1 { position: absolute; width: 172px; height: 68px; top: 45px; left: 50px; line-height: 68px; text-align: center; background-image: url(../img/rankp1.png); font-size: 16px; color: #FFFFFF; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #rank2 { position: absolute; width: 172px; height: 68px; top: 115px; left: 50px; line-height: 68px; text-align: center; background-image: url(../img/rankp2.png); font-size: 16px; color: #FFFFFF; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; } #rank3 { position: absolute; width: 172px; height: 68px; top: 185px; left: 50px; line-height: 68px; text-align: center; background-image: url(../img/rankp3.png); font-size: 16px; color: #FFFFFF; text-shadow: 0 0 5px #000; font-family: "Arial", "Microsoft YaHei", "黑體", "宋體", sans-serif; }#desktopTest{position: absolute;left: 0px; top:50px;visibility: hidden;}/*上下浮動動畫*/ @keyframes updown {from { transform: translate(0px, 0px); }to { transform: translate(0px, -10px); } } @-webkit-keyframes updown {from { -webkit-transform: translate(0px, 0px); }to { -webkit-transform: translate(0px, -10px); } } .bo { animation: updown 0.5s linear 0s infinite alternate; -webkit-animation: updown 0.5s linear 0s infinite alternate; } .bo1 { animation: updown 1s linear 0s infinite alternate; -webkit-animation: updown 1s linear 0s infinite alternate; }/*拋硬幣動畫*/ @keyframes flipCoin {0% { transform: rotateY(0deg); }50% { transform: rotateY(1200deg); }100% { transform: rotateY(1800deg); } } @-webkit-keyframes flipCoin {0% { -webkit-transform: rotateY(0deg); }50% { -webkit-transform: rotateY(1200deg); }100% { -webkit-transform: rotateY(1800deg); } } .flip { animation: flipCoin 1.5s linear 0s forwards; -webkit-animation: flipCoin 1.5s linear 0s forwards; }/*滑動出現動畫*/ @keyframes translateL {from { transform: translate(0px, 0px); }to { transform: translate(-44px, 0px); } } @-webkit-keyframes translateL {from { -webkit-transform: translate(0px, 0px); }to { -webkit-transform: translate(-44px, 0px); } } .co1 { animation: translateL 0.5s linear 0s forwards; -webkit-animation: translateL 0.5s linear 0s forwards; } .co2 { animation: translateL 0.5s linear 0.5s forwards; -webkit-animation: translateL 1s linear 0s forwards; } .co3 { animation: translateL 0.5s linear 1s forwards; -webkit-animation: translateL 1.5s linear 0s forwards; }/*win,lose動畫*/ @keyframes zoom {from { transform: scale(3, 2) rotate(0deg);}to { transform: scale(1, 1) rotate(20deg); } } @-webkit-keyframes zoom {from { -webkit-transform: scale(3, 2) rotate(0deg); }to { -webkit-transform: scale(1, 1) rotate(20deg); } } #result_head { animation: zoom 0.5s linear 0s forwards; -webkit-animation: zoom 0.5s linear 0s forwards; } .pageTurn { animation: zoom 0.5s linear 0s forwards; -webkit-animation: zoom 0.5s linear 0s forwards; }/*交換動畫*/ @keyframes swing {from { transform: translate(-5px, 0px); }to { transform: translate(5px, 0px); } } @-webkit-keyframes swing {from { -webkit-transform: translate(-5px, 0px); }to { -webkit-transform: translate(5px, 0px); } } .toSwing { animation: swing 0.1s linear 0s 8 alternate forwards; -webkit-animation: swing 0.1s linear 0s 8 alternate forwards; }@keyframes touchToMove {from { transform: translate(0px, 0px); }to { transform: translate(50px, -100px); } } @-webkit-keyframes touchToMove {from { -webkit-transform: translate(0px, 0px); }to { -webkit-transform: translate(50px, -100px); } } .touchMove { animation: touchToMove 2s linear 0s infinite ; -webkit-animation: touchToMove 2s linear 0s infinite ; }

? ? ? ? (三)游戲響應開發

? ? ? ? 1.通過JavaScript.addEventListener()div棋子元素添加選中、拖動、放入,觸發對應mousedown、mousemove、mouseup事件的響應函數。

? ? ? ? 為div元素添加事件響應函數,代碼如下:

document.getElementById("h2_" + i).addEventListener('mouseup', outmouse); document.getElementById("h2_" + i).addEventListener('mousemove', movemouse); document.getElementById("h2_" + i).addEventListener('mousedown', selectmouse);

? ? ? ? 為div元素實現拖放效果,代碼如下:

//玩家棋子拖拽移動回調函數 function movemouse(e) {if (isdrag) {var n = thx + e.pageX- hx;var m = thy + e.pageY - hy;$("#h2_" + parseInt(e.target.id)).css({"left": n,"top": m});hx1 = e.pageX;hy1 = e.pageY;return false;} }

? ? ? ? 2.使用audio元素,為游戲添加音效,載入游戲音頻文件、播放音頻代碼如下:

btn_media = document.createElement("audio"); btn_media.src = "media/btn09.mp3"; btn_media.play()

? ? ? ? 3.使用二維數組存放雙方棋子,用于判斷雙方下棋后剩余棋子的情況,a[][0]代表手牌數值,a[][1]代表手牌狀態,主要代碼如下:

//玩家與電腦的手牌,a[][0]代表手牌數值,a[][1]代表手牌狀態 var AIHand = new Array([5][2]); var playerHand = new Array([5][2]); for (var k = 0; k < 5; k++) {AIHand[k] = new Array();for (var j = 0; j < 2; j++) {AIHand[k][j] = "";} } for (var k = 0; k < 5; k++) {playerHand[k] = new Array();for (var j = 0; j < 2; j++) {playerHand[k][j] = "";} }

? ? ? ? 4.使用二維數組存放棋局,用于判斷實時得分以及控制AI下棋,主要代碼如下:

//記錄手牌的棋盤 var gameChessBoardForHand = new Array([3][3]);for (var k = 0; k < 3; k++) {gameChessBoardForHand[k] = new Array();for (var j = 0; j < 3; j++) {gameChessBoardForHand[k][j] = 0;} }

? ? ? ? 5.編寫簡單AI算法,自動下棋,目前原理只是有空位就放。

// AI思考,返回AI的操作aiRequest function discard() {var aiRequest = new Array();//復制棋盤var cloneChessBoard = new Array([3][3]);for (var k = 0; k < 3; k++) {cloneChessBoard[k] = new Array();for (var j = 0; j < 3; j++) {cloneChessBoard[k][j] = 0;}}for (var k = 0; k < 3; k++) {for (var j = 0; j < 3; j++) {cloneChessBoard[k][j] = parseInt(gameChessBoard[k][j]);}}aiRequest[0] = -1;aiRequest[1] = -1;aiRequest[2] = -1;//模擬玩家走一步var miniGameState = 9;for (var k = 0; k < 5; k++) {//如果玩家手牌可以出if (AIHand[k][1] > 0) {for (var i = 0; i < 3; i++) {for (var j = 0; j < 3; j++) {if (cloneChessBoard[i][j] == 0) {cloneChessBoard[i][j] = AIHand[k][0] + 1000;var gameState = judgeGameCong(cloneChessBoard);//console.log(gameState);if (gameState[0] % 10 < gameState[2] % 10) {aiRequest[0] = i;aiRequest[1] = j;if ((gameState[2] % 10) <= miniGameState && (gameState[2] % 10) != -1) {miniGameState = gameState[2] % 10;aiRequest[2] = k;}//aiRequest[2]=k; BUG1用了玩家的手牌位置來出}cloneChessBoard[i][j] = 0;}}}}}var enableChessBoard = new Array();//沒有找到解則if (aiRequest[0] == -1) {for (var i = 0; i < 3; i++) {for (var j = 0; j < 3; j++) {if (cloneChessBoard[i][j] == 0) {enableChessBoard.push(i * 3 + j);//aiRequest[0] = i;//aiRequest[1] = j;}}}var randomNum = getRandom(enableChessBoard.length - 1);var i = Math.floor(enableChessBoard[randomNum] / 3);var j = enableChessBoard[randomNum] % 3;console.log(randomNum, i, j, randomNum, enableChessBoard.length);aiRequest[0] = i;aiRequest[1] = j;for (var i = 0; i < 5; i++) {if (AIHand[i][1] > 0) {aiRequest[2] = i;}}}return aiRequest; }

? ? ? ? 6.判斷輸贏,把結果存入全局變量gameState中,主要代碼如下:

// 判斷游戲勝負 function judgeGameCong(chessboard) {var judgeArray = new Array([8][3]);//gameState[0-3]分別代表電腦得分、電腦三連子位置、玩家得分、玩家三連子位置var gameState = new Array(-1, -1, -1, -1);//將棋盤橫豎、對角線8個數組存入judgeArrayfor (var g = 0; g < 3; g++) {judgeArray[g] = new Array();for (var j = 0; j < 3; j++) {judgeArray[g][j] = chessboard[g][j];}}for (var g = 3, k = 0; g < 6; g++, k++) {judgeArray[g] = new Array();for (var j = 0; j < 3; j++) {judgeArray[g][j] = chessboard[j][k];}}judgeArray[6] = new Array();judgeArray[6][0] = chessboard[0][0];judgeArray[6][1] = chessboard[1][1];judgeArray[6][2] = chessboard[2][2];judgeArray[7] = new Array();judgeArray[7][0] = chessboard[0][2];judgeArray[7][1] = chessboard[1][1];judgeArray[7][2] = chessboard[2][0];//遍歷judgeArray,并將最高分與數組位置存入gameState,其中gameState[0-3]分別代表電腦得分、電腦三連子位置、玩家得分、玩家三連子位置for (var i = 0; i < 8; i++) {var x = parseInt(judgeArray[i][0] / 1000);var y = parseInt(judgeArray[i][1] / 1000);var z = parseInt(judgeArray[i][2] / 1000);var a = parseInt(judgeArray[i][0]) + parseInt(judgeArray[i][1]) + parseInt(judgeArray[i][2]);if ((x == y) && (x == z) && (x != 0)) {if (x == 1) {if ((a % 10) >= (gameState[0] % 10)) {gameState[0] = a;gameState[1] = i;}} else {if ((a % 10) >= (gameState[2] % 10)) {gameState[2] = a;gameState[3] = i;}}}}// console.log(gameState);return gameState;}

三、完整JavaScript源代碼

? ? ? ? 完整源文件下載地址↓↓↓

開心連連算,一純HTML+CSS+Javascript開發的益智類的數字棋牌游戲,無游戲框架,瀏覽器直接運行,源碼隨時修改-Javascript文檔類資源-CSDN下載

總結

以上是生活随笔為你收集整理的JavaScript | 益智类数字棋牌小游戏,无游戏框架,浏览器直接运行JavaScript(js)小游戏【源码+解析】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

精品亚洲视频在线观看 | 午夜美女网站 | 欧美专区亚洲专区 | 成人一级免费视频 | 久久理论电影网 | 精品国产中文字幕 | 亚洲精品午夜aaa久久久 | 九九九免费视频 | 国产123区在线观看 国产精品麻豆91 | 精品亚洲免费视频 | 国产成人99av超碰超爽 | 久久视屏网 | 99综合电影在线视频 | 综合网成人 | 一二三区av | 99在线观看免费视频精品观看 | 成人亚洲综合 | 偷拍久久久 | 18久久久久久 | 国产成人久久 | 久久99久久99精品免观看软件 | 国产精品1区 | 国产一级黄色av | 国产在线播放一区二区 | 久久久精品小视频 | 久久99精品国产91久久来源 | 成人h视频在线播放 | zzijzzij亚洲日本少妇熟睡 | 视频成人永久免费视频 | 亚洲黄色av | 99久高清在线观看视频99精品热在线观看视频 | 成年人黄色免费视频 | 久久国产精品久久w女人spa | 日日射av| 丁香花五月 | 亚洲亚洲精品在线观看 | 成人性生交大片免费看中文网站 | 最近中文字幕视频完整版 | 91亚洲狠狠婷婷综合久久久 | 日本精品一区二区 | 中文字幕在线视频一区二区三区 | 乱男乱女www7788 | 久草在线免费电影 | 免费av在线网站 | 天天色综合1 | 特级毛片网 | 在线看日韩 | 中文乱码视频在线观看 | 狠狠黄| 91最新地址永久入口 | 日批在线观看 | 国产成人不卡 | 欧美在线日韩在线 | 日本精品一区二区三区在线播放视频 | 国产人成看黄久久久久久久久 | 九九热在线免费观看 | 免费观看av网站 | www.香蕉视频 | 亚洲精品国精品久久99热一 | 精品在线一区二区 | 中文字幕国产视频 | 一区二区三区电影在线播 | 欧美一级视频免费看 | 免费91在线 | 亚洲综合欧美日韩狠狠色 | 2019免费中文字幕 | 国产 精品 资源 | 色偷偷88888欧美精品久久 | 狠狠网亚洲精品 | 欧洲亚洲精品 | 免费成人在线视频网站 | 国产五月色婷婷六月丁香视频 | 亚洲成a人片在线观看网站口工 | 久久久久久久久久伊人 | 国产精品av一区二区 | 日韩精品最新在线观看 | 亚洲综合成人婷婷小说 | 中文电影网| 网站在线观看日韩 | 97av超碰 | 欧美精品亚洲精品 | 国产亚洲视频在线 | 久久久午夜视频 | 黄网站色| 日韩免费高清在线观看 | 日韩精品一区二区三区高清免费 | 综合亚洲视频 | 狠狠狠色丁香婷婷综合激情 | 97日日碰人人模人人澡分享吧 | 欧美va天堂va视频va在线 | 视频91| 午夜三级理论 | 日韩精品91偷拍在线观看 | 美女视频黄在线 | 国产精品久久久久久久久免费看 | 中文字幕国产一区 | 欧美成人中文字幕 | 狠狠色丁香久久婷婷综合_中 | 中文字幕视频一区二区 | 五月天免费网站 | 久久99精品久久久久久清纯直播 | 亚洲一区二区精品视频 | 国产精品免费在线视频 | 亚洲国产精品成人精品 | av福利网址导航 | av免费看在线| av电影中文 | 午夜手机电影 | 国产日韩精品一区二区三区在线 | 国产在线一区二区三区播放 | 97小视频 | 国产色视频网站2 | 在线观看国产麻豆 | 黄色在线免费观看网址 | 免费在线91| 五月婷丁香网 | 8x8x在线观看视频 | 国产精品不卡在线播放 | 国产日产高清dvd碟片 | 丁香午夜婷婷 | 亚洲h色精品 | 欧美日韩不卡在线观看 | 激情五月综合 | 国产午夜剧场 | 四虎在线免费观看视频 | 国产精品自产拍在线观看桃花 | 中文字幕日本电影 | 午夜美女福利 | 欧美91视频 | 在线视频区 | 国产黄色观看 | 久久精品系列 | 亚洲一区二区三区毛片 | 国产视频18 | 欧美一级xxxx | 在线观看中文字幕av | 最新av网址在线 | 天天翘av| 五月开心激情 | 午夜精品av| 草久在线观看 | 超碰免费观看 | 中文字幕第一页av | 久久综合中文字幕 | 亚州国产精品久久久 | 最新免费中文字幕 | 成人福利在线 | 国产91在线看 | 国产精品麻豆三级一区视频 | 国产精品久久久久av免费 | 国内精品久久久久久中文字幕 | 深夜精品福利 | 国产精品久久久久影视 | 在线观看一级片 | 一区二区激情视频 | 97视频网站 | 丁香激情综合国产 | 888av| 97av视频| 亚洲最新av | 色播五月激情综合网 | av网址最新 | 亚洲免费成人 | 69亚洲乱 | 超碰精品在线 | 免费在线播放视频 | 色综合久久66 | 欧美另类成人 | 国产精品女同一区二区三区久久夜 | 探花视频免费观看高清视频 | 999电影免费在线观看2020 | 7777精品伊人久久久大香线蕉 | 视频二区在线 | 久久国产精品99久久久久久进口 | 三级av在线| 超碰99人人 | 天天操天天吃 | 国产精品国产三级在线专区 | 色婷婷婷| 国产精品免费久久久久影院仙踪林 | 日韩精品影视 | 婷婷色吧 | 91成人在线看 | 在线免费精品视频 | 国产原厂视频在线观看 | 久草在线视频精品 | 国产精品视频全国免费观看 | 黄色免费网战 | 欧亚日韩精品一区二区在线 | 国产黄色免费看 | 尤物一区二区三区 | 日韩极品视频在线观看 | 日本久久综合视频 | 91夜夜夜 | 色999视频 | 亚洲精品综合一二三区在线观看 | 国产一级二级在线播放 | 精品自拍sae8—视频 | 免费看在线看www777 | 久久久精品亚洲 | 九九免费在线观看视频 | 在线观看亚洲专区 | 在线韩国电影免费观影完整版 | 天堂视频中文在线 | 中中文字幕av在线 | 97视频在线免费 | 国产免费又粗又猛又爽 | 日韩美女高潮 | 亚洲精品动漫久久久久 | 精品久久国产一区 | 国产高清视频网 | 婷婷国产在线观看 | 国产精品一区二区三区观看 | 色香网| 亚洲一区久久久 | 国产精品国产三级在线专区 | 国产亚洲精品成人av久久影院 | 午夜av色| 丁香六月天婷婷 | 成片免费观看视频 | 欧美激情xxxx性bbbb | 色偷偷88888欧美精品久久久 | 九九热免费精品视频 | 在线观看久草 | 视频在线观看99 | 伊人日日干 | 91成人网在线观看 | 国产一二三区av | 久久夜靖品 | 久久久精品日本 | 六月婷婷色 | 日韩91av| 亚洲资源在线 | 亚洲激情视频在线观看 | 国产一级电影 | 18做爰免费视频网站 | 久热av | 91在线免费观看国产 | 久久人人爽人人爽 | 黄色视屏免费在线观看 | 91日韩精品 | 在线成人小视频 | 黄色小说视频在线 | 天天综合久久综合 | 国产精品99久久久久久人免费 | 亚洲精品乱码久久久久久蜜桃动漫 | 国产成人久久精品一区二区三区 | 亚洲欧美乱综合图片区小说区 | 91免费在线 | av不卡中文 | 亚洲精品免费在线观看 | 99色视频| av中文字幕网站 | 亚洲一区精品人人爽人人躁 | 久久艹在线 | 去干成人网| 六月丁香伊人 | 手机在线看片日韩 | 91激情小视频 | 成人欧美一区二区三区在线观看 | 一级黄色a视频 | 国产精品99久久久久的智能播放 | 亚洲激情网站免费观看 | 国产精品一区二区av日韩在线 | 欧美成人aa | av三级av| 91在线一区| 蜜臀久久99精品久久久久久网站 | 麻花豆传媒mv在线观看网站 | 天天躁日日躁狠狠躁av中文 | 视频三区在线 | 99精品在线播放 | 一区二区三区免费看 | 国产小视频在线观看 | 日韩免费视频一区二区 | 亚洲午夜小视频 | 成人免费视频播放 | 亚洲三级影院 | 97在线视频免费播放 | 国产福利91精品一区 | 天天综合网~永久入口 | 狠狠色伊人亚洲综合网站色 | 国产精品国产三级国产aⅴ入口 | 午夜精品久久久久久久久久 | 成人九九视频 | 日韩高清激情 | 大胆欧美gogo免费视频一二区 | 四虎欧美| 日韩激情一二三区 | 九九九热精品免费视频观看网站 | 国产老妇av | 亚洲欧美成人 | 三级黄色三级 | 西西44人体做爰大胆视频 | 91av九色| 91成人免费看片 | 91精品国产综合久久婷婷香蕉 | 亚洲日本va中文字幕 | 在线观看成人一级片 | 粉嫩一二三区 | 国产精品1区2区3区在线观看 | 高清av网| 国产99久久99热这里精品5 | 国产精品入口66mio女同 | 国产午夜精品免费一区二区三区视频 | 日韩久久久久久久久久久久 | 成人黄性视频 | 国产欧美日韩视频 | 久久婷五月 | 欧美一进一出抽搐大尺度视频 | 99久久精品国产一区二区三区 | 丝袜少妇在线 | 中文字幕欧美三区 | 国产色女人 | 亚洲视频免费在线看 | 91 在线视频播放 | 欧美日韩免费观看一区=区三区 | 国产高清视频网 | 久草在线视频免赞 | 欧美最爽乱淫视频播放 | 色橹橹欧美在线观看视频高清 | 91精品亚洲影视在线观看 | 欧美激情第一区 | 欧美激情精品久久久久久 | 久久伊人精品天天 | 欧美午夜a| 成人免费一区二区三区在线观看 | 久久午夜免费观看 | 国产91在线观看 | av在线电影播放 | 婷婷视频在线观看 | 国产日韩在线看 | 色狠狠一区二区 | 国产精品毛片完整版 | 激情五月婷婷 | 一区二区三区四区五区在线 | www五月天com | 99精品国产在热久久下载 | 国产精品国产三级国产aⅴ无密码 | 国产成人在线看 | 国产精品久久久久久久久久不蜜月 | 久热av在线 | 午夜精品导航 | 午夜精品久久久久久久久久久久久久 | 一级精品视频在线观看宜春院 | 色综合久久久久久久 | 日韩免费二区 | 久久综合九色欧美综合狠狠 | av官网在线| japanesexxx乱女另类 | 欧美久久久久久久久中文字幕 | 国产精品99久久久久久大便 | 综合久久久久久 | 亚洲国产欧美在线看片xxoo | 国产视频在 | 黄色小视频在线观看免费 | 国产一级二级三级在线观看 | 欧美一级片在线免费观看 | 天堂在线一区二区三区 | av在线播放国产 | 午夜少妇一区二区三区 | 日韩精品视频在线观看免费 | 亚洲精品在线观看av | 国产色在线视频 | 日本天天操 | 免费一级片观看 | 欧美视频不卡 | 中文字幕色婷婷在线视频 | 日韩xxx视频| 欧美一级久久久久 | 欧美激情综合色综合啪啪五月 | 久久国产乱 | 国产日韩欧美网站 | 日韩二级毛片 | 久热电影 | 美女网站在线观看 | 中文字幕av全部资源www中文字幕在线观看 | 91精品国产91久久久久福利 | 日本黄色免费网站 | 久久综合射| 中文字幕久久亚洲 | 亚洲精品视频一二三 | 国产亚洲精品久久 | 成人av免费 | 国产精品视频地址 | 欧美视屏一区二区 | 精品国内 | 亚洲理论电影网 | 亚洲黄色高清 | 欧美性天天 | 另类老妇性bbwbbw高清 | 五月天久久婷 | 99riav1国产精品视频 | 日韩欧美一区二区三区黑寡妇 | 91亚洲国产| 99久久综合精品五月天 | 中文字幕欧美日韩va免费视频 | 女人18毛片a级毛片一区二区 | 综合网天天| 青青草国产成人99久久 | 成人精品电影 | 波多野结衣在线视频免费观看 | 国产午夜精品理论片在线 | 免费看的黄色录像 | 国产一级二级三级视频 | 欧洲精品二区 | 四虎国产精品免费 | 国产精品ⅴa有声小说 | 色婷婷亚洲婷婷 | 欧美日韩免费观看一区=区三区 | 在线免费黄 | 日日操操 | 国产精品一区久久久久 | 久久成人在线视频 | 中文字幕精品久久 | 蜜桃av观看 | 超碰97中文 | 人人干在线观看 | 丁香婷婷色综合亚洲电影 | 国产视频资源在线观看 | 91久久奴性调教 | 日本aaaa级毛片在线看 | 欧美中文字幕第一页 | 激情五月网站 | 久久亚洲电影 | 成人免费观看大片 | 国产高清精 | 日韩精品视频第一页 | 久人人 | 精品视频免费在线 | 久久亚洲综合国产精品99麻豆的功能介绍 | 国产专区精品视频 | 99热这里是精品 | 中文字幕在线观看播放 | 色噜噜日韩精品一区二区三区视频 | 999国产在线 | 中文字幕黄色 | 97国产在线播放 | 人人爽久久久噜噜噜电影 | 成年人电影毛片 | 香蕉精品在线观看 | 成人欧美在线 | 欧美性生爱 | 国产a级精品 | 亚洲视频电影在线 | 久久久综合精品 | 丝袜精品视频 | 狠狠色狠狠色综合日日92 | 天堂av官网 | 91福利试看 | 亚洲色图激情文学 | 日本99久久 | 韩国精品在线观看 | 在线91播放 | 黄av资源 | 午夜久久久精品 | 午夜久久福利视频 | 日本黄区免费视频观看 | 久久国产日韩 | 国产高清视频在线观看 | 久久国语露脸国产精品电影 | 国产精品久久久久毛片大屁完整版 | 黄色高清视频在线观看 | 日本深夜福利视频 | 欧美色综合久久 | 中文亚洲欧美日韩 | 久久精品国产第一区二区三区 | 97色噜噜 | 欧美日韩一区二区免费在线观看 | 9ⅰ精品久久久久久久久中文字幕 | 成人免费一级片 | 一二三久久久 | 久久视频在线看 | 免费观看性生交 | 波多野结衣一区 | 狠狠的日 | 国产在线观看免费av | 中文字幕超清在线免费 | 国产一二三四在线视频 | 天天草天天爽 | 久久精品亚洲综合专区 | 精品国产99国产精品 | 成人作爱视频 | 久久影院中文字幕 | 月下香电影 | 狂野欧美激情性xxxx欧美 | 国产美女精品在线 | 日日夜夜精品免费观看 | 国产精品永久在线观看 | 久久精品免费电影 | 91麻豆精品国产自产在线游戏 | 在线免费观看视频一区二区三区 | 91激情视频在线 | 色婷婷综合五月 | 美女视频黄频大全免费 | 精品999在线 | 国产中出在线观看 | 国产精品免费观看在线 | 丁香色天天 | 成人免费观看大片 | 亚洲1区在线 | 中文字幕三区 | 麻豆影视在线播放 | 九九三级毛片 | 免费日韩高清 | 97精品视频在线 | 国产精品地址 | 青青看片 | 亚洲韩国一区二区三区 | 狠狠躁夜夜a产精品视频 | 色偷偷中文字幕 | 99精品视频在线观看视频 | 久久,天天综合 | av片一区二区 | 日韩大片在线免费观看 | 黄色一级大片在线免费看产 | 中文字幕欲求不满 | 色在线视频网 | 欧美综合久久 | 丁香一区二区 | 成人毛片在线观看 | 免费一级日韩欧美性大片 | 在线韩国电影免费观影完整版 | 日本护士三级少妇三级999 | 久久久免费国产 | 久久综合色天天久久综合图片 | 中文字幕av最新 | 亚州精品天堂中文字幕 | 亚洲永久精品在线观看 | 高清不卡毛片 | 99爱视频| 日操干 | 成人在线播放av | 亚洲综合国产精品 | 99在线观看 | 久久久久久免费毛片精品 | 国产一级高清 | 91人人网 | 天天射综合 | 精品成人国产 | av在线免费不卡 | 波多野结衣久久精品 | 国产裸体视频网站 | 国产一区二区在线精品 | 91毛片在线 | 又黄又爽又色无遮挡免费 | www.天天射| 国产精品一二 | 不卡中文字幕在线 | 亚洲精品国产拍在线 | 婷婷六月天综合 | 久久视频6 | 欧美国产日韩在线视频 | 日日夜精品| 午夜精品久久久久久久99 | 狠狠五月天 | 日韩高清一区 | 日韩精品视频在线观看网址 | 久久优| 日本久久精 | 99精品国产高清在线观看 | 天天综合天天做天天综合 | 久久69精品 | 午夜国产福利视频 | 五月婷婷综合在线观看 | 九九热在线观看视频 | 91麻豆传媒 | 黄色精品国产 | 日韩在线免费视频 | 亚洲电影成人 | 亚洲精品色婷婷 | 亚洲国产电影在线观看 | 国产 一区二区三区 在线 | 久久看免费视频 | 国产在线观看h | 欧美另类xxxx | 免费一级毛毛片 | 99久国产| 国产精品入口66mio女同 | 亚洲无在线 | 欧美福利视频一区 | 日韩一区二区三区在线看 | www色网站| 在线看片中文字幕 | 国产专区日韩专区 | 成年人在线观看视频免费 | 久久国产精彩视频 | 日日躁你夜夜躁你av蜜 | 日韩最新在线视频 | 美女视频黄免费 | 久久综合久久伊人 | 亚洲成人软件 | 最近免费在线观看 | 国产精品av在线免费观看 | 亚洲精品国产精品久久99 | 色av婷婷| 99精品免费久久久久久久久日本 | 日韩国产精品久久久久久亚洲 | 精品人人人人 | 欧美男男激情videos | 在线免费日韩 | 视频二区在线视频 | 亚洲精品视频在线免费播放 | 五月天久久激情 | 丁香六月婷婷激情 | 久久少妇av| 国产精品日韩在线观看 | 久久99国产精品久久99 | 国产韩国日本高清视频 | 日韩免费高清在线观看 | 国产精品永久免费观看 | 日韩在线观看网站 | 日韩在线欧美在线 | 婷婷丁香久久五月婷婷 | 麻豆视频成人 | 国产人在线成免费视频 | 国产一区二区三区四区大秀 | 91尤物国产尤物福利在线播放 | 91豆花在线| 91成人网在线观看 | 一区二区视频免费在线观看 | 成人教育av| 天堂在线成人 | 麻豆免费在线视频 | 天天干天天拍天天操天天拍 | 园产精品久久久久久久7电影 | 成人av在线影院 | 国产精品激情在线观看 | a v在线视频| 成人av一区二区在线观看 | 国产69精品久久久久久久久久 | 国产成人一区三区 | www.97视频| 久久久精品一区二区三区 | 日韩欧美国产激情在线播放 | 午夜天使 | 久久精久久精 | 国产丝袜网站 | 欧美最新大片在线看 | 91麻豆精品国产自产在线游戏 | 992tv在线 | 一区二区视 | 激情综合久久 | 久草在线免费新视频 | av片中文| 97在线免费观看 | 久久a国产 | 91精品国产自产在线观看永久 | 91精品国产福利在线观看 | 日韩精品最新在线观看 | 国产日韩欧美自拍 | 国产成人久久av977小说 | 国产一区二区观看 | 精品一二三四视频 | 99热只有精品在线观看 | 久久久综合香蕉尹人综合网 | 黄色软件视频网站 | 黄色一级网 | 深爱激情五月婷婷 | 亚洲最大在线视频 | 日韩电影一区二区三区在线观看 | 91在线精品秘密一区二区 | 在线播放一区二区三区 | 亚洲五月六月 | 九九热在线视频 | 精品一区二区影视 | 国产色拍拍拍拍在线精品 | 欧美一二三视频 | 97色在线观看免费视频 | 粉嫩av一区二区三区四区在线观看 | a色视频| 色天天中文 | 日韩免费一级电影 | 五月天婷亚洲天综合网鲁鲁鲁 | 一区二区三区免费在线观看视频 | 色wwww| 亚洲精品66 | 碰碰影院| 欧美亚洲三级 | 日本黄色免费大片 | 亚洲精选99| 欧美一级片免费 | 欧美日韩视频在线 | 国产69精品久久久久9999apgf | 99视频+国产日韩欧美 | 精品国产成人av在线免 | 狠狠干狠狠色 | 三级av小说| 国产精品不卡在线播放 | 亚洲综合色视频在线观看 | 日韩中文字幕a | 性日韩欧美在线视频 | 国产午夜在线观看视频 | 欧美资源在线观看 | 亚洲国产欧美在线人成大黄瓜 | 久久久精品一区二区 | 正在播放国产一区 | 欧美精品久久久久久久久老牛影院 | 在线观看日韩av | 成人免费视频免费观看 | 日韩在线短视频 | 久久精品中文字幕 | 久精品在线观看 | 国产麻豆成人传媒免费观看 | 国产精品国产三级国产专区53 | 精品国产aⅴ一区二区三区 在线直播av | 91自拍视频在线 | 日韩三级久久 | 久久综合干| 国精产品满18岁在线 | 日一日操一操 | 精品美女久久久久久免费 | 欧美美女一级片 | 干干操操 | 夜夜夜夜操 | 国产精品免费视频观看 | 免费看污黄网站 | 91精选 | 日日摸日日碰 | 粉嫩av一区二区三区四区在线观看 | 久久精品欧美一 | 成人av亚洲| 九9热这里真品2 | 精品高清美女精品国产区 | 免费在线日韩 | 五月综合激情网 | 97人人模人人爽人人喊网 | 欧美日韩一区二区在线观看 | 久久最新| 免费a级观看 | 免费日韩一区 | 西西人体4444www高清视频 | 精品国产乱码久久 | 久久久精品国产免费观看一区二区 | 色综合久久综合网 | 欧美与欧洲交xxxx免费观看 | 四虎精品成人免费网站 | 婷婷色中文 | 欧美精彩视频在线观看 | 黄色福利视频网站 | 日日日日干 | 成年人免费看片网站 | 色在线国产| 欧美福利视频一区 | 中文字幕在线播放日韩 | 国产亚洲精品久久久久久移动网络 | 日韩精品首页 | 九九久久免费视频 | 日本黄色片一区二区 | 久久官网| 免费情趣视频 | 亚洲精品中文字幕在线观看 | 亚洲爱爱视频 | 日韩精品一区二区三区视频播放 | 日韩色在线观看 | 亚洲黄色av| 久久久久久久久黄色 | 在线观看免费高清视频大全追剧 | aav在线| 黄色免费在线视频 | 亚洲精品视频在线观看视频 | 国产亚洲婷婷 | 亚洲精品99久久久久中文字幕 | 国产免费作爱视频 | 精品国内自产拍在线观看视频 | 久久久久久久久久亚洲精品 | 日韩av免费一区二区 | 丁香六月久久综合狠狠色 | 国产精品一区二区三区电影 | 亚洲成av人片 | www.久久久.com | 毛片网在线观看 | av资源中文字幕 | 久久综合久久久久88 | 中文字幕婷婷 | 成人精品久久久 | 国产精品专区h在线观看 | 日韩精品一区二区三区在线视频 | 欧美男男激情videos | a级一a一级在线观看 | 国产黄色一级片 | 一级成人免费 | 婷婷六月天在线 | 国产在线观看一区 | 91大片网站 | 免费在线观看一区二区三区 | 丁香婷婷综合色啪 | 人人爽人人舔 | 美女视频是黄的免费观看 | 国产日女人 | 国产精品av在线免费观看 | 亚欧日韩成人h片 | 免费福利小视频 | 黄色软件视频大全免费下载 | av网站在线免费观看 | 97日日 | 国产精品你懂的在线观看 | 亚洲精品视频在线看 | 六月婷婷久香在线视频 | 亚洲乱码精品久久久 | 国产在线观看地址 | 婷婷成人在线 | 欧美激情视频一区二区三区 | 中文字幕人成不卡一区 | 超碰99人人 | 国产美女精品视频 | 国产精品成人一区二区三区 | 女人18片毛片90分钟 | 91精品久 | 久久久三级视频 | 综合网在线视频 | 在线免费av观看 | 人人爱人人舔 | 国产精品久久久久四虎 | 99热手机在线观看 | 国产96在线观看 | 国产精品 中文字幕 亚洲 欧美 | 亚洲黄色免费电影 | 伊人久久在线观看 | 亚洲va欧美va人人爽 | 日韩毛片在线播放 | 日韩伦理片一区二区三区 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 欧美精品少妇xxxxx喷水 | 九九免费视频 | 日韩视频免费播放 | 日本三级久久 | 黄色高清视频在线观看 | 婷婷久久国产 | 91视频免费看网站 | 精品福利片| 丁香六月天婷婷 | 97超碰在线资源 | 丁香久久婷婷 | 永久av免费在线观看 | 爱av在线网 | www.色就是色| 亚洲精品乱码久久久久久写真 | 亚洲欧美成人综合 | 日日夜夜精品免费观看 | 欧美成人按摩 | 97超在线| 色网站国产精品 | 日韩欧美精品一区 | 99国产精品视频免费观看一公开 | 国产欧美久久久精品影院 | 国产精品1000 | 中文字幕在线播放视频 | 伊人五月 | 日韩色在线 | 国产精品久久久久久欧美 | 一区 二区电影免费在线观看 | 午夜精品一区二区三区在线视频 | 国产视频日本 | 久久久久久久久久久国产精品 | 亚洲国产免费 | 久久免视频 | 国产精品久久久久久久婷婷 | 日本成人中文字幕在线观看 | 日韩欧美视频 | 九色琪琪久久综合网天天 | 808电影 | 天天射天天操天天干 | 高清av免费观看 | 中文字幕亚洲国产 | 中文字幕在线观看完整 | 欧美在线视频二区 | 国产资源精品 | 日韩在线观看电影 | 免费看成人a | 国产一级久久久 | 最近高清中文在线字幕在线观看 | 91丨九色丨高潮 | av电影中文字幕 | 久久久久97国产 | 欧美黄网站 | 久草精品视频在线看网站免费 | 特片网久久| 日韩免费福利 | 91麻豆精品 | 久久国产香蕉视频 | 日本中文一区二区 | 久久艹在线观看 | 91麻豆精品国产91久久久久久久久 | 天天干天天操天天操 | 亚洲在线视频网站 | 日本最新一区二区三区 | 日韩精品在线视频免费观看 | 国产在线专区 | 国产成人久久精品一区二区三区 | 国产在线观看污片 | 日韩免费网址 | 国内精品亚洲 | 激情电影在线观看 | 国产精品不卡视频 | 久久中文字幕导航 | 久久美女高清视频 | 久久久久中文 | 91av蜜桃 | 日韩亚洲精品电影 | 波多野结衣在线观看一区二区三区 | 特级黄录像视频 | 国产破处精品 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 日韩专区 在线 | 成人毛片一区二区三区 | 高清av在线| 五月综合色婷婷 | 91视频在线播放视频 | 国产精品美女免费看 | 成人免费在线视频观看 | 92精品国产成人观看免费 | 一区二区三区四区精品视频 | 久久国产精品电影 | 国产高清成人 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 玖玖精品视频 | 九九在线视频免费观看 | 狠狠色伊人亚洲综合网站野外 | 色就色,综合激情 | 日本久久影视 | 在线亚洲高清视频 | 国产精品一区二区久久精品 | 综合网av | 久草a视频| 天天干夜夜| 国产成人一区二区在线观看 | 精品乱码一区二区三四区 | 这里只有精品视频在线观看 | 日韩91av | 99久久久久免费精品国产 | 97视频人人澡人人爽 | 中文字幕一区二区三区乱码在线 | 亚洲高清在线精品 | 青草草在线视频 | 婷婷久久综合九色综合 | 国产精品久久亚洲 | 午夜在线观看影院 | 91男人影院 | 91漂亮少妇露脸在线播放 | 免费日韩一区二区三区 | 亚洲欧美视频 | 综合激情伊人 | 久久99久| 国产成人av免费在线观看 | 国产精品美乳一区二区免费 | 亚洲v精品 | 超薄丝袜一二三区 | 日日干夜夜骑 | 欧美性精品 | 欧洲视频一区 | 在线观看国产永久免费视频 | 精品一区二区日韩 | 在线观看蜜桃视频 | 欧美日韩国产一区二区三区 | 久草网在线 | 亚州精品天堂中文字幕 | 午夜视频在线观看一区二区三区 | 日韩高清在线一区二区三区 | 热久久免费国产视频 | 亚洲精品在线视频观看 | 成人观看视频 | 日韩精品久久中文字幕 | 五月天九九 | 激情小说 五月 | 麻豆国产精品永久免费视频 | 日本一区二区三区免费观看 | 日韩午夜网站 | 亚洲成人第一区 | 99精品一区 | 最近中文字幕高清字幕免费mv | 日本在线中文在线 | 久久久精品久久日韩一区综合 | 去看片 | 久久精品视频一 | 99在线免费观看 | 色av色av色av | 久久国产精品视频观看 | 日韩高清 一区 | 欧美色婷婷 | 国产精品久久久久一区 | 在线免费观看羞羞视频 | 久久涩涩网站 | 91一区二区三区久久久久国产乱 | 国产免费又黄又爽 | 国产中文在线观看 | 成人va天堂 | 国产成人免费观看 | 亚洲影院色| 欧美一级乱黄 | 91欧美国产 | 成人午夜毛片 | 美女久久久久久久久久 | 久久精品精品 | 日日夜夜免费精品 | 免费国产视频 | 午夜视频久久久 | 黄色av一级 |