黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術文章
文章詳情頁

java實現2048小游戲

瀏覽:2日期:2022-08-17 10:21:41

本文實例為大家分享了java實現2048小游戲的具體代碼,供大家參考,具體內容如下

一、實現效果

java實現2048小游戲

二、實現代碼

Check表示格子,GameView實現游戲視圖界面及功能,是核心。

java實現2048小游戲

Check.java

import java.awt.Color;import java.awt.Font;// 方格類public class Check { public int value; Font font1 = new Font('宋體', Font.BOLD, 46); Font font2 = new Font('宋體', Font.BOLD, 40); Font font3 = new Font('宋體', Font.BOLD, 34); Font font4 = new Font('宋體', Font.BOLD, 28); Font font5 = new Font('宋體', Font.BOLD, 22); public Check() { value = 0; //value為方格中數字 } //字體顏色 public Color getForeground() { switch (value) { case 0: return new Color(0xcdc1b4);//0的顏色與背景色一致,相當于沒有數字 case 2: case 4: return Color.BLACK; default: return Color.WHITE; } } //字體背景顏色,即方格顏色 public Color getBackground() { switch (value) { case 0: return new Color(0xcdc1b4); case 2: return new Color(0xeee4da); case 4: return new Color(0xede0c8); case 8: return new Color(0xf2b179); case 16: return new Color(0xf59563); case 32: return new Color(0xf67c5f); case 64: return new Color(0xf65e3b); case 128: return new Color(0xedcf72); case 256: return new Color(0xedcc61); case 512: return new Color(0xedc850); case 1024: return new Color(0xedc53f); case 2048: return new Color(0xedc22e); case 4096: return new Color(0x65da92); case 8192: return new Color(0x5abc65); case 16384: return new Color(0x248c51); default: return new Color(0x248c51); } } public Font getCheckFont() { if (value < 10) { return font1; } if (value < 100) { return font2; } if (value < 1000) { return font3; } if (value < 10000) { return font4; } return font5; }}

GameView.java

