查看: 1234|回复: 3

[已经解决] 如何让NPC靠近指定地点

  [复制链接]
梦石
0
星屑
50
在线时间
9 小时
注册时间
2008-7-21
回帖
9
发表于 2009-7-27 16:01:58 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 yangjuan66 于 2009-7-27 16:32 编辑

怎么让角色自动走向指定地点,线路随机不是固定的,总之到达地点就可以了,我想做一个追着他走的效果。

伸手爱好者

梦石
0
星屑
50
在线时间
8 小时
注册时间
2009-3-28
回帖
500
发表于 2009-7-27 16:04:11 | 显示全部楼层
怎么个路线随机
可能我理解能力太差.
完全不理解.
咱在咱的设计素描书上看到有“柳笛”这个名字,恩~到底有怎样的关系呢?
[img]http://rpg.blue/data/attachment/forum/month_0910/09102318341719b34b80b536d4.gif[/img]
回复

使用道具 举报

B

梦石
0
星屑
50
在线时间
26 小时
注册时间
2007-8-26
回帖
3622
发表于 2009-7-27 16:17:12 | 显示全部楼层
  1. class Game_Character
  2.   def move_toward(x,y,event=nil)
  3.     (x = $game_map.events[event].x ; y = $game_map.events[event].y) if event != nil
  4.     sx = @x - x
  5.     sy = @y - y
  6.     if sx == 0 and sy == 0
  7.       return
  8.     end
  9.     abs_sx = sx.abs
  10.     abs_sy = sy.abs
  11.     if abs_sx == abs_sy
  12.       rand(2) == 0 ? abs_sx += 1 : abs_sy += 1
  13.     end
  14.     if abs_sx > abs_sy
  15.       sx > 0 ? move_left : move_right
  16.       if not moving? and sy != 0
  17.         sy > 0 ? move_up : move_down
  18.       end
  19.     else
  20.       sy > 0 ? move_up : move_down
  21.       if not moving? and sx != 0
  22.         sx > 0 ? move_left : move_right
  23.       end
  24.     end
  25.   end
  26. end
复制代码
使用方法:在自定义移动中·脚本·输入
move_toward(指定地点x坐标,指定地点y坐标,事件ID)
其中事件ID可写,可不写~
回复

使用道具 举报

梦石
0
星屑
50
在线时间
9 小时
注册时间
2008-7-21
回帖
9
 楼主| 发表于 2009-7-27 16:32:14 | 显示全部楼层
嗯,行了,没问题了,谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部