设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

如何判断哪个NPC距离2号NPC最近?

查看数: 3049 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2019-4-2 18:24

正文摘要:

本帖最后由 大放异彩 于 2019-4-2 18:26 编辑 4-9号NPC是随机移动的,2号NPC也是随机移动的,虽然可以用变量来取得每一个NPC的X Y坐标,但是没办法准确的获取到距离2号NPC最近的是哪个NPC 1、2变量==2号NPC X ...

回复

soulsaga 发表于 2019-4-2 19:08:08
本帖最后由 soulsaga 于 2019-4-2 19:13 编辑

nxy=[]
a=$game_variables[4]+$game_variables[5]-$game_variables[2]+$game_variables[3]
nxy.push(a.abs)
a=$game_variables[6]+$game_variables[7]-$game_variables[2]+$game_variables[3]
nxy.push(a.abs)
a=$game_variables[8]+$game_variables[9]-$game_variables[2]+$game_variables[3]
nxy.push(a.abs)
a=$game_variables[10]+$game_variables[11]-$game_variables[2]+$game_variables[3]
nxy.push(a.abs)
a=$game_variables[12]+$game_variables[13]-$game_variables[2]+$game_variables[3]
nxy.push(a.abs)
a=$game_variables[14]+$game_variables[15]-$game_variables[2]+$game_variables[3]
nxy.push(a.abs)
$game_variables[100]=nxy.index(nxy.min)

点评

也谢谢你的热心帮忙  发表于 2019-4-2 19:45
不对啊,无论怎么输出都是5  发表于 2019-4-2 19:30
好,我再试下  发表于 2019-4-2 19:15
报错了  发表于 2019-4-2 19:14
忘了取绝对值..更新一下..  发表于 2019-4-2 19:11

评分

参与人数 1+1 收起 理由
大放异彩 + 1 塞糖

查看全部评分

灯笼菜刀王 发表于 2019-4-2 18:24:19
本帖最后由 灯笼菜刀王 于 2019-4-2 19:44 编辑

a = 9999
id = 0
e = $game_map.events
for j in 4..9
  b=(e[j].x-e[2].x).abs+(e[j].y-e[2].y).abs
  if  b < a
     id = j
     a = b
  end
end
$game_variables[1] = id

最后 id 的值就是当前最接近2号的ID 带入变量1号

点评

严格的说,叫"菱形", 玩过战棋游戏的话,想像下那个移动范围, 那个菱形的算法就是这个  发表于 2019-4-3 11:32
这是圓形判斷嗎  发表于 2019-4-2 20:29
太久没用..都忘了距离怎么算了..记下记下..  发表于 2019-4-2 19:46
好了好了 谢谢你!!!!!嘿嘿~  发表于 2019-4-2 19:44
现在复制去吧  发表于 2019-4-2 19:43
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-11 01:21

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表