import java.awt.*;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.util.ArrayList;import java.util.List;import java.util.Random;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;public class GameView{ private static final int jframeWidth = 405;//窗口寬高 private static final int jframeHeight = 530; private static int score = 0; Font topicFont = new Font('微軟雅黑', Font.BOLD, 50);//主題字體 Font scoreFont = new Font('微軟雅黑', Font.BOLD, 28);//得分字體 Font explainFont = new Font('宋體', Font.PLAIN,20);//提示字體 private JFrame jframeMain; private JLabel jlblTitle; private JLabel jlblScoreName; private JLabel jlblScore; private JLabel jlblTip; private GameBoard gameBoard; public GameView() { init(); } public void init() { //1、創建窗口 jframeMain = new JFrame('2048小游戲'); jframeMain.setSize(jframeWidth, jframeHeight); jframeMain.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jframeMain.setLocationRelativeTo(null);//窗口顯示位置居中 jframeMain.setResizable(false); jframeMain.setLayout(null);//設置絕對布局,以便后面可以用setBounds設置位置 jlblTitle = new JLabel('2048', JLabel.CENTER); jlblTitle.setFont(topicFont); jlblTitle.setForeground(Color.BLACK); jlblTitle.setBounds(50, 0, 150, 60); jframeMain.add(jlblTitle); //2、框架窗口搭建好,則需向里面開始添加內容 //設置字體及其顏色、位置 jlblScoreName = new JLabel('得 分', JLabel.CENTER); jlblScoreName.setFont(scoreFont); jlblScoreName.setForeground(Color.WHITE); jlblScoreName.setOpaque(true); jlblScoreName.setBackground(Color.GRAY); jlblScoreName.setBounds(250, 0, 120, 30); jframeMain.add(jlblScoreName); //3、得分區(得分名+分數) jlblScore = new JLabel('0', JLabel.CENTER); jlblScore.setFont(scoreFont); jlblScore.setForeground(Color.WHITE); jlblScore.setOpaque(true); jlblScore.setBackground(Color.GRAY); jlblScore.setBounds(250, 30, 120, 30); jframeMain.add(jlblScore); //4、提示說明區 jlblTip = new JLabel('操作: ↑ ↓ ← →, 按esc鍵重新開始 ', JLabel.CENTER); jlblTip.setFont(explainFont); jlblTip.setForeground(Color.DARK_GRAY); jlblTip.setBounds(0, 60, 400, 40); jframeMain.add(jlblTip); //5、主游戲面板區 gameBoard = new GameBoard(); gameBoard.setBounds(0, 100, 400, 400); gameBoard.setBackground(Color.GRAY); gameBoard.setFocusable(true);//焦點即當前正在操作的組件,也就是移動的數字 gameBoard.setLayout(new FlowLayout()); jframeMain.add(gameBoard); } // 游戲面板 class GameBoard extends JPanel implements KeyListener { private static final int CHECK_GAP = 10;//方格之間的間隙 private static final int CHECK_SIZE = 85;//方格大小 private static final int CHECK_ARC = 20;//方格弧度 private Check[][] checks = new Check[4][4]; private boolean isadd = true; public GameBoard() { initGame(); addKeyListener(this); } private void initGame() { score = 0; for (int indexRow = 0; indexRow < 4; indexRow++) { for (int indexCol = 0; indexCol < 4; indexCol++) { checks[indexRow][indexCol] = new Check(); } } // 最開始時生成兩個數 isadd = true; createCheck(); isadd = true; createCheck(); } @Override public void keyPressed(KeyEvent e) { switch (e.getKeyCode()) { case KeyEvent.VK_ESCAPE: initGame();//重新開始游戲(初始化游戲) break; case KeyEvent.VK_LEFT: moveLeft(); createCheck();//調用一次方法創建一個方格數字 judgeGameOver();//創建后判斷是否GameOver,若所有格子均滿即跳出GameOver break; case KeyEvent.VK_RIGHT: moveRight(); createCheck(); judgeGameOver(); break; case KeyEvent.VK_UP: moveUp(); createCheck(); judgeGameOver(); break; case KeyEvent.VK_DOWN: moveDown(); createCheck(); judgeGameOver(); break; default: break;//按其他鍵沒有反應 } repaint();//刷新,會自動調用paint()方法,重新繪制移動后的圖 } private void createCheck() { List<Check> list = getEmptyChecks(); if (!list.isEmpty() && isadd) { Random random = new Random(); int index = random.nextInt(list.size()); Check check = list.get(index); // 2, 4出現概率3:1 int randomValue = random.nextInt(4); check.value = ( randomValue % 3 == 0 || randomValue % 3 == 1) ? 2 : 4;//只有[0,4)中的2才能生成4 isadd = false; } } // 獲取空白方格 private List<Check> getEmptyChecks() { List<Check> checkList = new ArrayList<>(); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { if (checks[i][j].value == 0) { checkList.add(checks[i][j]); } } } return checkList; } //是否全部格子占滿,全部占滿則GameOver private boolean judgeGameOver() { jlblScore.setText(score + ''); if (!getEmptyChecks().isEmpty()) { return false; } for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { //判斷是否存在可合并的方格 if (checks[i][j].value == checks[i][j + 1].value || checks[i][j].value == checks[i + 1][j].value) { return false; } } } return true; } private void moveLeft() { //找到一個非空格子后checks[i][j].value > 0,可分為三種情況處理 for (int i = 0; i < 4; i++) { for (int j = 1, index = 0; j < 4; j++) { if (checks[i][j].value > 0) { //第一種情況:checks[i][j](非第1列)與checks[i][index]的數相等,則合并乘以2,且得分增加 if (checks[i][j].value == checks[i][index].value) { score += checks[i][index].value *= 2; checks[i][j].value = 0; isadd = true; } else if (checks[i][index].value == 0) { //第二種:若checks[i][index]為空格子,checks[i][j]就直接移到最左邊checks[i][index] checks[i][index].value = checks[i][j].value; checks[i][j].value = 0; isadd = true; } else if (checks[i][++index].value == 0) { //第三種:若checks[i][index]不為空格子,并且數字也不相等,若其旁邊為空格子,則移到其旁邊 checks[i][index].value = checks[i][j].value; checks[i][j].value = 0; isadd = true; } } } } } private void moveRight() { for (int i = 0; i < 4; i++) { for (int j = 2, index = 3; j >= 0; j--) { if (checks[i][j].value > 0) { if (checks[i][j].value == checks[i][index].value) { score += checks[i][index].value *= 2; checks[i][j].value = 0; isadd = true; } else if (checks[i][index].value == 0) { checks[i][index].value = checks[i][j].value; checks[i][j].value = 0; isadd = true; } else if (checks[i][--index].value == 0) { checks[i][index].value = checks[i][j].value; checks[i][j].value = 0; isadd = true; } } } } } private void moveUp() { for (int i = 0; i < 4; i++) { for (int j = 1, index = 0; j < 4; j++) { if (checks[j][i].value > 0) { if (checks[j][i].value == checks[index][i].value) { score += checks[index][i].value *= 2; checks[j][i].value = 0; isadd = true; } else if (checks[index][i].value == 0) { checks[index][i].value = checks[j][i].value; checks[j][i].value = 0; isadd = true; } else if (checks[++index][i].value == 0){ checks[index][i].value = checks[j][i].value; checks[j][i].value = 0; isadd = true; } } } } } private void moveDown() { for (int i = 0; i < 4; i++) { for (int j = 2, index = 3; j >= 0; j--) { if (checks[j][i].value > 0) { if (checks[j][i].value == checks[index][i].value) { score += checks[index][i].value *= 2; checks[j][i].value = 0; isadd = true; } else if (checks[index][i].value == 0) { checks[index][i].value = checks[j][i].value; checks[j][i].value = 0; isadd = true; } else if (checks[--index][i].value == 0) { checks[index][i].value = checks[j][i].value; checks[j][i].value = 0; isadd = true; } } } } } @Override public void paint(Graphics g) { super.paint(g); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { drawCheck(g, i, j); } } // GameOver if (judgeGameOver()) { g.setColor(new Color(64, 64, 64, 100));//RGBA最后一個A可以視為透明度 g.fillRect(0, 0, getWidth(), getHeight());//填充矩形(游戲面板),將暗黑色填充上去 g.setColor(Color.WHITE); g.setFont(topicFont); FontMetrics fms = getFontMetrics(topicFont);//FontMetrics字體測量,該類是Paint的內部類,通過getFontMetrics()方法可獲取字體相關屬性 String value = 'Game Over!'; g.drawString(value, (getWidth()-fms.stringWidth(value)) / 2, getHeight() / 2);//字體居中顯示 } } // 繪制方格 // Graphics2D 類是Graphics 子類,擁有強大的二維圖形處理能力 private void drawCheck(Graphics g, int i, int j) { Graphics2D gg = (Graphics2D) g; //下面兩句是抗鋸齒模式,計算和優化消除文字鋸齒,字體更清晰順滑 gg.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON); gg.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, RenderingHints.VALUE_STROKE_NORMALIZE); //獲取方格 Check check = checks[i][j]; //不同數字設置背景色 gg.setColor(check.getBackground()); // 繪制圓角 gg.fillRoundRect(CHECK_GAP + (CHECK_GAP + CHECK_SIZE) * j, CHECK_GAP + (CHECK_GAP + CHECK_SIZE) * i, CHECK_SIZE, CHECK_SIZE, CHECK_ARC, CHECK_ARC); //繪制字體及其顏色 gg.setColor(check.getForeground()); gg.setFont(check.getCheckFont()); // 文字測量,并對文字進行繪制 FontMetrics fms = getFontMetrics(check.getCheckFont()); String value = String.valueOf(check.value); //使用此圖形上下文的當前顏色繪制由指定迭代器給定的文本。 //getAscent()是FontMetrics中的一個方法, //getDescent() 為降部 gg.drawString(value, CHECK_GAP + (CHECK_GAP + CHECK_SIZE) * j + (CHECK_SIZE - fms.stringWidth(value)) / 2, CHECK_GAP + (CHECK_GAP + CHECK_SIZE) * i + (CHECK_SIZE - fms.getAscent() - fms.getDescent()) / 2 + fms.getAscent());//讓數字居中顯示 } @Override public void keyReleased(KeyEvent e) { } @Override public void keyTyped(KeyEvent e) { } } public void showView() { jframeMain.setVisible(true); }}

Main.java

public class Main { public static void main(String[] args) { new GameView().showView(); }}三、重難點講解

3.1 數字移動問題

數字移動是一難點,分三種情況,以moveLeft()為例

(1)按左鍵,若最左邊是相同的,則合并

java實現2048小游戲

(2)若左邊是空格,則直接移動到最左即可

java實現2048小游戲

(3)若最左邊不為空格,且不相等,則看它右邊是否是空格,是則移動到其旁邊

java實現2048小游戲

3.2 繪圖問題—抗鋸齒

java提供的Graphics 2D,它是Graphics 子類

Graphics2D gg = (Graphics2D) g;gg.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);gg.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL,RenderingHints.VALUE_STROKE_NORMALIZE);

