浏览 5952 次
锁定老帖子 主题:javascript 贪吃蛇
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-12-28
本来是想用Table的,后来发现那东西比较麻烦,所以就用了div,比较容易控制。 写了以后发现写JS也需要设计,JS代码不想C#代码可以转到定义,所以没有设计很容易乱.我以后要把JS分个模块,每个功能属于模块. 本人新手,学习JS三个月,其中看了EXTJS3.0的API一个月,虽然也能小用点EXTJS,但是总觉的EXTJS集成的太好,不对JS学习点,心里总不踏实, JS才是基础,所以觉得继续学习JS。现在正在看Javascript权威指南(好称犀牛书). 大家可以下源码看看,可以用砖拍我,但轻点~~呵呵 同时感谢42087743的大虾,我看了你的源码 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-12-29
最后修改:2009-12-29
大家给我点意见!!!
![]() ![]() ![]() |
|
返回顶楼 | |
发表时间:2009-12-29
IE8、FF3.5运行不了
|
|
返回顶楼 | |
发表时间:2009-12-30
Icgemu 写道 IE8、FF3.5运行不了
IE8应该可以,是空格开始~~~ |
|
返回顶楼 | |
发表时间:2010-01-02
横向移动,有问题,不是一个直线,是两个直线加起来了。。。
|
|
返回顶楼 | |
发表时间:2010-01-02
不错 加油
|
|
返回顶楼 | |
发表时间:2010-01-03
startGame: function() { Game.initFood(); Game.snakeInit(); document.onkeydown = function(e) { //向上 if (event.keyCode == 38) { if (Game.moveState == "down" || Game.moveState == "up") { return false; } else { Game.lastMoveState = Game.moveState; Game.moveState = "up"; } return false; } //向左 else if (event.keyCode == 37) { if (Game.moveState == "right" || Game.moveState == "left") { return false; } else { Game.lastMoveState = Game.moveState; Game.moveState = "left"; } return false; } //向右 else if (event.keyCode == 39) { if (Game.moveState == "left" || Game.moveState == "right") { return false; } else { Game.lastMoveState = Game.moveState; Game.moveState = "right"; } return false; } //向下 else if (event.keyCode == 40) { if (Game.moveState == "up" || Game.moveState == "down") { return false; } else { Game.lastMoveState = Game.moveState; Game.moveState = "down"; } return false; } //空格 else if (event.keyCode == 32) { //假如游戏为停止状态 if (Game.gameState == "stop") { Game.gameState = "run"; timeID = setInterval(Game.move, Game.speed); return false; } //假如游戏为运行状态 else if (Game.gameState == "run") { Game.gameState = "stop"; clearInterval(timeID); return false; } //假如游戏为失败状态 else if (Game.gameState == "dead") { Game.gameState = "stop"; for (var i = 0; i < Game.snake.length; i++) { document.getElementById("gameInterface").removeChild(Game.snake[i]); } Game.snake = []; Game.snakeInit(); return false; } } } 楼主,你“ document.onkeydown = function(e) {”有问题 下面调用的都是event变量,这里你才函数参数是e,所以问题在这里。改成event就可以顺利运行了。 总体上还不错,加油! |
|
返回顶楼 | |
发表时间:2010-01-04
楼主,你“ document.onkeydown = function(e) {”有问题
下面调用的都是event变量,这里你才函数参数是e,所以问题在这里。改成event就可以顺利运行了。 总体上还不错,加油! 大侠,没听咋明白,参数e好像没有使用过啊~~本来我是想测试下onkeydown事件会不会传啥参数过来,后来忘了去掉e了. 如果把e改成event会envent会变成undefind 谢谢你的指点 |
|
返回顶楼 | |
发表时间:2010-01-04
lostpast 写道 不错 加油
谢谢支持 |
|
返回顶楼 | |
发表时间:2010-01-06
最后修改:2010-01-06
和游戏还是有点差距的 BUG还是比较多的
1.蛇能穿自己身体 2.能跨行吃到食物 3.每次初始化 速度没有被重置 .... 鉴定完毕。 不过在我看来已经很强大了 |
|
返回顶楼 | |