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

Project1

 找回密码
 注册会员
搜索
查看: 1813|回复: 7
打印 上一主题 下一主题

[已经解决] 判断NPC到达了某地点,只能用变量获取NPC的坐标来判断吗

[复制链接]

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

跳转到指定楼层
1
发表于 2015-12-12 23:54:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
用了事件自动寻路脚本。
我设定NPC去某地再去某地再去某地。
那么NPC到达某地的时候我只能通过变量获取坐标来判断吗。
感觉这样好烦,一村的人都在移动的话,会有一大批变量。
用等待的话,感觉又不精确,可能会出现被挡绕路等现象。

评分

参与人数 1星屑 +35 收起 理由
RyanBern + 35 手动认可奖励

查看全部评分

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

2
发表于 2015-12-13 06:18:51 | 只看该作者
所有这类的事件可以共用2个变量啊,为什么会有一大批变量?
回复 支持 反对

使用道具 举报

Lv4.逐梦者

「Pemercyia」


Urhurrenna

梦石
0
星屑
9397
在线时间
2748 小时
注册时间
2008-9-5
帖子
3543

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

3
发表于 2015-12-13 15:22:14 | 只看该作者
本帖最后由 cinderelmini 于 2015-12-13 23:27 编辑

事件中【脚本】:get_character(事件ID).x 可以获得事件的x(格子)坐标,0是本事件,-1是主角,y同理。
条件分歧里也可以用【脚本】来获取。

饭粒一枚……
Project3.zip (200.8 KB, 下载次数: 39)

点评

虽然不知道为什么,但窝这加了0也没关系……  发表于 2015-12-13 23:43
我知道为什么了,是坐标前面不能带零  发表于 2015-12-13 23:39
饭粒在此……窝这是没啥问题~  发表于 2015-12-13 23:27
这个方便,我吃完饭就去试试  发表于 2015-12-13 18:19

评分

参与人数 1星屑 +200 收起 理由
RyanBern + 200 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

4
 楼主| 发表于 2015-12-13 19:38:38 | 只看该作者
cinderelmini 发表于 2015-12-13 15:22
事件中【脚本】:get_character(事件ID).x 可以获得事件的x(格子)坐标,0是本事件,-1是主角,y同理。
条 ...


不行啊

点评

没用防卡。有进地图,然后报错。syntaxerror。把这个删掉就能正常进去  发表于 2015-12-13 22:53
或者说用了防止事件多卡屏的脚本?然后事件在屏幕外所以查不到这个事件……  发表于 2015-12-13 22:44
这个方法本身就在XP内部写着的,除非事件不存在不然不会出错,进游戏出错是到地图了还是连标题都没进?  发表于 2015-12-13 22:42
应该是get_character(事件ID).x这个句子是错的,进游戏就报错  发表于 2015-12-13 22:33
第一行就无条件把它无限放到(78,45)上了……  发表于 2015-12-13 20:49
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止访问)

梦石
0
星屑
88
在线时间
631 小时
注册时间
2014-8-4
帖子
3600
5
发表于 2015-12-13 19:52:12 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
451
在线时间
228 小时
注册时间
2015-2-23
帖子
241
6
发表于 2015-12-13 21:40:58 | 只看该作者
看见楼主设置了一堆条件,而且每个判断都是2个,看着都累人。
所以简化了一下,用法是 条件分歧:pos_jud(id, x, y)  
id 和以前一样,是 -1,0,1,2,3,4,,,,
x和y 是判断的坐标。
  1. class Interpreter
  2.   def pos_jud(id, x, y)
  3.     return false if get_character(id).nil?
  4.     return (get_character(id).x == x and get_character(id).y == y)
  5.   end
  6. end
复制代码
制作XP特效,找我。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

7
 楼主| 发表于 2015-12-13 22:09:20 | 只看该作者
枫の叶 发表于 2015-12-13 21:40
看见楼主设置了一堆条件,而且每个判断都是2个,看着都累人。
所以简化了一下,用法是 条件分歧:pos_jud(i ...

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
451
在线时间
228 小时
注册时间
2015-2-23
帖子
241
8
发表于 2015-12-14 18:14:29 | 只看该作者
yang1zhi 发表于 2015-12-13 22:09

嘛!怎么会出错呢?没有道理啊。
Project1.rar (187.38 KB, 下载次数: 21)

点评

我已经知道为什么出错了。是坐标前面有0会出错,没0不会出错。不过事件自寻路脚本在经过每个目标点时都会卡,所以我已经放弃  发表于 2015-12-14 19:08
制作XP特效,找我。
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-9-22 23:18

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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