# wangkz **Repository Path**: Wang520_1314/wangkz ## Basic Information - **Project Name**: wangkz - **Description**: No description available - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-06-07 - **Last Updated**: 2021-06-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README GAME——2048 ### 介绍 Java Web课程设计--2048小游戏 这个游戏是要求用户把类似数字的方块结合在一起,以创造出更大数字的新方块,一直到拿到最后包含数字“2048”的方块。期间根据数字的组合获取分数。可以选择上下左右其中一个方向去滑动,每滑动一次,所有的数字方块都会往滑动的方向靠拢,相同数字的方块在这个过程中会碰撞相加变成一个更大数字的方块,完成后系统会在空白的地方随机出现一个数字方块(2或4)。玩家需要不断地滑动,想办法叠加出越来越大的数字,直到达成2048就算成功。 ### 日志 6月10日 乱七八糟折腾了好久,系统性的开始完善项目 6月12日 折腾了两天样式,太难了 6月13日 后悔了,上下左右移动合并好像很麻烦 6月15日 心态崩了呀,电脑重装系统了,从头开始 6月16日 基本能操作了,git还没设置,先本地实现功能好了 6月16日 实现了数字的移动 6月18日 改了两天bug,合并貌似也能成功了 6月18日 各个数字颜色区分了一下,马卡龙色系真棒 6月19日 本地能单机跑了,要不也加个排行榜? 6月20日 各种设置弄好了,捋一下过程分部上传gitee 6月25日 完工 ### 项目经过 从确立方向到逐步完善到暂时完成,期间不管是css样式的布局、还是JDBC、DBCP等连接池的小问题,都无时不刻的影响项目进展。项目重难点关键是需要将逻辑与视图分离。所有的数据更新,都体现在内存中。游戏中的数据变化可能非常多,全部积攒起来,一次性更新到界面上。只是一个格子移动的问题+数字合并刷新颜色的代码耽误了将近一天的时间,通过向前辈的项目借鉴学习从而学习到了舒适的切换效果,感谢前人的项目经验,让我在界面颜色的选择上节省了不少时间,更好的投入到对于格子边界处理的算法中。 主要工作节点 (1)4x4格子的初始化和定位 (2)随机数字的形成和合并 (3)移动时间的触发和结束时机判断 (4)边界问题和交互逻辑的协调 (5)数据库的连接及分数写入 (6)游戏各组件的css样式编写 ### 项目总结 截至2021年6月28日,项目在PC端能够实现完整的游戏体验,交互逻辑尚可接受,项目初期设立的基本目标经对照已经符合预期效果。下一步的工作将对项目进行屏幕自适应的完善,使其满足各个用户端的使用。将在键盘控制以外加入按钮触发,适配移动端的使用,有条件的话会借助RX实现手势识别,滑动屏幕进行游戏。在此基础上有意添加回退功能,构思是在确定移动之后,将历史入栈,然后实现“后悔”功能。 最后,感谢JAVA WEB课程设计,让我能够静下来去投入这么一个让自己又开心又有收获的事情中来,不管是为了明年毕业找工作还是考研项目经理,这个小东西激起了我不断学习的念头,星星之火可以燎原。期待自己会更好,感谢 [赵老师](https://github.com/webturing) 的辛勤栽培。