贪吃蛇简单代码_贪吃蛇游戏代码

贪吃蛇简单代码_贪吃蛇游戏代码$(function(){varbox=$("<divclass=’box’></div>");varArr=[23,22,21];vardirection="right";varnumber=0;varbool=false;//画地图…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

 $(function () {
        var box=$("<div class='box'></div>");
        var Arr=[23,22,21];
        var direction="right";
        var number=0;
        var bool=false;
        //画地图
        for(var i=0;i<20*20;i++){
            if(i<20){
                var div=$("<div class='qiang'>"+i+"</div>");
            }else if(i%20==0){
                var div=$("<div class='qiang'>"+i+"</div>");
            }else if((i+1)%20==0){
                var div=$("<div class='qiang'>"+i+"</div>");
            }else if(i>20*19){
                var div=$("<div class='qiang'>"+i+"</div>");
            }else {
                var div=$("<div class='kong'>"+i+"</div>");
            }
            box.append(div);
        }


        //蛇
        function she(snakeArr) {
            for(var i=0;i<snakeArr.length;i++){
                $("div").eq(snakeArr[i]+1).removeClass();
                $("div").eq(snakeArr[i]+1).addClass("snake");
            }
        }

        //食物
        function food() {
        var foodNum=parseInt(Math.random()*20*20);
        if(foodNum<20|| foodNum%20==0|| (foodNum+1)%20==0|| foodNum>20*19 ){
            food();
        }else {
            if( $("div").eq(foodNum+1).attr("class")=="snake"){
                food();
            }else {
                $("div").eq(foodNum+1).removeClass();
                $("div").eq(foodNum+1).addClass("food");
            }
        }
        }

        //移动蛇
        function moveSnake(snakeArr) {
            timer=setInterval(function () {
                if(direction=="left"){
                    var head=snakeArr[0]-1;
                }else if(direction=="right"){
                    var head=snakeArr[0]+1;
                }else if(direction=="up"){
                    var head=snakeArr[0]-20;
                }else if(direction=="down"){
                    var head=snakeArr[0]+20;
                }

                //判断是否撞墙
                if($("div").eq(head+1).attr("class")=="qiang"||$("div").eq(head+1).attr("class")=="snake"){
                    clearInterval(timer);
                    // alert("结束");
                    $("span").show();
                    return;
                }else if($("div").eq(head+1).attr("class")!="food"){
                    $("div").eq(snakeArr[snakeArr.length-1]+1).removeClass();
                    $("div").eq(snakeArr[snakeArr.length-1]+1).addClass("kong");
                    snakeArr.length=snakeArr.length-1;
                }else if($("div").eq(head+1).attr("class")=="food"){
                    number++
                    $("button").html(number);
                    food();
                }
                snakeArr.unshift(head);
                she(snakeArr);
                bool=false;
            },300);
        }

        //控制方向
        function kzfx() {
            document.onkeydown = function (event) {
                if (bool) {
                    // console.log("不可改变方向")
                    return;
                }
                var temp = event.keyCode;
                if (temp == 37) {
                    if (direction == "right") {
                        return;
                    } else {
                        bool = true;
                        direction = "left";
                    }
                } else if (temp == 38) {
                    if (direction == "down") {
                        return;
                    } else {
                        bool = true;
                        direction = "up";
                    }
                } else if (temp == 39) {
                    if (direction == "left") {
                        return;
                    } else {
                        bool = true;
                        direction = "right";
                    }
                } else if (temp == 40) {
                    if (direction == "up") {
                        return;
                    } else {
                        bool = true;
                        direction = "down";
                    }
                }
            }
        }
        

        $("body").append(box);
        $("button").click(function () {
            moveSnake(Arr);
            she(Arr);
            food();
            kzfx();
        })
    })
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197089.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • leetcode 通配符匹配_部分匹配查询中有关通配符

    leetcode 通配符匹配_部分匹配查询中有关通配符给定一个字符串 (s) 和一个字符模式 § ,实现一个支持 ‘?’ 和 ‘*’ 的通配符匹配。‘?’ 可以匹配任何单个字符。‘*’ 可以匹配任意字符串(包括空字符串)。两个字符串完全匹配才算匹配成功。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 ? 和 *。示例 1:输入:s = “aa”p = “a”输出: false解释: “a” 无法匹配 “aa” 整个字符串。示例 2:输入:s = “aa”p = “*

    2022年8月8日
    5
  • 常用端口大全[通俗易懂]

    常用端口大全[通俗易懂]端口说明0无效端口,通常用于分析操作系统1传输控制协议端口服务多路开关选择器2管理实用程序3压缩进程5远程作业登录7回显9丢弃11在线用户13时间17每日引用18消息发送协议19字符发生器…

    2025年11月26日
    3
  • django csdn_django queryset合并

    django csdn_django queryset合并前言cookie:在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。cookie的出现就是为了解决这个问题,第一次登录

    2022年7月31日
    9
  • 阿里云邮件服务器怎么设置才能在QQ邮箱访问,互发邮件?

    阿里云邮件服务器怎么设置才能在QQ邮箱访问,互发邮件?

    2021年9月21日
    73
  • mysql 删除重复数据sql声明

    mysql 删除重复数据sql声明

    2022年1月4日
    54
  • html怎么使表格居中,html怎么使表格居中[通俗易懂]

    html怎么使表格居中,html怎么使表格居中[通俗易懂]回答:HTML中两个表格间的距离调整有两种适合微调的办法:1.设置第一个tbale的margin-bottom属性。例如:表示table表格底部保持100px间距。2.设置第二个tbale的margin-top属性。例如:表示table表格顶部保持100px间距。扩展知识margin属性可以单独改变元素(元素可以是表格或者DIV)的上,下,左,右边距。也可以一次改变所有的属性。margin属性…

    2026年1月24日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号