| 赞 | 20 |
| VIP | |
| 好人卡 | |
| 积分 | 19 |
| 经验 | |
| 最后登录 | 2022-3-29 |
| 在线时间 | 101 小时 |
- 梦石
- 1
- 星屑
- 916
- 在线时间
- 101 小时
- 注册时间
- 2006-3-27
- 回帖
- 1019
|
发表于 2007-7-8 01:02:10
|
显示全部楼层
看我以前发的这个帖子
http://rpg.blue/htm/Topic_47471.htm
- 原版是这样
- def move_type_toward_player
- # 求得与主角坐标的差
- sx = @x - $game_player.x
- sy = @y - $game_player.y
- # 求得差的绝对值
- abs_sx = sx > 0 ? sx : -sx
- abs_sy = sy > 0 ? sy : -sy
- # 如果纵横共计离开 20 个元件
- if sx + sy >= 20
- # 随机
- move_random
- return
- end
- # 随机 0~5 的分支
- case rand(6)
- when 0..3 # 接近主角
- move_toward_player
- when 4 # 随机
- move_random
- when 5 # 前进一步
- move_forward
- end
- end
复制代码
把其中这一段
if sx + sy >= 20
# 随机
move_random
return
end
改成
if sx + sy >= X
# 随机
move_random
return
end
X为范围,move_random是随机移动的意思,如果把这句删掉,大于X的时候就会原地不动 系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~ |
|