上面這兩個語句實現的功能是消除文字鋸齒,字體更清晰順滑,可以看下圖沒有setRenderingHint和有setRenderingHint的區別

java實現2048小游戲

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 中文字幕在线看人 | 永久免费看片在线播放 | 亚洲精品乱码久久久久 | 丰满少妇高潮惨叫久久久一 | 欧美在线视频一区二区 | 国产在线视频网址 | 中文字幕乱偷无码av先锋 | 免费无码午夜福利片69 | 国产成人精品一区二区仙踪林 | 美国一级大黄一片免费中文 | 日本一级淫片色费放 | 欧美日韩在线观看一区 | 国偷自拍| 亚洲欧美日韩久久精品 | av在线不卡观看 | 国产真人性做爰久久网站 | 亚洲一级二级 | 亚洲成a人片77777潘金莲 | 精品不卡一区二区 | 国精产品999国精产品官网 | 老司机精品视频一区二区 | 妇女性内射冈站hdwwwooo | 伊人久久综合色 | 成人免费视频网站 | 亚洲一区二区三区av天堂 | 国产精品捆绑调教网站 | 美女福利视频一区 | 青青艹在线观看 | 成人网站在线进入爽爽爽 | 少妇被爽到高潮动态图 | 91噜噜噜| 交换做爰2中文字幕 | 五月激情日韩欧美啪啪婷婷 | 激情五月色综合国产精品 | 最近中文字幕mv在线资源 | 中文字幕乱码熟女人妻水蜜桃 | 国产福利萌白酱在线观看视频 | 成人免费在线播放 | 黄色动漫在线免费观看 | 天天骑天天干 | 国产精品 高清 尿 小便 嘘嘘 | 国产综合久久久久鬼色 | 非洲黑人三级全黄 | 情欲少妇人妻100篇 国产精品日韩av在线播放 | 九九九久久国产免费 | 少妇三级全黄 | 亚洲精品乱码久久久久久按摩观 | 深夜成人福利视频 | 久久久久久欧美六区 | 亚洲青涩网 | 亚洲国产成人一区 | 丁香一区二区 | 91亚洲国产成人精品一区二三 | 五月伊人网 | 欧美日韩国产一区二区三区不卡 | 日韩香蕉视频 | 成人a级做爰生活片 | 免费啪啪小视频 | 欧美色五月 | 澳门日本三级少妇三级99 | 一级看片免费视频囗交 | 青青青视频免费 | 久久www免费人成_网站 | 日韩不卡av | 天海翼av在线播放 | 国产一二三区在线 | 久久婷婷五月综合色和啪 | 三级黄色片免费观看 | 黄色视频毛片 | 成人妇女免费播放久久久 | 可以免费观看的av网站 | 国产精品国产三级国产aⅴ无密码 | 免费av一区 | 精品久久久久久久无码 | 久久久久麻豆v国产精华液好用吗 | 中字幕人妻一区二区三区 | 国精产品一区二区三区黑人免费看 | 二区三区在线观看 | 特级做a爰片毛片免费看108 | 日韩伊人网| 国产激情美女久久久久久吹潮 | 久久精品国产亚洲精品 | 久热免费在线 | 饥渴少妇勾引水电工av | 人人看人人做 | 日本黄色片在线播放 | 色偷偷亚洲男人的天堂 | 96久久| 久久久久久久久久久久网站 | 日韩精品资源 | 欧美黄色激情视频 | 做爰丰满少妇1314 | 91好色先生| 日韩欧美一区二区三区黑寡妇 | 亚洲欧美性受久久久999 | 红桃视频一区二区三区免费 | 日韩性色| 成人久久18免费网站图片 | 国产亚洲精| 野花社区www高清视频 | 人人妻人人澡人人爽人人精品97 | 在线欧美亚洲 | 超碰在线伊人 | 国产精品免费一区二区三区 | 欧美成人在线视频 | 欧美日韩在线观看一区 | 欧美视频在线不卡 | 九九九九国产 | 天堂成人在线观看 | 午夜国产 | 四虎视频在线精品免费网址 | 日日狠狠久久偷偷四色综合免费 | 成年人免费高清视频 | 永久www成人看片 | 亚洲制服无码 | av图区| 久久99国产乱子伦精品免费 | 亚洲区欧美区综合区自拍区 | 中文国产日韩精品av片 | 天堂无码人妻精品一区二区三区 | 亚洲淫区 | 日本最新中文字幕 | 亚洲一线av | 久久天天综合桃花久久 | 久久国产柳州莫菁门 | 性生交片免费无码看人 | 97在线视频人妻无码 | 伊人久久大香线蕉av一区二区 | 在线看成人av | 青青国产在线 | 免费特级毛片 | 美日韩成人 | 五月天久久久久 | 精品一区二区三区免费毛片 | 夜精品a片一区二区三区无码白浆 | 国内精品久久久久伊人aⅴ 国内精品毛片 | 天天插在线视频 | 四虎国产精品成人免费影视 | 久草视频精品 | 粗暴蹂躏av一区二区 | 成人av毛片 | 欧美性猛交xxxx乱大交3 | 夜夜爽一区二区三区 | 人人爽人人爽人人片av | 亚洲国产成人精品无码一区二区 | 欧美日韩国产成人高清视频 | 成人看 | 自拍偷窥第一页 | 日本丰满熟妇videossex一 | 丰满婷婷久久香蕉亚洲新区 | 国产欧美在线一区二区三区 | 国产精品国产三级国产aⅴ原创 | a亚洲精品 | 精品一区二区在线视频 | 太粗太长太硬高潮了av | 少妇人妻偷人精品免费视频 | 午夜色大片 | 国产精品综合久久久久久 | 国产欧美日韩精品丝袜高跟鞋 | 精品久久久久久久人人人人传媒 | www天天干| 久草资源网 | 精东影业一区二区三区 | 中文字幕亚洲一区二区三区 | 日韩精品一区二区三区老鸭窝 | 国产精品一区二三区 | 日本免费网站在线观看 | 欧美怡春院一区二区三区 | 天天综合天天做天天综合 | 石原莉奈一区二区三区在线观看 | 国产福利在线永久视频 | 亚洲国产在 | 91成人在线看 | 婷婷天天 | 国产在线精品成人一区二区 | 久久久久久久久久99精品 | 国产999视频 | 欧美精品二区三区 | 亚洲综合欧美在线一区在线播放 | 国产精品入口夜色视频大尺度 | 爱情岛论坛亚洲品质自拍网址 | 久久精品网站视频 | 欧美成人自拍 | 色妞www精品视频7777 | 国产伦精品一区 | 国产精品一卡二卡三卡四卡 | www国产成人免费观看视频 | 好吊色一区二区三区 | 亚洲精品乱码久久久久久金桔影视 | 久久毛片网 | 337p西西人体大胆瓣开下部 | 爱情岛亚洲论坛入口福利 | 99国产精品99久久久久久娜娜 | 国产主播中文字幕 | 中文在线字幕观看 | 欧美激情亚洲一区 | 岛国av动作片在线观看 | 女人喷潮完整视频 | 亚欧在线视频 | 大陆日韩欧美 | 久久久久久亚洲 | 黄色片高清| 国模叶桐尿喷337p人体 | 久久国产资源 | 2020亚洲视频| 国内精品久久久久久久影视 | 亚洲成人午夜影院 | 日韩深夜影院 | 国产精品女同一区二区久久夜 | 亚洲一级理论片 | 蜜臀av粉嫩av懂色av | 成人午夜亚洲精品无码网站 | 午夜免费大片 | 毛茸茸亚洲孕妇孕交片 | 欧美乱妇狂野欧美在线视频 | 国产精品一品二区三区的使用体验 | 欧美混交群体交 | 国产日本欧美一区二区 | 国产一级一片免费播放放a 国产一级一片射内视频 | 伊人久久精品无码二区麻豆 | 欧美一区二区二区 | 天堂а√在线地址中文在线 | 影音先锋中文字幕无码 | 中文人妻熟妇乱又伦精品 | 91av片| 中文字幕在线不卡 | 岳的奶又大又白又紧在线观看 | 少妇高潮喷水久久久影院 | 中文字幕无码免费久久99 | 一级坐爱片| 欧美性高潮视频 | 日本www视频在线观看 | 国产女主播av在线 | 美女黄色免费网站 | 国产欧美激情在线观看 | 中文字幕不卡在线88 | av在线激情 | 影音先锋在线播放 | 国产精品情侣高潮呻吟 | 国产精品好爽好紧好大 | 在线看片网址 | 国产乱子伦精品无码专区 | 超碰丝袜 | 国产手机在线 | 男人天堂2024| 国产原创av在线 | 在线亚洲色图 | 日韩 欧美 动漫 国产 制服 | 97久久超碰中文字幕 | 亚洲国产成人aⅴ毛片大全密桃 | 女人高潮av国产伦理剧 | 久久综合激情 | 欧美日韩理论片 | 国产精品亚洲一区二区在线观看 | 好大好硬好爽免费视频 | 成人性生交大片免费卡看 | 国产麻豆md传媒视频 | 苍井空一区二区波多野结衣av | 日韩中文字幕一区二区三区 | 国产成人无码aa精品一区 | 超乳hitomi在线播放痴汉 | 亚洲免费在线 | 免费久久网站 | 国产精品自拍小视频 | 成年人小视频在线观看 | 99在线影院 | 伊人焦久影院 | 中文在线а√天堂官网 | 欧美一区二区在线视频 | 91视频分类 | 久久综合久久综合九色 | 99国产精品一区 | 欧美性视频在线 | 你懂的网址在线观看 | 精品久久久久久久久午夜福利 | 国产精品调教视频 | 国产tscd人妖同性另类调教 | 日本高清视频色wwwwww色 | 日韩精品免费一区二区三区竹菊 | 成人短视频在线 | 丰满白嫩大屁股ass 久久精品无码一区二区三区免费 | 国产精品9999 | 欧美aaaaaaaaaa| 成人观看| 亚洲影视中文字幕 | www婷婷av久久久影片 | 理论片在线观看视频 | 国产91综合 | 欧美午夜一区二区福利视频 | 少妇搡bbbb搡bbb搡打电话 | 成人黄色在线看 | 中文字幕在线精品 | 51综合区亚洲线观看 | 国产人与禽zoz0性伦在线 | 爱爱网站免费 | 亚洲午夜无码毛片av久久京东热 | 韩国一级淫片 | 成人性生交大片免费看r视频 | 久久久国产精品视频 | 欧美风情第一页 | 国产精品第一 | 性生大片免费观看一片黄动漫 | 国产av新搬来的白领女邻居 | 日本公与丰满熄理论在线播放 | 久久国产精品视频一区 | 国产视频国产区 | 奇米影视奇米色 | 床上激情网站 | 国产一区二区三区在线观看视频 | 亚洲制服丝袜精品久久 | 色哟哟精品一区二区 | 久久综合av色老头免费观看 | 久久久精品免费视频 | 国产激情a| 国产专区一 | 亚洲精品成av人片天堂无码 | mm1313亚洲国产精品无码试看 | 桥本有菜aⅴ一区二区三区 桥本有菜免费av一区二区三区 | av在线免费在线观看 | 日韩免费无码一区二区三区 | 欧美极品少妇xxxxⅹ喷水 | 4438x成人免费 | 曰本一级黄色片 | 国产成人在线免费观看 | 粉嫩av一区二区三区四区五区 | 欧美三级日本三级 | 国产激情久久久久影院老熟女 | 亚洲国产精品成人天堂 | 亚洲人成网站18禁止 | 欧美激情在线一区二区三区 | 777精品伊人久久久久大香线蕉 | a国产免费| 精品一区二区三区在线视频 | 欧美日韩久久久久久 | 国产亚洲精品aaaaaaa片 | 色天堂在线视频 | 亚洲人成色7777在线观看 | 亚洲色欲色欲欲www在线 | 91在线精品观看 | 91丨九色丨黑人外教 | 日本妞xxxxxxxxx68 | 精品视频在线观看一区二区 | 亚洲一级片在线播放 | 欧美大片免费在线观看 | 日欧美老女人 | 性欧美亚洲xxxx乳在线观看 | 亚洲精品主播一区二区三区 | 黄色毛片一级片 | 丰满少妇人妻无码专区 | 国产精品人人妻人人爽 | 欧美成人一区二区三区 | 主播视频com入口在线观看 | 精品久久国产 | 欧洲色视频 | 国产精品久久婷婷 | 紧身裙女教师三上悠亚红杏 | 日本日本19xxxⅹhd乱影响 | 黄色一级片在线免费观看 | 欧美在线不卡 | 亚洲欧美在线播放 | 国产一级高清视频 | 国内精品国产成人国产三级 | 在线 | 一区二区三区四区 | 久久99国产精品久久99果冻传媒 | 福利视频一区二区三区 | 人妻少妇精品一区二区三区 | 五月天婷婷综合 | 在线看av的网址 | 精品国产区一区二 | 日本欧美在线 | 亚洲国产aⅴ成人精品无吗 欧洲熟妇色xxxx欧美老妇多毛网站 | 国产精品色综合 | 男人边做边吃奶头视频 | 久爱视频在线观看 | 68精品久久久久久欧美 | 亚洲视频在线免费 | 九一国产精品 | 日本人妻中文字幕乱码系列 | 综合色视频| 无码午夜福利视频一区 | 狠狠躁夜夜躁人人爽天天不卡软件 | 在线免费毛片 | 97超碰在线免费观看 | 久久男人网 | 国产精品久久久久9999鸭 | 亚洲怡春院| 又大又黄又粗又爽的免费视频 | 91禁看片 | 日本丰满肉感bbwbbwbbw | 91橘梨纱中出体验在线观看 | 少妇午夜啪爽嗷嗷叫视频 | 六姐妹在线观看免费 | 国产精品区一区二区三在线播放 | 成人片黄网站色大片免费毛片 | 91免费视频播放 | 亚洲精品久久久久999中文字幕 | 日韩在线 中文字幕 | 蜜臀av一区二区 | 国产精品视频二区不卡 | 天天干天天射综合网 | 日本一二三区视频在线 | 久久一区二区三区视频 | 国产成人精品视频网站 | 美女国产精品 | 欧美自拍嘿咻内射在线观看 | 成人免费视频国产 | 成人区人妻精品一区二区不卡视频 | 18禁无遮挡啪啪无码网站 | 国内久久久| 麻豆小视频 | 色婷婷精品国产一区二区三区 | 岬奈奈美女教师中文字幕 | 精品国产三级a∨在线 | 日韩欧美大片 | 日韩欧美视频免费在线观看 | 久久久久夜色精品国产老牛91 | 亚洲性av网站| 国产69精品久久久久久久久久 | 中文字幕av无码不卡免费 | 亚洲女同性ⅹxx关女同网站 | 国内国内在线自偷第68页 | 99精品视屏 | 久久精品国产三级 | 国产欧美一区二区三区不卡视频 | 亚洲a∨国产av综合av网站 | 久久久久久久网 | 免费观看性生交大片3 | 奇米影视奇米色777欧美 | 成人在线免费观看视频 | 黄色av不卡 | 亚洲欧美一区二区三区 | 欧美性猛交ⅹxxx乱大交妖精 | 毛片在线网站 | 午夜精品福利一区二区三区蜜桃 | 玖玖爱av| 日本污ww视频网站 | 91激情小视频 | 91久操| 91亚洲日本aⅴ精品一区二区 | 亚洲精品久久五月天堂 | 一道本道加勒比天天看 | 中国农村一级片 | 日日噜噜夜夜狠狠久久丁香五月 | 亚洲成a人片在线观看无码 97se亚洲精品一区 | 欧美性猛交xxxx乱大交蜜桃 | 成人在线手机视频 | 国产色婷婷精品综合在线手机播放 | 国产精品99精品 | 日本乱偷人妻中文字幕在线 | 99九九精品视频 | 巨胸不知火舞露双奶头无遮挡 | 性欧美18—19sex性高清 | 日产精品久久久一区二区 | 东京av男人的天堂 | 亚洲国产精品婷婷 | 人人爱爱人人 | 欧美激情精品久久久久久蜜臀 | 91性| 毛片基地免费观看 | 9久9久9久女女女九九九一九 | 国内精品久久久久久影视8 国内精品久久久久影视老司机 | 久久国产色av免费看 | 四虎网站免费观看视频 | 99久久婷婷国产综合精品免费 | 欧美饥渴熟妇高潮喷水水 | 欧美成人综合在线 | 黄色a毛片 | 成人免费黄色片 | 久久综合给合久久狠狠狠97色 | 一级黄色片看看 | 午夜精品久久ed2kmp4 | 日日夜夜网站 | 在线日韩 | 操皮视频 | 亚洲视频一区二区三区 | 国产一级大片在线观看 | www黄色网| 狠狠cao日日穞夜夜穞av | 日本在线小视频 | 少妇激情网 | 国产人妻精品一区二区三区 | 99一级片| 中文字幕一级二级三级 | 欧美国产乱视频 | 国产精品久久久久国产三级传媒 | 人妻少妇精品中文字幕av蜜桃 | 国产又粗又猛又黄视频 | 一性一交一伦一色一按—摩 | 欧美激情日韩 | 偷看做性肉体探欲k8 | 欧美美女一区二区三区 | 久久99精品久久久久久久青青日本 | 天天躁夜夜躁狠狠是什么心态 | 少妇高潮喷水久久久影院 | 久久美| 久色亚洲 | 午夜视频福利 | 人人玩人人弄 | 精品久久久久久久久久久久久久 | 另类综合视频 | 在线黄色观看 | 中文字幕在线视频一区 | 久久精品综合 | 在线看片成人 | 日韩精品极品视频 | 激情网站免费 | 免费国产黄网站在线观看可以下载 | 亚洲国产成人精品女人 | 国产精品igao视频网网址不卡日韩 | 国产中文字幕乱人伦在线观看 | 玩丰满熟妇xxxx视频 | 色一情一乱一乱一区99av白浆 | www.天天色 | 国产精品久久久久一区二区 | 无尺码精品产品网站 | 国产视频一二区 | 欧美一区二区日韩 | 粉嫩精品国产色综合久久不8 | 国产美女牲交视频 | 无套内谢大学处破女www小说 | 少妇饥渴难耐 | 成人在线亚洲 | 久草视频精品 | 人妻互换免费中文字幕 | 97久久国产| 好吊妞在线观看 | 人妻洗澡被强公日日澡 | www成人| 无码av天堂一区二区三区 | 欧美中文字幕一区二区三区 | 欧美中文字幕一区二区三区 | 涩涩涩av | 色欲麻豆国产福利精品 | 欧亚av在线 | 天天操操操操 | 色综合五月天 | 久久久久久亚洲国产 | 亚洲色偷拍区另类无码专区 | 国产精品69久久久久水密桃 | 青春草在线视频观看 | 青青草在线视频免费观看 | 日本九九视频 | 99热一区二区 | 国产成a人片在线观看视频下载 | 一区二区国产盗摄色噜噜 | 91九色精品国产 | 欧美一区二区三区四区在线 | 亚洲国产日韩欧美一区二区三区 | 亚洲精品国产成人av在线 | 999这里只有是极品 999资源站 | 日本午夜免费福利视频 | 亚洲精品一区二区三区蜜桃 | 亚洲欧洲成人精品久久一码二码 | 伊人免费在线观看 | 国产精品永久在线 | 最新国产精品亚洲 | 精品国产乱码久久久久久蜜臀网站 | 污污视频在线观看网站 | 欧美日韩国产黄色 | 亚洲最大av资源站无码av网址 | 污片网址| 欧美、另类亚洲日本一区二区 | 亚洲成人tv | 成 人 网 站 免 费 av | 女人高潮被爽到呻吟在线观看 | 青青99 | 天天噜夜夜噜 | 特黄aaaaaaa片免费视频 | 法国a级理论片乱 | 国产精品人人爽 | 亚洲香蕉| 天天躁日日躁狠狠躁喷水软件 | 九九九伊在人线综合2023 | 中文字幕视频在线播放 | 最新国自产拍小视频 | 军人粗大的内捧猛烈进出视频 | 激情综合五月婷婷 | 黄色片xxxx | 视频一区免费观看 | 无码精品久久久久久人妻中字 | 成人做爰视频www网站小优视频 | 亚洲熟妇av综合网 | 中文有码一区 | 欧美性淫爽www视频免费播放 | 亲嘴扒胸摸屁股激烈网站 | 久久精品国产亚洲沈樵 | 精品乱码久久久久久中文字幕 | 欧美日韩一区二区在线视频 | 少妇乱淫36部 | 国产一级二级三级在线观看 | 久久久久久久性 | 成人做爰69片免费看网站野花 | 亚洲精品视屏 | 国产大屁股喷水视频在线观看 | 国产伦子伦视频在线观看 | 日本成人a | 大学生女人三级在线播放 | 日韩香蕉网| 欧美午夜精品一区二区三区电影 | 国产性一乱一性一伧一色 | a天堂中文网 | 日本三级韩国三级三级a级按摩 | 91国内精品久久 | 免费1000部激情免费视频 | 韩国三级与黑人 | 天天躁日日躁狠狠躁喷水 | 91麻豆国产福利在线观看 | 中国美女乱淫免费看视频 | 国产精品白嫩极品美女视频 | 国产中文字幕乱人伦在线观看 | 欧美老妇牲交videos | 手机在线看永久av片免费 | 99re中文字幕 | 色婷婷av国产精品 | 精品国产传媒 |