Skip to content

ymqzhy999/javafx---

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

不一样的推箱子 (Custom Sokoban)

这是一个基于 JavaFX 开发的增强版推箱子益智游戏。在经典玩法的基础上,项目引入了传送门机制、成就系统、计时系统以及动态地图生成,提升了游戏的趣味性和挑战性。

核心功能

  • 经典推箱子玩法:玩家需要操控角色将地图上的所有箱子推到指定的目标点。
  • 传送门机制:地图中会随机生成成对的传送门,玩家和箱子都可以通过传送门瞬间移动,这极大丰富了关卡的解谜逻辑。
  • 动态地图生成:游戏内置了多种可解地图模板,每次开始新关卡时会随机生成箱子、目标点和传送门的位置。
  • 实时统计系统:界面实时显示当前的移动步数、关卡积分、总积分以及游戏耗时。
  • 音效支持:包含循环播放的背景音乐,以及箱子推入目标点时的即时音效反馈。

游戏机制

  • 成就系统:根据玩家的表现会自动解锁不同的成就界面。

  • 第一次获得胜利可解锁成就一。

  • 60秒内快速通关可解锁成就二。

  • 20步以内完成关卡可解锁成就三。

  • 用户管理:支持用户注册与登录功能,玩家可以保存用户名、密码和性别,并支持自定义上传个人头像。

  • 关卡控制:玩家可以随时重置当前关卡,或者在遇到困难时选择跳过当前关卡进入下一关。

操作说明

  • 方向键 (↑/↓/←/→):控制角色上下左右移动或推箱子。
  • R 键:快速重置当前关卡布局。
  • N 键:跳过当前关卡并进入下一关。
  • 鼠标点击:在界面失去响应时,点击游戏区域可重新获取焦点。

技术架构

  • 开发环境:Java 21/24 (支持高版本 JDK 编译运行)。
  • 图形界面:JavaFX (FXML 布局与 CSS 样式)。
  • 多媒体:JavaFX Media 用于音频播放。
  • 数据存储:使用文本文件记录用户信息,支持本地文件系统管理用户头像。

4bae0b29d891733350af448402e9e642 8db618d4528a65dd1c29cba7ff6c786f

About

推箱子小游戏

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages