Skip to content

1ming-ir/Tetris

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tetris Game

一个使用 Flutter 开发的跨平台俄罗斯方块游戏。

功能特性

核心游戏功能

  • ✅ 7种经典俄罗斯方块类型 (I, O, T, S, Z, J, L)
  • ✅ 方块旋转与移动
  • ✅ 行消除系统
  • ✅ 分数计算
  • ✅ 等级系统(随等级提升速度加快)
  • ✅ 游戏暂停/继续
  • ✅ 游戏重新开始

控制方式

键盘控制

  • ←/→: 左右移动方块
  • : 加速下落
  • ↑/W: 旋转方块
  • Space: 硬降落(直接降到底部)
  • P: 暂停/继续游戏
  • R: 重新开始游戏

触摸控制

  • 屏幕按钮控制(适用于移动设备)

计分规则

  • 消除1行: 100分 × 当前等级
  • 消除2行: 300分 × 当前等级
  • 消除3行: 500分 × 当前等级
  • 消除4行: 800分 × 当前等级
  • 每消除10行提升一个等级

技术栈

  • Flutter: 3.0+
  • 状态管理: Provider
  • 平台支持: Android, iOS, Web, Windows, macOS, Linux

项目结构

lib/
├── main.dart                 # 应用入口
├── models/                   # 数据模型
│   ├── game_state.dart      # 游戏状态管理
│   └── tetromino.dart       # 方块定义
├── screens/                  # 页面
│   └── game_screen.dart     # 游戏主页面
└── widgets/                  # UI组件
    ├── game_board.dart      # 游戏板
    ├── game_controls.dart   # 游戏控制
    ├── game_info.dart       # 游戏信息显示
    └── next_piece_preview.dart  # 下一个方块预览

安装运行

前置要求

  • Flutter SDK (>=3.0.0)
  • Dart SDK (>=3.0.0)

安装步骤

  1. 克隆项目
git clone <repository-url>
cd tetris
  1. 安装依赖
flutter pub get
  1. 运行项目
# Android/iOS
flutter run

# Web
flutter run -d chrome

# Windows
flutter run -d windows

# macOS
flutter run -d macos

# Linux
flutter run -d linux

构建发布版本

# Android APK
flutter build apk --release

# iOS
flutter build ios --release

# Web
flutter build web --release

# Windows
flutter build windows --release

# macOS
flutter build macos --release

# Linux
flutter build linux --release

游戏设计

游戏板

  • 标准10×20网格
  • 方块从顶部生成
  • 到达顶部游戏结束

方块类型

每种方块都有独特的颜色和形状:

  • I型 (青色): 直线形状
  • O型 (黄色): 正方形
  • T型 (紫色): T字形
  • S型 (绿色): S字形
  • Z型 (红色): Z字形
  • J型 (蓝色): J字形
  • L型 (橙色): L字形

游戏机制

  • 方块自动下落,速度随等级提升
  • 可以左右移动、旋转方块
  • 整行填满后自动消除
  • 实现墙踢(Wall Kick)机制,旋转时自动调整位置

响应式设计

游戏支持多种屏幕尺寸:

  • 宽屏模式 (>600px): 左中右三列布局,信息和控制分别在两侧
  • 窄屏模式 (≤600px): 上中下布局,适合手机竖屏使用

开发者

Created with ❤️ using Flutter

许可证

MIT License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published