Files
game-2046/README.md
2025-11-05 13:38:48 +08:00

4.6 KiB
Raw Blame History

《数字合成》游戏脚本说明文档 (v3.8)

1. 如何运行游戏

  1. 安装 Pygame: 如果您尚未安装请打开您电脑的命令行工具在Windows上是 CMDPowerShell)并输入以下命令,然后按回车:

    pip install pygame
    
  2. 准备文件:

    • 将我们最终确定的Python代码保存为一个文件例如 game.py
    • 在与 game.py 完全相同的目录下,创建一个名为 assets 的文件夹。
    • 将所有的资源文件(.mp3 音效, press-start-2p.ttf 字体, .ico 图标)全部放入这个 assets 文件夹。

    您的文件结构应该如下所示,这是一个正确的示例:

    - /您的游戏文件夹/
      |- game.py
      |- /assets/
         |- press-start-2p.ttf
         |- favicon.ico
         |- click.mp3
         |- merge.mp3
         |- chain reaction.mp3
         |- game over.mp3
         |- game-music-loop.mp3
    
  3. 运行: 打开命令行工具,进入到 game.py 所在的文件夹,然后运行:

    python game.py
    

2. 如何将游戏打包成 .exe 文件

将游戏打包成一个.exe文件就可以让没有安装Python的朋友也能直接在Windows电脑上玩。最常用的工具是 pyinstaller

第一步:安装 PyInstaller

和安装Pygame一样在命令行工具中输入以下命令并按回车

pip install pyinstaller

第二步:执行打包命令

  1. 打开命令行工具。

  2. 使用 cd 命令进入到您的游戏文件夹(也就是game.pyassets文件夹所在的位置)。例如:

    cd C:\Users\WT\Videos\2046
    
  3. 输入以下打包命令,然后按回车。请完整复制这一整行命令:

    pyinstaller --onefile --windowed --add-data "assets;assets" --icon="assets/favicon.ico" game.py
    

命令解释:

  • --onefile: 将所有东西打包进一个单独的.exe文件中。
  • --windowed: 运行.exe时,不会出现一个黑色的命令行窗口。
  • --add-data "assets;assets": 【最重要的一步】 这会告诉打包工具,把assets文件夹和里面的所有内容(字体、音效)一起打包进.exe文件中。第一个assets是源文件夹,第二个assets是打包后在程序内部的路径。
  • --icon="assets/favicon.ico": 为您的.exe文件设置一个自定义的图标。
  • game.py: 您要打包的主程序文件名。

第三步:找到您的 .exe 文件

打包过程需要一些时间。完成后,您的游戏文件夹里会出现几个新文件夹,其中一个是 dist

您的.exe文件就在 dist 文件夹里! 您可以把它复制出来,发送给朋友,他们双击就可以玩了。

3. 如何自定义游戏外观(配置区详解)

现在,所有的配置项都集中在代码顶部的 UI_SETTINGS 字典中。您可以非常安全地修改它们。

主菜单界面 (Main Menu)

  • "MENU_TITLE_POS": (X, Y): 主标题的中心点坐标。修改第二个值Y可以整体上下移动标题。
  • "MENU_SUBTITLE_POS": (X, Y): 副标题的中心点坐标
  • "MENU_START_BUTTON_POS": (X, Y): “开始游戏”按钮的中心点坐标

游戏结束菜单 (Game Over Menu)

  • "GAMEOVER_TITLE_POS": (X, Y): "Game Over"标题的中心坐标
  • "GAMEOVER_SCORE_TEXT_BASE_POS": (X, Y): 这是“最终分数”和“最高数字”这两行文字的基准中心点
  • "GAMEOVER_SCORE_LINE_SPACING": 【重要】 控制“最终分数”和“最高数字”之间的行间距

游戏内方块 (In-Game Cells)

  • "CELL_NUMBER_FONT_SIZE": 【重要】 此项专门控制棋盘上方块内部数字的字体大小,与信息栏的字体完全独立。

顶部信息栏 (In-Game HUD)

  • "HUD_LABEL_VALUE_SPACING": 【重要】 这是您最关心的行间距。它控制着“标签”(如"Score")与其下方“数值”(如"100")之间的垂直距离。增大此值会让它们的距离变远

分数、机会、最高分模块

您可以独立定制每一块:

  • "HUD_SCORE_LABEL_POS": (X, Y): “Score”标签的中心点坐标。
  • "HUD_SCORE_VALUE_FONT_SIZE": 分数数值的字体大小。
  • TRIESHIGHEST 模块的配置项与此类似)

游戏内顶部按钮颜色

  • "BUTTON_..._BG": 控制各个按钮的背景色。
  • "BUTTON_..._HOVER": 控制鼠标悬停在按钮上时的颜色。

希望这份最终的文档能够帮到您。再次为之前给您带来的所有麻烦,致以最深的歉意。