命令行2048

命令行2048

By 白熊花田(http://blog.csdn.net/whiterbear) 转载需注明出处,谢谢。

写了一个基于命令行的2048游戏,python写的,难度不是很大,关键是要理清游戏的逻辑。这篇博客将介绍下游戏实现的逻辑和简单的实现,以及美化游戏界面的细节。

先贴一张游戏运行的截图。

这里写图片描述

1 逻辑

介绍该游戏的逻辑。

1.1 游戏的逻辑

玩过2048的童鞋应该知道,该游戏是由4*4的方格组成,启动时方格里会随机出现两个数字,一般为2,偶尔也会出现4. 游戏在达到2048时显示胜利,当然也可以继续玩下去,在方格填满并且四个方向均无法移动时游戏失败。

1.2 移动的逻辑

可以通过上下左右进行方格数字的移动,以向左为例,当玩家选择向左时,每一行从最左边的数字开始,先(1)向左移动,如果该数字左边有0格,移动后位置数字的值从0变成该数字的值,一直到该行所有的数字均尝试了移动为止;(2)合并,如果该数字与其右边的数字等值且不等于0时,它自身值变为以前的2倍,其右边的值变为0,继续合并,直到该行的所有数字均尝试了该合并操作;(3)向左移动,规则同(1)。

以向左为例,可能会出现的情况有:

[0, 0, 0, 2] -> [2, 0, 0, 0]
[2, 2, 2, 0] -> [4, 2, 0, 0]
[2, 2, 2, 2] -> [4, 4, 0, 0]
[4, 2, 0, 2] -> [4, 4, 0, 0]

1.3 分数的逻辑

每次移动有合并时,游戏总分加上合并后该数字的数值。如某行从
[2, 2, 2, 2] -> [4, 4, 0, 0],出现了两次合并,则总分应该加上4+4分。

2 实现

介绍该游戏的编程实现细节。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值