成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > python用tkinter開發(fā)的掃雷游戲

python用tkinter開發(fā)的掃雷游戲

熱門標簽:所得系統(tǒng)電梯怎樣主板設置外呼 北瀚ai電銷機器人官網(wǎng)手機版 小蘇云呼電話機器人 北京電銷外呼系統(tǒng)加盟 佛山400電話辦理 市場上的電銷機器人 儋州電話機器人 地圖標注面積 朝陽手機外呼系統(tǒng)

1.實現(xiàn)效果

2.實現(xiàn)代碼

# 導入所需庫
from tkinter import *
import random

class main:
    # 定義一個類,繼承 tkinter 的 Button
    # 用來保存按鈕的狀態(tài)和在網(wǎng)格布局中的位置
    class minebtn(Button):
        def __init__(self,master,xy,**kw):
            Button.__init__(self,master,**kw)
            self.xy = xy
            self._state = 0
            # 狀態(tài)
            # 0: 未點開
            # 1: 已點開
            # 2: 標記
            # 3: 問號
            
    def __init__(self):
        # 定義規(guī)格及雷數(shù)
        self.width = 9
        self.height = 9
        self.minenum = 10
        # Windows 7 默認的三種規(guī)格和雷數(shù)
        # 9*9,10
        # 16*16,40
        # 16*32,99
        
        self.rest = self.minenum    # 剩余未標記的雷
		
		# 雷數(shù)的顏色
        self.colorlist = ['green',	# 綠色
                          'DodgerBlue',	# 淺藍色
                          'DarkOrange1',# 橙色
                          'blue',	# 藍色
                          'red',	# 紅色
                          'Chocolate4',	# 棕色
                          'grey',	# 灰色
                          'black']	# 黑色
        
        self.setgui()

    def setgui(self):

        # GUI界面

        self.root = Tk()
        self.root.title('掃雷')

        self.restlabel = Label(self.root,text=f'剩余:{self.minenum}')
        self.restlabel.grid(row=0,column=0,columnspan=3)

        self.mineplace = random.sample(range(self.width*self.height),self.minenum)  # 隨機抽取雷
        self.mineplace = [(x%self.width,x//self.height) for x in self.mineplace]    # 將雷的序號轉變?yōu)樽鴺?

        self.mines = {}

        for y in range(self.height):
            for x in range(self.width):
                self.mines[(x,y)] = self.minebtn(self.root,xy=(x,y),font=('黑體',8,'bold'),width=2,bd=1,relief='ridge')
                self.mines[(x,y)].bind('ButtonRelease-1>',lambda event:self._open(event.widget))   # 左鍵單擊點開
                self.mines[(x,y)].bind('ButtonRelease-3>',lambda event:self.make(event.widget))    # 右鍵單擊事件
                self.mines[(x,y)].grid(row=y+1,column=x,sticky='nswe')

        self.root.mainloop()

    # 點開
    def _open(self,widget):
        xy = widget.xy
        x = xy[0]
        y = xy[1]   # 獲取當前按鈕的坐標

        # 如果是雷則顯示全部雷的位置
        if widget.xy in self.mineplace:
            self.showmine()
            return

        # 如果已經點開了就什么也不做
        if widget._state == 1:
            return
        
        widget.configure(relief='flat',bg='white')  # 更改當前按鈕的樣式
        
        widget._state = 1   # 按鈕狀態(tài)設為點開

        # 獲取周圍八個雷的坐標
        around = [(x-1,y-1),
                (x,y-1),
                (x+1,y-1),
                (x-1,y),
                (x+1,y),
                (x-1,y+1),
                (x,y+1),
                (x+1,y+1)]
        
        _sum = 0
        around_ = []
        
        for o, p in around:
            # 排除掉在雷區(qū)之外的雷
            if 0 = o = self.width - 1 and 0 = p = self.height - 1:
                around_.append((o,p))

                # 計算周圍的雷數(shù)
                if self.mines[(o,p)].xy in self.mineplace:
                    _sum += 1

        #如果周圍沒有雷則打開周圍未標記的雷,直到有雷為止
        if _sum == 0:
            widget['text'] = ''

            for i, j in around:                
                if self.mines[(i,j)]._state == 0:
                    self._open(self.mines[(i,j)])
        else:
            widget['text'] = _sum   # 顯示雷數(shù)

            # 對應數(shù)字設置對應顏色
            widget['fg'] = self.colorlist[_sum-1]

    # 右鍵單擊設置標記/問號
    def make(self,widget):
        string = {0:'',2:'♀',3:'?'}
        
        if widget._state == 0:
            widget._state = 2
            widget['text'] = string[2]
            self.rest -= 1
            self.restlabel['text'] = f'剩余:{self.rest}'
            
        elif widget._state == 2:
            widget._state = 3
            widget['text'] = string[3]
            self.rest += 1
            self.restlabel['text'] = f'剩余:{self.rest}'
            
        elif widget._state == 3:
            widget._state = 0
            widget['text'] = string[0]

    # 如果踩到雷,顯示所有的雷
    def showmine(self):
        for i, j in self.mineplace:
            self.mines[(i,j)].configure(text='ி',fg='red')
                
main()


3.另一種精致一點的實現(xiàn)

項目地址

需要導入額外的圖片和字體資源,在上面的項目地址里可以下載到

代碼

import sys
import time
import random
import pygame
from pygame.locals import *

BLOCK_WIDTH = 30
BLOCK_HEIGHT = 16
# 塊大小
SIZE = 20
# 地雷數(shù)
MINE_COUNT = 66
# 未點擊
normal = 1
# 已點擊
opened = 2
# 地雷
mine = 3
# 標記為地雷
flag = 4
# 標記為問號
ask = 5
# 踩中地雷
bomb = 6
# 被雙擊的周圍
hint = 7
# 正被鼠標左右鍵雙擊
double = 8
readied = 1,
started = 2,
over = 3,
win = 4

class Mine:
    def __init__(self, x, y, value=0):
        self._x = x
        self._y = y
        self._value = 0
        self._around_mine_count = -1
        self._status = normal
        self.set_value(value)
    def __repr__(self):
        return str(self._value)
    def get_x(self):
        return self._x
    def set_x(self, x):
        self._x = x
    x = property(fget=get_x, fset=set_x)
    def get_y(self):
        return self._y
    def set_y(self, y):
        self._y = y
    y = property(fget=get_y, fset=set_y)
    def get_value(self):
        return self._value
    def set_value(self, value):
        if value:
            self._value = 1
        else:
            self._value = 0
    value = property(fget=get_value, fset=set_value, doc='0:非地雷 1:雷')
    def get_around_mine_count(self):
        return self._around_mine_count
    def set_around_mine_count(self, around_mine_count):
        self._around_mine_count = around_mine_count
    around_mine_count = property(fget=get_around_mine_count, fset=set_around_mine_count, doc='四周地雷數(shù)量')
    def get_status(self):
        return self._status
    def set_status(self, value):
        self._status = value
    status = property(fget=get_status, fset=set_status, doc='BlockStatus')

class MineBlock:
    def __init__(self):
        self._block = [[Mine(i, j) for i in range(BLOCK_WIDTH)] for j in range(BLOCK_HEIGHT)]
        # 埋雷
        for i in random.sample(range(BLOCK_WIDTH * BLOCK_HEIGHT), MINE_COUNT):
            self._block[i // BLOCK_WIDTH][i % BLOCK_WIDTH].value = 1
    def get_block(self):
        return self._block
    block = property(fget=get_block)
    def getmine(self, x, y):
        return self._block[y][x]
    def open_mine(self, x, y):
        # 踩到雷了
        if self._block[y][x].value:
            self._block[y][x].status = bomb
            return False
        # 先把狀態(tài)改為 opened
        self._block[y][x].status = opened
        around = _get_around(x, y)
        _sum = 0
        for i, j in around:
            if self._block[j][i].value:
                _sum += 1
        self._block[y][x].around_mine_count = _sum
        # 如果周圍沒有雷,那么將周圍 8 個未中未點開的遞歸算一遍
        if _sum == 0:
            for i, j in around:
                if self._block[j][i].around_mine_count == -1:
                    self.open_mine(i, j)
        return True
    def double_mouse_button_down(self, x, y):
        if self._block[y][x].around_mine_count == 0:
            return True
        self._block[y][x].status = double
        around = _get_around(x, y)
        # 周圍被標記的雷數(shù)量
        sumflag = 0
        for i, j in _get_around(x, y):
            if self._block[j][i].status == flag:
                sumflag += 1
        # 周邊的雷已經全部被標記
        result = True
        if sumflag == self._block[y][x].around_mine_count:
            for i, j in around:
                if self._block[j][i].status == normal:
                    if not self.open_mine(i, j):
                        result = False
        else:
            for i, j in around:
                if self._block[j][i].status == normal:
                    self._block[j][i].status = hint
        return result
    def double_mouse_button_up(self, x, y):
        self._block[y][x].status = opened
        for i, j in _get_around(x, y):
            if self._block[j][i].status == hint:
                self._block[j][i].status = normal

# 返回 (x, y) 周圍的點坐標
def _get_around(x, y):
    return [(i, j) for i in range(max(0, x - 1), min(BLOCK_WIDTH - 1, x + 1) + 1)
            for j in range(max(0, y - 1), min(BLOCK_HEIGHT - 1, y + 1) + 1) if i != x or j != y]

# 游戲屏幕的寬
SCREEN_WIDTH = BLOCK_WIDTH * SIZE
# 游戲屏幕的高
SCREEN_HEIGHT = (BLOCK_HEIGHT + 2) * SIZE

def print_text(screen, font, x, y, text, fcolor=(255, 255, 255)):
    imgText = font.render(text, True, fcolor)
    screen.blit(imgText, (x, y))

def main():
    pygame.init()
    screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
    pygame.display.set_caption('掃雷')
    # 得分的字體
    font1 = pygame.font.Font('resources/a.TTF', SIZE * 2)
    fwidth, fheight = font1.size('999')
    red = (200, 40, 40)

    # 加載資源圖片,因為資源文件大小不一,所以做了統(tǒng)一的縮放處理
    img0 = pygame.image.load('resources/0.bmp').convert()
    img0 = pygame.transform.smoothscale(img0, (SIZE, SIZE))
    img1 = pygame.image.load('resources/1.bmp').convert()
    img1 = pygame.transform.smoothscale(img1, (SIZE, SIZE))
    img2 = pygame.image.load('resources/2.bmp').convert()
    img2 = pygame.transform.smoothscale(img2, (SIZE, SIZE))
    img3 = pygame.image.load('resources/3.bmp').convert()
    img3 = pygame.transform.smoothscale(img3, (SIZE, SIZE))
    img4 = pygame.image.load('resources/4.bmp').convert()
    img4 = pygame.transform.smoothscale(img4, (SIZE, SIZE))
    img5 = pygame.image.load('resources/5.bmp').convert()
    img5 = pygame.transform.smoothscale(img5, (SIZE, SIZE))
    img6 = pygame.image.load('resources/6.bmp').convert()
    img6 = pygame.transform.smoothscale(img6, (SIZE, SIZE))
    img7 = pygame.image.load('resources/7.bmp').convert()
    img7 = pygame.transform.smoothscale(img7, (SIZE, SIZE))
    img8 = pygame.image.load('resources/8.bmp').convert()
    img8 = pygame.transform.smoothscale(img8, (SIZE, SIZE))
    img_blank = pygame.image.load('resources/blank.bmp').convert()
    img_blank = pygame.transform.smoothscale(img_blank, (SIZE, SIZE))
    img_flag = pygame.image.load('resources/flag.bmp').convert()
    img_flag = pygame.transform.smoothscale(img_flag, (SIZE, SIZE))
    img_ask = pygame.image.load('resources/ask.bmp').convert()
    img_ask = pygame.transform.smoothscale(img_ask, (SIZE, SIZE))
    img_mine = pygame.image.load('resources/mine.bmp').convert()
    img_mine = pygame.transform.smoothscale(img_mine, (SIZE, SIZE))
    img_blood = pygame.image.load('resources/blood.bmp').convert()
    img_blood = pygame.transform.smoothscale(img_blood, (SIZE, SIZE))
    img_error = pygame.image.load('resources/error.bmp').convert()
    img_error = pygame.transform.smoothscale(img_error, (SIZE, SIZE))
    face_size = int(SIZE * 1.25)
    img_face_fail = pygame.image.load('resources/face_fail.bmp').convert()
    img_face_fail = pygame.transform.smoothscale(img_face_fail, (face_size, face_size))
    img_face_normal = pygame.image.load('resources/face_normal.bmp').convert()
    img_face_normal = pygame.transform.smoothscale(img_face_normal, (face_size, face_size))
    img_face_success = pygame.image.load('resources/face_success.bmp').convert()
    img_face_success = pygame.transform.smoothscale(img_face_success, (face_size, face_size))
    face_pos_x = (SCREEN_WIDTH - face_size) // 2
    face_pos_y = (SIZE * 2 - face_size) // 2
    img_dict = {0: img0, 1: img1, 2: img2, 3: img3, 4: img4, 5: img5, 6: img6, 7: img7, 8: img8}
    bgcolor = (225, 225, 225)
    block = MineBlock()
    game_status = readied
    # 開始時間
    start_time = None
    # 耗時
    elapsed_time = 0
    while True:
        screen.fill(bgcolor)
        for event in pygame.event.get():
            if event.type == QUIT:
                sys.exit()
            elif event.type == MOUSEBUTTONDOWN:
                mouse_x, mouse_y = event.pos
                x = mouse_x // SIZE
                y = mouse_y // SIZE - 2
                b1, b2, b3 = pygame.mouse.get_pressed()
                if game_status == started:
                    # 鼠標左右鍵同時按下,如果已經標記了所有雷,則打開周圍一圈;如果還未標記完所有雷,則有一個周圍一圈被同時按下的效果
                    if b1 and b3:
                        mine = block.getmine(x, y)
                        if mine.status == opened:
                            if not block.double_mouse_button_down(x, y):
                                game_status = over
            elif event.type == MOUSEBUTTONUP:
                if y  0:
                    if face_pos_x = mouse_x = face_pos_x + face_size \

                            and face_pos_y = mouse_y = face_pos_y + face_size:
                        game_status = readied
                        block = MineBlock()
                        start_time = time.time()
                        elapsed_time = 0
                        continue
                if game_status == readied:
                    game_status = started
                    start_time = time.time()
                    elapsed_time = 0
                if game_status == started:
                    mine = block.getmine(x, y)
                    # 按鼠標左鍵
                    if b1 and not b3:
                        if mine.status == normal:
                            if not block.open_mine(x, y):
                                game_status = over
                    # 按鼠標右鍵
                    elif not b1 and b3:
                        if mine.status == normal:
                            mine.status = flag
                        elif mine.status == flag:
                            mine.status = ask
                        elif mine.status == ask:
                            mine.status = normal
                    elif b1 and b3:
                        if mine.status == double:
                            block.double_mouse_button_up(x, y)
        flag_count = 0
        opened_count = 0
        for row in block.block:
            for mine in row:
                pos = (mine.x * SIZE, (mine.y + 2) * SIZE)
                if mine.status == opened:
                    screen.blit(img_dict[mine.around_mine_count], pos)
                    opened_count += 1
                elif mine.status == double:
                    screen.blit(img_dict[mine.around_mine_count], pos)
                elif mine.status == bomb:
                    screen.blit(img_blood, pos)
                elif mine.status == flag:
                    screen.blit(img_flag, pos)
                    flag_count += 1
                elif mine.status == ask:
                    screen.blit(img_ask, pos)
                elif mine.status == hint:
                    screen.blit(img0, pos)
                elif game_status == over and mine.value:
                    screen.blit(img_mine, pos)
                elif mine.value == 0 and mine.status == flag:
                    screen.blit(img_error, pos)
                elif mine.status == normal:
                    screen.blit(img_blank, pos)
        print_text(screen, font1, 30, (SIZE * 2 - fheight) // 2 - 2, '%02d' % (MINE_COUNT - flag_count), red)
        if game_status == started:
            elapsed_time = int(time.time() - start_time)
        print_text(screen, font1, SCREEN_WIDTH - fwidth - 30, (SIZE * 2 - fheight) // 2 - 2, '%03d' % elapsed_time, red)
        if flag_count + opened_count == BLOCK_WIDTH * BLOCK_HEIGHT:
            game_status = win
        if game_status == over:
            screen.blit(img_face_fail, (face_pos_x, face_pos_y))
        elif game_status == win:
            screen.blit(img_face_success, (face_pos_x, face_pos_y))
        else:
            screen.blit(img_face_normal, (face_pos_x, face_pos_y))
        pygame.display.update()

if __name__ == '__main__':
    main()

以上就是python用tkinter開發(fā)的掃雷游戲的詳細內容,更多關于python 掃雷游戲的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • python實現(xiàn)掃雷游戲的示例
  • python實現(xiàn)掃雷小游戲
  • python實現(xiàn)掃雷游戲
  • 用python寫掃雷游戲實例代碼分享
  • 基于Python實現(xiàn)的掃雷游戲實例代碼
  • python實戰(zhàn)游戲之史上最難最虐的掃雷游戲沒有之一

標簽:云南 酒泉 商丘 寧夏 龍巖 定西 江蘇 金融催收

巨人網(wǎng)絡通訊聲明:本文標題《python用tkinter開發(fā)的掃雷游戲》,本文關鍵詞  python,用,tkinter,開發(fā),的,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python用tkinter開發(fā)的掃雷游戲》相關的同類信息!
  • 本頁收集關于python用tkinter開發(fā)的掃雷游戲的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    午夜电影福利网| 日本久久一区| 日本视频三区| 日韩av网站在线观看| 国产99久久久国产精品| 日本一不卡视频| 免费毛片在线看片免费丝瓜视频| 中文字幕伦av一区二区邻居| 午夜影院免费体验区| 国产无精乱码一区二区三区| av播放在线| 欧美精品福利| 国产精品久久久久久在线观看| 日韩免费一区二区三区在线播放| 91福利精品第一导航| 久热在线观看视频| 亚洲男女av一区二区| 欧美韩国日本| 香蕉av777xxx色综合一区| 久久高清免费观看| 最近中文字幕在线中文高清版| 亚洲在线一区| 国产日韩av网站| 欧美色图第二页| 日韩中文在线视频| 激情小说欧美色图| 国产精品九九九九| 日韩欧美你懂的| 男女毛片免费视频看| 九九热只有这里有精品| 精品自拍视频在线观看| 风间由美一二三区av片| 先锋影音成人资源| 777av视频| 夜夜骑天天操| 中文字幕精品一区二区三区在线| 国产精品免费在线| 久久网这里都是精品| 九色porny视频国产网曝| 午夜激情电影在线播放| 欧美性xxxx在线播放| 一区二区三区中文在线| 一卡二卡三卡四卡| 国产精品三级久久久久三级| 国产精品一区二区久久久久| 久久九九99视频| 中文字幕在线网址| 成人www视频在线观看| www.亚洲国产| 国内精品免费**视频| 韩日视频在线| 国产精品外国| 国产精品二区三区| 91探花在线观看| 国产曰肥老太婆无遮挡| 亚洲一区二区在线免费观看| 最新亚洲人成网站在线观看| 亚洲大片一区二区三区| 91精品久久久久久久久中文字幕| 欧美三级精品| 国产露出视频在线观看| 亚洲一区二区三区四区在线免费观看| 国产一区二区精品调教| 99视频国产精品免费观看| 中文字幕久久综合| 亚洲欧美日韩中文播放| 美女精品在线| 日本亚洲不卡| 欧美性一二三区| 成人午夜无人区一区二区| 麻豆av在线| 精品国产乱码久久久久久虫虫漫画| 在线免费看h| 国产精品久久国产| 91免费公开视频| 视频在线观看免费影院欧美meiju| 劲爆欧美第一页| 欧美日韩久久| 美女网站在线看| 在线观看视频色| 国产一区二区剧情av在线| 手机亚洲第一页| 国产精品一区二区久久| 国产成a人亚洲精品| 在线播放第一页| 91在线看国产| 鲁鲁狠狠狠7777一区二区| 国产精品一区二区久久国产| 国产视频精品免费播放| 中文字幕av影视| 26uuu久久噜噜噜噜| 在线看黄色网| 色一情一区二区三区| 美女黄毛**国产精品啪啪| 久久成人免费| 亚洲美洲欧洲综合国产一区| 99精品欧美一区| 久久久性生活视频| 成人免费视频网站| 欧美日韩免费观看一区=区三区| 精品国产sm最大网站| 秋霞av鲁丝片一区二区| 国产chinasex对白videos麻豆| 久久狠狠一本精品综合网| 可以在线看的黄色网址| 樱花草www在线观看| 人人在线97| 成人精品一二区| 天天想你在线观看完整版电影免费| 国产一区二区三区在线视频| 亚洲国产精品三区| 尤物网站在线观看| 午夜宅男久久久| 一区二区三区视频在线| 国产成人av在线| 亚洲精品久久久久久久久久久久久久| 成人在线一区二区三区| 国产精品久久久亚洲第一牛牛| 国产乱码精品一区二区三区五月婷| 樱空桃在线播放| 欧美日韩性生活片| 91精品国产高清一区二区三区蜜臀| 亚洲乱色熟女一区二区三区| 99热在线观看免费精品| 中文在线字幕免费观看| 亚洲视频在线视频| www.超碰在线| 日韩少妇与小伙激情| 国产成人免费在线视频| 亚洲免费不卡视频| 黄色片子免费看| 国自产精品手机在线观看视频| a毛片在线免费观看| 热久久一区二区| 欧美日韩在线播放| 毛片av免费观看| 亚洲国产小视频在线观看| 欧美成人高清视频在线观看| 超碰这里只有精品| 一区二区电影| 成人免费在线视频网站| 久久综合久中文字幕青草| 日韩av一区二区三区四区| 亚洲免费成人av在线| 国产在线视频福利| 美女精品一区最新中文字幕一区二区三区| 久久99热这里只有精品| 精品一区二区三区四区在线| 中文字幕免费国产精品| 国产精品剧情一区二区在线观看| 日本成人a网站| 性网爆门事件集合av| 天天干在线观看| 丰满少妇一区二区三区专区| 亚洲美女色禁图| 在线观看一区不卡| 久久久91精品国产一区二区精品| 亚洲黄一区二区三区| 欧美孕妇孕交| 久久国产成人精品国产成人亚洲| 欧美美女日韩| 亚洲伦理一区二区三区| 在线色视频网| 日本中文字幕视频在线| 视频这里只有精品| 日本一卡二卡四卡精品| 国产成人天天5g影院| 特级西西人体wwwww| 蜜臀av一区二区三区有限公司| 日本中文在线一区| av电影在线免费观看| 欧美jizzhd精品欧美满| 亚洲精品国产无套在线观| 香港欧美日韩三级黄色一级电影网站| 欧美激情视频在线| 淫片在线观看| 麻豆精品国产| 精品一区二区三区在线播放视频| 国产成人在线视频| 国产寡妇色xxⅹ交肉视频| 精品不卡在线视频| 久久久亚洲精品无码| 第九区2中文字幕| 欧美videosex性极品hd| 中文字幕国产精品久久| 竹内纱里奈兽皇系列在线观看| 中文人妻熟女乱又乱精品| 综合激情网...| 一级黄色片国产| 一区二区三区四区免费| 国产精品无码专区在线观看| 围产精品久久久久久久| 一区二区三区四区精品视频| 夜夜躁狠狠躁日日躁av| 久久嫩草精品久久久精品一| 精品国产精品网麻豆系列| 好吊妞视频一区二区三区| 不卡av在线免费观看| 在线亚洲精品自拍| 麻豆精品精品国产自在97香蕉| 久久亚洲精品中文字幕| 天堂视频中文在线| 黄色高清无遮挡| 久久99久久精品国产| 亚洲精品电影在线一区| 国产精品午夜久久久久久| 91福利视频导航| 综合图区亚洲白拍在线| 国产第一页视频| 日日夜夜天天综合| 精品久久久在线观看| 漂亮人妻被中出中文字幕| 国产又大又粗又爽的毛片| 东京热一区二区三区四区| 亚洲激情在线观看视频| 亚洲综合免费观看高清完整版在线| 欧美人与牲动交xxxx| 久久香蕉国产| 欧美老熟妇乱大交xxxxx| 91免费小视频| 99国产成+人+综合+亚洲欧美| 亚洲电影免费| 久久66热这里只有精品| 美女网站免费观看| 亚洲1卡2卡3卡4卡乱码精品| 影音先锋日韩在线| 免费在线日韩av| 亚洲成人在线电影| 无码 制服 丝袜 国产 另类| 日韩**一区毛片| 久久久亚洲天堂| 日本按摩中出| 日韩a级片在线观看| 国产内射老熟女aaaa| 麻豆中文字幕在线观看| 色aⅴ色av色av偷拍| 可以www视频| 涩涩网站在线看| 国产日本久久| 黄在线观看免费网站ktv| 日日噜噜夜夜狠狠视频| 日韩精品免费在线视频| 日韩欧美三级在线| 色哟哟网站入口亚洲精品| 视频三区二区一区| 久久久免费看片| 成人免费直播live| 亚洲高清中文字幕| 亚洲一卡二卡区| 五月婷婷丁香综合网| 国产av无码专区亚洲av麻豆| 亚洲电影一级黄| 亚州成人av在线| 国产成人精品免费在线| 亚洲二区自拍| 国产福利视频一区二区| 狠狠操夜夜操| 青青成人在线| 热99久久精品| 青梅竹马是消防员在线| 亚洲视频在线观看免费视频| 一呦二呦三呦国产精品| 性中国古装videossex| 精品人妻一区二区三区四区| 日韩激情视频网站| 亚洲成人免费网站| 亚洲欧美一区二区三区不卡| 99re8在线精品视频免费播放| 在线观看av网| 在线观看中文字幕一区| 国产精品极品美女在线观看| 日产精品久久久久久久性色| 青青久草在线| 欧美国产日韩一区二区在线观看| 99精品免费| 欧美日韩国产综合一区二区| 日日碰狠狠添天天爽超碰97| 色综合久久悠悠| 日韩成人一区| 丁香亚洲综合激情啪啪综合| 欧美专区日韩视频| 亚洲韩国在线| 狠狠色丁香久久综合频道| 日本欧美在线观看| eeuss影院18www免费| av一区二区三区四区电影| 素人一区二区三区| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 亚洲国产精品久久久久婷婷软件| 精品国产乱码久久久久久蜜坠欲下| 国产美女高潮一区二区三区| 北条麻妃在线视频| 一级在线观看视频| 久久不射中文字幕| www.五月婷婷| 精品一区二区三区久久| 国产成人精品久久二区二区| 免费一级在线观看播放网址| 欧美在线免费看视频| 91精品秘密在线观看| av一区二区三区免费观看| 国产精品人妖ts系列视频| 亚洲午夜激情视频| 国产一区二区网| 你懂的视频在线观看资源| 亚洲黄色一区二区三区| 亚洲妇熟xx妇色黄蜜桃| 在线观看精品视频| 国产在线一二三| 在线成人欧美| 亚洲美女炮图| 625成人欧美午夜电影| 亚洲二区在线播放视频| 一区二区三区欧美成人| 免费亚洲视频| 色婷婷久久99综合精品jk白丝| 免费在线观看91| 国产不卡视频一区二区三区| 久久精品美女视频网站| 一区二区在线影院| 韩日中文字幕第一页| 中文字幕在线观看高清| 黄色国产网站| 亚洲日产国产精品| 轻轻操 在线观看| 午夜欧美精品| 精品久久久无码中文字幕| 免费一级欧美片在线播放|