Android 简单实现贪吃蛇源码

这篇博客介绍了如何在Android平台上简单实现贪吃蛇游戏。通过自定义View,不断更新并绘制界面来模拟蛇的移动。蛇的位置由ArrayList中的点表示,蛇头和蛇尾在ondraw中区分。食物通过随机生成并绘制。当蛇吃掉食物时,蛇的长度增加;而撞墙或碰到自身则游戏结束。整个过程涉及到了移动逻辑、碰撞检测以及界面重绘等关键点。
摘要由CSDN通过智能技术生成

android 简单实现贪吃蛇源码

一:实现原理
通过自定义view,然后根据小蛇的移动速度来不停的更新,绘制界面。

二:效果如下
这里写图片描述

三:核心实现
1:小蛇的位置是由很多点来绘制完成的,里面的点全部装在里面ArrayList里面。

”private ArrayList<snakePoint> SpointList = new ArrayList<>();

snakePoint 的代码如下

    class snakePoint {
        /**
         * 小蛇某个点x的位置
         */
        int x;
        /**
         * 小蛇某个y的位置
         */
        int y;

        snakePoint(int x, int y) {
            this.x = x;
            this.y = y;
        }
    }

2:在ondraw里面绘制出来这些点,区别蛇头和蛇尾

     for (int i = 0; i < SpointList.size(); i++) {
            snakePoint sp = SpointList.get(i);
            Rect rect_showPosition = new Rect(sp.x - snakeSize, sp.y - snakeSize, sp.x + snakeSize, sp.y + snakeSize);
            if(i==0){
  //蛇头
                canvas.drawBitmap(snake_head, rect, rect_showPosition, paint);
            }else{   //蛇尾
                canvas.drawBitmap(snake_body, rect, rect_showPosition, paint);
            }
        }

3:食物的绘制,通过随机的方法生成一个小与手机屏幕宽高的点,通过ondraw在绘制出来。


     /***
     * 随机添加食物
     */
    
评论 37
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值