加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码网 (https://www.900php.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

通过编写扫雷游戏提高你的Bash技巧

发布时间:2019-10-10 11:19:45 所属栏目:Windows 来源:Abhishek Tamrakar
导读:副标题#e# 那些令人怀念的经典游戏可是提高编程能力的好素材。今天就让我们仔细探索一番,怎么用 Bash 编写一个扫雷程序。 我在编程教学方面不是专家,但当我想更好掌握某一样东西时,会试着找出让自己乐在其中的方法。比方说,当我想在 shell 编程方面更进

等下,如果 free_fields=0 呢? 这意味着,玩家已选择过所有单元格。如果想更好理解这一部分,可以看看这里的源代码。

  1. if [[ $free_fields -eq 0 ]]; then # 这意味着你已选择过所有格子
  2. printf 'nnt%s: %s %dnn' "You Win" "you scored" "$score"
  3.       exit 0
  4. fi

创建游戏结束逻辑

对于游戏结束这种情况,我们这里使用了一些很巧妙的技巧,将结果在屏幕中央显示出来。我把这部分留给读者朋友们自己去探索。

  1. if [[ "$m" = "X" ]]; then
  2. g=0 # 为了在参数扩展中使用它
  3. room[$i]=X # 覆盖此位置原有的值,并将其赋值为X
  4. for j in {42..49}; do # 在游戏界面中央,
  5. out="gameover"
  6. k=${out:$g:1} # 在每一格中显示一个字母
  7. room[$j]=${k^^}
  8.       ((g+=1))
  9.     done
  10. fi

最后,我们显示出玩家最关心的两行。

  1. if [[ "$m" = "X" ]]; then
  2.       printf 'nnt%s: %s %dn' "GAMEOVER" "you scored" "$score"
  3.       printf 'nnt%snn' "You were just $free_fields mines away."
  4.       exit 0
  5. fi

通过编写扫雷游戏提高你的Bash技巧

Minecraft Gameover

文章到这里就结束了,朋友们!如果你想了解更多,具体可以查看我的 GitHub 存储库,那儿有这个扫雷游戏的源代码,并且你还能找到更多用 Bash 编写的游戏。 我希望,这篇文章能激起你学习 Bash 的兴趣,并乐在其中。

【编辑推荐】

  1. Linux系统这11个发行版,你认识多少个?
  2. 在21世纪该怎样编译Linux内核
  3. Linux比Windows操作系统更好的10条理由
  4. Linux下4种禁用Root登陆的方法,你掌握了哪几种呢?
  5. 在Linux上记录和重放终端会话活动
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:源码网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读