怎样实现敌人的智能移动和攻击

ziyang 2005-01-24 10:56:08
请问怎么实现像暗黑那样的敌人移动和攻击?
敌人走动的速度快慢怎样处理?(一个敌人启动一个线程吗?)
敌人发现并攻击玩家怎么处理?(用A*寻路还是别的?用了A*速度就很慢。)
敌人分类(胆小,机灵,笨壮)怎样处理?
谢谢!!!希望各路英雄能指点一下!
...全文
350 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
IsGoldenFinger 2005-01-31
  • 打赏
  • 举报
回复
你设置一个敌人的速度属性不就可以了吗?专门设置一个v的属性,任意x和y方向的速度都和v成正比例的关系,Vx = K1×V;Vy = K2×V;
ziyang 2005-01-25
  • 打赏
  • 举报
回复
谢谢大家!
那移动快慢该怎么解决?是
move(dx,dy);
Util.delay(speed);//根据敌人速度不同设置不同的延时时间
mainCanvas.repaint();
这样子吗?
乐百 2005-01-25
  • 打赏
  • 举报
回复
建议你抽象敌人类(加入你需要的属性,和追踪方法)
胆小,机灵,笨壮继承后加入自己的移动方法(移动快慢,可以用方法解决,最好是在属性解决)攻击方法等!
使用一线程 循环容器(装入所有敌人)
基本上可以解决这个问题了!!
希望对你有帮助!
cuilichen 2005-01-25
  • 打赏
  • 举报
回复
顶一下
sniper_bat 2005-01-24
  • 打赏
  • 举报
回复
请问怎么实现像暗黑那样的敌人移动和攻击?(做敌人的状态数组)
一个敌人启动一个线程吗?(绝对不行)
敌人走动的速度快慢怎样处理?(敌人状态数组里可以存放速度,不同的敌人维护不同的数组)
敌人发现并攻击玩家怎么处理?(定一个视野,玩家进入视野就无限靠近玩家,到一定距离转换到攻击状态)
敌人分类(胆小,机灵,笨壮)怎样处理?(还是用状态数组)
说到底就是维护每一个敌人的状态机....
lyjlee 2005-01-24
  • 打赏
  • 举报
回复
玩玩robot code, 你就知道了
http://www-900.ibm.com/developerWorks/cn/java/j-circular/index.shtml
【资源说明】 课程设计-基于Unity游戏引擎的2D闯关游戏源码+sln解决方案(直接打开).zip 基于Unity游戏引擎的2D闯关游戏 ## 游戏逻辑: 通过将 Cinemachine 虚拟摄影机与玩家和输入控制相结合,实现了平滑而生动的相机跟随玩家移动效果; 基于单例设计模式实现转场动画; 设计并实现了游戏的核心机制和规则,如玩家属性和道具系统,包括生存机制和道具收集与使用等; 通过不同的关卡动态调整游戏难度,确保游戏的平衡性和挑战性。 ## 角色: 创建多个具有多种动作(行走、跳跃、攻击)的角色模型,并通过动画关键帧函数实现不同动作之间的平滑过渡; 针对不同的角色设计不同的行为和技能,丰富游戏玩法同时可以让玩家或角色可以释放各种有趣技能,同时为角色实现了基本的碰撞检测和触发效果,使角色能够与环境和其它角色进行交互; 设计和实现多样化的敌人AI行为,如巡逻、追逐、攻击和跳跃等,使敌人表现出智能和多样性; 实现巡逻路径和警戒范围,使敌人能够在特定区域内巡逻并检测玩家的接近。 ## UI和音效: 能够设计用户友好的游戏界面,包括主菜单、关卡选择界面、玩家属性和游戏内道具等,并使用Device Simulator工具和锚定点等技术实现多设备适配,创造清晰、直观的界面布局; 选择合适的背景音乐,以衬托游戏场景和情感,实现音效的触发和控制,使声音能够根据游戏事件的发生而变化。 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