Project1

标题: 请问怎么判断事件是不是面朝主角 [打印本页]

作者: 暴走吧怪蜀黍    时间: 2016-1-18 23:59
标题: 请问怎么判断事件是不是面朝主角
我想做类似于宠物小精灵里的效果。就是路上的人面朝你的时候,会主动过来和你决斗。不是面朝你的时候就不会触发。
请问在条件分歧里的脚本该怎么写?
嗯,谢谢各位大神了!
作者: david_ng223    时间: 2016-1-19 07:25
提示: 作者被禁止或删除 内容自动屏蔽
作者: 猪衰衰    时间: 2016-1-19 10:03


用坐标代入变量来判断.
Project4.zip (1.43 MB, 下载次数: 53)

作者: 暴走吧怪蜀黍    时间: 2016-1-19 17:55
猪衰衰 发表于 2016-1-19 10:03
用坐标代入变量来判断.

额,十分感谢!不过似乎是我的描述有问题,我的朝向不仅仅是坐标相同那意思,就是事件里面有一个移动指令是面朝主角,那时候主角的坐标在一定范围内事件都只是朝一个方向。
再次感谢你的帮助!
作者: 御曹司    时间: 2016-1-19 22:19
并行处理

如玩家面朝向为?(面对)则战斗处理
作者: 暴走吧怪蜀黍    时间: 2016-1-19 23:33
御曹司 发表于 2016-1-19 22:19
并行处理

如玩家面朝向为?(面对)则战斗处理

可能是我表达不清,十分抱歉!
我的意思是,角色在事件的朝向方向的时候会触发事件,事件不是朝向角色的时候不会触发,而且宠物小精灵里的事件都是会动的,会转向的。
额,还是十分感谢你啦。
作者: 风吹处阴凉    时间: 2016-1-20 00:07
你在人物前面平铺一排事件,就是角色碰到后,人物就开始行走(靠近主角),用开关控制。此时再让角色禁止移动,人物那是并行处理。也不知道行不行,你试一下
作者: if216    时间: 2016-1-20 00:49
你需要的是前方直线sensor一类的脚本。翻墙搜索下。sensor range是感应的,但你只要前方的。
作者: 百里_飞柳    时间: 2016-1-20 09:42
YEA-事件追逐玩家


# @see_player = true
# For events that require them to see the player first, use this script call
# inside the movement boxes. This does not follow line of sight rules, which
# means if there's a rock blocking you and the event, it will still see you.

在移动路径里加上这个 @see_player = true 的话,事件会先判定是否“看见”玩家(事件朝向和玩家朝向相向,x或y相同时)
作者: 暴走吧怪蜀黍    时间: 2016-1-20 18:13
百里_飞柳 发表于 2016-1-20 09:42
[fold=YEA-事件追逐玩家]#============================================================================ ...

老鹰,我还是不太会用,能上传个范例么,麻烦你啦。
作者: 暴走吧怪蜀黍    时间: 2016-1-20 18:14
if216 发表于 2016-1-20 00:49
你需要的是前方直线sensor一类的脚本。翻墙搜索下。sensor range是感应的,但你只要前方的。 ...

我也是这么想的,只是貌似没有这样的脚本...
不过还是十分感谢你啦!
作者: 传说中di    时间: 2016-2-4 11:34
三楼的都解决你的问题了,如果说不会移动那你自定义面向里加入随机移动。
作者: 黄亦天    时间: 2016-2-6 00:23
本帖最后由 黄亦天 于 2016-2-6 00:28 编辑

这费劲的
首先这个事件设定为并行执行
事件要用3个变量 玩家要用2个变量
分别带入 本事件朝向 本事件X 本事件Y 玩家X 玩家Y

首先 判定本事件朝向 分别是 2 4 6 8  对应的方向看小键盘

然后 判定事件的XY和主角的XY
比如
如果 事件面向 下 的时候  
  如果 玩家的Y 和 事件的Y 相同 (相等就是直线 如果要范围 就相减 判定正负值的范围)
    如果 玩家的X 大于 事件的X(说明玩家在事件的正下方
      如果 X之间的差值大于一定数值
         忽略(表示视野外)
      如果 X之间的差值在范围内
         那么 开启一个开关/独立开关 让这个事件执行一个自动执行事件页 让这个事件进行追击 直接指定向玩家移动就可以

大致就是这样

同理 先判定方向 然后判定 事件与玩家的X的差、Y的差 是否在范围内 是正是负 要注意
这样基本可以实现一个纯事件的视野系统


缺点是并行事件开多了会卡 每个事件 都要用独立的三个变量 不能重叠 比较占地方

作者: howhow1314    时间: 2016-2-6 14:30
弄了個範例…
裡面有用法, 另外說明一點就是只要不通行一律視作看不到

xilanhua06022016.rar

205.28 KB, 下载次数: 52


作者: 暴走吧怪蜀黍    时间: 2016-2-7 08:09
howhow1314 发表于 2016-2-6 14:30
弄了個範例…
裡面有用法, 另外說明一點就是只要不通行一律視作看不到

嗯,谢谢你!
我好好研究下!
作者: 暴走吧怪蜀黍    时间: 2016-2-7 08:09
黄亦天 发表于 2016-2-6 00:23
这费劲的
首先这个事件设定为并行执行
事件要用3个变量 玩家要用2个变量

额 ,知道了。谢谢!




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