MATLAB的贪吃蛇小游戏

        这几天在做MATLAB的课程设计,因为时间很赶,网上借鉴了Alex的整体框架(文章链接在末尾),改了一个简单的贪吃蛇的小游戏,先来看看总体的效果吧。

        

        游戏比较简单,整个程序也不会很复杂,通过控制上下左右按键来控制贪吃蛇的走位(要想有好成绩一定要有骚走位哦大笑),贪吃蛇吃到食物后会增长一个长度,当贪吃蛇碰到四周的墙壁或者碰到自己的身体的时候,程序就会弹出窗口提示游戏结束,在游戏中还可以通过空格键来暂停程序。所以,作为小课设这是个不错的选择,这里不得不夸一下MATLAB的强大的矩阵计算功能,很多计算都可以直接运用矩阵的算法得出,节约了好多的代码生气

        接下来就是代码模块了:

        1.初始设置:初始设置是画出蛇的位置和食物的位置以及进行相关的参数的设置,第三行的坐标轴加了0.5是为了之后墙壁检测的时候方便操作,这在之后会加以说明。

function snake
  axis equal                    %设置坐标轴为对称      
  axis(0.5+[0, 20, 0, 20])          %加0.5是为了之后的墙壁碰撞检测的方便
  set(gca,'xtick',[],'ytick',[],'xcolor','w','ycolor','w')      %隐藏坐标轴
  set(gca, 'color', 'y')
  hold on                                                  
  snakeTop = [5, 5];                   %这是蛇头的初始位置
  snakeDirect = [1, 0];                %蛇的方向
  body = [5, 5 ; 4, 5 ; 3, 5];         %蛇身的初始位置数组  
  long = 3;                             %蛇的长度            
  food = [10, 10];                       %食物的初始位置
  plotSnake = scatter(gca, body(:, 1
  • 82
    点赞
  • 280
    收藏
    觉得还不错? 一键收藏
  • 34
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值