javascript 人物逼真行走,已完成

 更新时间:2009年04月24日 01:30:06   作者:  
然后请分析下程序,我出以下题目,供牛牛们练手(RPG游戏开发 - 实战,不搞理论,着重程序实现思路).
先欣赏,走两步试试.

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

然后请分析下程序,我出以下题目,供牛牛们练手(RPG游戏开发 - 实战,不搞理论,着重程序实现思路).
1:我的程序,你还能否再精简?优化/改编算法?提高效率?试试吧,不过不能说太容易..提示:我目前认为,判断8个移动方向的程序,虽然效率可以,但IF ELSE的写法真有点老套,我也在想新的思路来简化这段程序,你若有,就漏两手吧!
2:都想玩寻路是吧?哈哈,那么就请试试碰触那个蓝色方块?注:假设,将来出现的障碍,是随机的,不是固定的..你碰到了比说任何蓝色障碍,就停住,或说,饶过去....提醒你:关键是思路.
3:有个问题我也不知道,就是CSS的clip,我发现就是,虽然裁剪了一小块,但其他被裁掉的部分,虽然看不见,但是,依然占用地方(原大小),比如,人物走到中间,却因为空白的下半部分超出,就会有滚动条了,这个,能不能就硬性去掉裁剪掉的部分?不让其影响滚动条?(别说BODY加上scroll=no就完事了,这个我可知道^-^)
4:谁有本事改成FF也能运行?注:我没装那玩意,哈哈,不过,我认为不太容易/可能很难改....


注:以上4点,你只需完成一点即可(就很牛),当然了,你4点都能/都想解决,那更牛B了,呵呵开个玩笑,反正随便你^-^.

以下是新增的内容:

1:采取了campaign的建议,使用其超级三元表达式,支持多行?能加注释?堪比多个IF ELSE?真牛..使用了,剩了不少代码.
2:借鉴了winter的思路,使用CSS的backgroundPosint方式代替了clip裁剪,简便易用....一个DIV就搞定了,无需在包容一个IMG
3:参考了理论家hax的代码,HTML代码使用了兼容写法,不过,JS程序没浏览器测试,无法写标准,呵呵..

4:自己,又实现了[鼠标按住],不停变换方向移动,你这次测试,可以单击,可以一直按住鼠标左键不停移动...思路就是用一个计时器不停检测,也占极少CPU,不知大家还有没更好思路?还有,用了setCapture()这种鼠标锁定.
5:自己,经测,堵住了几个异常漏洞(当值为0或NaN时,就说,应该不会再出错误)

精简/优化后的程序:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

点击在新窗口查看全图

相关文章

  • js放到head中失效的原因与解决方法

    js放到head中失效的原因与解决方法

    本文主要介绍了js放到head中有时候会失效的原因以及解决方法,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • JS踩坑实战之19位数Number型精度丢失问题详析

    JS踩坑实战之19位数Number型精度丢失问题详析

    前几天测试接口功能的时候,发现了一个奇怪的问题,下面这篇文章主要给大家介绍了关于JS Number型精度丢失问题的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-10-10
  • echarts中在柱状图上方显示文字的示例代码

    echarts中在柱状图上方显示文字的示例代码

    这篇文章给大家介绍了在echarts中如何在柱状图上方显示文字,文中给出了完整的示例代码,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-01-01
  • JavaScript中为元素加上name属性的方法

    JavaScript中为元素加上name属性的方法

    干前端这行当已经超过一个月了, 每天都会遇到新奇古怪, 甚至离奇的问题. 虽然绝大部分都是一些小问题, 但我觉得还是有必要记录下来
    2011-05-05
  • element table 点击某一行中按钮加载功能实现

    element table 点击某一行中按钮加载功能实现

    在Element UI中,实现表格(element-table)中的这种功能通常涉及到数据处理和状态管理,这篇文章主要介绍了element table 点击某一行中按钮加载功能,需要的朋友可以参考下
    2024-06-06
  • electron版本升级的简单步骤

    electron版本升级的简单步骤

    Electron是一款流行的跨平台框架,用于构建桌面应用程序,它基于Web技术栈,结合了Chromium和Node.js,可以使用HTML、CSS和JavaScript开发跨平台的应用程序,本文将介绍electron版本升级的简单步骤,并提供相应的源代码示例,需要的朋友可以参考下
    2024-05-05
  • laydate 显示结束时间不小于开始时间的实例

    laydate 显示结束时间不小于开始时间的实例

    下面小编就为大家带来一篇laydate 显示结束时间不小于开始时间的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • javascript中的 onchange事件详解

    javascript中的 onchange事件详解

    onchange 事件会在域的内容改变时发生,可用于单选框与复选框改变后触发的事件,本文通过示例代码介绍javascript中的 onchange事件,感兴趣的朋友跟随小编一起看看吧
    2023-10-10
  • javascript伸缩菜单栏实现代码分享

    javascript伸缩菜单栏实现代码分享

    这篇文章主要介绍了javascript伸缩菜单栏实现代码,点击标题显示下级菜单,节约了空间,使页面排版更加紧凑,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • Bootstrap实现的经典栅格布局效果实例【附demo源码】

    Bootstrap实现的经典栅格布局效果实例【附demo源码】

    这篇文章主要介绍了Bootstrap实现的经典栅格布局效果,结合具体实例形式分析了基于BootStrap实现栅格布局的完整步骤与相关操作技巧,并附带demo源码供读者下载参考,需要的朋友可以参考下
    2017-03-03

最新评论