Skip to content

Timmy-osense/Python_Tetris-master

Repository files navigation

Python 俄羅斯方塊遊戲

使用 Python 和 Pygame 開發的經典俄羅斯方塊遊戲,包含多種遊戲模式和現代化介面。

🎮 遊戲特色

核心玩法

  • 經典俄羅斯方塊機制:7 種不同的俄羅斯方塊形狀 (I, O, T, S, Z, J, L)
  • 流暢操控:使用方向鍵進行移動和旋轉
  • 消行機制:完整的水平線會自動消除
  • 漸進難度:遊戲速度隨進度遞增
  • 分數追蹤:當前和最高消行數記錄

增強功能

  • 🎯 暫停功能:按 P 鍵暫停/繼續遊戲
  • 🔧 除錯模式:按 D 鍵開關除錯訊息顯示
  • 👁️ 下一個方塊預覽:顯示即將出現的俄羅斯方塊
  • 🎨 多種遊戲模式:不同視覺風格和遊戲玩法

🚀 快速開始

系統需求

  • Python 3.8 或更高版本
  • pip 套件管理器

安裝步驟

  1. 複製或下載專案

    git clone <repository-url>
    cd Python_Tetris-master
  2. 建立虛擬環境(建議):

    python3 -m venv tetris_env
    source tetris_env/bin/activate  # macOS/Linux
    # tetris_env\Scripts\activate  # Windows
  3. 安裝相依套件

    pip install -r requirements.txt

執行遊戲

主要遊戲(推薦):

python play.py

其他版本

  • python playColor.py - 彩色俄羅斯方塊版本
  • python play2.py - 替代遊戲版本
  • python play-update.py - 更新版本

網頁 API 伺服器(獨立工具):

python main.py
# 訪問 http://127.0.0.1:8000

🎮 遊戲操作

按鍵 功能
旋轉俄羅斯方塊
快速下降(持續按住)
向左移動
向右移動
P 暫停/繼續遊戲
D 開關除錯模式
ESC 退出遊戲

📁 專案結構

Python_Tetris-master/
├── play.py              # 🎮 主要遊戲(增強版,含暫停功能)
├── playColor.py         # 🎨 彩色俄羅斯方塊版本
├── play2.py            # 🔄 替代遊戲版本
├── play-update.py      # 📝 更新版本
├── drew.py             # 🎭 圖形工具(Box 類別)
├── main.py             # 🌐 FastAPI 網頁伺服器
├── requirements.txt    # 📦 專案相依套件
├── tetris_env/         # 🐍 虛擬環境
├── README.md           # 📖 本檔案
├── CLAUDE.md          # 🤖 AI 助手指南
└── .gitignore         # 🚫 Git 忽略規則

🎯 遊戲版本

1. play.py - 主要增強版本

  • 特色:暫停功能、英文介面
  • 狀態:✅ 功能完整,包含最新增強功能
  • 適合:大多數使用者,包含所有現代化功能

2. playColor.py - 彩色版本

  • 特色:每種形狀使用不同顏色的俄羅斯方塊
  • 顏色:橘色 (N1)、紫色 (N2) 等
  • 適合:喜歡視覺變化的使用者

3. play2.pyplay-update.py - 替代版本

  • 特色:相似的核心玩法,細微差異
  • 適合:比較不同實作方式

🔧 技術細節

相依套件

  • pygame:遊戲引擎,處理圖形和輸入
  • fastapi:網頁框架,用於 API 伺服器
  • uvicorn:FastAPI 的 ASGI 伺服器
  • 標準函式庫:os、sys、random、time

遊戲架構

  • 物件導向設計:模組化的 Box 類別處理圖形
  • 事件驅動:Pygame 事件系統處理輸入
  • 遊戲迴圈:60 FPS 渲染,流暢動畫效果
  • 碰撞偵測:精確的俄羅斯方塊放置驗證

效能特色

  • 最佳化渲染:高效的精靈圖形系統
  • 記憶體管理:適當的清理和資源處理
  • 流暢遊戲體驗:一致的影格率和時序

🎨 自訂設定

遊戲支援透過常數進行簡易自訂:

  • 速度設定BRICK_DOWN_SPEED_MAXBRICK_DROP_RAPIDLY
  • 視窗大小canvas_widthcanvas_height
  • 顏色主題:各種顏色常數設定
  • 俄羅斯方塊形狀:定義在 brick_dict

🐛 問題排除

常見問題

  1. 匯入錯誤:確保已安裝 pygame(pip install pygame
  2. 顯示問題:檢查系統是否支援所需的顯示模式
  3. 效能問題:如果遊戲執行緩慢,請關閉其他應用程式

除錯模式

遊戲中按 D 鍵啟用除錯模式,顯示:

  • 網格狀態視覺化
  • 當前 FPS 計數器
  • 俄羅斯方塊位置資訊

📚 參考資料

本專案基於經典俄羅斯方塊遊戲機制。詳細說明請參考:

🤝 貢獻

歡迎貢獻:

  • 新增遊戲功能
  • 改善圖形和動畫
  • 效能最佳化
  • 修復錯誤
  • 新增遊戲模式

📄 授權

本專案為開源專案。請查看原作者的授權條款。


享受俄羅斯方塊遊戲!🎮

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages