在上一期我们用Python实现了一个俄罗斯方块的游戏,这一期我们继续使用Python实现一个简单的数字益智游戏,让我们开始今天的旅程吧~

说明

这是一款使用 Python 编程语言编写的桌面游戏应用程序。这是一个简单的项目,其目标是解决令人困惑的数字。这个简单的数字拼图游戏可以帮助您在 Python 编程中学习游戏编程的基础知识。

基本信息

  • 语言: Python
  • 编辑器: Built-in Python IDLE
  • 类型: Desktop Application
  • 数据库: 

关于

简单数字拼图游戏是使用 Python 编程语言开发的。此应用程序是一种用户友好的系统,可以轻松满足您的需求。
该应用程序为您提供了一个高级功能,可以演示游戏的实际玩法。玩家可以使用鼠标或键盘玩游戏(向上箭头键向上移动,向下箭头键向下移动,向左箭头键向左移动,向右箭头键向右移动)。
该游戏在一个仅显示数字的简单 python 窗口中进行。
游戏玩法非常简单,玩家必须固定 1-15 的数字排列才能赢得这场比赛。
您还可以通过单击解决按钮自动解决难题。

特性

  • GUI
    • 该项目包含显示应用程序实际界面的基本 GUI。
  • 基本功能
    • 该项目包含使应用程序按预期工作的基本功能。
  • 用户友好接口
    • 这个项目是在一个简单的用户友好界面 web 应用程序中设计的,这样你就可以很容易地修改

Sample Application Screenshots:

核心代码

def main():
    global FPSCLOCK, DISPLAYSURF, BASICFONT, RESET_SURF, RESET_RECT, NEW_SURF, NEW_RECT, SOLVE_SURF, SOLVE_RECT

    pygame.init()
    FPSCLOCK = pygame.time.Clock()
    DISPLAYSURF = pygame.display.set_mode((win_width, win_height))
   
    pygame.display.set_caption('Number Puzzle Game')
    BASICFONT = pygame.font.Font('freesansbold.ttf', BASICFONTSIZE)

    
    RESET_SURF, RESET_RECT = makeText(
        'Reset',    TEXT, BGCOLOR, win_width - 640, win_height - 310)
    NEW_SURF,   NEW_RECT = makeText(
        'New Game', TEXT, BGCOLOR, win_width - 640, win_height - 280)
    SOLVE_SURF, SOLVE_RECT = makeText(
        'Auto Solve',    TEXT, BGCOLOR, win_width - 640, win_height - 250)

    mainBoard, solutionSeq = generateNewPuzzle(80)
   
    SOLVEDBOARD = start_playing()
    
    allMoves = []
   
    while True:
        slideTo = None
        msg = 'Press arrow keys or click the tile to slide'
        if mainBoard == SOLVEDBOARD:
            msg = 'Congratulation!'

        drawBoard(mainBoard, msg)

        check_exit_req()
       
        for event in pygame.event.get():
            if event.type == MOUSEBUTTONUP:
                spotx, spoty = getSpotClicked(
                    mainBoard, event.pos[0], event.pos[1])

                if (spotx, spoty) == (None, None):
                    if RESET_RECT.collidepoint(event.pos):
                        rst_animation(mainBoard, allMoves)
                        allMoves = []
                    elif NEW_RECT.collidepoint(event.pos):
                        mainBoard, solutionSeq = generateNewPuzzle(80)
                        allMoves = []
                    elif SOLVE_RECT.collidepoint(event.pos):
                        rst_animation(mainBoard, solutionSeq + allMoves)
                        allMoves = []
                else:
                    blankx, blanky = getBlankPosition(mainBoard)
                    if spotx == blankx + 1 and spoty == blanky:
                        slideTo = LEFT
                    elif spotx == blankx - 1 and spoty == blanky:
                        slideTo = RIGHT
                    elif spotx == blankx and spoty == blanky + 1:
                        slideTo = UP
                    elif spotx == blankx and spoty == blanky - 1:
                        slideTo = DOWN

            elif event.type == KEYUP:
                if event.key in (K_LEFT, K_a) and isValidMove(mainBoard, LEFT):
                    slideTo = LEFT
                elif event.key in (K_RIGHT, K_d) and isValidMove(mainBoard, RIGHT):
                    slideTo = RIGHT
                elif event.key in (K_UP, K_w) and isValidMove(mainBoard, UP):
                    slideTo = UP
                elif event.key in (K_DOWN, K_s) and isValidMove(mainBoard, DOWN):
                    slideTo = DOWN
        if slideTo:
           
            sliding_animation(
                mainBoard, slideTo, 'Press arrow keys or click the tile to slide', 8)
            take_turn(mainBoard, slideTo)
            allMoves.append(slideTo)
        pygame.display.update()
        FPSCLOCK.tick(FPS)

安装指引

1、首先,您需要下载并安装 Python IDLE,这里是链接“https://www.python/downloads/”。
2、在本站下载源代码。
3、找到并解压缩 zip 文件。
4、打开解压后的文件夹
5、找到 py 文件。
6、然后通过 python IDLE 或任何支持 python 语言的 IDE 打开文件。
7、运行 py 文件以启动程序。

下载

简单的益智游戏

简单的数字拼图游戏是使用 Python 语言创建的。我希望这个项目可以帮助你找到你正在寻找的东西。如需更多项目和教程,请访问此网站。享受编码吧!

更多推荐

python趣味编程-数字益智游戏