Project1

标题: 怎样设置一个NPC移动到某个位置? [打印本页]

作者: muxizhu    时间: 2012-9-3 20:09
标题: 怎样设置一个NPC移动到某个位置?
就是我想让一个NPC,满足了一定条件后,移动到某一个位置上,这个事件怎样写?
例如在某个房间里有一个NPC,NPC是随机移动着的。我打开了门,满足了“我打开了门”这个条件后,我站在门口不动,而NPC走到我的身旁跟我说话,这样怎样写这个事件?dsu_plus_rewardpost_czw
作者: IORINO_1    时间: 2012-9-3 21:55
用事件中的 “设置事件位置”功能
作者: 没是的人    时间: 2012-9-3 22:00
l楼主说的移动应该不是瞬间移动,而是走过去吧
建议这样写:

作者: hys111111    时间: 2012-9-3 22:07
设置移动路线 => 脚本:
moveto(x,y)
作者: muxizhu    时间: 2012-9-3 23:10
hys111111 发表于 2012-9-3 22:07
设置移动路线 => 脚本:
moveto(x,y)

这样子被瞬间穿越过去了,我想要的效果是一步一步地走过去。
作者: muxizhu    时间: 2012-9-3 23:13
没是的人 发表于 2012-9-3 22:00
l楼主说的移动应该不是瞬间移动,而是走过去吧
建议这样写:

试了试还可以,但是这样子只能在NPC移动到主角旁边时有用,如果要让NPC要走到某个特定位置该怎么办?
作者: 没是的人    时间: 2012-9-4 12:55
不知道你为什么要这样?这样是比较复杂的,如果你愿意学,我也会告诉你方法
比如说你到5,8这个坐标上
你可以这样写



用两个变量来判断角色与目标的距离,这样的顺序是先竖的走再横的走
如果中间有障碍物的话npc会卡住,你可以先打开穿透再在结尾关闭穿透。

另一种方法是,把主角的颜色改成透明,然后移动到目标位置,然后物体按我昨天写给你的那样写,等角色到了位置再把主角移动回来,再把透明度改回来。
如果你的主角原先是在场景中的,那就要准备一个和你行走图一样的伪主角来替换位置,具体办法也是变量储存坐标

如果你的npc去的位置路上有不少障碍物,就要寻路脚本了,自己搜索吧

一般来说你要实现的场景方法很多,但是你可以巧妙的实现,没必要把npc的移动搞这么智能,多看看范例吧
作者: hys111111    时间: 2012-9-4 18:44
muxizhu 发表于 2012-9-3 23:13
试了试还可以,但是这样子只能在NPC移动到主角旁边时有用,如果要让NPC要走到某个特定位置该怎么办? ...

那还可以:
设置移动路线 => 脚本
  1. self.x = x
复制代码
  1. self.y = y
复制代码
这样他不会直接瞬移过去,而是走过去。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1