Project1

标题: 怎麼設定兩個事件並行? [打印本页]

作者: 小叮鈴    时间: 2016-2-27 23:23
标题: 怎麼設定兩個事件並行?
我想設定一個物件有兩個事件

當物件靠近玩家 觸發一個事件
當玩家點擊該物件 觸發另外一個事件

做出來的效果就是 事件主動靠近玩家時(也就是事件觸發) 玩家會扣血

如果玩家主動點擊該事件 進入戰鬥

簡單的說就是如果只是被事件碰到只會扣血不會戰鬥 如果玩家覺得煩可以把事件打掉 這樣
作者: seedj13    时间: 2016-2-28 15:27
我尝试着写了个事件,大致操作如下:
做一个隐藏的并行处理事件(以下称为A事件),一个你说的那种点击会进入战斗的事件(以下称为B事件)。
B事件的内容如下:
决定键触发,移动方式为接近,事件为进入战斗场景。
A事件的内容如下:
反复读取A事件的XY坐标,反复读取玩家的XY坐标,然后用公式计算A事件和玩家是否接触(这种算法很多,我不做赘述)。
当计算结果得出接触,我有三套方案:
①最简单的,直接对人物进行扣血处理(但是因为并行处理事件是反复执行事件页内容,所以扣血速度会极快,也不好控制,下面几种方法是对这一情况的处理);
②发生扣血后,设置独立开关A为ON,然后新建事件页2,出现条件为独立开关A为ON,设置成并行处理,事件内容为等待60帧,然后设置独立开关A为OFF(结果为事件和人物接触后,每隔1秒扣一次血);
③当事件和人物的X坐标差值或事件和人物的Y坐标差值发生变动后,设置公共开关1为ON,扣血的条件加上条件分歧,以公共开关1为ON作为判定条件,扣血结束后,设置公共开关1为OFF,然后下次坐标差值出现变化后,公共开关1再次变为ON,再次发生扣血(结果为事件和人物每次移动后再接触,发生一次扣血,事件或者人物不动的情况下不重复扣血)。
以上,希望对你有用。
作者: 在野月光    时间: 2016-3-1 14:06
也可以试试这样:


不过 || Input.isTriggered('ok') 并不生效,
也就是当玩家希望通过手动杀怪的时候,
只能通过鼠标点击;
通过按键的话不生效。




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