每日一个shell脚本之钓鱼游戏练手

每日一个shell脚本之钓鱼游戏练手

bash 复制代码
#!/usr/bin/bash
# **************************************
#   CSDN:         M乔木
#   qq邮箱:        [email protected]
#   解释器:        这是一个shell脚本
# **************************************

# 游戏初始化
fishing_rod="普通钓竿"
bait="虫子"
score=0
# 主循环
while true; do
      # 显示游戏进度
      echo "---------------------------"
      echo "当前分数:[${score}]"
      echo "请选择操作:"
      echo "1. 更换钓竿"
      echo "2. 更换鱼饵"
      echo "3. 开始钓鱼"
      echo "4. 退出游戏"
      echo "---------------------------"
      read -p "请输入操作序号:" action
      # 处理玩家操作
      case $action in
      1)
            echo "---------------------------"
            echo "请选择钓竿:"
            echo "1. 普通钓竿"
            echo "2. 高级钓竿"
            echo "---------------------------"
            read -p "请输入钓竿序号:" rod
            if [ $rod -eq 1 ]; then
                  fishing_rod="普通钓竿"
            elif [ $rod -eq 2 ]; then
                  fishing_rod="高级钓竿"
            fi
            ;;
      2)
            echo "---------------------------"
            echo "请选择鱼饵:"
            echo "1. 虫子"
            echo "2. 面包"
            echo "---------------------------"
            read -p "请输入鱼饵序号:" bait
            if [ $bait -eq 1 ]; then
                  bait="虫子"
            elif [ $bait -eq 2 ]; then
                  bait="面包"
            fi
            ;;
      3)
            # 生成随机事件
            fish_type=$((RANDOM % 3))
            fish_size=$((RANDOM % 10 + 1))

            # 计算成功率
            success_rate=0
            if [ $fishing_rod == "普通钓竿" ]; then
                  success_rate=50
            elif [ $fishing_rod == "高级钓竿" ]; then
                  success_rate=90
            fi
            if [ $bait == "虫子" ]; then
                  success_rate=$((success_rate + 10))
            elif [ $bait == "面包" ]; then
                  success_rate=$((success_rate - 10))
            fi

            # 判断是否成功
            if [ $((RANDOM % 100)) -lt $success_rate ]; then
                  clear
                  echo "[恭喜你,成功捕获了一条${fish_type}号鱼,大小为${fish_size}!]"
                  score=$((score + fish_size))
            else
                  clear
                  echo "[很遗憾,未能捕获到鱼]"
            fi
            ;;
      4)
            echo "游戏结束 最终得分:[${score}]"
            exit 0
            ;;
      *)
            echo "[无效的操作,请重新输入]"
            ;;
      esac
done

新建一个.sh的文件,复制进去运行即可!不会具体怎么操作的可以去我前面的文章学习掌握一下!

点赞关注转发感谢!

相关推荐
小徐Chao努力6 分钟前
【centos】经常使用的脚本
linux·运维·centos
慈云数据8 分钟前
从开发到上线:基于 Linux 云服务器的前后端分离项目部署实践(Vue + Node.js)
linux·服务器·vue.js
rainFFrain3 小时前
日志与策略模式
linux·运维·vscode·策略模式
林政硕(Cohen0415)4 小时前
Linux驱动开发进阶(四)- 内存管理
linux·驱动开发·内存管理
sqmeeting4 小时前
Linux NUC小主机化身视频会议服务器: 技术优势与部署实战
linux·服务器·windows·音视频·实时音视频
无情白5 小时前
k8s运维面试总结(持续更新)
运维·面试·kubernetes
VX_CXsjNo15 小时前
免费送源码:Java+SSM+Android Studio 基于Android Studio游戏搜索app的设计与实现 计算机毕业设计原创定制
java·spring boot·spring·游戏·eclipse·android studio·android-studio
H1346948906 小时前
企业服务器备份软件,企业服务器备份的方法有哪些?
运维·服务器·负载均衡
愚润求学7 小时前
Linux开发工具——apt
linux·服务器·开发语言
杰克逊的日记7 小时前
CentOs系统部署DNS服务
linux·python·centos·dns